Re: [PATCH] kbuild: hide commands to run Kconfig, and show short log for syncconfig

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Aug 21, 2020 at 11:44 AM Masahiro Yamada <masahiroy@xxxxxxxxxx> wrote:
>
> Some targets (localyesconfig, localmodconfig, defconfig) hide the
> command running, but the others do not.
>
> Users know which Kconfig flavor they are running, so it is OK to hide
> the command. Add $(Q) to all commands consistently. If you want to see
> the full command running, pass V=1 from the command line.
>
> syncconfig is the exceptional case, which occurs without explicit
> command invocation by the user. Display the Kbuild-style log for it.
> The ugly bare log will go away.
>
> [Before]
>
> scripts/kconfig/conf  --syncconfig Kconfig
>
> [After]
>
>   SYNC    include/config/auto.conf
>
> Signed-off-by: Masahiro Yamada <masahiroy@xxxxxxxxxx>


Applied to linux-kbuild.



> ---
>
>  Makefile                 |  5 ++++-
>  scripts/kconfig/Makefile | 16 ++++++++--------
>  2 files changed, 12 insertions(+), 9 deletions(-)
>
> diff --git a/Makefile b/Makefile
> index 9cac6fde3479..0693314d51c3 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -708,8 +708,11 @@ $(KCONFIG_CONFIG):
>  # This exploits the 'multi-target pattern rule' trick.
>  # The syncconfig should be executed only once to make all the targets.
>  # (Note: use the grouped target '&:' when we bump to GNU Make 4.3)
> +quiet_cmd_syncconfig = SYNC    $@
> +      cmd_syncconfig = $(MAKE) -f $(srctree)/Makefile syncconfig
> +
>  %/config/auto.conf %/config/auto.conf.cmd %/generated/autoconf.h: $(KCONFIG_CONFIG)
> -       $(Q)$(MAKE) -f $(srctree)/Makefile syncconfig
> +       +$(call cmd,syncconfig)
>  else # !may-sync-config
>  # External modules and some install targets need include/generated/autoconf.h
>  # and include/config/auto.conf but do not care if they are up-to-date.
> diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile
> index 52b59bf9efe4..e46df0a2d4f9 100644
> --- a/scripts/kconfig/Makefile
> +++ b/scripts/kconfig/Makefile
> @@ -20,19 +20,19 @@ endif
>  unexport CONFIG_
>
>  xconfig: $(obj)/qconf
> -       $< $(silent) $(Kconfig)
> +       $(Q)$< $(silent) $(Kconfig)
>
>  gconfig: $(obj)/gconf
> -       $< $(silent) $(Kconfig)
> +       $(Q)$< $(silent) $(Kconfig)
>
>  menuconfig: $(obj)/mconf
> -       $< $(silent) $(Kconfig)
> +       $(Q)$< $(silent) $(Kconfig)
>
>  config: $(obj)/conf
> -       $< $(silent) --oldaskconfig $(Kconfig)
> +       $(Q)$< $(silent) --oldaskconfig $(Kconfig)
>
>  nconfig: $(obj)/nconf
> -       $< $(silent) $(Kconfig)
> +       $(Q)$< $(silent) $(Kconfig)
>
>  build_menuconfig: $(obj)/mconf
>
> @@ -68,12 +68,12 @@ simple-targets := oldconfig allnoconfig allyesconfig allmodconfig \
>  PHONY += $(simple-targets)
>
>  $(simple-targets): $(obj)/conf
> -       $< $(silent) --$@ $(Kconfig)
> +       $(Q)$< $(silent) --$@ $(Kconfig)
>
>  PHONY += savedefconfig defconfig
>
>  savedefconfig: $(obj)/conf
> -       $< $(silent) --$@=defconfig $(Kconfig)
> +       $(Q)$< $(silent) --$@=defconfig $(Kconfig)
>
>  defconfig: $(obj)/conf
>  ifneq ($(wildcard $(srctree)/arch/$(SRCARCH)/configs/$(KBUILD_DEFCONFIG)),)
> @@ -111,7 +111,7 @@ tinyconfig:
>  # CHECK: -o cache_dir=<path> working?
>  PHONY += testconfig
>  testconfig: $(obj)/conf
> -       $(PYTHON3) -B -m pytest $(srctree)/$(src)/tests \
> +       $(Q)$(PYTHON3) -B -m pytest $(srctree)/$(src)/tests \
>         -o cache_dir=$(abspath $(obj)/tests/.cache) \
>         $(if $(findstring 1,$(KBUILD_VERBOSE)),--capture=no)
>  clean-files += tests/.cache
> --
> 2.25.1
>


-- 
Best Regards
Masahiro Yamada



[Index of Archives]     [Linux&nblp;USB Development]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite Secrets]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux