toolchain-external-linaro-{arm,armeb}: allow on ARMv8
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Mon, 5 Dec 2016 22:15:43 +0000 (23:15 +0100)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Mon, 5 Dec 2016 22:16:56 +0000 (23:16 +0100)
The Linaro toolchains are currently only available on ARMv7-A, but can
in fact also be used to generate 32 bits code for ARMv8 platforms. This
commit therefore adjusts their architecture dependency.

Example, a 32 bits ARM build produces a 32 bits busybox binary:

$ file output/target/bin/busybox
output/target/bin/busybox: setuid ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, for GNU/Linux 2.6.32, BuildID[sha1]=16a7a70eb9cac08759e52a260478b9c287f59238, stripped

Which was built for Cortex-A72:

$ ./output/host/usr/bin/arm-linux-gnueabihf-readelf -A output/target/bin/busybox
Attribute Section: aeabi
File Attributes
  Tag_CPU_name: "Cortex-A72"
  Tag_CPU_arch: v8
  Tag_CPU_arch_profile: Application
  Tag_ARM_ISA_use: Yes
  Tag_THUMB_ISA_use: Thumb-2
  Tag_FP_arch: FP for ARMv8
  Tag_ABI_PCS_wchar_t: 4
  Tag_ABI_FP_rounding: Needed
  Tag_ABI_FP_denormal: Needed
  Tag_ABI_FP_exceptions: Needed
  Tag_ABI_FP_number_model: IEEE 754
  Tag_ABI_align_needed: 8-byte
  Tag_ABI_align_preserved: 8-byte, except leaf SP
  Tag_ABI_enum_size: int
  Tag_ABI_VFP_args: VFP registers
  Tag_CPU_unaligned_access: v6
  Tag_MPextension_use: Allowed
  Tag_Virtualization_use: TrustZone and Virtualization Extensions

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in
toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in

index cef42e744179f8e7cea2d6e9290b59191946bdcf..78aeb8ea41c14351b1face33a2eed6e2a6169752 100644 (file)
@@ -6,7 +6,7 @@ comment "Linaro toolchains available for Cortex-A + EABIhf"
 config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM
        bool "Linaro ARM 2016.11"
        depends on BR2_arm
-       depends on BR2_ARM_CPU_ARMV7A
+       depends on BR2_ARM_CPU_ARMV7A || BR2_ARM_CPU_ARMV8
        depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
        depends on BR2_ARM_EABIHF
        depends on !BR2_STATIC_LIBS
index b2fed7fb6c81337701f2a83248a44adb23f22d3f..c7f2f5f60c33655536afed2728420619ec6c5d5e 100644 (file)
@@ -6,7 +6,7 @@ comment "Linaro toolchains available for Cortex-A + EABIhf"
 config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB
        bool "Linaro armeb 2016.11"
        depends on BR2_armeb
-       depends on BR2_ARM_CPU_ARMV7A
+       depends on BR2_ARM_CPU_ARMV7A || BR2_ARM_CPU_ARMV8
        depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
        depends on BR2_ARM_EABIHF
        depends on !BR2_STATIC_LIBS