summaryrefslogtreecommitdiffstats
path: root/share/mk
diff options
context:
space:
mode:
authorbdrewery <bdrewery@FreeBSD.org>2016-01-15 22:08:51 +0000
committerbdrewery <bdrewery@FreeBSD.org>2016-01-15 22:08:51 +0000
commit2ec8a5203c0354b7303ae00e5844e42e04197d84 (patch)
tree6237ea93360fe3811343498834bc98d83bd83b3a /share/mk
parentddd9c7d4849362931862b1a6bcf47d50721a6d03 (diff)
downloadFreeBSD-src-2ec8a5203c0354b7303ae00e5844e42e04197d84.zip
FreeBSD-src-2ec8a5203c0354b7303ae00e5844e42e04197d84.tar.gz
FAST_DEPEND: Rework optimization for r290524.
The .MAKEFLAGS check inside of the .for loop is extremely slow for some reason. Just moving it out of the loop trimmed -V lookup time from 11 seconds to 1 second in the kernel obj directory. Sponsored by: EMC / Isilon Storage Division
Diffstat (limited to 'share/mk')
-rw-r--r--share/mk/bsd.dep.mk8
1 files changed, 4 insertions, 4 deletions
diff --git a/share/mk/bsd.dep.mk b/share/mk/bsd.dep.mk
index 87491fe..bacdfc2 100644
--- a/share/mk/bsd.dep.mk
+++ b/share/mk/bsd.dep.mk
@@ -170,12 +170,12 @@ DEPENDSRCS= ${SRCS:M*.[cSC]} ${SRCS:M*.cxx} ${SRCS:M*.cpp} ${SRCS:M*.cc}
.if !empty(DEPENDSRCS)
DEPENDOBJS+= ${DEPENDSRCS:R:S,$,.o,}
.endif
-.for __obj in ${DEPENDOBJS:O:u}
+DEPENDFILES_OBJS= ${DEPENDOBJS:O:u:${DEPEND_FILTER}:C/^/${DEPENDFILE}./}
.if ${.MAKEFLAGS:M-V} == ""
-.sinclude "${DEPENDFILE}.${__obj:${DEPEND_FILTER}}"
-.endif
-DEPENDFILES_OBJS+= ${DEPENDFILE}.${__obj:${DEPEND_FILTER}}
+.for __depend_obj in ${DEPENDFILES_OBJS}
+.sinclude "${__depend_obj}"
.endfor
+.endif
.endif # ${MK_FAST_DEPEND} == "yes"
.endif # defined(SRCS)
OpenPOWER on IntegriCloud