[Buildroot] [PATCH next v6 10/10] package/pkg-kconfig: handle KCONFIG_DEPENDENCIES with per-package directories
Andreas Naumann
dev at andin.de
Wed Dec 5 15:23:13 UTC 2018
Hi Thomas,
Am 23.11.18 um 15:58 schrieb Thomas Petazzoni:
> The pkg-kconfig infrastructure hijacks the regular chain of build
> steps to insert its own step to prepare the configuration of kconfig
> packages. This additional step may have dependencies of its own, such
> as host-flex, host-bison or toolchain.
>
> In the context of per-package directory support, those dependencies
> must be copied to the per-package directory of the current package
> prior to doing the config preparation. This commit implements this
> logic by adding a call to prepare-per-package-directory at the right
> spot.
>
> Reported-by: Andreas Naumann <anaumann at ultratronik.de>
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni at bootlin.com>
> ---
> package/pkg-kconfig.mk | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/package/pkg-kconfig.mk b/package/pkg-kconfig.mk
> index d6c95b897e..bf43632adc 100644
> --- a/package/pkg-kconfig.mk
> +++ b/package/pkg-kconfig.mk
> @@ -113,6 +113,7 @@ endef
> # Since the file could be a defconfig file it needs to be expanded to a
> # full .config first.
> $$($(2)_DIR)/$$($(2)_KCONFIG_DOTCONFIG): $$($(2)_KCONFIG_FILE) $$($(2)_KCONFIG_FRAGMENT_FILES)
> + $$(call prepare-per-package-folder,$$($(2)_KCONFIG_DEPENDENCIES))
> $$(Q)$$(if $$($(2)_KCONFIG_DEFCONFIG), \
> $$($(2)_KCONFIG_MAKE) $$($(2)_KCONFIG_DEFCONFIG), \
> $$(INSTALL) -m 0644 -D $$($(2)_KCONFIG_FILE) $$(@))
>
Finally I could test this and found an issue. Because I use ccache, the
linux/uboot kconfig steps fail, because ccache apparently is not part of
UBOOT/LINUX_KCONFIG_DEPENDENCIES.
Instead of conditionally adding it, my simple proposal would be to not
use it, e.g.:
# $(HOST_DIR)/lib/libncurses.so (which is not). We don't actually
# need any host-package for kconfig, so remove the HOSTCC/HOSTLDFLAGS
# override again.
-UBOOT_KCONFIG_OPTS = $(UBOOT_MAKE_OPTS) HOSTCC="$(HOSTCC)" HOSTLDFLAGS=""
+UBOOT_KCONFIG_OPTS = $(UBOOT_MAKE_OPTS) HOSTCC="$(HOSTCC_NOCCACHE)"
HOSTLDFLAGS=""
So after this, I'm not sure if there really was a need for above fix
since the fixup/.config creation may not even need the only kconfig
dependencies set so far: host-flex and host-bison..
regards,
Andreas
More information about the buildroot
mailing list