svn commit: r289778 - head/share/mk
Bryan Drewery
bdrewery at FreeBSD.org
Thu Oct 22 23:41:57 UTC 2015
Author: bdrewery
Date: Thu Oct 22 23:41:56 2015
New Revision: 289778
URL: https://svnweb.freebsd.org/changeset/base/289778
Log:
For SUBDIR_PARALLEL, when doing 'make clean*' or 'make obj' there is no need to
respect SUBDIR_DEPEND_* or .WAIT.
MFC after: 2 weeks
Sponsored by: EMC / Isilon Storage Division
Modified:
head/share/mk/bsd.subdir.mk
Modified: head/share/mk/bsd.subdir.mk
==============================================================================
--- head/share/mk/bsd.subdir.mk Thu Oct 22 23:08:08 2015 (r289777)
+++ head/share/mk/bsd.subdir.mk Thu Oct 22 23:41:56 2015 (r289778)
@@ -83,6 +83,15 @@ ${SUBDIR:N.WAIT}: .PHONY .MAKE
dir=${.TARGET}; \
${_SUBDIR_SH};
+# .WAIT and dependencies can be skipped for some targets.
+.if defined(SUBDIR_PARALLEL)
+.if make(obj) || make(clean*)
+_skip_subdir_ordering= 1
+SUBDIR:= ${SUBDIR:N.WAIT}
+.else
+_skip_subdir_ordering= 0
+.endif
+.endif # defined(SUBDIR_PARALLEL)
# Work around parsing of .if nested in .for by putting .WAIT string into a var.
__wait= .WAIT
.for __target in ${ALL_SUBDIR_TARGETS}
@@ -94,9 +103,11 @@ __subdir_targets+= .WAIT
.else
__subdir_targets+= ${__target}_subdir_${__dir}
__deps=
+.if ${_skip_subdir_ordering} == 0
.for __dep in ${SUBDIR_DEPEND_${__dir}}
__deps+= ${__target}_subdir_${__dep}
.endfor
+.endif
${__target}_subdir_${__dir}: .PHONY .MAKE ${__deps}
.if !defined(NO_SUBDIR)
@${_+_}target=${__target:realinstall=install}; \
More information about the svn-src-head
mailing list