From mboxrd@z Thu Jan 1 00:00:00 1970 From: oferh at marvell.com Date: Wed, 27 Jun 2018 17:17:02 +0300 Subject: [Buildroot] [PATCH 1/1] toolchain-external-linaro-aarch64-be: new package Message-ID: <1530109022-25845-1-git-send-email-oferh@marvell.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: buildroot@busybox.net From: Ofer Heifetz This commit adds a new package for the Linaro external toolchain for the AArch64 Big Endian architecture. https://releases.linaro.org/components/toolchain/binaries/7.3-2018.05 Signed-off-by: Ofer Heifetz --- .../config-fragments/autobuild/linaro-aarch64-be.config | 3 +++ support/config-fragments/autobuild/toolchain-configs.csv | 1 + toolchain/toolchain-external/Config.in | 2 ++ .../toolchain-external-linaro-aarch64-be/Config.in | 15 +++++++++++++++ .../Config.in.options | 9 +++++++++ .../toolchain-external-linaro-aarch64-be.hash | 3 +++ .../toolchain-external-linaro-aarch64-be.mk | 16 ++++++++++++++++ utils/genrandconfig | 1 + 8 files changed, 50 insertions(+) create mode 100644 support/config-fragments/autobuild/linaro-aarch64-be.config create mode 100644 toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in create mode 100644 toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in.options create mode 100644 toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/toolchain-external-linaro-aarch64-be.hash create mode 100644 toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/toolchain-external-linaro-aarch64-be.mk diff --git a/support/config-fragments/autobuild/linaro-aarch64-be.config b/support/config-fragments/autobuild/linaro-aarch64-be.config new file mode 100644 index 0000000..7e69350 --- /dev/null +++ b/support/config-fragments/autobuild/linaro-aarch64-be.config @@ -0,0 +1,3 @@ +BR2_aarch64=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE=y diff --git a/support/config-fragments/autobuild/toolchain-configs.csv b/support/config-fragments/autobuild/toolchain-configs.csv index 64abfb3..136a67f 100644 --- a/support/config-fragments/autobuild/toolchain-configs.csv +++ b/support/config-fragments/autobuild/toolchain-configs.csv @@ -58,6 +58,7 @@ support/config-fragments/autobuild/br-xtensa-full.config,x86_64 support/config-fragments/autobuild/br-xtensa-full-internal.config,any support/config-fragments/autobuild/i686-ctng-linux-gnu.config,x86 support/config-fragments/autobuild/linaro-aarch64.config,x86 +support/config-fragments/autobuild/linaro-aarch64-be.config,x86 support/config-fragments/autobuild/linaro-arm.config,x86 support/config-fragments/autobuild/mips64el-ctng_n32-linux-gnu.config,x86 support/config-fragments/autobuild/mips64el-ctng_n64-linux-gnu.config,x86 diff --git a/toolchain/toolchain-external/Config.in b/toolchain/toolchain-external/Config.in index 6759e5c..97e91b1 100644 --- a/toolchain/toolchain-external/Config.in +++ b/toolchain/toolchain-external/Config.in @@ -14,6 +14,7 @@ comment "glibc toolchains only available with shared lib support" # Aarch64 (use Linaro toolchain by default) source "toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in" source "toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in" +source "toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in" # ARC source "toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in" @@ -109,6 +110,7 @@ config BR2_TOOLCHAIN_EXTERNAL_PREFIX # Aarch64 source "toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in.options" source "toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in.options" +source "toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in.options" # ARC source "toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in.options" diff --git a/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in b/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in new file mode 100644 index 0000000..44faeb3 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in @@ -0,0 +1,15 @@ +config BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE + bool "Linaro AArch64_be 2018.05" + depends on BR2_aarch64_be + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_SSP + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_10 + select BR2_TOOLCHAIN_GCC_AT_LEAST_7 + select BR2_TOOLCHAIN_HAS_FORTRAN + help + Toolchain for the AArch64 architecture, from + http://www.linaro.org/engineering/armv8/ diff --git a/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in.options b/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in.options new file mode 100644 index 0000000..d44750f --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in.options @@ -0,0 +1,9 @@ +if BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE + +config BR2_TOOLCHAIN_EXTERNAL_PREFIX + default "aarch64_be-linux-gnu" + +config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL + default "toolchain-external-linaro-aarch64-be" + +endif diff --git a/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/toolchain-external-linaro-aarch64-be.hash b/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/toolchain-external-linaro-aarch64-be.hash new file mode 100644 index 0000000..f93642e --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/toolchain-external-linaro-aarch64-be.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 412da19c1d1bff0f3172bc19fd2c024207d8d716dbe7a8dad4bf9e3d6b71d149 gcc-linaro-7.3.1-2018.05-i686_aarch64_be-linux-gnu.tar.xz +sha256 277c1483f8dbd6007c945ffeb706fa1ba1da8ec1c397cf5cf1e29c25081426e5 gcc-linaro-7.3.1-2018.05-x86_64_aarch64_be-linux-gnu.tar.xz diff --git a/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/toolchain-external-linaro-aarch64-be.mk b/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/toolchain-external-linaro-aarch64-be.mk new file mode 100644 index 0000000..7a01151 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/toolchain-external-linaro-aarch64-be.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# toolchain-external-linaro-aarch64-be +# +################################################################################ + +TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE_VERSION = 2018.05 +TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE_SITE = https://releases.linaro.org/components/toolchain/binaries/7.3-$(TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE_VERSION)/aarch64_be-linux-gnu + +ifeq ($(HOSTARCH),x86) +TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE_SOURCE = gcc-linaro-7.3.1-$(TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE_VERSION)-i686_aarch64_be-linux-gnu.tar.xz +else +TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE_SOURCE = gcc-linaro-7.3.1-$(TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE_VERSION)-x86_64_aarch64_be-linux-gnu.tar.xz +endif + +$(eval $(toolchain-external-package)) diff --git a/utils/genrandconfig b/utils/genrandconfig index 06701ce..27f84ea 100755 --- a/utils/genrandconfig +++ b/utils/genrandconfig @@ -187,6 +187,7 @@ def is_toolchain_usable(configfile, config): if platform.machine() == 'x86_64': if 'BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM=y\n' in configlines or \ 'BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64=y\n' in configlines or \ + 'BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE=y\n' in configlines or \ 'BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB=y\n' in configlines: ldd_version_output = subprocess.check_output(['ldd', '--version']) glibc_version = ldd_version_output.splitlines()[0].split()[-1] -- 2.7.4