Message ID | 20230112114754.82405-1-marcus.folkesson@gmail.com |
---|---|
State | Rejected |
Headers | show |
Series | package/pkg-kconfig.mk new <pkg>-show-fragment target | expand |
On Thu, Jan 12, 2023 at 12:47:54PM +0100, Marcus Folkesson wrote: > This patch introduce the new target to simplify the generation of > configuration fragments as the output could be directly copied into a > fragment file as-is. > > It is *heavily* based on the <pkg>-diff-config target, but serves a > different purpose. > > Output from linux-diff-config: > -CONFIG_GCC_PLUGIN_ARM_SSP_PER_TASK y > -CONFIG_GCC_PLUGIN_CYC_COMPLEXITY n > -CONFIG_GCC_PLUGIN_LATENT_ENTROPY n > -CONFIG_GCC_PLUGIN_RANDSTRUCT n > -CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF n > -CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF_ALL n > -CONFIG_GCC_PLUGIN_STRUCTLEAK_USER n > -CONFIG_STACKPROTECTOR_PER_TASK y > CONFIG_CRYPTO_DH n -> y > CONFIG_CRYPTO_KPP m -> y > CONFIG_GCC_PLUGINS y -> n > CONFIG_KEY_DH_OPERATIONS n -> y > CONFIG_PKCS8_PRIVATE_KEY_PARSER n -> y > CONFIG_VIDEO_IMX274 n -> m > > Output from linux-show-fragment: > CONFIG_CRYPTO_DH=y > CONFIG_CRYPTO_KPP=y > CONFIG_KEY_DH_OPERATIONS=y > CONFIG_PKCS8_PRIVATE_KEY_PARSER=y > CONFIG_VIDEO_IMX274=m > > Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com> > --- Ping
diff --git a/package/pkg-kconfig.mk b/package/pkg-kconfig.mk index f4f35bf96a..ee96525c47 100644 --- a/package/pkg-kconfig.mk +++ b/package/pkg-kconfig.mk @@ -309,12 +309,26 @@ $(1)-diff-config: $(1)-check-configuration-done $$(Q)cp -a $$($(2)_DIR)/.config.dc.bak $$($(2)_DIR)/$$($(2)_KCONFIG_DOTCONFIG) $$(Q)rm -f $$($(2)_DIR)/.config.dc.bak +# Target to output differences between the configuration obtained via the +# defconfig + fragments (if any) and the current configuration. +# Output format is suitable to be used as-is in fragment files. +# Note: it preserves the timestamp of the current configuration when moving it +# around. +$(1)-show-fragment: $(1)-check-configuration-done + $$(Q)cp -a $$($(2)_DIR)/$$($(2)_KCONFIG_DOTCONFIG) $$($(2)_DIR)/.config.dc.bak + $$(call kconfig-package-merge-config,$(2),$$($(2)_DIR)/$$($(2)_KCONFIG_DOTCONFIG),\ + $$($(2)_KCONFIG_FRAGMENT_FILES)) + $$(Q)utils/diffconfig -m $$($(2)_DIR)/$$($(2)_KCONFIG_DOTCONFIG) \ + $$($(2)_DIR)/.config.dc.bak + $$(Q)cp -a $$($(2)_DIR)/.config.dc.bak $$($(2)_DIR)/$$($(2)_KCONFIG_DOTCONFIG) + $$(Q)rm -f $$($(2)_DIR)/.config.dc.bak endif # package enabled .PHONY: \ $(1)-diff-config \ $(1)-check-configuration-done \ + $(1)-show-fragment \ $$($(2)_DIR)/.kconfig_editor_% \ $$(addprefix $(1)-,$$($(2)_KCONFIG_EDITORS))
This patch introduce the new target to simplify the generation of configuration fragments as the output could be directly copied into a fragment file as-is. It is *heavily* based on the <pkg>-diff-config target, but serves a different purpose. Output from linux-diff-config: -CONFIG_GCC_PLUGIN_ARM_SSP_PER_TASK y -CONFIG_GCC_PLUGIN_CYC_COMPLEXITY n -CONFIG_GCC_PLUGIN_LATENT_ENTROPY n -CONFIG_GCC_PLUGIN_RANDSTRUCT n -CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF n -CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF_ALL n -CONFIG_GCC_PLUGIN_STRUCTLEAK_USER n -CONFIG_STACKPROTECTOR_PER_TASK y CONFIG_CRYPTO_DH n -> y CONFIG_CRYPTO_KPP m -> y CONFIG_GCC_PLUGINS y -> n CONFIG_KEY_DH_OPERATIONS n -> y CONFIG_PKCS8_PRIVATE_KEY_PARSER n -> y CONFIG_VIDEO_IMX274 n -> m Output from linux-show-fragment: CONFIG_CRYPTO_DH=y CONFIG_CRYPTO_KPP=y CONFIG_KEY_DH_OPERATIONS=y CONFIG_PKCS8_PRIVATE_KEY_PARSER=y CONFIG_VIDEO_IMX274=m Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com> --- package/pkg-kconfig.mk | 14 ++++++++++++++ 1 file changed, 14 insertions(+)