Home | History | Annotate | Line # | Download | only in mk
bsd.subdir.mk revision 1.37
      1  1.37   mycroft #	$NetBSD: bsd.subdir.mk,v 1.37 2000/06/06 06:49:39 mycroft Exp $
      2  1.14     mikel #	@(#)bsd.subdir.mk	8.1 (Berkeley) 6/8/93
      3   1.1       cgd 
      4  1.27   mycroft .if !target(__initialized__)
      5  1.27   mycroft __initialized__:
      6  1.27   mycroft .if exists(${.CURDIR}/../Makefile.inc)
      7  1.27   mycroft .include "${.CURDIR}/../Makefile.inc"
      8  1.27   mycroft .endif
      9  1.13  christos .include <bsd.own.mk>
     10  1.27   mycroft .MAIN:		all
     11   1.3   mycroft .endif
     12   1.1       cgd 
     13  1.25   mycroft .for dir in ${SUBDIR}
     14  1.25   mycroft .if exists(${dir}.${MACHINE})
     15  1.25   mycroft __REALSUBDIR+=${dir}.${MACHINE}
     16  1.25   mycroft .else
     17  1.25   mycroft __REALSUBDIR+=${dir}
     18  1.25   mycroft .endif
     19  1.25   mycroft .endfor
     20   1.1       cgd 
     21  1.34       mrg .if defined(DESTDIR) && exists(${DESTDIR}/usr/share/mk/sys.mk)
     22  1.33       mrg _M=-m ${DESTDIR}/usr/share/mk
     23  1.33       mrg .else
     24  1.33       mrg _M=
     25  1.33       mrg .endif
     26  1.33       mrg 
     27  1.35   mycroft __recurse: .USE
     28  1.36   mycroft 	@targ=${.TARGET:C/-.*$//};dir=${.TARGET:C/^[^-]*-//};		\
     29  1.35   mycroft 	case "$$dir" in /*)						\
     30  1.35   mycroft 		echo "$$targ ===> $$dir";				\
     31  1.35   mycroft 		cd "$$dir";						\
     32  1.35   mycroft 		${MAKE} ${_M} "_THISDIR_=$$dir/" $$targ;		\
     33  1.35   mycroft 		;;							\
     34  1.35   mycroft 	*)								\
     35  1.35   mycroft 		echo "$$targ ===> ${_THISDIR_}$$dir";			\
     36  1.35   mycroft 		cd "${.CURDIR}/$$dir";					\
     37  1.35   mycroft 		${MAKE} ${_M} "_THISDIR_=${_THISDIR_}$$dir/" $$targ;	\
     38  1.35   mycroft 		;;							\
     39  1.35   mycroft 	esac
     40  1.35   mycroft 
     41  1.35   mycroft .for targ in ${TARGETS}
     42  1.25   mycroft .for dir in ${__REALSUBDIR}
     43  1.17   mycroft .PHONY: ${targ}-${dir}
     44  1.35   mycroft ${targ}-${dir}: .MAKE __recurse
     45  1.37   mycroft subdir-${targ}: ${targ}-${dir}
     46  1.17   mycroft .endfor
     47  1.37   mycroft ${targ}: subdir-${targ}
     48  1.12       cgd .endfor
     49  1.21  christos 
     50  1.26   mycroft # Make sure all of the standard targets are defined, even if they do nothing.
     51  1.26   mycroft ${TARGETS}:
     52