Makefile revision 1.26
11.26Stsutsui# $NetBSD: Makefile,v 1.26 2025/04/27 04:44:44 tsutsui 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.24SchristosBINKERNEL_SIZE = 2143232 # '2 * 1024 * 1024 + 45 * 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.22Schristos.include "${S}/conf/newvers_stand.mk" 551.1Stsutsui 561.1StsutsuiTEXTADDR = 0xa0a00000 571.5SlukemLINKFLAGS = -T ${S}/arch/mips/conf/stand.ldscript -Ttext ${TEXTADDR} \ 581.1Stsutsui -e start -N 591.1StsutsuiCOFFLDFLAGS = -T ${COMMON}/coffboot.ldscript -N 601.1Stsutsui 611.1StsutsuiMIPSFLAGS = -mips1 -G 0 -mno-abicalls 621.1StsutsuiDEBUGFLAGS = -Wall -Werror 631.1StsutsuiDEBUGFLAGS += -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith 641.1StsutsuiDEBUGFLAGS += -Wno-format-zero-length -Wno-sign-compare 651.25StsutsuiOPTFLAGS = -Os -mmemcpy -fno-unwind-tables 661.1StsutsuiFLAGS = ${MIPSFLAGS} ${DEBUGFLAGS} ${OPTFLAGS} 671.1StsutsuiAFLAGS = -xassembler-with-cpp -D_LOCORE ${FLAGS} 681.1StsutsuiCFLAGS = ${FLAGS} -ffreestanding 691.1Stsutsui 701.1StsutsuiCPPFLAGS += -D_STANDALONE -DSUPPORT_BOOTP 711.1StsutsuiCPPFLAGS += -nostdinc -I${.OBJDIR} -I${.CURDIR} -I${COMMON} -I${S} 721.1StsutsuiCPPFLAGS += -D__daddr_t=int32_t 731.2Stsutsui#CPPFLAGS += -DBOOTP_DEBUG -DNETIF_DEBUG -DETHER_DEBUG -DNFS_DEBUG 741.2Stsutsui#CPPFLAGS += -DRPC_DEBUG -DRARP_DEBUG -DNET_DEBUG -DDEBUG -DPARANOID 751.1Stsutsui 761.1StsutsuiCLEANFILES += ${BINKERNEL_DUMMY_O} ${BINKERNEL_O} 771.3StsutsuiCLEANFILES += ${PROG} ${PROG}.elf ${PROG}.coff ${PROG}.tmp ${PROG}.dis 781.1StsutsuiCLEANFILES += ${COFFHDRFIX} 791.3StsutsuiCLEANFILES += ${BOOT_KERNEL} ${BOOT_KERNEL}.elf ${BOOT_KERNEL}.tmp 801.1StsutsuiCLEANFILES += ${BOOT_KERNEL}.gz ${BOOT_KERNEL}.gz.tmp 811.1Stsutsui 821.1Stsutsui.include "${S}/lib/libkern/Makefile.inc" 831.1StsutsuiLIBKERN= ${KERNLIB} 841.1Stsutsui 851.1Stsutsui.include "${S}/lib/libz/Makefile.inc" 861.1StsutsuiLIBZ= ${ZLIB} 871.1Stsutsui 881.15StsutsuiCPPFLAGS+= -DLIBSA_ENABLE_LS_OP 891.15StsutsuiSAMISCMAKEFLAGS= SA_USE_CREAD=yes SA_USE_LOADFILE=yes SA_ENABLE_LS_OP=yes 901.1Stsutsui.include "${S}/lib/libsa/Makefile.inc" 911.1StsutsuiLIBSA= ${SALIB} 921.1Stsutsui 931.1StsutsuiLIBS = ${LIBSA} ${LIBZ} ${LIBKERN} 941.1Stsutsui 951.1Stsutsui# fixup GNU binutils file offset error. 961.1Stsutsuicoffhdrfix: ${COMMON}/coffhdrfix.c 971.1Stsutsui ${HOST_CC} -o ${COFFHDRFIX} ${COMMON}/coffhdrfix.c 981.1Stsutsui 991.18Stsutsuicleandir distclean: .WAIT cleanlibdir 1001.1Stsutsui 1011.1Stsutsuicleanlibdir: 1021.1Stsutsui -rm -rf lib 1031.1Stsutsui 1041.1Stsutsui${BINKERNEL_DUMMY_O}: ${BINKERNEL_C} 1051.6Slukem ${_MKTARGET_COMPILE} 1061.1Stsutsui ${COMPILE.c} -DKERNEL_SIZE=0 ${BINKERNEL_C} -o ${.TARGET} 1071.1Stsutsui 1081.1Stsutsui${BINKERNEL_O}: ${BINKERNEL_C} 1091.6Slukem ${_MKTARGET_COMPILE} 1101.2Stsutsui ${COMPILE.c} -DKERNEL_SIZE=${BINKERNEL_SIZE} ${BINKERNEL_C} \ 1111.2Stsutsui -o ${.TARGET} 1121.1Stsutsui 1131.3Stsutsuiall realall: ${PROG}.coff ${BOOT_KERNEL}.gz 1141.1Stsutsui 1151.1Stsutsui${PROG}: ${BINKERNEL_DUMMY_O} ${OBJS} ${LIBS} 1161.6Slukem ${_MKTARGET_LINK} 1171.5Slukem ${LD} ${LINKFLAGS} -S -o ${PROG}.elf ${OBJS} ${LIBS} \ 1181.5Slukem ${BINKERNEL_DUMMY_O} 1191.1Stsutsui ${OBJDUMP} -h ${PROG}.elf 1201.3Stsutsui# ${OBJDUMP} -m mips:4000 -d ${PROG}.elf > ${PROG}.dis 1211.1Stsutsui mv ${PROG}.elf ${PROG} 1221.1Stsutsui ls -al ${PROG} 1231.1Stsutsui 1241.9Stsutsui.include <bsd.klinks.mk> 1251.2Stsutsui.include <bsd.prog.mk> 1261.2Stsutsui 1271.3Stsutsui${PROG}.coff: ${PROG} 1281.6Slukem ${_MKTARGET_CREATE} 1291.23Schristos ${MIPS_ELF2ECOFF} ${PROG} ${.TARGET}.tmp 1301.3Stsutsui mv ${.TARGET}.tmp ${.TARGET} 1311.26Stsutsui 1321.3Stsutsui${BOOT_KERNEL}.gz: ${BINKERNEL_O} ${OBJS} ${LIBS} 1331.6Slukem ${_MKTARGET_LINK} 1341.5Slukem ${LD} ${LINKFLAGS} -o ${BOOT_KERNEL}.elf ${OBJS} ${LIBS} \ 1351.1Stsutsui ${BINKERNEL_O} 1361.3Stsutsui mv ${BOOT_KERNEL}.elf ${BOOT_KERNEL} 1371.3Stsutsui ${OBJDUMP} -h ${BOOT_KERNEL} 1381.19Sapb ${TOOL_GZIP_N} -9c ${BOOT_KERNEL} > ${.TARGET}.tmp 1391.1Stsutsui mv ${.TARGET}.tmp ${.TARGET} 1401.3Stsutsui ls -al ${.TARGET} 1411.13Smrg 1421.13SmrgCOPTS.ustarfs.c+= -fno-strict-aliasing 143