Many Kconfig fragments are being used internally to construct hard-coded targets and shouldn't be reachable directly through the build system. Splitting these out also means that the "help" target can display only the "complete" .config targets intended for general use. This is especially useful for powerpc where most of the arch fragments aren't intended to be consumed individually. Cc: Masahiro Yamada <masahiroy@xxxxxxxxxx> Cc: x86@xxxxxxxxxx Cc: linuxppc-dev@xxxxxxxxxxxxxxxx Cc: linux-kbuild@xxxxxxxxxxxxxxx Suggested-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx> Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx> --- arch/powerpc/Makefile | 26 +++++++++---------- .../{32-bit.config => 32-bit.fragment} | 0 .../{64-bit.config => 64-bit.fragment} | 0 ...{85xx-32bit.config => 85xx-32bit.fragment} | 0 ...{85xx-64bit.config => 85xx-64bit.fragment} | 0 .../{85xx-hw.config => 85xx-hw.fragment} | 0 .../{85xx-smp.config => 85xx-smp.fragment} | 0 .../{86xx-hw.config => 86xx-hw.fragment} | 0 .../{86xx-smp.config => 86xx-smp.fragment} | 0 .../{altivec.config => altivec.fragment} | 0 .../configs/{be.config => be.fragment} | 0 .../{book3s_32.config => book3s_32.fragment} | 0 ...enet_base.config => corenet_base.fragment} | 0 .../configs/{dpaa.config => dpaa.fragment} | 0 ...mb-nonhw.config => fsl-emb-nonhw.fragment} | 0 .../configs/{guest.config => guest.fragment} | 0 .../configs/{le.config => le.fragment} | 0 ...85xx_base.config => mpc85xx_base.fragment} | 0 ...86xx_base.config => mpc86xx_base.fragment} | 0 .../{ppc64le.config => ppc64le.fragment} | 0 {kernel => arch/x86}/configs/x86_debug.config | 0 .../{tiny-base.config => tiny-base.fragment} | 0 scripts/Makefile.defconf | 12 ++++++--- scripts/kconfig/Makefile | 2 +- 24 files changed, 22 insertions(+), 18 deletions(-) rename arch/powerpc/configs/{32-bit.config => 32-bit.fragment} (100%) rename arch/powerpc/configs/{64-bit.config => 64-bit.fragment} (100%) rename arch/powerpc/configs/{85xx-32bit.config => 85xx-32bit.fragment} (100%) rename arch/powerpc/configs/{85xx-64bit.config => 85xx-64bit.fragment} (100%) rename arch/powerpc/configs/{85xx-hw.config => 85xx-hw.fragment} (100%) rename arch/powerpc/configs/{85xx-smp.config => 85xx-smp.fragment} (100%) rename arch/powerpc/configs/{86xx-hw.config => 86xx-hw.fragment} (100%) rename arch/powerpc/configs/{86xx-smp.config => 86xx-smp.fragment} (100%) rename arch/powerpc/configs/{altivec.config => altivec.fragment} (100%) rename arch/powerpc/configs/{be.config => be.fragment} (100%) rename arch/powerpc/configs/{book3s_32.config => book3s_32.fragment} (100%) rename arch/powerpc/configs/{corenet_base.config => corenet_base.fragment} (100%) rename arch/powerpc/configs/{dpaa.config => dpaa.fragment} (100%) rename arch/powerpc/configs/{fsl-emb-nonhw.config => fsl-emb-nonhw.fragment} (100%) rename arch/powerpc/configs/{guest.config => guest.fragment} (100%) rename arch/powerpc/configs/{le.config => le.fragment} (100%) rename arch/powerpc/configs/{mpc85xx_base.config => mpc85xx_base.fragment} (100%) rename arch/powerpc/configs/{mpc86xx_base.config => mpc86xx_base.fragment} (100%) rename arch/powerpc/configs/{ppc64le.config => ppc64le.fragment} (100%) rename {kernel => arch/x86}/configs/x86_debug.config (100%) rename kernel/configs/{tiny-base.config => tiny-base.fragment} (100%) diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile index dac7ca153886..b73f2b40a0bc 100644 --- a/arch/powerpc/Makefile +++ b/arch/powerpc/Makefile @@ -267,66 +267,66 @@ powernv_be_defconfig: generated_configs += mpc85xx_defconfig mpc85xx_defconfig: - $(call merge_into_defconfig,mpc85xx_base.config,\ + $(call merge_into_defconfig,mpc85xx_base.fragment,\ 85xx-32bit 85xx-hw fsl-emb-nonhw) generated_configs += mpc85xx_smp_defconfig mpc85xx_smp_defconfig: - $(call merge_into_defconfig,mpc85xx_base.config,\ + $(call merge_into_defconfig,mpc85xx_base.fragment,\ 85xx-32bit 85xx-smp 85xx-hw fsl-emb-nonhw) generated_configs += corenet32_smp_defconfig corenet32_smp_defconfig: - $(call merge_into_defconfig,corenet_base.config,\ + $(call merge_into_defconfig,corenet_base.fragment,\ 85xx-32bit 85xx-smp 85xx-hw fsl-emb-nonhw dpaa) generated_configs += corenet64_smp_defconfig corenet64_smp_defconfig: - $(call merge_into_defconfig,corenet_base.config,\ + $(call merge_into_defconfig,corenet_base.fragment,\ 85xx-64bit 85xx-smp altivec 85xx-hw fsl-emb-nonhw dpaa) generated_configs += mpc86xx_defconfig mpc86xx_defconfig: - $(call merge_into_defconfig,mpc86xx_base.config,\ + $(call merge_into_defconfig,mpc86xx_base.fragment,\ 86xx-hw fsl-emb-nonhw) generated_configs += mpc86xx_smp_defconfig mpc86xx_smp_defconfig: - $(call merge_into_defconfig,mpc86xx_base.config,\ + $(call merge_into_defconfig,mpc86xx_base.fragment,\ 86xx-smp 86xx-hw fsl-emb-nonhw) generated_configs += ppc32_allmodconfig ppc32_allmodconfig: - $(Q)$(MAKE) KCONFIG_ALLCONFIG=$(srctree)/arch/powerpc/configs/book3s_32.config \ + $(Q)$(MAKE) KCONFIG_ALLCONFIG=$(srctree)/arch/powerpc/configs/book3s_32.fragment \ -f $(srctree)/Makefile allmodconfig generated_configs += ppc_defconfig ppc_defconfig: - $(call merge_into_defconfig,book3s_32.config,) + $(call merge_into_defconfig,book3s_32.fragment,) generated_configs += ppc64le_allmodconfig ppc64le_allmodconfig: - $(Q)$(MAKE) KCONFIG_ALLCONFIG=$(srctree)/arch/powerpc/configs/le.config \ + $(Q)$(MAKE) KCONFIG_ALLCONFIG=$(srctree)/arch/powerpc/configs/le.fragment \ -f $(srctree)/Makefile allmodconfig generated_configs += ppc64le_allnoconfig ppc64le_allnoconfig: - $(Q)$(MAKE) KCONFIG_ALLCONFIG=$(srctree)/arch/powerpc/configs/ppc64le.config \ + $(Q)$(MAKE) KCONFIG_ALLCONFIG=$(srctree)/arch/powerpc/configs/ppc64le.fragment \ -f $(srctree)/Makefile allnoconfig generated_configs += ppc64_book3e_allmodconfig ppc64_book3e_allmodconfig: - $(Q)$(MAKE) KCONFIG_ALLCONFIG=$(srctree)/arch/powerpc/configs/85xx-64bit.config \ + $(Q)$(MAKE) KCONFIG_ALLCONFIG=$(srctree)/arch/powerpc/configs/85xx-64bit.fragment \ -f $(srctree)/Makefile allmodconfig generated_configs += ppc32_randconfig ppc32_randconfig: - $(Q)$(MAKE) KCONFIG_ALLCONFIG=$(srctree)/arch/powerpc/configs/32-bit.config \ + $(Q)$(MAKE) KCONFIG_ALLCONFIG=$(srctree)/arch/powerpc/configs/32-bit.fragment \ -f $(srctree)/Makefile randconfig generated_configs += ppc64_randconfig ppc64_randconfig: - $(Q)$(MAKE) KCONFIG_ALLCONFIG=$(srctree)/arch/powerpc/configs/64-bit.config \ + $(Q)$(MAKE) KCONFIG_ALLCONFIG=$(srctree)/arch/powerpc/configs/64-bit.fragment \ -f $(srctree)/Makefile randconfig PHONY += $(generated_configs) diff --git a/arch/powerpc/configs/32-bit.config b/arch/powerpc/configs/32-bit.fragment similarity index 100% rename from arch/powerpc/configs/32-bit.config rename to arch/powerpc/configs/32-bit.fragment diff --git a/arch/powerpc/configs/64-bit.config b/arch/powerpc/configs/64-bit.fragment similarity index 100% rename from arch/powerpc/configs/64-bit.config rename to arch/powerpc/configs/64-bit.fragment diff --git a/arch/powerpc/configs/85xx-32bit.config b/arch/powerpc/configs/85xx-32bit.fragment similarity index 100% rename from arch/powerpc/configs/85xx-32bit.config rename to arch/powerpc/configs/85xx-32bit.fragment diff --git a/arch/powerpc/configs/85xx-64bit.config b/arch/powerpc/configs/85xx-64bit.fragment similarity index 100% rename from arch/powerpc/configs/85xx-64bit.config rename to arch/powerpc/configs/85xx-64bit.fragment diff --git a/arch/powerpc/configs/85xx-hw.config b/arch/powerpc/configs/85xx-hw.fragment similarity index 100% rename from arch/powerpc/configs/85xx-hw.config rename to arch/powerpc/configs/85xx-hw.fragment diff --git a/arch/powerpc/configs/85xx-smp.config b/arch/powerpc/configs/85xx-smp.fragment similarity index 100% rename from arch/powerpc/configs/85xx-smp.config rename to arch/powerpc/configs/85xx-smp.fragment diff --git a/arch/powerpc/configs/86xx-hw.config b/arch/powerpc/configs/86xx-hw.fragment similarity index 100% rename from arch/powerpc/configs/86xx-hw.config rename to arch/powerpc/configs/86xx-hw.fragment diff --git a/arch/powerpc/configs/86xx-smp.config b/arch/powerpc/configs/86xx-smp.fragment similarity index 100% rename from arch/powerpc/configs/86xx-smp.config rename to arch/powerpc/configs/86xx-smp.fragment diff --git a/arch/powerpc/configs/altivec.config b/arch/powerpc/configs/altivec.fragment similarity index 100% rename from arch/powerpc/configs/altivec.config rename to arch/powerpc/configs/altivec.fragment diff --git a/arch/powerpc/configs/be.config b/arch/powerpc/configs/be.fragment similarity index 100% rename from arch/powerpc/configs/be.config rename to arch/powerpc/configs/be.fragment diff --git a/arch/powerpc/configs/book3s_32.config b/arch/powerpc/configs/book3s_32.fragment similarity index 100% rename from arch/powerpc/configs/book3s_32.config rename to arch/powerpc/configs/book3s_32.fragment diff --git a/arch/powerpc/configs/corenet_base.config b/arch/powerpc/configs/corenet_base.fragment similarity index 100% rename from arch/powerpc/configs/corenet_base.config rename to arch/powerpc/configs/corenet_base.fragment diff --git a/arch/powerpc/configs/dpaa.config b/arch/powerpc/configs/dpaa.fragment similarity index 100% rename from arch/powerpc/configs/dpaa.config rename to arch/powerpc/configs/dpaa.fragment diff --git a/arch/powerpc/configs/fsl-emb-nonhw.config b/arch/powerpc/configs/fsl-emb-nonhw.fragment similarity index 100% rename from arch/powerpc/configs/fsl-emb-nonhw.config rename to arch/powerpc/configs/fsl-emb-nonhw.fragment diff --git a/arch/powerpc/configs/guest.config b/arch/powerpc/configs/guest.fragment similarity index 100% rename from arch/powerpc/configs/guest.config rename to arch/powerpc/configs/guest.fragment diff --git a/arch/powerpc/configs/le.config b/arch/powerpc/configs/le.fragment similarity index 100% rename from arch/powerpc/configs/le.config rename to arch/powerpc/configs/le.fragment diff --git a/arch/powerpc/configs/mpc85xx_base.config b/arch/powerpc/configs/mpc85xx_base.fragment similarity index 100% rename from arch/powerpc/configs/mpc85xx_base.config rename to arch/powerpc/configs/mpc85xx_base.fragment diff --git a/arch/powerpc/configs/mpc86xx_base.config b/arch/powerpc/configs/mpc86xx_base.fragment similarity index 100% rename from arch/powerpc/configs/mpc86xx_base.config rename to arch/powerpc/configs/mpc86xx_base.fragment diff --git a/arch/powerpc/configs/ppc64le.config b/arch/powerpc/configs/ppc64le.fragment similarity index 100% rename from arch/powerpc/configs/ppc64le.config rename to arch/powerpc/configs/ppc64le.fragment diff --git a/kernel/configs/x86_debug.config b/arch/x86/configs/x86_debug.config similarity index 100% rename from kernel/configs/x86_debug.config rename to arch/x86/configs/x86_debug.config diff --git a/kernel/configs/tiny-base.config b/kernel/configs/tiny-base.fragment similarity index 100% rename from kernel/configs/tiny-base.config rename to kernel/configs/tiny-base.fragment diff --git a/scripts/Makefile.defconf b/scripts/Makefile.defconf index ab271b2051a2..46d0ecdda391 100644 --- a/scripts/Makefile.defconf +++ b/scripts/Makefile.defconf @@ -6,11 +6,13 @@ # Usage: # $(call merge_into_defconfig,base_config,config_fragment1 config_fragment2 ...) # -# Input config fragments without '.config' suffix +# Input config fragments without '.config' or '.fragment' suffix define merge_into_defconfig $(Q)$(CONFIG_SHELL) $(srctree)/scripts/kconfig/merge_config.sh \ -m -O $(objtree) $(srctree)/arch/$(ARCH)/configs/$(1) \ - $(foreach config,$(2),$(srctree)/arch/$(ARCH)/configs/$(config).config) + $(foreach config,$(2), \ + $(wildcard $(srctree)/arch/$(ARCH)/configs/$(config).config \ + $(srctree)/arch/$(ARCH)/configs/$(config).fragment)) +$(Q)$(MAKE) -f $(srctree)/Makefile olddefconfig endef @@ -20,10 +22,12 @@ endef # Usage: # $(call merge_into_defconfig_override,base_config,config_fragment1 config_fragment2 ...) # -# Input config fragments without '.config' suffix +# Input config fragments without '.config' or '.fragment' suffix define merge_into_defconfig_override $(Q)$(CONFIG_SHELL) $(srctree)/scripts/kconfig/merge_config.sh \ -Q -m -O $(objtree) $(srctree)/arch/$(ARCH)/configs/$(1) \ - $(foreach config,$(2),$(srctree)/arch/$(ARCH)/configs/$(config).config) + $(foreach config,$(2), \ + $(wildcard $(srctree)/arch/$(ARCH)/configs/$(config).config \ + $(srctree)/arch/$(ARCH)/configs/$(config).fragment)) +$(Q)$(MAKE) -f $(srctree)/Makefile olddefconfig endef diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile index 370ff6bba78d..a03388eb735f 100644 --- a/scripts/kconfig/Makefile +++ b/scripts/kconfig/Makefile @@ -102,7 +102,7 @@ configfiles=$(wildcard $(srctree)/kernel/configs/$(1) $(srctree)/arch/$(SRCARCH) PHONY += tinyconfig tinyconfig: - $(Q)KCONFIG_ALLCONFIG=kernel/configs/tiny-base.config $(MAKE) -f $(srctree)/Makefile allnoconfig + $(Q)KCONFIG_ALLCONFIG=kernel/configs/tiny-base.fragment $(MAKE) -f $(srctree)/Makefile allnoconfig $(Q)$(MAKE) -f $(srctree)/Makefile tiny.config # CHECK: -o cache_dir=<path> working? -- 2.34.1