162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci# Configuration heplers
362306a36Sopenharmony_ci
462306a36Sopenharmony_ci# Creates 'merged defconfigs'
562306a36Sopenharmony_ci# ---------------------------------------------------------------------------
662306a36Sopenharmony_ci# Usage:
762306a36Sopenharmony_ci#   $(call merge_into_defconfig,base_config,config_fragment1 config_fragment2 ...)
862306a36Sopenharmony_ci#
962306a36Sopenharmony_ci# Input config fragments without '.config' suffix
1062306a36Sopenharmony_cidefine merge_into_defconfig
1162306a36Sopenharmony_ci	$(Q)$(CONFIG_SHELL) $(srctree)/scripts/kconfig/merge_config.sh \
1262306a36Sopenharmony_ci		-m -O $(objtree) $(srctree)/arch/$(ARCH)/configs/$(1) \
1362306a36Sopenharmony_ci		$(foreach config,$(2),$(srctree)/arch/$(ARCH)/configs/$(config).config)
1462306a36Sopenharmony_ci	+$(Q)$(MAKE) -f $(srctree)/Makefile olddefconfig
1562306a36Sopenharmony_ciendef
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ci
1862306a36Sopenharmony_ci# Creates 'merged defconfigs without warning about overrides'
1962306a36Sopenharmony_ci# ---------------------------------------------------------------------------
2062306a36Sopenharmony_ci# Usage:
2162306a36Sopenharmony_ci#   $(call merge_into_defconfig_override,base_config,config_fragment1 config_fragment2 ...)
2262306a36Sopenharmony_ci#
2362306a36Sopenharmony_ci# Input config fragments without '.config' suffix
2462306a36Sopenharmony_cidefine merge_into_defconfig_override
2562306a36Sopenharmony_ci	$(Q)$(CONFIG_SHELL) $(srctree)/scripts/kconfig/merge_config.sh \
2662306a36Sopenharmony_ci		-Q -m -O $(objtree) $(srctree)/arch/$(ARCH)/configs/$(1) \
2762306a36Sopenharmony_ci		$(foreach config,$(2),$(srctree)/arch/$(ARCH)/configs/$(config).config)
2862306a36Sopenharmony_ci	+$(Q)$(MAKE) -f $(srctree)/Makefile olddefconfig
2962306a36Sopenharmony_ciendef
30