Home | History | Annotate | Line # | Download | only in rescue
Makefile revision 1.34
      1 #	$NetBSD: Makefile,v 1.34 2018/06/21 10:44:01 kamil Exp $
      2 
      3 NOSANITIZER=		# defined
      4 
      5 .include <bsd.own.mk>
      6 .include "${NETBSDSRCDIR}/distrib/common/Makefile.distrib"
      7 
      8 WARNS=		1
      9 # XXX
     10 .if ${MACHINE_ARCH} != "m68000"
     11 DBG+=		-Os
     12 .endif
     13 
     14 CRUNCHGEN_FLAGS=-d "${DBG}"
     15 
     16 .if ${MKSTATICPIE:Uno} == "yes"
     17 CRUNCHGEN_FLAGS+=-p
     18 CFLAGS+=-fPIE
     19 .endif
     20 
     21 RESCUEDIR=	/rescue
     22 CRUNCHBIN=	rescue
     23 CRUNCHENV=	RESCUEDIR=${RESCUEDIR}
     24 SMALLPROG=	0
     25 LISTS=		${.CURDIR}/list
     26 TARGETDIR=	${DESTDIR}/rescue
     27 PARSELISTENV+=  TARGETDIR=${TARGETDIR:Q}
     28 
     29 .for f in ldconfig
     30 PROG_${f}!=	cd ${NETBSDSRCDIR}/sbin/${f} && ${MAKE} -V PROG
     31 .if (${PROG_${f}} != "")
     32 LISTS+=		${.CURDIR}/list.${f}
     33 .endif
     34 .endfor
     35 
     36 .for f in pdisk
     37 PROG_${f}!=	cd ${NETBSDSRCDIR}/external/bsd/${f}/bin && ${MAKE} -V PROG
     38 .if (${PROG_${f}} != "")
     39 LISTS+=		${.CURDIR}/list.${f}
     40 .endif
     41 .endfor
     42 
     43 .if ${USE_INET6} != "no"
     44 LISTS+=		${.CURDIR}/list.inet6
     45 .endif
     46 
     47 LISTS+=		${.CURDIR}/list.crypto
     48 CRUNCHENV+=	MKKERBEROS=no		# for ssh
     49 
     50 LISTS+=		${.CURDIR}/list.ldd
     51 LDD_ELF32DIR!=	cd ${NETBSDSRCDIR}/usr.bin/ldd/elf32 && ${PRINTOBJDIR}
     52 LDD_ELF64DIR!=	cd ${NETBSDSRCDIR}/usr.bin/ldd/elf64 && ${PRINTOBJDIR}
     53 PARSELISTENV+=	LDD_ELF32DIR=${LDD_ELF32DIR} LDD_ELF64DIR=${LDD_ELF64DIR}
     54 
     55 SMB_LIBDIR!=	cd ${NETBSDSRCDIR}/external/bsd/smbfs/lib/libsmb && ${PRINTOBJDIR}
     56 PARSELISTENV+=	SMB_LIBDIR=${SMB_LIBDIR}
     57 
     58 #	Specially built objects to override the behaviour of
     59 #	various library functions
     60 #
     61 
     62 OVERRIDEOBJS=	rcmd.o
     63 .PATH:	${NETBSDSRCDIR}/lib/libc/net
     64 CPPFLAGS.rcmd.c+=-I${NETBSDSRCDIR}/lib/libc/include -DRESCUEDIR=\"${RESCUEDIR}\"
     65 
     66 LIBOVERRIDE=	liboverride.o
     67 ${LIBOVERRIDE}: ${OVERRIDEOBJS}
     68 	${_MKTARGET_LINK}
     69 	${LD} -r -o $@ ${OVERRIDEOBJS}
     70 
     71 CLEANFILES+=	${OVERRIDEOBJS} ${LIBOVERRIDE}
     72 
     73 ${CRUNCHBIN}:	${LIBOVERRIDE}
     74 
     75 
     76 #	The primary target ...
     77 #
     78 
     79 CLEANFILES+=	rescue.unstripped
     80 
     81 .include "${DISTRIBDIR}/common/Makefile.crunch"
     82 
     83 realall: ${CRUNCHBIN}
     84 
     85 install: ${CRUNCHBIN}
     86 # XXX this MKMSG doesn't line up
     87 	${_MKMSG} "populate ${TARGETDIR}"
     88 	${PARSELIST} -v mode=install ${LISTS} | ${MAKE} -f - install
     89 
     90 .include <bsd.prog.mk>
     91