1103770Sjake#	$NetBSD: Makefile,v 1.26 2010/02/13 11:21:55 roy Exp $
2103770Sjake
3103770Sjake.include <bsd.own.mk>
4103770Sjake.include "${NETBSDSRCDIR}/distrib/common/Makefile.distrib"
5103770Sjake
6103770SjakeWARNS=		1
7103770Sjake# XXX
8103770Sjake.if ${MACHINE_ARCH} != "m68000"
9103770SjakeDBG=		-Os
10103770Sjake.endif
11103770Sjake
12103770SjakeCRUNCHGEN_FLAGS=-d "${DBG}"
13103770Sjake
14103770SjakeRESCUEDIR=	/rescue
15103770SjakeCRUNCHBIN=	rescue
16103770SjakeCRUNCHENV=	RESCUEDIR=${RESCUEDIR}
17103770SjakeSMALLPROG=	0
18103770SjakeLISTS=		${.CURDIR}/list
19103770SjakeTARGETDIR=	${DESTDIR}/rescue
20103770SjakePARSELISTENV+=  TARGETDIR=${TARGETDIR:Q}
21103770Sjake
22103770Sjake.for f in ldconfig pdisk
23103770SjakePROG_${f}!=	cd ${NETBSDSRCDIR}/sbin/${f} && ${MAKE} -V PROG
24103770Sjake.if (${PROG_${f}} != "")
25103770SjakeLISTS+=		${.CURDIR}/list.${f}
26103770Sjake.endif
27103770Sjake.endfor
28103770Sjake
29103770Sjake.if ${USE_INET6} != "no"
30103770SjakeLISTS+=		${.CURDIR}/list.inet6
31103770Sjake.endif
32103770Sjake
33103770Sjake.if ${MKCRYPTO} != "no"
34103770SjakeLISTS+=		${.CURDIR}/list.crypto
35116189SobrienCRUNCHENV+=	MKKERBEROS=no		# for ssh
36116189Sobrien.endif
37116189Sobrien
38140122SbrianLISTS+=		${.CURDIR}/list.ldd
39140122SbrianLDD_ELF32DIR!=	cd ${NETBSDSRCDIR}/usr.bin/ldd/elf32 && ${PRINTOBJDIR}
40103770SjakeLDD_ELF64DIR!=	cd ${NETBSDSRCDIR}/usr.bin/ldd/elf64 && ${PRINTOBJDIR}
41103770SjakePARSELISTENV+=	LDD_ELF32DIR=${LDD_ELF32DIR} LDD_ELF64DIR=${LDD_ELF64DIR}
42103770Sjake
43103770Sjake#	Specially built objects to override the behaviour of
44103770Sjake#	various library functions
45103770Sjake#
46103770Sjake
47103770SjakeOVERRIDEOBJS=	rcmd.o
48103770Sjake.PATH:	${NETBSDSRCDIR}/lib/libc/net
49103770SjakeCPPFLAGS.rcmd.c+=-I${NETBSDSRCDIR}/lib/libc/include -DRESCUEDIR=\"${RESCUEDIR}\"
50103770Sjake
51103770SjakeLIBOVERRIDE=	liboverride.o
52103770Sjake${LIBOVERRIDE}: ${OVERRIDEOBJS}
53122698Salfred	${_MKTARGET_LINK}
54103770Sjake	${LD} -r -o $@ ${OVERRIDEOBJS}
55103770Sjake
56103770SjakeCLEANFILES+=	${OVERRIDEOBJS} ${LIBOVERRIDE}
57103770Sjake
58103770Sjake${CRUNCHBIN}:	${LIBOVERRIDE}
59103770Sjake
60103770Sjake
61103770Sjake#	The primary target ...
62103770Sjake#
63164934Ssam
64164934SsamCLEANFILES+=	rescue.unstripped
65164934Ssam
66164934Ssam.include "${DISTRIBDIR}/common/Makefile.crunch"
67164934Ssam
68150995Spjdrealall: ${CRUNCHBIN}
69164934Ssam
70164934Ssaminstall: ${CRUNCHBIN}
71164934Ssam# XXX this MKMSG doesn't line up
72164934Ssam	${_MKMSG} "populate ${TARGETDIR}"
73164934Ssam	${PARSELIST} -v mode=install ${LISTS} | ${MAKE} -f - install
74164934Ssam
75164934Ssam.include <bsd.prog.mk>
76164934Ssam