Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1562407 > unrolled thread
| Started by | Josh Poimboeuf <jpoimboe@redhat.com> |
|---|---|
| First post | 2017-01-19 04:50 +0100 |
| Last post | 2017-01-26 20:40 +0100 |
| Articles | 4 — 3 participants |
Back to article view | Back to linux.kernel
[PATCH] tools build: add tools tree support for 'make -s' Josh Poimboeuf <jpoimboe@redhat.com> - 2017-01-19 04:50 +0100
[PATCH v2] tools build: add tools tree support for 'make -s' Josh Poimboeuf <jpoimboe@redhat.com> - 2017-01-19 05:20 +0100
Re: [PATCH v2] tools build: add tools tree support for 'make -s' Peter Zijlstra <peterz@infradead.org> - 2017-01-25 16:20 +0100
Re: [PATCH v2] tools build: add tools tree support for 'make -s' Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-01-26 20:40 +0100
| From | Josh Poimboeuf <jpoimboe@redhat.com> |
|---|---|
| Date | 2017-01-19 04:50 +0100 |
| Subject | [PATCH] tools build: add tools tree support for 'make -s' |
| Message-ID | <t1bTA-4A2-9@gated-at.bofh.it> |
When doing a kernel build with 'make -s', everything is silenced except the objtool build. That's because the tools tree support for silent builds is some combination of missing and broken. Three changes are needed to fix it: - Makefile: propagate '-s' to the sub-make's MAKEFLAGS variable so the tools Makefiles can see it. - tools/scripts/Makefile.include: fix the tools Makefiles' ability to recognize '-s'. The MAKE_VERSION and MAKEFLAGS checks are copied from the top-level Makefile. This silences the "DESCEND objtool" message. - tools/build/Makefile.build: add support to the tools Build files for recognizing '-s'. Again the MAKE_VERSION and MAKEFLAGS checks are copied from the top-level Makefile. This silences all the object compile/link messages. Reported-by: Peter Zijlstra <peterz@infradead.org> Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com> --- Makefile | 6 ++++-- tools/build/Makefile.build | 10 ++++++++++ tools/scripts/Makefile.include | 12 +++++++++++- 3 files changed, 25 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 96e2352..b10e794 100644 --- a/Makefile +++ b/Makefile @@ -87,10 +87,12 @@ endif ifneq ($(filter 4.%,$(MAKE_VERSION)),) # make-4 ifneq ($(filter %s ,$(firstword x$(MAKEFLAGS))),) quiet=silent_ + tools_silent=s endif else # make-3.8x ifneq ($(filter s% -s%,$(MAKEFLAGS)),) quiet=silent_ + tools_silent=-s endif endif @@ -1607,11 +1609,11 @@ image_name: # Clear a bunch of variables before executing the submake tools/: FORCE $(Q)mkdir -p $(objtree)/tools - $(Q)$(MAKE) LDFLAGS= MAKEFLAGS="$(filter --j% -j,$(MAKEFLAGS))" O=$(shell cd $(objtree) && /bin/pwd) subdir=tools -C $(src)/tools/ + $(Q)$(MAKE) LDFLAGS= MAKEFLAGS="$(tools_silent) $(filter --j% -j,$(MAKEFLAGS))" O=$(shell cd $(objtree) && /bin/pwd) subdir=tools -C $(src)/tools/ tools/%: FORCE $(Q)mkdir -p $(objtree)/tools - $(Q)$(MAKE) LDFLAGS= MAKEFLAGS="$(filter --j% -j,$(MAKEFLAGS))" O=$(shell cd $(objtree) && /bin/pwd) subdir=tools -C $(src)/tools/ $* + $(Q)$(MAKE) LDFLAGS= MAKEFLAGS="$(tools_silent) $(filter --j% -j,$(MAKEFLAGS))" O=$(shell cd $(objtree) && /bin/pwd) subdir=tools -C $(src)/tools/ $* # Single targets # --------------------------------------------------------------------------- diff --git a/tools/build/Makefile.build b/tools/build/Makefile.build index 99c0ccd..e279a71 100644 --- a/tools/build/Makefile.build +++ b/tools/build/Makefile.build @@ -19,6 +19,16 @@ else Q=@ endif +ifneq ($(filter 4.%,$(MAKE_VERSION)),) # make-4 +ifneq ($(filter %s ,$(firstword x$(MAKEFLAGS))),) + quiet=silent_ +endif +else # make-3.8x +ifneq ($(filter s% -s%,$(MAKEFLAGS)),) + quiet=silent_ +endif +endif + build-dir := $(srctree)/tools/build # Define $(fixdep) for dep-cmd function diff --git a/tools/scripts/Makefile.include b/tools/scripts/Makefile.include index 8abbef1..08f81f4 100644 --- a/tools/scripts/Makefile.include +++ b/tools/scripts/Makefile.include @@ -46,6 +46,16 @@ else NO_SUBDIR = : endif +ifneq ($(filter 4.%,$(MAKE_VERSION)),) # make-4 +ifneq ($(filter %s ,$(firstword x$(MAKEFLAGS))),) +silent=1 +endif +else +ifneq ($(filter s% -s%,$(MAKEFLAGS)),) +silent=1 +endif +endif + # # Define a callable command for descending to a new directory # @@ -58,7 +68,7 @@ descend = \ QUIET_SUBDIR0 = +$(MAKE) $(COMMAND_O) -C # space to separate -C and subdir QUIET_SUBDIR1 = -ifneq ($(findstring $(MAKEFLAGS),s),s) +ifneq ($(silent),1) ifneq ($(V),1) QUIET_CC = @echo ' CC '$@; QUIET_CC_FPIC = @echo ' CC FPIC '$@; -- 2.7.4
[toc] | [next] | [standalone]
| From | Josh Poimboeuf <jpoimboe@redhat.com> |
|---|---|
| Date | 2017-01-19 05:20 +0100 |
| Subject | [PATCH v2] tools build: add tools tree support for 'make -s' |
| Message-ID | <t1cmB-4YW-1@gated-at.bofh.it> |
| In reply to | #1562407 |
When doing a kernel build with 'make -s', everything is silenced except the objtool build. That's because the tools tree support for silent builds is some combination of missing and broken. Three changes are needed to fix it: - Makefile: propagate '-s' to the sub-make's MAKEFLAGS variable so the tools Makefiles can see it. - tools/scripts/Makefile.include: fix the tools Makefiles' ability to recognize '-s'. The MAKE_VERSION and MAKEFLAGS checks are copied from the top-level Makefile. This silences the "DESCEND objtool" message. - tools/build/Makefile.build: add support to the tools Build files for recognizing '-s'. Again the MAKE_VERSION and MAKEFLAGS checks are copied from the top-level Makefile. This silences all the object compile/link messages. Reported-by: Peter Zijlstra <peterz@infradead.org> Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com> --- v2: - add 'ifndef' indent level and 'make-3.8x' comment in Makefile.include Makefile | 6 ++++-- tools/build/Makefile.build | 10 ++++++++++ tools/scripts/Makefile.include | 12 +++++++++++- 3 files changed, 25 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 96e2352..b10e794 100644 --- a/Makefile +++ b/Makefile @@ -87,10 +87,12 @@ endif ifneq ($(filter 4.%,$(MAKE_VERSION)),) # make-4 ifneq ($(filter %s ,$(firstword x$(MAKEFLAGS))),) quiet=silent_ + tools_silent=s endif else # make-3.8x ifneq ($(filter s% -s%,$(MAKEFLAGS)),) quiet=silent_ + tools_silent=-s endif endif @@ -1607,11 +1609,11 @@ image_name: # Clear a bunch of variables before executing the submake tools/: FORCE $(Q)mkdir -p $(objtree)/tools - $(Q)$(MAKE) LDFLAGS= MAKEFLAGS="$(filter --j% -j,$(MAKEFLAGS))" O=$(shell cd $(objtree) && /bin/pwd) subdir=tools -C $(src)/tools/ + $(Q)$(MAKE) LDFLAGS= MAKEFLAGS="$(tools_silent) $(filter --j% -j,$(MAKEFLAGS))" O=$(shell cd $(objtree) && /bin/pwd) subdir=tools -C $(src)/tools/ tools/%: FORCE $(Q)mkdir -p $(objtree)/tools - $(Q)$(MAKE) LDFLAGS= MAKEFLAGS="$(filter --j% -j,$(MAKEFLAGS))" O=$(shell cd $(objtree) && /bin/pwd) subdir=tools -C $(src)/tools/ $* + $(Q)$(MAKE) LDFLAGS= MAKEFLAGS="$(tools_silent) $(filter --j% -j,$(MAKEFLAGS))" O=$(shell cd $(objtree) && /bin/pwd) subdir=tools -C $(src)/tools/ $* # Single targets # --------------------------------------------------------------------------- diff --git a/tools/build/Makefile.build b/tools/build/Makefile.build index 99c0ccd..e279a71 100644 --- a/tools/build/Makefile.build +++ b/tools/build/Makefile.build @@ -19,6 +19,16 @@ else Q=@ endif +ifneq ($(filter 4.%,$(MAKE_VERSION)),) # make-4 +ifneq ($(filter %s ,$(firstword x$(MAKEFLAGS))),) + quiet=silent_ +endif +else # make-3.8x +ifneq ($(filter s% -s%,$(MAKEFLAGS)),) + quiet=silent_ +endif +endif + build-dir := $(srctree)/tools/build # Define $(fixdep) for dep-cmd function diff --git a/tools/scripts/Makefile.include b/tools/scripts/Makefile.include index 8abbef1..19edc1a 100644 --- a/tools/scripts/Makefile.include +++ b/tools/scripts/Makefile.include @@ -46,6 +46,16 @@ else NO_SUBDIR = : endif +ifneq ($(filter 4.%,$(MAKE_VERSION)),) # make-4 +ifneq ($(filter %s ,$(firstword x$(MAKEFLAGS))),) + silent=1 +endif +else # make-3.8x +ifneq ($(filter s% -s%,$(MAKEFLAGS)),) + silent=1 +endif +endif + # # Define a callable command for descending to a new directory # @@ -58,7 +68,7 @@ descend = \ QUIET_SUBDIR0 = +$(MAKE) $(COMMAND_O) -C # space to separate -C and subdir QUIET_SUBDIR1 = -ifneq ($(findstring $(MAKEFLAGS),s),s) +ifneq ($(silent),1) ifneq ($(V),1) QUIET_CC = @echo ' CC '$@; QUIET_CC_FPIC = @echo ' CC FPIC '$@; -- 2.7.4
[toc] | [prev] | [next] | [standalone]
| From | Peter Zijlstra <peterz@infradead.org> |
|---|---|
| Date | 2017-01-25 16:20 +0100 |
| Subject | Re: [PATCH v2] tools build: add tools tree support for 'make -s' |
| Message-ID | <t3xwD-3oV-41@gated-at.bofh.it> |
| In reply to | #1562413 |
On Wed, Jan 18, 2017 at 10:16:55PM -0600, Josh Poimboeuf wrote: > When doing a kernel build with 'make -s', everything is silenced except > the objtool build. That's because the tools tree support for silent > builds is some combination of missing and broken. > > Three changes are needed to fix it: > > - Makefile: propagate '-s' to the sub-make's MAKEFLAGS variable so the > tools Makefiles can see it. > > - tools/scripts/Makefile.include: fix the tools Makefiles' ability to > recognize '-s'. The MAKE_VERSION and MAKEFLAGS checks are copied from > the top-level Makefile. This silences the "DESCEND objtool" message. > > - tools/build/Makefile.build: add support to the tools Build files for > recognizing '-s'. Again the MAKE_VERSION and MAKEFLAGS checks are > copied from the top-level Makefile. This silences all the object > compile/link messages. > > Reported-by: Peter Zijlstra <peterz@infradead.org> > Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com> Awesome, seems to work! Tested-by: Peter Zijlstra (Intel) <peterz@infradead.org>
[toc] | [prev] | [next] | [standalone]
| From | Arnaldo Carvalho de Melo <acme@kernel.org> |
|---|---|
| Date | 2017-01-26 20:40 +0100 |
| Subject | Re: [PATCH v2] tools build: add tools tree support for 'make -s' |
| Message-ID | <t3Y3M-2To-13@gated-at.bofh.it> |
| In reply to | #1566676 |
Em Wed, Jan 25, 2017 at 04:12:57PM +0100, Peter Zijlstra escreveu: > On Wed, Jan 18, 2017 at 10:16:55PM -0600, Josh Poimboeuf wrote: > > When doing a kernel build with 'make -s', everything is silenced except > > the objtool build. That's because the tools tree support for silent > > builds is some combination of missing and broken. > > > > Three changes are needed to fix it: > > > > - Makefile: propagate '-s' to the sub-make's MAKEFLAGS variable so the > > tools Makefiles can see it. > > > > - tools/scripts/Makefile.include: fix the tools Makefiles' ability to > > recognize '-s'. The MAKE_VERSION and MAKEFLAGS checks are copied from > > the top-level Makefile. This silences the "DESCEND objtool" message. > > > > - tools/build/Makefile.build: add support to the tools Build files for > > recognizing '-s'. Again the MAKE_VERSION and MAKEFLAGS checks are > > copied from the top-level Makefile. This silences all the object > > compile/link messages. > > > > Reported-by: Peter Zijlstra <peterz@infradead.org> > > Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com> > > Awesome, seems to work! > > Tested-by: Peter Zijlstra (Intel) <peterz@infradead.org> Thanks, applied. - Arnaldo
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web