7 .PATH: ${FICLDIR}/${MACHINE_CPUARCH:S/amd64/i386/}
8 .elif ${MACHINE_ARCH} == "mips64" || ${MACHINE_ARCH} == "mips64el"
9 .PATH: ${FICLDIR}/mips64
11 .PATH: ${FICLDIR}/${MACHINE_CPUARCH}
13 BASE_SRCS= dict.c ficl.c fileaccess.c float.c loader.c math64.c \
14 prefix.c search.c stack.c tools.c vm.c words.c
16 SRCS= ${BASE_SRCS} sysdep.c softcore.c
17 CLEANFILES= softcore.c testmain testmain.o
18 CFLAGS+= -ffreestanding
19 .if ${MACHINE_CPUARCH} == "i386" || \
20 (${MACHINE_CPUARCH} == "amd64" && defined(FICL32))
22 CFLAGS.gcc+= -mpreferred-stack-boundary=2
24 .if ${MACHINE_CPUARCH} == "amd64"
25 CFLAGS+= -mno-red-zone
27 .if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64"
28 CFLAGS+= -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float
30 .if ${MACHINE_CPUARCH} == "powerpc" || ${MACHINE_CPUARCH} == "arm" || ${MACHINE_CPUARCH} == "mips"
33 .if ${MACHINE} == "pc98"
36 .if ${MACHINE_CPUARCH} == "mips"
37 CFLAGS+= -G0 -fno-pic -mno-abicalls
43 CFLAGS+= -DTESTMAIN -D_TESTMAIN
46 .include <bsd.prog.mk>
54 .PATH: ${FICLDIR}/softwords
55 SOFTWORDS= softcore.fr jhlocal.fr marker.fr freebsd.fr ficllocal.fr \
57 # Optional OO extension softwords
58 #SOFTWORDS+= oo.fr classes.fr
60 .if ${MACHINE_CPUARCH} == "amd64"
68 .if ${MACHINE_ARCH} == "powerpc64"
69 CFLAGS+= -m32 -mcpu=powerpc -I.
72 .if ${MACHINE_CPUARCH} == "amd64" && defined(FICL32)
75 FICL_CPUARCH= ${MACHINE_CPUARCH}
78 CFLAGS+= -I${FICLDIR} -I${FICLDIR}/${FICL_CPUARCH} \
79 -I${FICLDIR}/../common
81 softcore.c: ${SOFTWORDS} softcore.awk
82 (cd ${FICLDIR}/softwords; cat ${SOFTWORDS} \
83 | awk -f softcore.awk -v datestamp="`LC_ALL=C date`") > ${.TARGET}
85 .if ${MACHINE_CPUARCH} == "amd64" && defined(FICL32)
87 ${SRCS:M*.c:R:S/$/.o/g}: machine
89 beforedepend ${OBJS}: machine
93 ln -sf ${.CURDIR}/../../i386/include machine