Annotation of src/share/mk/bsd.subdir.mk, Revision 1.13
1.13 ! espie 1: # $OpenBSD: bsd.subdir.mk,v 1.12 2004/01/18 23:44:51 marc Exp $
1.7 deraadt 2: # $NetBSD: bsd.subdir.mk,v 1.11 1996/04/04 02:05:06 jtc Exp $
1.1 deraadt 3: # @(#)bsd.subdir.mk 5.9 (Berkeley) 2/1/91
4:
5: .if !target(.MAIN)
6: .MAIN: all
7: .endif
8:
1.10 niklas 9: # Make sure this is defined
10: SKIPDIR?=
11:
1.1 deraadt 12: _SUBDIRUSE: .USE
13: .if defined(SUBDIR)
14: @for entry in ${SUBDIR}; do \
15: (set -e; if test -d ${.CURDIR}/$${entry}.${MACHINE}; then \
16: _newdir_="$${entry}.${MACHINE}"; \
17: else \
18: _newdir_="$${entry}"; \
19: fi; \
20: if test X"${_THISDIR_}" = X""; then \
21: _nextdir_="$${_newdir_}"; \
22: else \
23: _nextdir_="$${_THISDIR_}/$${_newdir_}"; \
24: fi; \
1.3 deraadt 25: _makefile_spec_=""; \
1.6 etheisen 26: if [ -e ${.CURDIR}/$${_newdir_}/Makefile.bsd-wrapper ]; then \
1.3 deraadt 27: _makefile_spec_="-f Makefile.bsd-wrapper"; \
28: fi; \
1.10 niklas 29: subskipdir=''; \
30: for skipdir in ${SKIPDIR}; do \
31: subentry=$${skipdir#$${entry}}; \
32: if [ X$${subentry} != X$${skipdir} ]; then \
33: if [ X$${subentry} = X ]; then \
34: echo "($${_nextdir_} skipped)"; \
35: break; \
36: fi; \
37: subskipdir="$${subskipdir} $${subentry#/}"; \
38: fi; \
39: done; \
40: if [ X$${skipdir} = X -o X$${subentry} != X ]; then \
41: echo "===> $${_nextdir_}"; \
42: cd ${.CURDIR}/$${_newdir_}; \
1.13 ! espie 43: ${MAKE} SKIPDIR="$${subskipdir}" \
1.10 niklas 44: $${_makefile_spec_} _THISDIR_="$${_nextdir_}" \
45: ${.TARGET:S/realinstall/install/:S/.depend/depend/}; \
46: fi); \
1.1 deraadt 47: done
48:
49: ${SUBDIR}::
50: @set -e; if test -d ${.CURDIR}/${.TARGET}.${MACHINE}; then \
51: _newdir_=${.TARGET}.${MACHINE}; \
52: else \
53: _newdir_=${.TARGET}; \
54: fi; \
1.3 deraadt 55: _makefile_spec_=""; \
1.6 etheisen 56: if [ -f ${.CURDIR}/$${_newdir_}/Makefile.bsd-wrapper ]; then \
1.3 deraadt 57: _makefile_spec_="-f Makefile.bsd-wrapper"; \
58: fi; \
1.1 deraadt 59: echo "===> $${_newdir_}"; \
60: cd ${.CURDIR}/$${_newdir_}; \
1.13 ! espie 61: ${MAKE} $${_makefile_spec_} _THISDIR_="$${_newdir_}" all
1.1 deraadt 62: .endif
63:
64: .if !target(install)
1.13 ! espie 65: . if !target(beforeinstall)
1.1 deraadt 66: beforeinstall:
1.13 ! espie 67: . endif
! 68: . if !target(afterinstall)
1.1 deraadt 69: afterinstall:
1.13 ! espie 70: . endif
1.1 deraadt 71: install: maninstall
72: maninstall: afterinstall
73: afterinstall: realinstall
74: realinstall: beforeinstall _SUBDIRUSE
75: .endif
76:
77:
1.13 ! espie 78: .for t in all clean cleandir includes depend lint obj tags regress
! 79: . if !target($t)
! 80: $t: _SUBDIRUSE
! 81: . endif
! 82: .endfor
1.1 deraadt 83:
1.12 marc 84: .if !defined(BSD_OWN_MK)
1.13 ! espie 85: . include <bsd.own.mk>
1.12 marc 86: .endif