boot/uboot: fix uboot building host tools on x86 architecture

The make all command run the tools/makefile on the process.
This makefile use "pkg-config" command to support static link.
The issue is the use of pkg-config configured for crosscompiling
to build binaries tools for host architecture.
To fix it, I add pkg-config environment variable to configure it for host.

Add a test to avoid future regress on the build of U-boot.

Signed-off-by: Kory Maincent <kory.maincent@bootlin.com>
[yann.morin.1998@free.fr:
  - fix mixed space-TAB indentation
  - fix check-package
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This commit is contained in:
Kory Maincent 2021-06-30 11:02:47 +02:00 committed by Yann E. MORIN
parent 4047e10ed6
commit 2eaa6d0f36
2 changed files with 25 additions and 0 deletions

View File

@ -307,6 +307,11 @@ define UBOOT_BUILD_CMDS
cp -f $(UBOOT_CUSTOM_DTS_PATH) $(@D)/arch/$(UBOOT_ARCH)/dts/
)
$(TARGET_CONFIGURE_OPTS) \
PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \
PKG_CONFIG_SYSROOT_DIR="/" \
PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 \
PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 \
PKG_CONFIG_LIBDIR="$(HOST_DIR)/lib/pkgconfig:$(HOST_DIR)/share/pkgconfig" \
$(UBOOT_MAKE) -C $(@D) $(UBOOT_MAKE_OPTS) \
$(UBOOT_MAKE_TARGET)
$(if $(BR2_TARGET_UBOOT_FORMAT_SD),

View File

@ -0,0 +1,20 @@
import os
import infra.basetest
class TestUbootOpensslPkgConfig(infra.basetest.BRTest):
config = infra.basetest.MINIMAL_CONFIG + \
"""
BR2_x86_64=y
BR2_x86_atom=y
BR2_PACKAGE_OPENSSL=y
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="efi-x86_payload64"
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
BR2_PACKAGE_HOST_PKGCONF=y
"""
def test_run(self):
img = os.path.join(self.builddir, "images", "u-boot.bin")
self.assertTrue(os.path.exists(img))