Makefile revision 1.21
11.21Schristos# $NetBSD: Makefile,v 1.21 2016/09/20 20:56:57 christos Exp $ 21.1Stsutsui 31.4StsutsuiWARNS ?= 1 41.1StsutsuiNOMAN = 51.20SchristosNOPIE = 61.1Stsutsui 71.1StsutsuiBINMODE = 444 81.1Stsutsui 91.1StsutsuiS = ${.CURDIR}/../../../.. 101.1StsutsuiCOMMON = ${.CURDIR}/../common 111.1Stsutsui 121.1StsutsuiLIBSADIR = ${S}/lib/libsa 131.1StsutsuiSYSVBFSDIR = ${S}/fs/sysvbfs 141.1StsutsuiEWS4800MIPSDIR = ${.CURDIR}/../../ews4800mips 151.1StsutsuiDEVDIR = ${.CURDIR}/../../dev 161.1Stsutsui 171.9Stsutsui# XXX SHOULD NOT NEED TO DEFINE THESE! 181.9StsutsuiLIBCRT0= 191.16StsutsuiLIBCRTI= 201.9StsutsuiLIBC= 211.9StsutsuiLIBCRTBEGIN= 221.9StsutsuiLIBCRTEND= 231.9Stsutsui 241.1Stsutsui.PATH: ${COMMON} ${LIBSADIR} ${SYSVBFSDIR} \ 251.1Stsutsui ${EWS4800MIPSDIR} ${SBDDIR} ${DEVDIR} 261.1Stsutsui 271.1StsutsuiCOFFHDRFIX = ${.OBJDIR}/coffhdrfix 281.1Stsutsui 291.1StsutsuiPROG = boot 301.1StsutsuiBOOT_KERNEL = boot_kernel 311.3StsutsuiFILES += ${PROG}.coff ${BOOT_KERNEL}.gz # XXX hack to install these 321.1StsutsuiSRCS = start.S boot.c prompt.c delay.c cmd.c loader.c 331.1StsutsuiSRCS += bfs_subr.o disk.c diskutil.c 341.1StsutsuiSRCS += devopen.c datafs.c bootfs.c ustarfs.c 351.1StsutsuiSRCS += lance.c ether_if.c 361.1StsutsuiSRCS += device_test.c cop0.c mem.c 371.1StsutsuiSRCS += boot_device.c floppy_2d.c floppy_2hd_ibmpc.c 381.1Stsutsui#SRCS += floppy_2hc.c 391.1StsutsuiSRCS += console.c cons_rom.c cons_fb.c cons_zskbd.c cons_zs.c 401.1StsutsuiBINKERNEL_C = ${COMMON}/binkernel.c 411.21SchristosBINKERNEL_SIZE = '2 * 1024 * 1024 + 32 * 1024' 421.1StsutsuiBINKERNEL_O = binkernel.o 431.1StsutsuiBINKERNEL_DUMMY_O= binkernel_dummy.o 441.1Stsutsui 451.1Stsutsui# ${S}/lib/libsa 461.1StsutsuiSRCS += dev_net.c 471.1Stsutsui# ${S}/fs/sysvbfs 481.1StsutsuiSRCS += bfs.c 491.1Stsutsui# ../../dev 501.1StsutsuiSRCS += ga.c 511.1Stsutsui# ../../ews4800mips 521.1StsutsuiSRCS += pdinfo.c vtoc.c 531.1Stsutsui 541.1Stsutsui.PHONY: vers.c 551.1Stsutsuivers.c: version 561.7Slukem ${_MKTARGET_CREATE} 571.12Sjoerg ${HOST_SH} ${S}/conf/newvers_stand.sh ${.CURDIR}/version ${MACHINE} 581.1Stsutsui 591.1StsutsuiSRCS+= vers.c 601.1StsutsuiCLEANFILES+= vers.c 611.1Stsutsui 621.1StsutsuiTEXTADDR = 0xa0a00000 631.5SlukemLINKFLAGS = -T ${S}/arch/mips/conf/stand.ldscript -Ttext ${TEXTADDR} \ 641.1Stsutsui -e start -N 651.1StsutsuiCOFFLDFLAGS = -T ${COMMON}/coffboot.ldscript -N 661.1Stsutsui 671.1StsutsuiMIPSFLAGS = -mips1 -G 0 -mno-abicalls 681.1StsutsuiDEBUGFLAGS = -Wall -Werror 691.1StsutsuiDEBUGFLAGS += -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith 701.1StsutsuiDEBUGFLAGS += -Wno-format-zero-length -Wno-sign-compare 711.1StsutsuiOPTFLAGS = -Os -mmemcpy 721.1StsutsuiFLAGS = ${MIPSFLAGS} ${DEBUGFLAGS} ${OPTFLAGS} 731.1StsutsuiAFLAGS = -xassembler-with-cpp -D_LOCORE ${FLAGS} 741.1StsutsuiCFLAGS = ${FLAGS} -ffreestanding 751.1Stsutsui 761.1StsutsuiCPPFLAGS += -D_STANDALONE -DSUPPORT_BOOTP 771.1StsutsuiCPPFLAGS += -nostdinc -I${.OBJDIR} -I${.CURDIR} -I${COMMON} -I${S} 781.1StsutsuiCPPFLAGS += -D__daddr_t=int32_t 791.2Stsutsui#CPPFLAGS += -DBOOTP_DEBUG -DNETIF_DEBUG -DETHER_DEBUG -DNFS_DEBUG 801.2Stsutsui#CPPFLAGS += -DRPC_DEBUG -DRARP_DEBUG -DNET_DEBUG -DDEBUG -DPARANOID 811.1Stsutsui 821.1StsutsuiCLEANFILES += ${BINKERNEL_DUMMY_O} ${BINKERNEL_O} 831.3StsutsuiCLEANFILES += ${PROG} ${PROG}.elf ${PROG}.coff ${PROG}.tmp ${PROG}.dis 841.1StsutsuiCLEANFILES += ${COFFHDRFIX} 851.3StsutsuiCLEANFILES += ${BOOT_KERNEL} ${BOOT_KERNEL}.elf ${BOOT_KERNEL}.tmp 861.1StsutsuiCLEANFILES += ${BOOT_KERNEL}.gz ${BOOT_KERNEL}.gz.tmp 871.1Stsutsui 881.1Stsutsui.include "${S}/lib/libkern/Makefile.inc" 891.1StsutsuiLIBKERN= ${KERNLIB} 901.1Stsutsui 911.1Stsutsui.include "${S}/lib/libz/Makefile.inc" 921.1StsutsuiLIBZ= ${ZLIB} 931.1Stsutsui 941.15StsutsuiCPPFLAGS+= -DLIBSA_ENABLE_LS_OP 951.15StsutsuiSAMISCMAKEFLAGS= SA_USE_CREAD=yes SA_USE_LOADFILE=yes SA_ENABLE_LS_OP=yes 961.1Stsutsui.include "${S}/lib/libsa/Makefile.inc" 971.1StsutsuiLIBSA= ${SALIB} 981.1Stsutsui 991.1StsutsuiLIBS = ${LIBSA} ${LIBZ} ${LIBKERN} 1001.1Stsutsui 1011.1Stsutsui# fixup GNU binutils file offset error. 1021.1Stsutsuicoffhdrfix: ${COMMON}/coffhdrfix.c 1031.1Stsutsui ${HOST_CC} -o ${COFFHDRFIX} ${COMMON}/coffhdrfix.c 1041.1Stsutsui 1051.18Stsutsuicleandir distclean: .WAIT cleanlibdir 1061.1Stsutsui 1071.1Stsutsuicleanlibdir: 1081.1Stsutsui -rm -rf lib 1091.1Stsutsui 1101.1Stsutsui${BINKERNEL_DUMMY_O}: ${BINKERNEL_C} 1111.6Slukem ${_MKTARGET_COMPILE} 1121.1Stsutsui ${COMPILE.c} -DKERNEL_SIZE=0 ${BINKERNEL_C} -o ${.TARGET} 1131.1Stsutsui 1141.1Stsutsui${BINKERNEL_O}: ${BINKERNEL_C} 1151.6Slukem ${_MKTARGET_COMPILE} 1161.2Stsutsui ${COMPILE.c} -DKERNEL_SIZE=${BINKERNEL_SIZE} ${BINKERNEL_C} \ 1171.2Stsutsui -o ${.TARGET} 1181.1Stsutsui 1191.3Stsutsuiall realall: ${PROG}.coff ${BOOT_KERNEL}.gz 1201.1Stsutsui 1211.1Stsutsui${PROG}: ${BINKERNEL_DUMMY_O} ${OBJS} ${LIBS} 1221.6Slukem ${_MKTARGET_LINK} 1231.5Slukem ${LD} ${LINKFLAGS} -S -o ${PROG}.elf ${OBJS} ${LIBS} \ 1241.5Slukem ${BINKERNEL_DUMMY_O} 1251.1Stsutsui ${OBJDUMP} -h ${PROG}.elf 1261.3Stsutsui# ${OBJDUMP} -m mips:4000 -d ${PROG}.elf > ${PROG}.dis 1271.1Stsutsui mv ${PROG}.elf ${PROG} 1281.1Stsutsui ls -al ${PROG} 1291.1Stsutsui 1301.9Stsutsui.include <bsd.klinks.mk> 1311.2Stsutsui.include <bsd.prog.mk> 1321.2Stsutsui 1331.3Stsutsui${PROG}.coff: ${PROG} 1341.6Slukem ${_MKTARGET_CREATE} 1351.3Stsutsui ${ELF2ECOFF} ${PROG} ${.TARGET}.tmp 1361.3Stsutsui mv ${.TARGET}.tmp ${.TARGET} 1371.3Stsutsui 1381.3Stsutsui${BOOT_KERNEL}.gz: ${BINKERNEL_O} ${OBJS} ${LIBS} 1391.6Slukem ${_MKTARGET_LINK} 1401.5Slukem ${LD} ${LINKFLAGS} -o ${BOOT_KERNEL}.elf ${OBJS} ${LIBS} \ 1411.1Stsutsui ${BINKERNEL_O} 1421.3Stsutsui mv ${BOOT_KERNEL}.elf ${BOOT_KERNEL} 1431.3Stsutsui ${OBJDUMP} -h ${BOOT_KERNEL} 1441.19Sapb ${TOOL_GZIP_N} -9c ${BOOT_KERNEL} > ${.TARGET}.tmp 1451.1Stsutsui mv ${.TARGET}.tmp ${.TARGET} 1461.3Stsutsui ls -al ${.TARGET} 1471.13Smrg 1481.13SmrgCOPTS.ustarfs.c+= -fno-strict-aliasing 149