diff --git a/support/testing/tests/toolchain/test_external_bootlin.py b/support/testing/tests/toolchain/test_external_bootlin.py index eb6d0e66ff..923bb0da94 100644 --- a/support/testing/tests/toolchain/test_external_bootlin.py +++ b/support/testing/tests/toolchain/test_external_bootlin.py @@ -521,6 +521,102 @@ class TestExternalToolchainBootlinArmv7eabihfUclibcStable(TestExternalToolchain) TestExternalToolchain.common_check(self) +class TestExternalToolchainBootlinArmebv7eabihfGlibcBleedingEdge(TestExternalToolchain): + config = """ + BR2_armeb=y + BR2_cortex_a8=y + BR2_ARM_EABIHF=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_GLIBC_BLEEDING_EDGE=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + toolchain_prefix = "armeb-linux" + + def test_run(self): + TestExternalToolchain.common_check(self) + + +class TestExternalToolchainBootlinArmebv7eabihfGlibcStable(TestExternalToolchain): + config = """ + BR2_armeb=y + BR2_cortex_a8=y + BR2_ARM_EABIHF=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_GLIBC_STABLE=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + toolchain_prefix = "armeb-linux" + + def test_run(self): + TestExternalToolchain.common_check(self) + + +class TestExternalToolchainBootlinArmebv7eabihfMuslBleedingEdge(TestExternalToolchain): + config = """ + BR2_armeb=y + BR2_cortex_a8=y + BR2_ARM_EABIHF=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_MUSL_BLEEDING_EDGE=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + toolchain_prefix = "armeb-linux" + + def test_run(self): + TestExternalToolchain.common_check(self) + + +class TestExternalToolchainBootlinArmebv7eabihfMuslStable(TestExternalToolchain): + config = """ + BR2_armeb=y + BR2_cortex_a8=y + BR2_ARM_EABIHF=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_MUSL_STABLE=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + toolchain_prefix = "armeb-linux" + + def test_run(self): + TestExternalToolchain.common_check(self) + + +class TestExternalToolchainBootlinArmebv7eabihfUclibcBleedingEdge(TestExternalToolchain): + config = """ + BR2_armeb=y + BR2_cortex_a8=y + BR2_ARM_EABIHF=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_UCLIBC_BLEEDING_EDGE=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + toolchain_prefix = "armeb-linux" + + def test_run(self): + TestExternalToolchain.common_check(self) + + +class TestExternalToolchainBootlinArmebv7eabihfUclibcStable(TestExternalToolchain): + config = """ + BR2_armeb=y + BR2_cortex_a8=y + BR2_ARM_EABIHF=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_UCLIBC_STABLE=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + toolchain_prefix = "armeb-linux" + + def test_run(self): + TestExternalToolchain.common_check(self) + + class TestExternalToolchainBootlinArmv7mUclibcBleedingEdge(TestExternalToolchain): config = """ BR2_arm=y diff --git a/toolchain/toolchain-external/toolchain-external-bootlin/Config.in.options b/toolchain/toolchain-external/toolchain-external-bootlin/Config.in.options index 54d470f498..399843abc9 100644 --- a/toolchain/toolchain-external/toolchain-external-bootlin/Config.in.options +++ b/toolchain/toolchain-external/toolchain-external-bootlin/Config.in.options @@ -9,6 +9,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCH_SUPPORTS default y if BR2_arm && BR2_ARM_CPU_ARMV5 && BR2_ARM_EABI default y if BR2_arm && BR2_ARM_CPU_ARMV6 && BR2_ARM_EABIHF default y if BR2_arm && BR2_ARM_CPU_ARMV7A && BR2_ARM_EABIHF + default y if BR2_armeb && BR2_ARM_CPU_ARMV7A && BR2_ARM_EABIHF default y if BR2_arm && BR2_ARM_CPU_ARMV7M default y if BR2_m68k_m68k default y if BR2_m68k_cf @@ -891,6 +892,158 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_UCLIBC_STABLE https://toolchains.bootlin.com/ +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_GLIBC_BLEEDING_EDGE + bool "armebv7-eabihf glibc bleeding-edge 2021.11-1" + depends on BR2_armeb + depends on BR2_ARM_CPU_ARMV7A + depends on BR2_ARM_EABIHF + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_11 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + help + Bootlin toolchain for the armebv7-eabihf architecture, + using the glibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_GLIBC_STABLE + bool "armebv7-eabihf glibc stable 2021.11-1" + depends on BR2_armeb + depends on BR2_ARM_CPU_ARMV7A + depends on BR2_ARM_EABIHF + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + help + Bootlin toolchain for the armebv7-eabihf architecture, + using the glibc C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_MUSL_BLEEDING_EDGE + bool "armebv7-eabihf musl bleeding-edge 2021.11-1" + depends on BR2_armeb + depends on BR2_ARM_CPU_ARMV7A + depends on BR2_ARM_EABIHF + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_11 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the armebv7-eabihf architecture, + using the musl C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_MUSL_STABLE + bool "armebv7-eabihf musl stable 2021.11-1" + depends on BR2_armeb + depends on BR2_ARM_CPU_ARMV7A + depends on BR2_ARM_EABIHF + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the armebv7-eabihf architecture, + using the musl C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_UCLIBC_BLEEDING_EDGE + bool "armebv7-eabihf uclibc bleeding-edge 2021.11-1" + depends on BR2_armeb + depends on BR2_ARM_CPU_ARMV7A + depends on BR2_ARM_EABIHF + select BR2_TOOLCHAIN_GCC_AT_LEAST_11 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the armebv7-eabihf architecture, + using the uclibc C library. This is a bleeding-edge + version, which means it is using the latest versions of + gcc, gdb and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_UCLIBC_STABLE + bool "armebv7-eabihf uclibc stable 2021.11-1" + depends on BR2_armeb + depends on BR2_ARM_CPU_ARMV7A + depends on BR2_ARM_EABIHF + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the armebv7-eabihf architecture, + using the uclibc C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7M_UCLIBC_BLEEDING_EDGE bool "armv7m uclibc bleeding-edge 2021.11-1" depends on BR2_arm diff --git a/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.hash b/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.hash index 1f2aa1386c..99e9ffc9ef 100644 --- a/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.hash +++ b/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.hash @@ -68,6 +68,18 @@ sha256 767c99155f74d5620cfd59d0224df2f82dec7ce58be24d702081dca9793408a9 armv7- sha256 8d6cea2dfec2205ead2e6476f664d81442228d3b1e3fb9b320a54c68706ab9a2 armv7-eabihf--uclibc--bleeding-edge-2021.11-1.tar.bz2 # From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs/armv7-eabihf--uclibc--stable-2021.11-1.sha256 sha256 3f8b1101a7318e2a6260a6b1c916b9b3bc69e8fd866d9e88eb85d3a496ad5064 armv7-eabihf--uclibc--stable-2021.11-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs/armebv7-eabihf--glibc--bleeding-edge-2021.11-1.sha256 +sha256 1f7c0485d07718ed8b99288b5e2ec825d6931c92d7db8c880892682f7d717a40 armebv7-eabihf--glibc--bleeding-edge-2021.11-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs/armebv7-eabihf--glibc--stable-2021.11-1.sha256 +sha256 bfc67cd580e357cf390cb3590fa89e738818af11ae9167e263178304c1656ccb armebv7-eabihf--glibc--stable-2021.11-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs/armebv7-eabihf--musl--bleeding-edge-2021.11-1.sha256 +sha256 488ec97dbbd37c5431c60b0bf6485948ba026ca5097e9e258f4847fbccaa0181 armebv7-eabihf--musl--bleeding-edge-2021.11-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs/armebv7-eabihf--musl--stable-2021.11-1.sha256 +sha256 2a8d0752eaa480eff29b274e88c20e13ad41059f213991769b14684f219d7e12 armebv7-eabihf--musl--stable-2021.11-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs/armebv7-eabihf--uclibc--bleeding-edge-2021.11-1.sha256 +sha256 a9665d2792bf9219c4a7153879d681b5f12c48e47b48969b1a87443b7ed9f26f armebv7-eabihf--uclibc--bleeding-edge-2021.11-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs/armebv7-eabihf--uclibc--stable-2021.11-1.sha256 +sha256 84c7a58351ec618a48a5b357777c48dbbfd52dc48983ebf988a29483693bacbf armebv7-eabihf--uclibc--stable-2021.11-1.tar.bz2 # From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7m/tarballs/armv7m--uclibc--bleeding-edge-2021.11-1.sha256 sha256 392215b53d8c03ca501481f6cfaa720676cf5a67ad1f25647f5a096398f57b28 armv7m--uclibc--bleeding-edge-2021.11-1.tar.bz2 # From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7m/tarballs/armv7m--uclibc--stable-2021.11-1.sha256 diff --git a/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.mk b/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.mk index 786967052f..166cf5f45d 100644 --- a/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.mk +++ b/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.mk @@ -210,6 +210,42 @@ TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv7-eabihf--uclibc--stable-$(TOOLCHAIN_EXT TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs endif +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2021.11-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armebv7-eabihf--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2021.11-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armebv7-eabihf--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2021.11-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armebv7-eabihf--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2021.11-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armebv7-eabihf--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2021.11-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armebv7-eabihf--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2021.11-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armebv7-eabihf--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs +endif + ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7M_UCLIBC_BLEEDING_EDGE),y) TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2021.11-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv7m--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2