bsd.subdir.mk revision 1.33 1 # $NetBSD: bsd.subdir.mk,v 1.33 2000/04/10 14:47:23 mrg Exp $
2 # @(#)bsd.subdir.mk 8.1 (Berkeley) 6/8/93
3
4 .if !target(__initialized__)
5 __initialized__:
6 .if exists(${.CURDIR}/../Makefile.inc)
7 .include "${.CURDIR}/../Makefile.inc"
8 .endif
9 .include <bsd.own.mk>
10 .MAIN: all
11 .endif
12
13 .for dir in ${SUBDIR}
14 .if exists(${dir}.${MACHINE})
15 __REALSUBDIR+=${dir}.${MACHINE}
16 .else
17 __REALSUBDIR+=${dir}
18 .endif
19 .endfor
20
21 .if defined(DESTDIR) && !defined(_USE_INSTALLED_MK)
22 _M=-m ${DESTDIR}/usr/share/mk
23 .else
24 _M=
25 .endif
26
27 .for dir in ${__REALSUBDIR}
28 .for targ in ${TARGETS}
29 .PHONY: ${targ}-${dir}
30 ${targ}-${dir}: .MAKE
31 @case "${dir}" in /*) \
32 echo "${targ} ===> ${dir}"; \
33 cd ${dir}; \
34 ${MAKE} ${_M} "_THISDIR_=${dir}/" ${targ}; \
35 ;; \
36 *) \
37 echo "${targ} ===> ${_THISDIR_}${dir}"; \
38 cd ${.CURDIR}/${dir}; \
39 ${MAKE} ${_M} "_THISDIR_=${_THISDIR_}${dir}/" ${targ}; \
40 ;; \
41 esac
42 subdir-${targ}: ${targ}-${dir}
43 ${targ}: subdir-${targ}
44 .endfor
45 .endfor
46
47 # Make sure all of the standard targets are defined, even if they do nothing.
48 ${TARGETS}:
49