diff options
-rw-r--r-- | include/toplevel.mk | 7 | ||||
-rw-r--r-- | include/verbose.mk | 2 |
2 files changed, 7 insertions, 2 deletions
diff --git a/include/toplevel.mk b/include/toplevel.mk index 33baa86da9..d8651d923b 100644 --- a/include/toplevel.mk +++ b/include/toplevel.mk @@ -166,6 +166,8 @@ clean dirclean: .config prereq:: prepare-tmpinfo .config @+$(NO_TRACE_MAKE) -r -s $@ +WARN_PARALLEL_ERROR = $(if $(BUILD_LOG),,$(and $(filter -j,$(MAKEFLAGS)),$(findstring s,$(OPENWRT_VERBOSE)))) + ifeq ($(SDK),1) %:: @@ -184,7 +186,10 @@ else printf "$(_R)WARNING: your configuration is out of sync. Please run make menuconfig, oldconfig or defconfig!$(_N)\n" >&2; \ fi \ ) - @+$(ULIMIT_FIX) $(SUBMAKE) -r $@ + @+$(ULIMIT_FIX) $(SUBMAKE) -r $@ $(if $(WARN_PARALLEL_ERROR), || { \ + printf "$(_R)Build failed - please re-run with -j1 to see the real error message$(_N)\n" >&2; \ + false; \ + } ) endif diff --git a/include/verbose.mk b/include/verbose.mk index 90aab4c2f5..b7e43f7430 100644 --- a/include/verbose.mk +++ b/include/verbose.mk @@ -54,7 +54,7 @@ ifeq ($(findstring s,$(OPENWRT_VERBOSE)),) else SILENT:=>/dev/null $(if $(findstring w,$(OPENWRT_VERBOSE)),,2>&1) export QUIET:=1 - SUBMAKE=cmd() { $(SILENT) $(MAKE) -s $$* < /dev/null || { echo "make $$*: build failed. Please re-run make with V=s to see what's going on"; false; } } 8>&1 9>&2; cmd + SUBMAKE=cmd() { $(SILENT) $(MAKE) -s $$* < /dev/null || { echo "make $$*: build failed. Please re-run make with -j1 V=s to see what's going on"; false; } } 8>&1 9>&2; cmd endif .SILENT: $(MAKECMDGOALS) |