Skip to contentSkip to conversation

vboot-utils: fix ARCH detection

PATCH Superseded Alex Suykov 3 participants 6 messages Nov 7, 2017 – Nov 26, 2017

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/1 vboot-utils: fix ARCH detection

The package includes some target-specific code that is irrelevant in a host package but gets built anyway. The target for this code must be one of the supported ChromeOS targets.

Supplied Makefile apparently relies on the environment to provide a valid target, with a simple fallback to host arch. This breaks the build if no value is provided and the host arch is not among the supported ones.

Should fix
http://autobuild.buildroot.net/results/d118a83b6c4f7f910d0d44c279f36251d7ba29e8/
and similar failures.

---
v2: Hard-coded ARCH=arm to avoid target restrictions in a host package.

Build tested for arm and x86_64 targets on x86_64 host. I cannot test PPC host, except maybe in qemu which will take some time to set up.

 package/vboot-utils/vboot-utils.mk | 5 +++++
 1 file changed, 5 insertions(+)
package/vboot-utils/vboot-utils.mk +5 -0
index a6a67ad317..3f63f458cc 100644
@@ -21,12 +21,17 @@ HOST_VBOOT_UTILS_DEPENDENCIES = host-openssl host-util-linux host-pkgconf
 # media partitioning.
 #
 # make target for futility is "futil".
+#
+# The value of ARCH is only relevant for crossystem (a target tool) and
+# does not affect futil or cgpt in any way as long as it is one of the
+# supported targets.
 
 define HOST_VBOOT_UTILS_BUILD_CMDS
 	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) \
 		CC="$(HOSTCC)" \
 		CFLAGS="$(HOST_CFLAGS) -D_LARGEFILE64_SOURCE -D_GNU_SOURCE" \
 		LDFLAGS="$(HOST_LDFLAGS)" \
+		ARCH=arm \
 		futil cgpt
 endef
 
Signature · 1 line
2.14.1
#1 lore raw

PATCH v2 1/1 vboot-utils: fix ARCH detection

Hello,

Quoted 9 lines · Alex Suykov

The package includes some target-specific code that is irrelevant in a host package but gets built anyway. The target for this code must be one of the supported ChromeOS targets.

Supplied Makefile apparently relies on the environment to provide a valid target, with a simple fallback to host arch. This breaks the build if no value is provided and the host arch is not among the supported ones.

Quoted 5 lines

Should fix
http://autobuild.buildroot.net/results/d118a83b6c4f7f910d0d44c279f36251d7ba29e8/
and similar failures.

Thanks for this new version. However, you still didn't reply to me about what happens when HOST_ARCH != ARCH. The vboot-utils Makefile seems to have some logic to use Qemu in that case. Do you understand what it does exactly with Qemu, and that we won't have a problem by having HOST_ARCH != ARCH ?

Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
#2 lore raw

PATCH v2 1/1 vboot-utils: fix ARCH detection

Quoted 5 lines · Thomas Petazzoni

Thanks for this new version. However, you still didn't reply to me about what happens when HOST_ARCH != ARCH. The vboot-utils Makefile seems to have some logic to use Qemu in that case. Do you understand what it does exactly with Qemu, and that we won't have a problem by having HOST_ARCH != ARCH ?

Qemu is only used to run cross-compiled tests. Buildroot package neither builds nor runs tests, so it doesn't really matter whether qemu gets configured there or not.

#3 lore raw

PATCH v2 1/1 vboot-utils: fix ARCH detection

Hello,

Quoted 9 lines · Alex Suykov
Quoted 5 lines

Thanks for this new version. However, you still didn't reply to me about what happens when HOST_ARCH != ARCH. The vboot-utils Makefile seems to have some logic to use Qemu in that case. Do you understand what it does exactly with Qemu, and that we won't have a problem by having HOST_ARCH != ARCH ?

Qemu is only used to run cross-compiled tests. Buildroot package neither builds nor runs tests, so it doesn't really matter whether qemu gets configured there or not.

OK, makes sense, thanks for the explanation. The patch is good to go!

Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
#4 lore raw

PATCH v2 1/1 vboot-utils: fix ARCH detection

In reply to Alex Suykov

Hello,

Quoted 9 lines · Alex Suykov

The package includes some target-specific code that is irrelevant in a host package but gets built anyway. The target for this code must be one of the supported ChromeOS targets.

Supplied Makefile apparently relies on the environment to provide a valid target, with a simple fallback to host arch. This breaks the build if no value is provided and the host arch is not among the supported ones.

Quoted 7 lines

Should fix
http://autobuild.buildroot.net/results/d118a83b6c4f7f910d0d44c279f36251d7ba29e8/
and similar failures.

---
v2: Hard-coded ARCH=arm to avoid target restrictions in a host package.

Applied to master, thanks.

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#5 lore raw

PATCH v2 1/1 vboot-utils: fix ARCH detection

Quoted 17 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Hello,

Quoted 13 lines · Alex Suykov

The package includes some target-specific code that is irrelevant in a host package but gets built anyway. The target for this code must be one of the supported ChromeOS targets.

Supplied Makefile apparently relies on the environment to provide a valid target, with a simple fallback to host arch. This breaks the build if no value is provided and the host arch is not among the supported ones.

Should fix
http://autobuild.buildroot.net/results/d118a83b6c4f7f910d0d44c279f36251d7ba29e8/
and similar failures.

Quoted 5 lines
Quoted 3 lines

---
v2: Hard-coded ARCH=arm to avoid target restrictions in a host package.

Applied to master, thanks.

Committed to 2017.02.x and 2017.08.x, thanks.

Signature · 1 line
Bye, Peter Korsgaard