1# $FreeBSD$ 2# 3.PATH: ${.CURDIR}/${MACHINE_CPUARCH:S/amd64/i386/} 4BASE_SRCS= dict.c ficl.c fileaccess.c float.c loader.c math64.c \ 5 prefix.c search.c stack.c tools.c vm.c words.c 6 7SRCS= ${BASE_SRCS} sysdep.c softcore.c 8CLEANFILES= softcore.c testmain testmain.o 9CFLAGS+= -ffreestanding 10.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" 11CFLAGS+= -march=i386 12CFLAGS.gcc+= -mpreferred-stack-boundary=2 13CFLAGS+= -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float 14.endif 15.if ${MACHINE_CPUARCH} == "powerpc" || ${MACHINE_CPUARCH} == "arm" 16CFLAGS+= -msoft-float 17.endif 18.if ${MACHINE} == "pc98" 19CFLAGS+= -Os -DPC98 20.endif 21.if HAVE_PNP 22CFLAGS+= -DHAVE_PNP 23.endif 24.ifmake testmain 25CFLAGS+= -DTESTMAIN -D_TESTMAIN 26SRCS+= testmain.c 27PROG= testmain 28.include <bsd.prog.mk> 29.else 30LIB= ficl 31INTERNALLIB= 32.include <bsd.lib.mk> 33.endif 34 35# Standard softwords 36.PATH: ${.CURDIR}/softwords 37SOFTWORDS= softcore.fr jhlocal.fr marker.fr freebsd.fr ficllocal.fr \ 38 ifbrack.fr 39# Optional OO extension softwords 40#SOFTWORDS+= oo.fr classes.fr 41 42.if ${MACHINE_CPUARCH} == "amd64" 43CFLAGS+= -m32 -I. 44.endif 45 46.if ${MACHINE_ARCH} == "powerpc64" 47CFLAGS+= -m32 -mcpu=powerpc -I. 48.endif 49 50CFLAGS+= -I${.CURDIR} -I${.CURDIR}/${MACHINE_CPUARCH:S/amd64/i386/} \ 51 -I${.CURDIR}/../common 52 53softcore.c: ${SOFTWORDS} softcore.awk 54 (cd ${.CURDIR}/softwords; cat ${SOFTWORDS} \ 55 | awk -f softcore.awk -v datestamp="`LC_ALL=C date`") > ${.TARGET} 56 57.if ${MACHINE_CPUARCH} == "amd64" 58.if !exists(machine) 59${SRCS:M*.c:R:S/$/.o/g}: machine 60 61beforedepend ${OBJS}: machine 62.endif 63 64machine: 65 ln -sf ${.CURDIR}/../../i386/include machine 66 67CLEANFILES+= machine 68.endif 69