Makefile revision 1.31
11.31Spalle# $NetBSD: Makefile,v 1.31 2013/12/08 14:41:28 palle Exp $ 21.1Smrg 31.1SmrgCURDIR= ${.CURDIR} 41.1SmrgS= ${CURDIR}/../../../.. 51.1Smrg 61.1Smrg# 71.1Smrg# Override normal settings 81.1Smrg# 91.1Smrg 101.29StsutsuiWARNS?= 2 111.30SmattKLINK_MACHINE= sparc64 121.1Smrg 131.1SmrgPROG?= ofwboot 141.1SmrgSRCS= srt0.s Locore.c boot.c ofdev.c alloc.c net.c netif_of.c vers.c 151.25SchristosSRCS+= bootinfo.c loadfile_machdep.c promlib.c prf.c isfloppy.c 161.31Spalle.if ${MACHINE_ARCH} == "sparc64" 171.31SpalleSRCS+= hvcall.S 181.31Spalle.endif 191.25Schristos.PATH: ${S}/arch/sparc64/sparc64 ${S}/arch/sparc/stand/common 201.1Smrg 211.13Ssimonb# XXX SHOULD NOT NEED TO DEFINE THESE! 221.13SsimonbLIBCRT0= 231.13SsimonbLIBC= 241.13SsimonbLIBCRTBEGIN= 251.13SsimonbLIBCRTEND= 261.13Ssimonb 271.8SthorpejCOPTS+= -ffreestanding 281.1SmrgCWARNFLAGS+= -Wno-main 291.2SmrgCFLAGS+= ${COPTS} ${CEXTRAFLAGS} 301.2SmrgCPPFLAGS+= -D_STANDALONE -DSUN4U 311.31Spalle.if ${MACHINE_ARCH} == "sparc64" 321.31SpalleCPPFLAGS+= -DSUN4V 331.31Spalle.endif 341.18ScdiCPPFLAGS+= -DBOOT_ELF32 -DBOOT_ELF64 -DBOOT_AOUT 351.10SmrgCPPFLAGS+= -DNETBOOT 361.14SchristosCPPFLAGS+= -DSUPPORT_DHCP 371.1Smrg#CPPFLAGS+= -DNETIF_DEBUG 381.18Scdi#CPPFLAGS+= -D_DEBUG 391.10Smrg 401.10SmrgLINKS+= ${BINDIR}/ofwboot ${BINDIR}/ofwboot.net 411.1Smrg 421.5StvNOMAN= # defined 431.1SmrgSTRIPFLAG= 441.1SmrgBINMODE= 444 451.1Smrg 461.1SmrgNEWVERSWHAT= "OpenFirmware Boot" 471.1Smrg 481.1Smrg# 491.1Smrg# Elf64 defaults to 1MB 501.1Smrg# 511.1Smrg# We may get address conflicts with other bootloaders, say 521.1Smrg# Sun's ufsboot, so we'll pick a reasonably empty address. 531.1Smrg# 541.18ScdiRELOC= 100000 551.1Smrg 561.1SmrgENTRY= _start 571.1Smrg 581.1SmrgCPPFLAGS+= -I${CURDIR}/../../.. -I${CURDIR}/../../../.. -I${CURDIR} -I. 591.22StsutsuiCPPFLAGS+= -I${CURDIR}/../../../../../common/include 601.1SmrgCPPFLAGS+= -DRELOC=0x${RELOC} 611.1Smrg 621.1Smrg# 631.1Smrg# XXXXX FIXME 641.1Smrg# 651.1SmrgCPPFLAGS+= -DSPARC_BOOT_AOUT 661.1SmrgCPPFLAGS+= -DSPARC_BOOT_ELF 671.1SmrgCPPFLAGS+= -DSPARC_BOOT_UFS 681.1SmrgCPPFLAGS+= -DSPARC_BOOT_NFS 691.23SmartinCPPFLAGS+= -DSPARC_BOOT_CD9660 701.1Smrg 711.1Smrg### find out what to use for libkern 721.1SmrgKERN_AS= library 731.1Smrg.include "${S}/lib/libkern/Makefile.inc" 741.1SmrgLIBKERN= ${KERNLIB} 751.1Smrg 761.1Smrg### find out what to use for libz 771.1SmrgZ_AS= library 781.1Smrg.include "${S}/lib/libz/Makefile.inc" 791.1SmrgLIBZ= ${ZLIB} 801.1Smrg 811.1Smrg### find out what to use for libsa 821.1SmrgSA_AS= library 831.18ScdiSAMISCMAKEFLAGS= SA_USE_LOADFILE=yes SA_USE_CREAD=yes 841.20SmartinSAMISCCPPFLAGS+= -DCOMPAT_SOLARIS_UFS 851.1Smrg.include "${S}/lib/libsa/Makefile.inc" 861.1SmrgLIBSA= ${SALIB} 871.1Smrg 881.28Snakayama.include <bsd.own.mk> 891.30Smatt.include <bsd.klinks.mk> 901.28Snakayama 911.1Smrgvers.c: version 921.27Sjoerg ${HOST_SH} ${S}/conf/newvers_stand.sh ${${MKREPRO} == "yes" :?:-D} \ 931.27Sjoerg ${CURDIR}/version "sparc64" ${NEWVERSWHAT} 941.1Smrg 951.18ScdiCLEANFILES+= vers.c 961.18Scdi 971.1Smrg.if CROSS 981.1Smrg${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 991.30Smatt ${_MKTARGET_LINK} 1001.1Smrg ${LD} -N -p -Ttext ${RELOC} -e ${ENTRY} >lderr -o ${PROG} \ 1011.1Smrg ${OBJS} -L${SADST} -lsa -L${ZDST} -lz -L${KERNDST} -lkern # solaris linker 1021.1Smrg.else 1031.1Smrg${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 1041.30Smatt ${_MKTARGET_LINK} 1051.1Smrg ${LD} -X -N -Ttext ${RELOC} -e ${ENTRY} -o ${PROG} \ 1061.1Smrg ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} # native linker 1071.1Smrg.endif 1081.1Smrg 1091.1Smrg.include <bsd.prog.mk> 1101.1Smrg 1111.2Smrg.if ${MACHINE_ARCH} == "sparc64" 1121.2SmrgAFLAGS+= -Wa,-Av9a 1131.2SmrgCEXTRAFLAGS?= -D_LP64 1141.2Smrg.else 1151.2SmrgAFLAGS+= -Wa,-Av8plusa 1161.2Smrg.endif 1171.2Smrg 1181.1Smrg.if CROSS 1191.26SjoergAFLAGS+= -x assembler-with-cpp -D_LOCORE -D__ELF__ 1201.2SmrgCEXTRAFLAGS?= -D_LP64 1211.1Smrg.else 1221.26SjoergAFLAGS+= -x assembler-with-cpp -D_LOCORE -D__ELF__ ${CEXTRAFLAGS} 1231.1Smrg.endif 1241.2Smrg 1251.1SmrgNORMAL_S= ${CC} ${AFLAGS} ${CPPFLAGS} -c $< 1261.1Smrgsrt0.o: srt0.s 1271.1Smrg ${NORMAL_S} 1281.1Smrg 1291.31Spallehvcall.o: hvcall.S 1301.31Spalle ${NORMAL_S} 1311.31Spalle 1321.31Spalle 1331.1Smrg# Explicit dependency for this. 1341.18Scdiboot.o: boot.c 135