RFR: JDK-8151300: Build shell trace functionality lost in JDK-8076060
Erik Joelsson
erik.joelsson at oracle.com
Fri Mar 4 15:52:15 UTC 2016
When running the build with LOG=trace, we (used to) have a neat feature
that would print which prerequisites triggered each rule to run. This
functionality was lost with JDK-8076060 where the SHELL variable setting
this up was changed to be assigned using ':=' instead of ':'. I cannot
see any reason this was done for this particular variable so assuming it
was a mistake while changing other variables in the same file. Removing
the ':' for SHELL fixes LOG=trace.
Bug: https://bugs.openjdk.java.net/browse/JDK-8151300
diff -r 83fe2455dcc1 make/common/MakeBase.gmk
--- a/make/common/MakeBase.gmk
+++ b/make/common/MakeBase.gmk
@@ -282,7 +282,7 @@
# Default shell seems to always be /bin/sh. Must override with
bash to get this to work on Solaris.
# Only use time if it's GNU time which supports format and output
file.
WRAPPER_SHELL := $$(BASH) $$(SRC_ROOT)/common/bin/shell-tracer.sh
$$(if $$(findstring yes,$$(IS_GNU_TIME)),$$(TIME),-)
$$(OUTPUT_ROOT)/build-trace-time.log $$(SHELL)
- SHELL := $$(warning $$(if $$@,Building $$@,Running shell command)
$$(if $$<, (from $$<))$$(if $$?, ($$(wordlist 1, 20, $$?) $$(if
$$(wordlist 21, 22, $$?), ... [in total $$(words $$?) files])
newer)))$$(WRAPPER_SHELL)
+ SHELL = $$(warning $$(if $$@,Building $$@,Running shell command)
$$(if $$<, (from $$<))$$(if $$?, ($$(wordlist 1, 20, $$?) $$(if
$$(wordlist 21, 22, $$?), ... [in total $$(words $$?) files])
newer)))$$(WRAPPER_SHELL)
endif
# The warn level can never be turned off
LogWarn = $$(info $$(strip $$1))
/Erik
More information about the build-dev
mailing list