Makefile revision 209920
199461Sobrien# $FreeBSD: head/sys/boot/ficl/Makefile 209920 2010-07-12 00:49:22Z nwhitehorn $
2218822Sdim#
399461Sobrien.PATH: ${.CURDIR}/${MACHINE_ARCH:S/amd64/i386/:S/powerpc64/powerpc/}
499461SobrienBASE_SRCS=	dict.c ficl.c fileaccess.c float.c loader.c math64.c \
599461Sobrien		prefix.c search.c stack.c tools.c vm.c words.c
699461Sobrien
799461SobrienSRCS=		${BASE_SRCS} sysdep.c softcore.c
899461SobrienCLEANFILES=	softcore.c testmain testmain.o
999461SobrienCFLAGS+=	-ffreestanding
1099461Sobrien.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64"
1199461SobrienCFLAGS+=	-mpreferred-stack-boundary=2
1299461SobrienCFLAGS+=	-mno-mmx -mno-3dnow -mno-sse -mno-sse2
1399461Sobrien.endif
1499461Sobrien.if ${MACHINE_ARCH} == "i386"
1599461SobrienCFLAGS+=	-mno-sse3
1699461Sobrien.endif
1799461Sobrien.if ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "powerpc64" || ${MACHINE_ARCH} == "arm" 
1899461SobrienCFLAGS+=	-msoft-float
19218822Sdim.endif
20218822Sdim.if ${MACHINE} == "pc98"
2199461SobrienCFLAGS+=	-Os -DPC98
2299461Sobrien.endif
2399461Sobrien.if HAVE_PNP
2499461SobrienCFLAGS+=	-DHAVE_PNP
2599461Sobrien.endif
26130561Sobrien.ifmake testmain
27130561SobrienCFLAGS+=	-DTESTMAIN -D_TESTMAIN
28130561SobrienSRCS+=		testmain.c
29130561SobrienPROG=		testmain
30130561Sobrien.include <bsd.prog.mk>
31130561Sobrien.else
3299461SobrienLIB=		ficl
33130561SobrienINTERNALLIB=
34130561Sobrien.include <bsd.lib.mk>
35130561Sobrien.endif
36130561Sobrien
37130561Sobrien# Standard softwords
38218822Sdim.PATH: ${.CURDIR}/softwords
39218822SdimSOFTWORDS=	softcore.fr jhlocal.fr marker.fr freebsd.fr ficllocal.fr \
40218822Sdim		ifbrack.fr
41130561Sobrien# Optional OO extension softwords
42130561Sobrien#SOFTWORDS+=	oo.fr classes.fr
4399461Sobrien
4499461Sobrien.if ${MACHINE_ARCH} == "amd64"
4599461SobrienCFLAGS+=	-m32 -march=i386 -I.
4699461Sobrien.endif
4799461Sobrien
48130561Sobrien.if ${MACHINE_ARCH} == "powerpc64"
49130561SobrienCFLAGS+=	-m32 -mcpu=powerpc -I.
50130561Sobrien.endif
5199461Sobrien
5299461SobrienCFLAGS+=	-I${.CURDIR} -I${.CURDIR}/${MACHINE_ARCH:S/amd64/i386/:S/powerpc64/powerpc/} \
5399461Sobrien		-I${.CURDIR}/../common
5499461Sobrien
5599461Sobriensoftcore.c: ${SOFTWORDS} softcore.awk
5699461Sobrien	(cd ${.CURDIR}/softwords; cat ${SOFTWORDS} \
5799461Sobrien	    | awk -f softcore.awk -v datestamp="`LC_ALL=C date`") > ${.TARGET}
5899461Sobrien
5999461Sobrien.if ${MACHINE_ARCH} == "amd64"
6099461Sobrien${SRCS:M*.c:R:S/$/.o/g}: machine
6199461Sobrien
6299461Sobrienbeforedepend ${OBJS}: machine
6399461Sobrien
6499461Sobrienmachine:
6599461Sobrien	ln -sf ${.CURDIR}/../../i386/include machine
6699461Sobrien
6799461SobrienCLEANFILES+=	machine
6899461Sobrien.endif
6999461Sobrien