kvm-unit-tests: Fix x86_64 to use host compiler
kvm-unit-tests requires a multilib compiler for x86_64 as it compiles 32bit boot code. This patch uses the BR2_HOSTARCH_NEEDS_IA32_COMPILER option to enforce this and avoids using TARGET_CROSS for x86_64 targets and uses the host 32bit (and 64bit) capable compiler. Signed-off-by: Cyril Bur <cyrilbur@gmail.com> [Thomas: reword comment in .mk file.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
parent
76e10967e1
commit
e1b344070c
@ -1,5 +1,6 @@
|
|||||||
config BR2_PACKAGE_KVM_UNIT_TESTS
|
config BR2_PACKAGE_KVM_UNIT_TESTS
|
||||||
bool "kvm-unit-tests"
|
bool "kvm-unit-tests"
|
||||||
|
select BR2_HOSTARCH_NEEDS_IA32_COMPILER if BR2_x86_64=y
|
||||||
depends on BR2_arm || BR2_i386 || BR2_powerpc64 || \
|
depends on BR2_arm || BR2_i386 || BR2_powerpc64 || \
|
||||||
BR2_powerpc64le || BR2_x86_64
|
BR2_powerpc64le || BR2_x86_64
|
||||||
help
|
help
|
||||||
|
@ -28,9 +28,16 @@ endif
|
|||||||
|
|
||||||
KVM_UNIT_TESTS_CONF_OPTS =\
|
KVM_UNIT_TESTS_CONF_OPTS =\
|
||||||
--arch="$(KERNEL_ARCH)" \
|
--arch="$(KERNEL_ARCH)" \
|
||||||
--cross-prefix="$(TARGET_CROSS)" \
|
|
||||||
--endian="$(KVM_UNIT_TESTS_ENDIAN)"
|
--endian="$(KVM_UNIT_TESTS_ENDIAN)"
|
||||||
|
|
||||||
|
# For all architectures but x86-64, we use the target
|
||||||
|
# compiler. However, for x86-64, we use the host compiler, as
|
||||||
|
# kvm-unit-tests builds 32 bit code, which Buildroot toolchains for
|
||||||
|
# x86-64 cannot do.
|
||||||
|
ifneq ($(BR2_x86_64),y)
|
||||||
|
KVM_UNIT_TESTS_CONF_OPTS += --cross-prefix="$(TARGET_CROSS)"
|
||||||
|
endif
|
||||||
|
|
||||||
define KVM_UNIT_TESTS_CONFIGURE_CMDS
|
define KVM_UNIT_TESTS_CONFIGURE_CMDS
|
||||||
cd $(@D) && ./configure $(KVM_UNIT_TESTS_CONF_OPTS)
|
cd $(@D) && ./configure $(KVM_UNIT_TESTS_CONF_OPTS)
|
||||||
endef
|
endef
|
||||||
|
Loading…
Reference in New Issue
Block a user