Do not override variables on command line that build needs to change.

It is sufficient to explicitly set DEPENDFILE in env for each sub-make.
This commit is contained in:
sjg 2015-05-30 17:29:51 +00:00
parent 51262d20a1
commit 7d4877ba08

View File

@ -62,8 +62,6 @@ UPDATE_DEPENDFILE ?= yes
.endif
UPDATE_DEPENDFILE ?= NO
# ensure that we don't clobber each other's dependencies
DEPENDFILE?= .depend.${PROG}
# prog.mk will do the rest
.else
all: ${FILES} ${PROGS} ${SCRIPTS}
@ -95,17 +93,17 @@ x.$p= PROG_CXX=$p
.endif
$p ${p}_p: .PHONY .MAKE
(cd ${.CURDIR} && ${MAKE} -f ${MAKEFILE} _RECURSING_PROGS= \
SUBDIR= PROG=$p \
DEPENDFILE=.depend.$p .MAKE.DEPENDFILE=.depend.$p \
${x.$p})
(cd ${.CURDIR} && \
DEPENDFILE=.depend.$p \
${MAKE} -f ${MAKEFILE} _RECURSING_PROGS= \
SUBDIR= PROG=$p ${x.$p})
.for t in ${PROGS_TARGETS:O:u}
$p.$t: .PHONY .MAKE
(cd ${.CURDIR} && ${MAKE} -f ${MAKEFILE} _RECURSING_PROGS= \
SUBDIR= PROG=$p \
DEPENDFILE=.depend.$p .MAKE.DEPENDFILE=.depend.$p \
${x.$p} ${@:E})
(cd ${.CURDIR} && \
DEPENDFILE=.depend.$p \
${MAKE} -f ${MAKEFILE} _RECURSING_PROGS= \
SUBDIR= PROG=$p ${x.$p} ${@:E})
.endfor
.endfor