150477Speter# $FreeBSD: releng/10.3/sys/boot/ficl/Makefile 281321 2015-04-09 19:36:06Z jhb $ 240843Smsmith# 3244531Srpaulo 4244531SrpauloFICLDIR?= ${.CURDIR} 5244531Srpaulo 6271135Semaste.if defined(FICL32) 7244531Srpaulo.PATH: ${FICLDIR}/${MACHINE_CPUARCH:S/amd64/i386/} 8244531Srpaulo.else 9244531Srpaulo.PATH: ${FICLDIR}/${MACHINE_CPUARCH} 10244531Srpaulo.endif 1196261SobrienBASE_SRCS= dict.c ficl.c fileaccess.c float.c loader.c math64.c \ 1296261Sobrien prefix.c search.c stack.c tools.c vm.c words.c 1394290Sdcs 1496261SobrienSRCS= ${BASE_SRCS} sysdep.c softcore.c 1596261SobrienCLEANFILES= softcore.c testmain testmain.o 1696342SobrienCFLAGS+= -ffreestanding 17271135Semaste.if ${MACHINE_CPUARCH} == "i386" || \ 18271135Semaste (${MACHINE_CPUARCH} == "amd64" && defined(FICL32)) 19241785SavgCFLAGS+= -march=i386 20260096SdimCFLAGS.gcc+= -mpreferred-stack-boundary=2 21244531Srpaulo.endif 22281321Sjhb.if ${MACHINE_CPUARCH} == "amd64" 23281321SjhbCFLAGS+= -mno-red-zone 24281321Sjhb.endif 25271135Semaste.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" 26217033SdimCFLAGS+= -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float 2764550Speter.endif 28211678Simp.if ${MACHINE_CPUARCH} == "powerpc" || ${MACHINE_CPUARCH} == "arm" 29123374SgrehanCFLAGS+= -msoft-float 30123374Sgrehan.endif 31116000Snyan.if ${MACHINE} == "pc98" 32172664SnyanCFLAGS+= -Os -DPC98 33116000Snyan.endif 3465677Sdfr.if HAVE_PNP 3596261SobrienCFLAGS+= -DHAVE_PNP 3665677Sdfr.endif 3765698Sdfr.ifmake testmain 3896261SobrienCFLAGS+= -DTESTMAIN -D_TESTMAIN 3996261SobrienSRCS+= testmain.c 4096261SobrienPROG= testmain 4156716Sdcs.include <bsd.prog.mk> 4256716Sdcs.else 4396261SobrienLIB= ficl 44136910SruINTERNALLIB= 4556716Sdcs.include <bsd.lib.mk> 4656716Sdcs.endif 4740843Smsmith 4840843Smsmith# Standard softwords 49244531Srpaulo.PATH: ${FICLDIR}/softwords 5051786SdcsSOFTWORDS= softcore.fr jhlocal.fr marker.fr freebsd.fr ficllocal.fr \ 5151786Sdcs ifbrack.fr 5240843Smsmith# Optional OO extension softwords 5340843Smsmith#SOFTWORDS+= oo.fr classes.fr 5440843Smsmith 55271135Semaste.if ${MACHINE_CPUARCH} == "amd64" 56271135Semaste.if defined(FICL32) 57241785SavgCFLAGS+= -m32 -I. 58271135Semaste.else 59271135SemasteCFLAGS+= -fPIC 60116864Speter.endif 61271135Semaste.endif 62116864Speter 63209920Snwhitehorn.if ${MACHINE_ARCH} == "powerpc64" 64209920SnwhitehornCFLAGS+= -m32 -mcpu=powerpc -I. 65209920Snwhitehorn.endif 66209920Snwhitehorn 67271135Semaste.if ${MACHINE_CPUARCH} == "amd64" && defined(FICL32) 68271135SemasteFICL_CPUARCH= i386 69271135Semaste.else 70271135SemasteFICL_CPUARCH= ${MACHINE_CPUARCH} 71271135Semaste.endif 72271135Semaste 73271135SemasteCFLAGS+= -I${FICLDIR} -I${FICLDIR}/${FICL_CPUARCH} \ 74244531Srpaulo -I${FICLDIR}/../common 7540843Smsmith 7696261Sobriensoftcore.c: ${SOFTWORDS} softcore.awk 77244531Srpaulo (cd ${FICLDIR}/softwords; cat ${SOFTWORDS} \ 7873349Sru | awk -f softcore.awk -v datestamp="`LC_ALL=C date`") > ${.TARGET} 79116864Speter 80271135Semaste.if ${MACHINE_CPUARCH} == "amd64" && defined(FICL32) 81238795Sache.if !exists(machine) 82116864Speter${SRCS:M*.c:R:S/$/.o/g}: machine 83116864Speter 84116864Speterbeforedepend ${OBJS}: machine 85238795Sache.endif 86116864Speter 87116864Spetermachine: 88116864Speter ln -sf ${.CURDIR}/../../i386/include machine 89116864Speter 90116864SpeterCLEANFILES+= machine 91116864Speter.endif 92