[Buildroot] [PATCH v2] boot/uboot: fix uboot building host tools on x86 architecture

Yann E. MORIN yann.morin.1998 at free.fr
Wed Jun 30 21:07:27 UTC 2021


Köry, All,

On 2021-06-30 11:02 +0200, Kory Maincent spake thusly:
> 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 at bootlin.com>
> ---
>  boot/uboot/uboot.mk                           |  5 +++++
>  .../package/test_uboot_openssl_pkgconfig.py   | 20 +++++++++++++++++++
>  2 files changed, 25 insertions(+)
>  create mode 100644 support/testing/tests/package/test_uboot_openssl_pkgconfig.py
> 
> diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
> index dbe82e65b1..5186e6071e 100644
> --- a/boot/uboot/uboot.mk
> +++ b/boot/uboot/uboot.mk
> @@ -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" \

Mixed TABs-n-spaces indentation, I've fixed that when applying.

Weird that 'make check-package' did not catch it...

>  		$(UBOOT_MAKE) -C $(@D) $(UBOOT_MAKE_OPTS) \
>  		$(UBOOT_MAKE_TARGET)
>  	$(if $(BR2_TARGET_UBOOT_FORMAT_SD),
> diff --git a/support/testing/tests/package/test_uboot_openssl_pkgconfig.py b/support/testing/tests/package/test_uboot_openssl_pkgconfig.py
> new file mode 100644
> index 0000000000..557b665b26
> --- /dev/null
> +++ b/support/testing/tests/package/test_uboot_openssl_pkgconfig.py
> @@ -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))
> +

    $ make check-package
    support/testing/tests/package/test_uboot_openssl_pkgconfig.py:17:5: E301 expected 1 blank line, found 0
    support/testing/tests/package/test_uboot_openssl_pkgconfig.py:20:1: W391 blank line at end of file
    1     E301 expected 1 blank line, found 0
    1     W391 blank line at end of file

I've also fixed those, and applied to master, thanks.

Regards,
Yann E. MORIN.

> -- 
> 2.25.1
> 
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'



More information about the buildroot mailing list