Makefile.booters revision 1.91
11.91Schristos# $NetBSD: Makefile.booters,v 1.91 2017/04/08 19:53:21 christos Exp $ 21.32Sthorpej 31.32Sthorpej.include <bsd.own.mk> 41.1Sperry 51.2SthorpejSTRIPFLAG= 61.1SperryBINMODE=444 71.38Sthorpej 81.38SthorpejLIBCRT0= # nothing 91.89StsutsuiLIBCRTI= # nothing 101.38SthorpejLIBCRTBEGIN= # nothing 111.38SthorpejLIBCRTEND= # nothing 121.38SthorpejLIBC= # nothing 131.29Stls 141.33Sthorpej# Make sure we override any optimization options specified by the 151.33Sthorpej# user. 161.37Sfvdl.if ${MACHINE_ARCH} == "x86_64" 171.90SmartinCPUFLAGS= -m32 -march=i386 -mtune=i386 181.37Sfvdl.else 191.81SjakllschCPUFLAGS= -march=i386 -mtune=i386 201.63Smrg.endif 211.84SjoergCOPTS= ${OPT_SIZE.${ACTIVE_CC}} 221.1Sperry 231.8SdrochnerI386_STAND_DIR?= $S/arch/i386/stand 241.8Sdrochner 251.52Sdsl.PATH: ${I386_STAND_DIR}/lib 261.32Sthorpej 271.16SchristosROMSTART= start_rom.o 281.8SdrochnerGENPROMDIR= ${I386_STAND_DIR}/genprom 291.32SthorpejGENPROMOBJDIR!= cd ${GENPROMDIR} && ${PRINTOBJDIR} 301.32SthorpejGENPROM= ${GENPROMOBJDIR}/genprom 311.32Sthorpej 321.8Sdrochner.PATH: ${I386_STAND_DIR}/lib/crt/dos 331.16SchristosDOSSTART= start_dos.o doscommain.o 341.32Sthorpej 351.31Sthorpej.PATH: ${I386_STAND_DIR}/lib/crt/pxe 361.31SthorpejPXESTART= start_pxe.o 371.1Sperry 381.70SyamtCPPFLAGS+= -nostdinc -I${.OBJDIR} -I$S -I${I386_STAND_DIR}/lib -I$S/lib/libsa 391.5SdrochnerCPPFLAGS+= -D_STANDALONE 401.68SlukemLDFLAGS+= -nostdlib 411.37Sfvdl 421.37Sfvdl# XXX 431.37Sfvdl.if ${MACHINE_ARCH} == "x86_64" 441.37SfvdlCPPFLAGS+=-m32 451.68SlukemLDFLAGS+=-Wl,-m,elf_i386 461.37SfvdlLIBKERN_ARCH=i386 471.37SfvdlKERNMISCMAKEFLAGS="LIBKERN_ARCH=i386" 481.37Sfvdl.endif 491.1Sperry 501.91SchristosCLEANFILES+= ${STARTFILE} ${BASE}.list 511.7Sthorpej 521.1Sperry### find out what to use for libkern 531.1SperryKERN_AS= library 541.1Sperry.include "${S}/lib/libkern/Makefile.inc" 551.1SperryLIBKERN= ${KERNLIB} 561.1Sperry 571.1Sperry### find out what to use for libz 581.1SperryZ_AS= library 591.1Sperry.include "${S}/lib/libz/Makefile.inc" 601.1SperryLIBZ= ${ZLIB} 611.1Sperry 621.1Sperry### find out what to use for libsa 631.1SperrySA_AS= library 641.22SchristosSAMISCMAKEFLAGS+="SA_USE_LOADFILE=yes" 651.1Sperry.include "${S}/lib/libsa/Makefile.inc" 661.1SperryLIBSA= ${SALIB} 671.1Sperry 681.1Sperry### find out what to use for libi386 691.8SdrochnerI386DIR= ${I386_STAND_DIR}/lib 701.1Sperry.include "${I386DIR}/Makefile.inc" 711.1SperryLIBI386= ${I386LIB} 721.17Stron 731.79Sdhollandcleandir distclean: .WAIT cleanlibdir 741.17Stron 751.17Stroncleanlibdir: 761.57Sjmc -rm -rf lib 771.16Schristos 781.68SlukemLDFLAGS+=-Wl,-M -Wl,-e,start # -N does not work properly. 791.16Schristos 801.22SchristosLIBLIST=${LIBI386} ${LIBSA} ${LIBZ} ${LIBSA} ${LIBKERN} ${LIBI386} ${LIBSA} 811.22Schristos 821.91SchristosVERSIONMACHINE=x86 831.91Schristos.include "${S}/conf/newvers_stand.mk" 841.7Sthorpej 851.32SthorpejCLEANFILES+= ${BASE}.sym 861.32Sthorpej${BASE}.sym: ${STARTFILE} ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBI386} 871.64Slukem ${_MKTARGET_LINK} 881.68Slukem ${CC} -o ${BASE}.sym ${LDFLAGS} -Wl,-Ttext,${RELOC} \ 891.39Sdsl ${STARTFILE} ${OBJS} ${LIBLIST} >${BASE}.list 901.32Sthorpej 911.65SlukemCLEANFILES+= ${BASE}.rom ${BASE}.rom.tmp 921.32Sthorpej${BASE}.rom: ${STARTFILE} ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBI386} 931.64Slukem ${_MKTARGET_LINK} 941.68Slukem ${CC} -o ${BASE}.sym ${LDFLAGS} -Wl,-Ttext,${RELOC} \ 951.68Slukem ${STARTFILE} ${OBJS} ${LIBLIST} >${BASE}.list 961.65Slukem ${OBJCOPY} -O binary ${BASE}.sym ${BASE}.rom.tmp 971.65Slukem ${GENPROM} ${ROM_SIZE} < ${BASE}.rom.tmp > ${BASE}.rom || \ 981.83Sjoerg ( rm -f ${BASE}.rom && false ) 991.65Slukem rm -f ${BASE}.rom.tmp 1001.9Sdrochner 1011.32SthorpejCLEANFILES+= ${BASE}.com 1021.32Sthorpej${BASE}.com: ${STARTFILE} ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBI386} 1031.64Slukem ${_MKTARGET_LINK} 1041.68Slukem ${CC} -o ${BASE}.sym ${LDFLAGS} -Wl,-Ttext,${RELOC} \ 1051.68Slukem ${STARTFILE} ${OBJS} ${LIBLIST} >${BASE}.list 1061.32Sthorpej ${OBJCOPY} -O binary ${BASE}.sym ${BASE}.com 1071.32Sthorpej 1081.32SthorpejCLEANFILES+= ${BASE}.bin 1091.32Sthorpej${BASE}.bin: ${STARTFILE} ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBI386} 1101.64Slukem ${_MKTARGET_LINK} 1111.68Slukem ${CC} -o ${BASE}.sym ${LDFLAGS} -Wl,-Ttext,${RELOC} \ 1121.68Slukem ${STARTFILE} ${OBJS} ${LIBLIST} > ${BASE}.list 1131.32Sthorpej ${OBJCOPY} -O binary ${BASE}.sym ${BASE}.bin 1141.9Sdrochner 1151.9Sdrochner.include <bsd.prog.mk> 1161.88SmattKLINK_MACHINE= i386 1171.87Smatt.include <bsd.klinks.mk> 118