1# $NetBSD: bsd.subdir.mk,v 1.56 2022/07/10 21:32:09 rillig Exp $ 2# @(#)bsd.subdir.mk 8.1 (Berkeley) 6/8/93 3 4.include <bsd.init.mk> 5 6.if !defined(NOSUBDIR) # { 7 8.for dir in ${SUBDIR} 9.if ${dir} != ".WAIT" && exists(${.CURDIR}/${dir}.${MACHINE}) 10__REALSUBDIR+=${dir}.${MACHINE} 11.else 12__REALSUBDIR+=${dir} 13.endif 14.endfor 15 16.if ${MKGROFF} == "yes" 17__REALSUBDIR+=${SUBDIR.roff} 18.endif 19 20__recurse: .USE 21 @${MAKEDIRTARGET} ${.TARGET:C/^[^-]*-//} ${.TARGET:C/-.*$//} 22 23.if make(cleandir) 24__RECURSETARG= ${TARGETS:Nclean} 25clean: 26.else 27__RECURSETARG= ${TARGETS} 28.endif 29 30.for targ in ${__RECURSETARG} 31.for dir in ${__REALSUBDIR} 32.if ${dir} == ".WAIT" 33SUBDIR_${targ}+= .WAIT 34.elif !commands(${targ}-${dir}) 35${targ}-${dir}: .PHONY .MAKE __recurse 36SUBDIR_${targ}+= ${targ}-${dir} 37.endif 38.endfor 39subdir-${targ}: .PHONY ${SUBDIR_${targ}} 40${targ}: subdir-${targ} 41.endfor 42 43.endif # ! NOSUBDIR # } 44 45${TARGETS}: # ensure existence 46