11.61Sthorpej# $NetBSD: Makefile,v 1.61 2025/10/05 21:18:29 thorpej Exp $ 21.1Slukem# 31.14Sbjh21 41.14Sbjh21.include <bsd.own.mk> 51.1Slukem 61.1SlukemPROG= installboot 71.1SlukemMAN= installboot.8 81.34SdslSRCS= installboot.c sum.c machines.c fstypes.c 91.34Sdsl 101.34SdslARCH_XLAT= amd64-i386.c news68k-news.c newsmips-news.c 111.34SdslARCH_XLAT+= sun2-sun68k.c sun3-sun68k.c 121.34Sdsl 131.34Sdsl.if !defined(SMALLPROG) && !defined(ARCH_FILES) 141.52SthorpejARCH_FILES= alpha.c amiga.c 151.60StsutsuiARCH_FILES+= evbarm.c evbmips.c ews4800mips.c 161.52SthorpejARCH_FILES+= hp300.c hppa.c 171.52SthorpejARCH_FILES+= i386.c 181.52SthorpejARCH_FILES+= landisk.c 191.52SthorpejARCH_FILES+= macppc.c 201.52SthorpejARCH_FILES+= news.c next68k.c 211.52SthorpejARCH_FILES+= pmax.c 221.61SthorpejARCH_FILES+= riscv.c 231.52SthorpejARCH_FILES+= sparc.c sparc64.c sun68k.c 241.52SthorpejARCH_FILES+= vax.c 251.52SthorpejARCH_FILES+= x68k.c 261.34Sdsl.else 271.34SdslARCH_FILES?= ${ARCH_XLAT:M${MACHINE}-*:S/${MACHINE}-//} 281.34Sdsl.if empty(ARCH_FILES) 291.34SdslARCH_FILES= ${MACHINE}.c 301.34Sdsl.endif 311.54SmartinCOPTS.machines.c+= -DSINGLE_ARCH=ib_mach_${MACHINE} 321.34Sdsl.endif 331.34Sdsl 341.34SdslSRCS+=${ARCH_FILES} 351.34Sdsl 361.61Sthorpej.if !empty(ARCH_FILES:C/(evbarm|evbmips|riscv)/evboard/:Mevboard.c) 371.52SthorpejSRCS+=evboards.c 381.52Sthorpej.endif 391.52Sthorpej 401.61Sthorpej.if !empty(ARCH_FILES:C/(evbarm|evbmips|riscv)/fdt/:Mfdt.c) 411.52SthorpejFDTDIR= ${.CURDIR}/../../sys/external/bsd/libfdt/dist 421.52Sthorpej.PATH: ${FDTDIR} 431.52SthorpejCPPFLAGS+= -DSUPPORT_FDT -I${FDTDIR} 441.52SthorpejSRCS+=fdt.c fdt_ro.c fdt_strerror.c 451.52Sthorpej# XXX libfdt has some sign-comparison issues 461.52SthorpejCOPTS.fdt.c+= -Wno-error=sign-compare 471.52SthorpejCOPTS.fdt_ro.c+= -Wno-error=sign-compare 481.52SthorpejCOPTS.fdt_strerror.c+= -Wno-error=sign-compare 491.52Sthorpej.endif 501.52Sthorpej 511.52Sthorpej 521.52Sthorpej.if !defined(HOSTPROGNAME) 531.61Sthorpej.if !empty(ARCH_FILES:C/(evbarm|evbmips|riscv)/ofw/:Mofw.c) 541.52SthorpejCPPFLAGS+= -DSUPPORT_OPENFIRMWARE 551.52Sthorpej.endif 561.52Sthorpej.endif 571.52Sthorpej 581.34Sdsl.if empty(ARCH_FILES:C/(macppc|news|sparc|sun68k|x68k)/stg2/:Mstg2.c) 591.52SthorpejCPPFLAGS+= -DNO_STAGE2 601.34Sdsl.else 611.34SdslSRCS+= bbinfo.c 621.34Sdsl 631.34Sdsl# fstypes are only needed for 'stage2' and then only from bbinfo. 641.34SdslSRCS+= ffs.c 651.34Sdsl.if SMALLPROG 661.34SdslCPPFLAGS+= -DNO_FFS_SWAP 671.34Sdsl.else 681.34SdslSRCS+= ffs_bswap.c 691.34Sdsl.endif 701.38Stsutsui#SRCS+= ext2fs.c ext2fs_bswap.c 711.34Sdsl.endif 721.1Slukem 731.59Stsutsui.if !empty(ARCH_FILES:C/(hp300|macppc)/cd9660/:Mcd9660.c) && \ 741.59Stsutsui !defined(SMALLPROG) 751.59StsutsuiCPPFLAGS+= -DSUPPORT_CD9660 761.59StsutsuiSRCS+= cd9660.c cd9660_util.c 771.59Stsutsui 781.59Stsutsui.if !make(obj) && !make(clean) && !make(cleandir) 791.59Stsutsui.BEGIN: 801.59Stsutsui -rm -rf fs 811.59Stsutsui ${HOST_INSTALL_DIR} fs 821.59Stsutsui ${HOST_INSTALL_DIR} fs/cd9660 831.59Stsutsui ${HOST_LN} -s ${NETBSDSRCDIR}/sys/fs/unicode.h fs 841.59Stsutsui ${HOST_LN} -s ${NETBSDSRCDIR}/sys/fs/cd9660/iso.h fs/cd9660 851.59Stsutsui ${HOST_LN} -s ${NETBSDSRCDIR}/sys/fs/cd9660/cd9660_extern.h fs/cd9660 861.59Stsutsui.endif 871.59Stsutsui 881.59Stsutsuicleandir distclean: cleaninc 891.59Stsutsui 901.59Stsutsuicleaninc: 911.59Stsutsui -rm -rf fs 921.59Stsutsui.endif 931.59Stsutsui 941.17SlukemUFSSRC= ${NETBSDSRCDIR}/sys/ufs 951.59StsutsuiCD9660SRC= ${NETBSDSRCDIR}/sys/fs/cd9660 961.12SlukemCPPFLAGS+= -I${.CURDIR} -I. 971.59Stsutsui.PATH: ${.CURDIR}/arch ${UFSSRC}/ffs ${UFSSRC}/ext2fs ${CD9660SRC} 981.26Smrg 991.36Smrg.if !defined(HOSTPROGNAME) 1001.35Smrg.for f in i386 macppc 1011.35SmrgCOPTS.${f}.c+= -Wno-pointer-sign 1021.35Smrg.endfor 1031.35Smrg 1041.52Sthorpej.if !empty(SRCS:Mevboards.c) 1051.52SthorpejLDADD+= -lprop 1061.52SthorpejDPADD+= ${LIBPROP} 1071.52Sthorpej.endif 1081.52Sthorpej 1091.49SmlelstvLDADD+= -lutil 1101.49SmlelstvDPADD+= ${LIBUTIL} 1111.50Sjoerg.endif 1121.49Smlelstv 1131.58SlukemCWARNFLAGS+= ${CC_WNO_ADDRESS_OF_PACKED_MEMBER} 1141.51Sjoerg 1151.1Slukem.include <bsd.prog.mk> 116