All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nathan Chancellor <nathan@kernel.org>
To: Masahiro Yamada <masahiroy@kernel.org>
Cc: linux-kbuild@vger.kernel.org, linux-kernel@vger.kernel.org,
	Leon Romanovsky <leon@kernel.org>,
	Nicolas Schier <nicolas@fjasle.eu>
Subject: Re: [PATCH] kbuild: suppress stdout from merge_config for silent builds
Date: Sun, 8 Dec 2024 10:31:19 -0700	[thread overview]
Message-ID: <20241208173119.GA3365428@ax162> (raw)
In-Reply-To: <20241208144622.605523-1-masahiroy@kernel.org>

On Sun, Dec 08, 2024 at 11:46:14PM +0900, Masahiro Yamada wrote:
> merge_config does not respect the Make's -s (--silent) option.
> 
> Let's sink the stdout from merge_config for silent builds.
> 
> This commit does not cater to the direct invocation of merge_config.sh
> (e.g. arch/mips/Makefile).
> 
> Reported-by: Leon Romanovsky <leon@kernel.org>
> Closes: https://lore.kernel.org/all/e534ce33b0e1060eb85ece8429810f087b034c88.1733234008.git.leonro@nvidia.com/
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---
> 
>  scripts/Makefile.defconf | 13 +++++++------
>  scripts/kconfig/Makefile |  4 +++-
>  2 files changed, 10 insertions(+), 7 deletions(-)
> 
> diff --git a/scripts/Makefile.defconf b/scripts/Makefile.defconf
> index 226ea3df3b4b..97bc5161d6bf 100644
> --- a/scripts/Makefile.defconf
> +++ b/scripts/Makefile.defconf
> @@ -1,6 +1,11 @@
>  # SPDX-License-Identifier: GPL-2.0
>  # Configuration heplers
>  
> +cmd_merge_fragments = \
> +	$(CONFIG_SHELL) $(srctree)/scripts/kconfig/merge_config.sh \
> +	$4 -m -O $(objtree) $(srctree)/arch/$(SRCARCH)/configs/$2 \
> +	$(foreach config,$3,$(srctree)/arch/$(SRCARCH)/configs/$(config).config)
> +
>  # Creates 'merged defconfigs'
>  # ---------------------------------------------------------------------------
>  # Usage:
> @@ -8,9 +13,7 @@
>  #
>  # Input config fragments without '.config' suffix
>  define merge_into_defconfig
> -	$(Q)$(CONFIG_SHELL) $(srctree)/scripts/kconfig/merge_config.sh \
> -		-m -O $(objtree) $(srctree)/arch/$(SRCARCH)/configs/$(1) \
> -		$(foreach config,$(2),$(srctree)/arch/$(SRCARCH)/configs/$(config).config)
> +	$(call cmd,merge_fragments,$1,$2)
>  	+$(Q)$(MAKE) -f $(srctree)/Makefile olddefconfig
>  endef
>  
> @@ -22,8 +25,6 @@ endef
>  #
>  # Input config fragments without '.config' suffix
>  define merge_into_defconfig_override
> -	$(Q)$(CONFIG_SHELL) $(srctree)/scripts/kconfig/merge_config.sh \
> -		-Q -m -O $(objtree) $(srctree)/arch/$(SRCARCH)/configs/$(1) \
> -		$(foreach config,$(2),$(srctree)/arch/$(SRCARCH)/configs/$(config).config)
> +	$(call cmd,merge_fragments,$1,$2,-Q)
>  	+$(Q)$(MAKE) -f $(srctree)/Makefile olddefconfig
>  endef
> diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile
> index a0a0be38cbdc..fb50bd4f4103 100644
> --- a/scripts/kconfig/Makefile
> +++ b/scripts/kconfig/Makefile
> @@ -105,9 +105,11 @@ configfiles = $(wildcard $(srctree)/kernel/configs/$(1) $(srctree)/arch/$(SRCARC
>  all-config-fragments = $(call configfiles,*.config)
>  config-fragments = $(call configfiles,$@)
>  
> +cmd_merge_fragments = $(srctree)/scripts/kconfig/merge_config.sh -m $(KCONFIG_CONFIG) $(config-fragments)

Did you mean to drop $(CONFIG_SHELL) here? I noticed you kept it in the
other command.

> +
>  %.config: $(obj)/conf
>  	$(if $(config-fragments),, $(error $@ fragment does not exists on this architecture))
> -	$(Q)$(CONFIG_SHELL) $(srctree)/scripts/kconfig/merge_config.sh -m $(KCONFIG_CONFIG) $(config-fragments)
> +	$(call cmd,merge_fragments)
>  	$(Q)$(MAKE) -f $(srctree)/Makefile olddefconfig
>  
>  PHONY += tinyconfig
> -- 
> 2.43.0
> 

  reply	other threads:[~2024-12-08 17:31 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-08 14:46 [PATCH] kbuild: suppress stdout from merge_config for silent builds Masahiro Yamada
2024-12-08 17:31 ` Nathan Chancellor [this message]
2024-12-10 10:19   ` Masahiro Yamada
2024-12-09 18:19 ` Leon Romanovsky

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20241208173119.GA3365428@ax162 \
    --to=nathan@kernel.org \
    --cc=leon@kernel.org \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=masahiroy@kernel.org \
    --cc=nicolas@fjasle.eu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.