summaryrefslogtreecommitdiffstats
path: root/share/mk
diff options
context:
space:
mode:
authorsjg <sjg@FreeBSD.org>2013-06-14 16:24:07 +0000
committersjg <sjg@FreeBSD.org>2013-06-14 16:24:07 +0000
commitb66c2883376eff2e26f441b7d77566e221d1c67e (patch)
tree27f7cb25fbee905665e08dfa47b7de7e24ab47ac /share/mk
parent672cd692ff61fe009e242dc8d4f6f63222e69ced (diff)
downloadFreeBSD-src-b66c2883376eff2e26f441b7d77566e221d1c67e.zip
FreeBSD-src-b66c2883376eff2e26f441b7d77566e221d1c67e.tar.gz
We cannot remove the _+_ trick, until old make is completely deprecated.
But we don't want to set it to + for bmake since it breaks make -N which is used to supress the normal handling of targets marked with .MAKE (which seems broken in fmake and might be why _+_ was introduced). Add some comments to explain what's gong on. Reviewed by: obrien
Diffstat (limited to 'share/mk')
-rw-r--r--share/mk/sys.mk8
1 files changed, 7 insertions, 1 deletions
diff --git a/share/mk/sys.mk b/share/mk/sys.mk
index 04294ac..c534cea 100644
--- a/share/mk/sys.mk
+++ b/share/mk/sys.mk
@@ -95,7 +95,13 @@ ECHODIR ?= true
.endif
.endif
-.if !empty(.MAKEFLAGS:M-n) && ${.MAKEFLAGS:M-n} == "-n"
+.if defined(.PARSEDIR)
+# _+_ appears to be a workaround for the special src .MAKE not working.
+# setting it to + interferes with -N
+_+_ ?=
+.elif !empty(.MAKEFLAGS:M-n) && ${.MAKEFLAGS:M-n} == "-n"
+# the check above matches only a single -n, so -n -n will result
+# in _+_ = +
_+_ ?=
.else
_+_ ?= +
OpenPOWER on IntegriCloud