11.42Schristos# $NetBSD: Makefile,v 1.42 2020/04/04 17:57:16 christos Exp $ 21.34Skamil 31.35SkamilNOLIBCSANITIZER= # defined 41.34SkamilNOSANITIZER= # defined 51.1Slukem 61.1Slukem.include <bsd.own.mk> 71.1Slukem.include "${NETBSDSRCDIR}/distrib/common/Makefile.distrib" 81.1Slukem 91.1SlukemWARNS= 1 101.21Smrg# XXX 111.21Smrg.if ${MACHINE_ARCH} != "m68000" 121.31SmattDBG+= -Os 131.21Smrg.endif 141.21Smrg 151.39SchristosCRUNCHGEN_FLAGS+=-V DBG="${DBG}" 161.1Slukem 171.33Schristos.if ${MKSTATICPIE:Uno} == "yes" 181.33SchristosCFLAGS+=-fPIE 191.39SchristosCRUNCHGEN_FLAGS+=-V LDSTATIC="-static -pie" 201.39Schristos.else 211.39SchristosCRUNCHGEN_FLAGS+=-V LDSTATIC="-static" -V NOPIE= 221.33Schristos.endif 231.33Schristos 241.39SchristosCRUNCHGEN_FLAGS+=-V NOLIBCSANITIZER= -V NOSANITIZER= -V NOMAN= 251.39Schristos 261.8SlukemRESCUEDIR= /rescue 271.1SlukemCRUNCHBIN= rescue 281.8SlukemCRUNCHENV= RESCUEDIR=${RESCUEDIR} 291.6SlukemSMALLPROG= 0 301.1SlukemLISTS= ${.CURDIR}/list 311.1SlukemTARGETDIR= ${DESTDIR}/rescue 321.1SlukemPARSELISTENV+= TARGETDIR=${TARGETDIR:Q} 331.1Slukem 341.28Smartin.for f in pdisk 351.29SchristosPROG_${f}!= cd ${NETBSDSRCDIR}/external/bsd/${f}/bin && ${MAKE} -V PROG 361.28Smartin.if (${PROG_${f}} != "") 371.28SmartinLISTS+= ${.CURDIR}/list.${f} 381.28Smartin.endif 391.28Smartin.endfor 401.28Smartin 411.12Slukem.if ${USE_INET6} != "no" 421.13SlukemLISTS+= ${.CURDIR}/list.inet6 431.12Slukem.endif 441.12Slukem 451.14SlukemLISTS+= ${.CURDIR}/list.crypto 461.16SlukemCRUNCHENV+= MKKERBEROS=no # for ssh 471.14Slukem 481.22SmrgLISTS+= ${.CURDIR}/list.ldd 491.22SmrgLDD_ELF32DIR!= cd ${NETBSDSRCDIR}/usr.bin/ldd/elf32 && ${PRINTOBJDIR} 501.22SmrgLDD_ELF64DIR!= cd ${NETBSDSRCDIR}/usr.bin/ldd/elf64 && ${PRINTOBJDIR} 511.23ShePARSELISTENV+= LDD_ELF32DIR=${LDD_ELF32DIR} LDD_ELF64DIR=${LDD_ELF64DIR} 521.8Slukem 531.17Slukem# Specially built objects to override the behaviour of 541.17Slukem# various library functions 551.17Slukem# 561.17Slukem 571.41SchristosOVERRIDEOBJS= rcmd.o 581.41Schristos.PATH: ${NETBSDSRCDIR}/lib/libc/net 591.17SlukemCPPFLAGS.rcmd.c+=-I${NETBSDSRCDIR}/lib/libc/include -DRESCUEDIR=\"${RESCUEDIR}\" 601.17Slukem 611.17SlukemLIBOVERRIDE= liboverride.o 621.17Slukem${LIBOVERRIDE}: ${OVERRIDEOBJS} 631.18Slukem ${_MKTARGET_LINK} 641.17Slukem ${LD} -r -o $@ ${OVERRIDEOBJS} 651.17Slukem 661.26SroyCLEANFILES+= ${OVERRIDEOBJS} ${LIBOVERRIDE} 671.17Slukem 681.17Slukem${CRUNCHBIN}: ${LIBOVERRIDE} 691.17Slukem 701.17Slukem 711.17Slukem# The primary target ... 721.17Slukem# 731.17Slukem 741.9StronCLEANFILES+= rescue.unstripped 751.1Slukem 761.1Slukem.include "${DISTRIBDIR}/common/Makefile.crunch" 771.1Slukem 781.26Sroyrealall: ${CRUNCHBIN} 791.1Slukem 801.1Slukeminstall: ${CRUNCHBIN} 811.19Slukem# XXX this MKMSG doesn't line up 821.15Slukem ${_MKMSG} "populate ${TARGETDIR}" 831.1Slukem ${PARSELIST} -v mode=install ${LISTS} | ${MAKE} -f - install 841.1Slukem 851.1Slukem.include <bsd.prog.mk> 86