diff options
author | rpaulo <rpaulo@FreeBSD.org> | 2012-12-21 05:22:14 +0000 |
---|---|---|
committer | rpaulo <rpaulo@FreeBSD.org> | 2012-12-21 05:22:14 +0000 |
commit | ef0b33ada2623351a3f5b05880cb18ac0d729d3a (patch) | |
tree | 23b409b00c236024b1da38a15d3b82a18c9dc020 /sys/boot | |
parent | 13949c50fa4ff569fa99e6b92485032c35a90594 (diff) | |
download | FreeBSD-src-ef0b33ada2623351a3f5b05880cb18ac0d729d3a.zip FreeBSD-src-ef0b33ada2623351a3f5b05880cb18ac0d729d3a.tar.gz |
Build a 64 bit version of the FICL library. This is need for a 64 bit
EFI bootloader (amd64 only for now).
This is not yet connected to the build.
Diffstat (limited to 'sys/boot')
-rw-r--r-- | sys/boot/ficl/Makefile | 21 | ||||
-rw-r--r-- | sys/boot/ficl64/Makefile | 8 |
2 files changed, 23 insertions, 6 deletions
diff --git a/sys/boot/ficl/Makefile b/sys/boot/ficl/Makefile index 971faa7..77f4a8f 100644 --- a/sys/boot/ficl/Makefile +++ b/sys/boot/ficl/Makefile @@ -1,6 +1,13 @@ # $FreeBSD$ # -.PATH: ${.CURDIR}/${MACHINE_CPUARCH:S/amd64/i386/} + +FICLDIR?= ${.CURDIR} + +.if !defined(FICL64) +.PATH: ${FICLDIR}/${MACHINE_CPUARCH:S/amd64/i386/} +.else +.PATH: ${FICLDIR}/${MACHINE_CPUARCH} +.endif BASE_SRCS= dict.c ficl.c fileaccess.c float.c loader.c math64.c \ prefix.c search.c stack.c tools.c vm.c words.c @@ -8,8 +15,10 @@ SRCS= ${BASE_SRCS} sysdep.c softcore.c CLEANFILES= softcore.c testmain testmain.o CFLAGS+= -ffreestanding .if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" +.if !defined(FICL64) CFLAGS+= -march=i386 CFLAGS+= -mpreferred-stack-boundary=2 +.endif CFLAGS+= -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float .endif .if ${MACHINE_CPUARCH} == "powerpc" || ${MACHINE_CPUARCH} == "arm" @@ -33,13 +42,13 @@ INTERNALLIB= .endif # Standard softwords -.PATH: ${.CURDIR}/softwords +.PATH: ${FICLDIR}/softwords SOFTWORDS= softcore.fr jhlocal.fr marker.fr freebsd.fr ficllocal.fr \ ifbrack.fr # Optional OO extension softwords #SOFTWORDS+= oo.fr classes.fr -.if ${MACHINE_CPUARCH} == "amd64" +.if ${MACHINE_CPUARCH} == "amd64" && !defined(FICL64) CFLAGS+= -m32 -I. .endif @@ -47,11 +56,11 @@ CFLAGS+= -m32 -I. CFLAGS+= -m32 -mcpu=powerpc -I. .endif -CFLAGS+= -I${.CURDIR} -I${.CURDIR}/${MACHINE_CPUARCH:S/amd64/i386/} \ - -I${.CURDIR}/../common +CFLAGS+= -I${FICLDIR} -I${FICLDIR}/${MACHINE_CPUARCH:S/amd64/i386/} \ + -I${FICLDIR}/../common softcore.c: ${SOFTWORDS} softcore.awk - (cd ${.CURDIR}/softwords; cat ${SOFTWORDS} \ + (cd ${FICLDIR}/softwords; cat ${SOFTWORDS} \ | awk -f softcore.awk -v datestamp="`LC_ALL=C date`") > ${.TARGET} .if ${MACHINE_CPUARCH} == "amd64" diff --git a/sys/boot/ficl64/Makefile b/sys/boot/ficl64/Makefile new file mode 100644 index 0000000..4c6777b --- /dev/null +++ b/sys/boot/ficl64/Makefile @@ -0,0 +1,8 @@ +# $FreeBSD$ + +FICL64= +FICLDIR= ${.CURDIR}/../ficl + +.PATH: ${FICLDIR} + +.include "${FICLDIR}/Makefile" |