Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v2] boot/uboot: fix uboot building host tools on x86 architecture
@ 2021-06-30  9:02 Kory Maincent
  2021-06-30 21:07 ` Yann E. MORIN
  2021-08-03 20:11 ` Peter Korsgaard
  0 siblings, 2 replies; 4+ messages in thread
From: Kory Maincent @ 2021-06-30  9:02 UTC (permalink / raw)
  To: buildroot

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>
---
 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" \
 		$(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))
+
-- 
2.25.1

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [Buildroot] [PATCH v2] boot/uboot: fix uboot building host tools on x86 architecture
  2021-06-30  9:02 [Buildroot] [PATCH v2] boot/uboot: fix uboot building host tools on x86 architecture Kory Maincent
@ 2021-06-30 21:07 ` Yann E. MORIN
  2021-07-12 20:35   ` Peter Korsgaard
  2021-08-03 20:11 ` Peter Korsgaard
  1 sibling, 1 reply; 4+ messages in thread
From: Yann E. MORIN @ 2021-06-30 21:07 UTC (permalink / raw)
  To: buildroot

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@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.  |
'------------------------------^-------^------------------^--------------------'

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Buildroot] [PATCH v2] boot/uboot: fix uboot building host tools on x86 architecture
  2021-06-30 21:07 ` Yann E. MORIN
@ 2021-07-12 20:35   ` Peter Korsgaard
  0 siblings, 0 replies; 4+ messages in thread
From: Peter Korsgaard @ 2021-07-12 20:35 UTC (permalink / raw)
  To: buildroot

>>>>> "Yann" == Yann E MORIN <yann.morin.1998@free.fr> writes:

 > 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@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.

Hmm, shouldn't we then add host-pkgconf to UBOOT_DEPENDENCIES so things
are not broken when it isn't available?


 >> +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

And then drop it from here?

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [Buildroot] [PATCH v2] boot/uboot: fix uboot building host tools on x86 architecture
  2021-06-30  9:02 [Buildroot] [PATCH v2] boot/uboot: fix uboot building host tools on x86 architecture Kory Maincent
  2021-06-30 21:07 ` Yann E. MORIN
@ 2021-08-03 20:11 ` Peter Korsgaard
  1 sibling, 0 replies; 4+ messages in thread
From: Peter Korsgaard @ 2021-08-03 20:11 UTC (permalink / raw)
  To: Kory Maincent; +Cc: buildroot, yann.morin.1998, thomas.petazzoni

>>>>> "Kory" == Kory Maincent <kory.maincent@bootlin.com> writes:

 > 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>

Committed to 2021.02.x and 2021.05.x, thanks.

-- 
Bye, Peter Korsgaard
_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-08-03 20:11 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-06-30  9:02 [Buildroot] [PATCH v2] boot/uboot: fix uboot building host tools on x86 architecture Kory Maincent
2021-06-30 21:07 ` Yann E. MORIN
2021-07-12 20:35   ` Peter Korsgaard
2021-08-03 20:11 ` Peter Korsgaard

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox