Makefile revision 1.23
11.23Smartin# $NetBSD: Makefile,v 1.23 2010/04/02 18:39:44 martin Exp $ 21.1Smrg 31.1SmrgCURDIR= ${.CURDIR} 41.1SmrgS= ${CURDIR}/../../../.. 51.1Smrg 61.1Smrg# 71.1Smrg# Override normal settings 81.1Smrg# 91.1Smrg 101.1SmrgWARNS= 0 111.1Smrg 121.1SmrgPROG?= ofwboot 131.1SmrgSRCS= srt0.s Locore.c boot.c ofdev.c alloc.c net.c netif_of.c vers.c 141.18ScdiSRCS+= bootinfo.c loadfile_machdep.c promlib.c prf.c 151.1Smrg.PATH: ${S}/arch/sparc64/sparc64 161.1Smrg 171.13Ssimonb# XXX SHOULD NOT NEED TO DEFINE THESE! 181.13SsimonbLIBCRT0= 191.13SsimonbLIBC= 201.13SsimonbLIBCRTBEGIN= 211.13SsimonbLIBCRTEND= 221.13Ssimonb 231.8SthorpejCOPTS+= -ffreestanding 241.1SmrgCWARNFLAGS+= -Wno-main 251.2SmrgCFLAGS+= ${COPTS} ${CEXTRAFLAGS} 261.2SmrgCPPFLAGS+= -D_STANDALONE -DSUN4U 271.18ScdiCPPFLAGS+= -DBOOT_ELF32 -DBOOT_ELF64 -DBOOT_AOUT 281.10SmrgCPPFLAGS+= -DNETBOOT 291.14SchristosCPPFLAGS+= -DSUPPORT_DHCP 301.1Smrg#CPPFLAGS+= -DNETIF_DEBUG 311.18Scdi#CPPFLAGS+= -D_DEBUG 321.10Smrg 331.10SmrgLINKS+= ${BINDIR}/ofwboot ${BINDIR}/ofwboot.net 341.1Smrg 351.5StvNOMAN= # defined 361.1SmrgSTRIPFLAG= 371.1SmrgBINMODE= 444 381.1Smrg 391.1SmrgNEWVERSWHAT= "OpenFirmware Boot" 401.1Smrg 411.1Smrg# 421.1Smrg# Elf64 defaults to 1MB 431.1Smrg# 441.1Smrg# We may get address conflicts with other bootloaders, say 451.1Smrg# Sun's ufsboot, so we'll pick a reasonably empty address. 461.1Smrg# 471.18ScdiRELOC= 100000 481.1Smrg 491.1SmrgENTRY= _start 501.1Smrg 511.1SmrgCPPFLAGS+= -I${CURDIR}/../../.. -I${CURDIR}/../../../.. -I${CURDIR} -I. 521.22StsutsuiCPPFLAGS+= -I${CURDIR}/../../../../../common/include 531.1SmrgCPPFLAGS+= -DRELOC=0x${RELOC} 541.1Smrg 551.1Smrg# 561.1Smrg# XXXXX FIXME 571.1Smrg# 581.1SmrgCPPFLAGS+= -DSPARC_BOOT_AOUT 591.1SmrgCPPFLAGS+= -DSPARC_BOOT_ELF 601.1SmrgCPPFLAGS+= -DSPARC_BOOT_UFS 611.1SmrgCPPFLAGS+= -DSPARC_BOOT_NFS 621.23SmartinCPPFLAGS+= -DSPARC_BOOT_CD9660 631.1Smrg 641.1Smrg### find out what to use for libkern 651.1SmrgKERN_AS= library 661.1Smrg.include "${S}/lib/libkern/Makefile.inc" 671.1SmrgLIBKERN= ${KERNLIB} 681.1Smrg 691.1Smrg### find out what to use for libz 701.1SmrgZ_AS= library 711.1Smrg.include "${S}/lib/libz/Makefile.inc" 721.1SmrgLIBZ= ${ZLIB} 731.1Smrg 741.1Smrg### find out what to use for libsa 751.1SmrgSA_AS= library 761.18ScdiSAMISCMAKEFLAGS= SA_USE_LOADFILE=yes SA_USE_CREAD=yes 771.20SmartinSAMISCCPPFLAGS+= -DCOMPAT_SOLARIS_UFS 781.1Smrg.include "${S}/lib/libsa/Makefile.inc" 791.1SmrgLIBSA= ${SALIB} 801.1Smrg 811.17Suwe.if !make(obj) && !make(clean) && !make(cleandir) 821.17Suwe.BEGIN: 831.17Suwe @([ -h machine ] || ln -s ${S}/arch/sparc64/include machine) 841.17Suwe @([ -h sparc64 ] || ln -s ${S}/arch/sparc64/include sparc64) 851.17Suwe @([ -h sparc ] || ln -s ${S}/arch/sparc/include sparc) 861.11Smartin.NOPATH: machine sparc64 sparc 871.17Suwe.endif 881.17SuweCLEANFILES+= machine sparc64 sparc 891.11Smartin 901.7Snakayamacleandir distclean: cleanlibdir 911.7Snakayama 921.7Snakayamacleanlibdir: 931.12Sjmc -rm -rf lib 941.1Smrg 951.1Smrgvers.c: version 961.9Slukem ${HOST_SH} ${S}/conf/newvers_stand.sh ${CURDIR}/version "sparc64" ${NEWVERSWHAT} 971.1Smrg 981.18ScdiCLEANFILES+= vers.c 991.18Scdi 1001.1Smrg.if CROSS 1011.1Smrg${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 1021.1Smrg ${LD} -N -p -Ttext ${RELOC} -e ${ENTRY} >lderr -o ${PROG} \ 1031.1Smrg ${OBJS} -L${SADST} -lsa -L${ZDST} -lz -L${KERNDST} -lkern # solaris linker 1041.1Smrg.else 1051.1Smrg${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 1061.1Smrg ${LD} -X -N -Ttext ${RELOC} -e ${ENTRY} -o ${PROG} \ 1071.1Smrg ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} # native linker 1081.1Smrg.endif 1091.1Smrg 1101.1Smrg.include <bsd.prog.mk> 1111.1Smrg 1121.2Smrg.if ${MACHINE_ARCH} == "sparc64" 1131.2SmrgAFLAGS+= -Wa,-Av9a 1141.2SmrgCEXTRAFLAGS?= -D_LP64 1151.2Smrg.else 1161.2SmrgAFLAGS+= -Wa,-Av8plusa 1171.2Smrg.endif 1181.2Smrg 1191.1Smrg.if CROSS 1201.2SmrgAFLAGS+= -x assembler-with-cpp -traditional-cpp -D_LOCORE -D__ELF__ 1211.2SmrgCEXTRAFLAGS?= -D_LP64 1221.1Smrg.else 1231.2SmrgAFLAGS+= -x assembler-with-cpp -traditional-cpp -D_LOCORE -D__ELF__ ${CEXTRAFLAGS} 1241.1Smrg.endif 1251.2Smrg 1261.1SmrgNORMAL_S= ${CC} ${AFLAGS} ${CPPFLAGS} -c $< 1271.1Smrgsrt0.o: srt0.s 1281.1Smrg ${NORMAL_S} 1291.1Smrg 1301.1Smrg# Explicit dependency for this. 1311.18Scdiboot.o: boot.c 132