Makefile revision 1.38
11.2Smatt# $NetBSD: Makefile,v 1.38 2017/04/08 19:53:23 christos Exp $ 21.1Smatt 31.1Smatt.include <bsd.init.mk> 41.1Smatt 51.1SmattCURDIR= ${.CURDIR} 61.1SmattS= ${CURDIR}/../../../.. 71.1Smatt 81.1Smatt# 91.1Smatt# Override normal settings 101.1Smatt# 111.1Smatt 121.1SmattWARNS?= 2 131.1SmattKLINK_MACHINE= sparc64 141.1Smatt 151.1SmattPROG?= ofwboot 161.1SmattSRCS= srt0.s Locore.c boot.c ofdev.c alloc.c net.c netif_of.c 171.1SmattSRCS+= bootinfo.c loadfile_machdep.c promlib.c prf.c isfloppy.c 181.1Smatt.if ${MACHINE_ARCH} == "sparc64" 191.1SmattSRCS+= hvcall.S 201.1SmattCPPFLAGS+= -DSUN4V 211.1Smatt.endif 221.2Smatt.PATH: ${S}/arch/sparc64/sparc64 ${S}/arch/sparc/stand/common 231.2Smatt 241.2Smatt# XXX SHOULD NOT NEED TO DEFINE THESE! 251.2SmattLIBCRT0= 261.2SmattLIBCRTI= 271.2SmattLIBC= 281.1SmattLIBCRTBEGIN= 291.1SmattLIBCRTEND= 301.1Smatt 311.2SmattCOPTS+= -ffreestanding -mcpu=v9 321.2SmattCWARNFLAGS+= -Wno-main 331.1SmattCFLAGS+= ${COPTS} 341.2SmattCPPFLAGS+= -D_STANDALONE 351.2SmattCPPFLAGS+= -DBOOT_ELF32 -DBOOT_ELF64 -DBOOT_AOUT 361.2SmattCPPFLAGS+= -DNETBOOT 371.2SmattCPPFLAGS+= -DSUPPORT_DHCP 381.2Smatt#CPPFLAGS+= -DNETIF_DEBUG 391.2Smatt#CPPFLAGS+= -D_DEBUG 401.2Smatt 411.2SmattLINKS+= ${BINDIR}/ofwboot ${BINDIR}/ofwboot.net 421.2Smatt 431.2SmattNOMAN= # defined 441.2SmattSTRIPFLAG= 451.2SmattBINMODE= 444 461.2Smatt 471.2SmattNEWVERSWHAT= "OpenFirmware Boot" 481.2Smatt 491.2Smatt# 501.2Smatt# Elf64 defaults to 1MB 511.2Smatt# 521.2Smatt# We may get address conflicts with other bootloaders, say 531.2Smatt# Sun's ufsboot, so we'll pick a reasonably empty address. 541.2Smatt# 551.2SmattRELOC= 100000 561.2Smatt 571.2SmattENTRY= _start 581.2Smatt 591.2SmattCPPFLAGS+= -I${CURDIR}/../../.. -I${CURDIR}/../../../.. -I${CURDIR} -I. 601.2SmattCPPFLAGS+= -I${CURDIR}/../../../../../common/include 611.2SmattCPPFLAGS+= -DRELOC=0x${RELOC} 621.2Smatt 631.2Smatt# 641.2Smatt# XXXXX FIXME 651.2Smatt# 661.2SmattCPPFLAGS+= -DSPARC_BOOT_AOUT 671.2SmattCPPFLAGS+= -DSPARC_BOOT_ELF 681.2SmattCPPFLAGS+= -DSPARC_BOOT_UFS 691.2SmattCPPFLAGS+= -DSPARC_BOOT_NFS 701.2SmattCPPFLAGS+= -DSPARC_BOOT_CD9660 711.2Smatt 721.2Smatt### find out what to use for libkern 731.2SmattKERN_AS= library 741.2Smatt.include "${S}/lib/libkern/Makefile.inc" 751.2SmattLIBKERN= ${KERNLIB} 761.2Smatt 771.2Smatt### find out what to use for libz 781.2SmattZ_AS= library 791.2Smatt.include "${S}/lib/libz/Makefile.inc" 801.2SmattLIBZ= ${ZLIB} 811.2Smatt 821.2Smatt### find out what to use for libsa 831.2SmattSA_AS= library 841.2SmattSAMISCMAKEFLAGS= SA_USE_LOADFILE=yes SA_USE_CREAD=yes 851.2SmattSAMISCCPPFLAGS+= -DCOMPAT_SOLARIS_UFS 861.2Smatt.include "${S}/lib/libsa/Makefile.inc" 871.2SmattLIBSA= ${SALIB} 881.2Smatt 891.2Smatt.include "${S}/conf/newvers_stand.mk" 901.2Smatt 911.2Smatt.include <bsd.own.mk> 921.2Smatt.include <bsd.klinks.mk> 931.2Smatt 941.2Smatt.if CROSS 951.2Smatt${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 961.2Smatt ${_MKTARGET_LINK} 971.2Smatt ${LD} -N -p -Ttext ${RELOC} -e ${ENTRY} >lderr -o ${PROG} \ 981.2Smatt ${OBJS} -L${SADST} -lsa -L${ZDST} -lz -L${KERNDST} -lkern # solaris linker 991.2Smatt.else 1001.2Smatt${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 1011.2Smatt ${_MKTARGET_LINK} 1021.2Smatt ${LD} -X -N -S -Ttext ${RELOC} -e ${ENTRY} -o ${PROG} \ 1031.2Smatt ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} # native linker 1041.2Smatt.endif 1051.2Smatt 1061.2Smatt.include <bsd.prog.mk> 1071.2Smatt 1081.2SmattCPUFLAGS+= -mcpu=v9 1091.2SmattAFLAGS+= -Wa,-Av9a 1101.2SmattAFLAGS+= -x assembler-with-cpp -D_LOCORE -D__ELF__ 1111.2Smatt 1121.2SmattNORMAL_S= ${CC} ${AFLAGS} ${AFLAGS.${<:T}} ${CPPFLAGS} -c $< 1131.2Smattsrt0.o: srt0.s 1141.2Smatt ${NORMAL_S} 1151.2Smatt 1161.2Smatthvcall.o: hvcall.S 1171.2Smatt ${NORMAL_S} 1181.2Smatt 1191.2Smatt 1201.2Smatt# Explicit dependency for this. 1211.2Smattboot.o: boot.c 1221.2Smatt