Makefile revision 1.16
11.16Sdsl# $NetBSD: Makefile,v 1.16 2006/01/22 09:17:14 dsl 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.1Smrg.PATH: ${S}/arch/sparc64/sparc64 151.1Smrg 161.13Ssimonb# XXX SHOULD NOT NEED TO DEFINE THESE! 171.13SsimonbLIBCRT0= 181.13SsimonbLIBC= 191.13SsimonbLIBCRTBEGIN= 201.13SsimonbLIBCRTEND= 211.13Ssimonb 221.8SthorpejCOPTS+= -ffreestanding 231.1SmrgCWARNFLAGS+= -Wno-main 241.2SmrgCFLAGS+= ${COPTS} ${CEXTRAFLAGS} 251.2SmrgCPPFLAGS+= -D_STANDALONE -DSUN4U 261.4SthorpejCPPFLAGS+= -DBOOT_ELF32 -DBOOT_ELF64 271.10SmrgCPPFLAGS+= -DNETBOOT 281.14SchristosCPPFLAGS+= -DSUPPORT_DHCP 291.1Smrg#CPPFLAGS+= -DNETIF_DEBUG 301.10Smrg 311.10SmrgLINKS+= ${BINDIR}/ofwboot ${BINDIR}/ofwboot.net 321.1Smrg 331.5StvNOMAN= # defined 341.1SmrgSTRIPFLAG= 351.1SmrgBINMODE= 444 361.1Smrg 371.1SmrgNEWVERSWHAT= "OpenFirmware Boot" 381.1Smrg 391.1Smrg# 401.1Smrg# Elf64 defaults to 1MB 411.1Smrg# 421.1Smrg# We may get address conflicts with other bootloaders, say 431.1Smrg# Sun's ufsboot, so we'll pick a reasonably empty address. 441.1Smrg# 451.1SmrgRELOC= 800000 461.1Smrg 471.1SmrgENTRY= _start 481.1Smrg 491.11SmartinCLEANFILES+= vers.c sparc64 sparc machine 501.1Smrg 511.1SmrgCPPFLAGS+= -I${CURDIR}/../../.. -I${CURDIR}/../../../.. -I${CURDIR} -I. 521.16SdslCPPFLAGS+= -I${CURDIR}/../../../../lib/libsa 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.1Smrg#CPPFLAGS+= -DSPARC_BOOT_HSFS 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.1SmrgSAMISCMAKEFLAGS= SA_USE_CREAD=yes 771.1Smrg.include "${S}/lib/libsa/Makefile.inc" 781.1SmrgLIBSA= ${SALIB} 791.1Smrg 801.11Smartin.NOPATH: machine sparc64 sparc 811.11Smartin${SRCS}: machine sparc64 sparc 821.1Smrg 831.1Smrgmachine: 841.1Smrg rm -f machine 851.2Smrg ln -s sparc64 machine 861.1Smrg 871.2Smrgsparc64: 881.2Smrg rm -f sparc64 891.2Smrg ln -s ${.CURDIR}/../../../sparc64/include sparc64 901.7Snakayama 911.11Smartinsparc: 921.11Smartin rm -f sparc 931.11Smartin ln -s ${.CURDIR}/../../../sparc/include sparc 941.11Smartin 951.7Snakayamacleandir distclean: cleanlibdir 961.7Snakayama 971.7Snakayamacleanlibdir: 981.12Sjmc -rm -rf lib 991.1Smrg 1001.1Smrgvers.c: version 1011.9Slukem ${HOST_SH} ${S}/conf/newvers_stand.sh ${CURDIR}/version "sparc64" ${NEWVERSWHAT} 1021.1Smrg 1031.1Smrg.if CROSS 1041.1Smrg${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 1051.1Smrg ${LD} -N -p -Ttext ${RELOC} -e ${ENTRY} >lderr -o ${PROG} \ 1061.1Smrg ${OBJS} -L${SADST} -lsa -L${ZDST} -lz -L${KERNDST} -lkern # solaris linker 1071.1Smrg.else 1081.1Smrg${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 1091.1Smrg ${LD} -X -N -Ttext ${RELOC} -e ${ENTRY} -o ${PROG} \ 1101.1Smrg ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} # native linker 1111.1Smrg.endif 1121.1Smrg 1131.1Smrg.include <bsd.prog.mk> 1141.1Smrg 1151.2Smrg.if ${MACHINE_ARCH} == "sparc64" 1161.2SmrgAFLAGS+= -Wa,-Av9a 1171.2SmrgCEXTRAFLAGS?= -D_LP64 1181.2Smrg.else 1191.2SmrgAFLAGS+= -Wa,-Av8plusa 1201.2Smrg.endif 1211.2Smrg 1221.1Smrg.if CROSS 1231.2SmrgAFLAGS+= -x assembler-with-cpp -traditional-cpp -D_LOCORE -D__ELF__ 1241.2SmrgCEXTRAFLAGS?= -D_LP64 1251.1Smrg.else 1261.2SmrgAFLAGS+= -x assembler-with-cpp -traditional-cpp -D_LOCORE -D__ELF__ ${CEXTRAFLAGS} 1271.1Smrg.endif 1281.2Smrg 1291.1SmrgNORMAL_S= ${CC} ${AFLAGS} ${CPPFLAGS} -c $< 1301.1Smrgsrt0.o: srt0.s 1311.1Smrg ${NORMAL_S} 1321.1Smrg 1331.1Smrg# Explicit dependency for this. 1341.1Smrgboot.o: boot.c elfXX_exec.c 135