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