diff options
author | bdrewery <bdrewery@FreeBSD.org> | 2016-02-19 00:41:24 +0000 |
---|---|---|
committer | bdrewery <bdrewery@FreeBSD.org> | 2016-02-19 00:41:24 +0000 |
commit | b4d80433558820d70653138274fe03bbba9e9eb1 (patch) | |
tree | ffa6fca30f9b04427d1e1fa216bba5caf436948a /sys/conf | |
parent | 3cb4c4bef1700860d46dd6d300e50e30346fbb84 (diff) | |
download | FreeBSD-src-b4d80433558820d70653138274fe03bbba9e9eb1.zip FreeBSD-src-b4d80433558820d70653138274fe03bbba9e9eb1.tar.gz |
Avoid reading .depend.* in simple cases where not needed.
This will speed up some tree-walks with FAST_DEPEND which otherwise
would include length(SRCS) .depend files.
This also uses a trick suggested by sjg@ to still read them in when
specifying _V_READ_DEPEND=1 in the env/make args.
Sponsored by: EMC / Isilon Storage Division
Diffstat (limited to 'sys/conf')
-rw-r--r-- | sys/conf/kern.post.mk | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/sys/conf/kern.post.mk b/sys/conf/kern.post.mk index 52cd186..8983467 100644 --- a/sys/conf/kern.post.mk +++ b/sys/conf/kern.post.mk @@ -206,6 +206,15 @@ CFILES_OFED=${CFILES:M*/ofed/*} # We have "special" -I include paths for MLX5. CFILES_MLX5=${CFILES:M*/dev/mlx5/*} +# Skip reading .depend when not needed to speed up tree-walks +# and simple lookups. +.if !empty(.MAKEFLAGS:M-V${_V_READ_DEPEND}) || make(obj) || make(clean*) || \ + make(install*) || make(kernel-obj) || make(kernel-clean*) || \ + make(kernel-install*) +_SKIP_READ_DEPEND= 1 +.MAKE.DEPENDFILE= /dev/null +.endif + kernel-depend: .depend # The argument list can be very long, so use make -V and xargs to # pass it to mkdep. @@ -222,7 +231,7 @@ DEPEND_CFLAGS+= -MT${.TARGET} CFLAGS+= ${DEPEND_CFLAGS} DEPENDOBJS+= ${SYSTEM_OBJS} genassym.o DEPENDFILES_OBJS= ${DEPENDOBJS:O:u:C/^/.depend./} -.if ${.MAKEFLAGS:M-V} == "" +.if !defined(_SKIP_READ_DEPEND) .for __depend_obj in ${DEPENDFILES_OBJS} .sinclude "${__depend_obj}" .endfor |