if BR2_TOOLCHAIN_EXTERNAL_CUSTOM config BR2_TOOLCHAIN_EXTERNAL_PREFIX default BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL default "toolchain-external-custom" config BR2_TOOLCHAIN_EXTERNAL_URL string "Toolchain URL" depends on BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD help URL of the custom toolchain tarball to download and install. config BR2_TOOLCHAIN_EXTERNAL_REL_BIN_PATH string "Toolchain relative binary path" default "bin" depends on BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD help Path to where the binaries (e.g. the compiler) can be found, relative to the downloaded toolchain root directory. The default is "bin" and is correct for most toolchains. config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX string "Toolchain prefix" default "$(ARCH)-linux" choice bool "External toolchain gcc version" default BR2_TOOLCHAIN_EXTERNAL_GCC_8 if BR2_ARCH_NEEDS_GCC_AT_LEAST_8 default BR2_TOOLCHAIN_EXTERNAL_GCC_7 if BR2_ARCH_NEEDS_GCC_AT_LEAST_7 default BR2_TOOLCHAIN_EXTERNAL_GCC_6 if BR2_ARCH_NEEDS_GCC_AT_LEAST_6 default BR2_TOOLCHAIN_EXTERNAL_GCC_5 if BR2_ARCH_NEEDS_GCC_AT_LEAST_5 default BR2_TOOLCHAIN_EXTERNAL_GCC_4_9 if BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9 default BR2_TOOLCHAIN_EXTERNAL_GCC_4_8 if BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 default BR2_TOOLCHAIN_EXTERNAL_GCC_4_3 help Set to the gcc version that is used by your external toolchain. config BR2_TOOLCHAIN_EXTERNAL_GCC_8 bool "8.x" select BR2_TOOLCHAIN_GCC_AT_LEAST_8 config BR2_TOOLCHAIN_EXTERNAL_GCC_7 bool "7.x" depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_8 select BR2_TOOLCHAIN_GCC_AT_LEAST_7 config BR2_TOOLCHAIN_EXTERNAL_GCC_6 bool "6.x" depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_7 select BR2_TOOLCHAIN_GCC_AT_LEAST_6 config BR2_TOOLCHAIN_EXTERNAL_GCC_5 bool "5.x" depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_6 select BR2_TOOLCHAIN_GCC_AT_LEAST_5 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_9 bool "4.9.x" depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_5 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_8 bool "4.8.x" depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_7 bool "4.7.x" depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_6 bool "4.6.x" depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_5 bool "4.5.x" depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_4 bool "4.4.x" depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_4 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_3 bool "4.3.x" depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_3 config BR2_TOOLCHAIN_EXTERNAL_GCC_OLD bool "older" depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 help Use this option if your GCC version is older than any of the above. Note that the Buildroot community doesn't do any testing with such old toolchains. Some packages may fail to build in surprising ways, or the generated root filesystem may not work at all. Use such old toolchains at your own risk. endchoice choice bool "External toolchain kernel headers series" default BR2_TOOLCHAIN_EXTERNAL_HEADERS_REALLY_OLD help Set to the kernel headers version that were used to build this external toolchain. This is used to hide/show some packages that have strict requirements on the version of kernel headers. If unsure what version your toolchain is using, you can look at the value of LINUX_VERSION_CODE in linux/version.h in your toolchain. The Linux version is M.m.p, with: M = ( LINUX_VERSION_CODE >> 16 ) & 0xFF m = ( LINUX_VERSION_CODE >> 8 ) & 0xFF p = ( LINUX_VERSION_CODE >> 0 ) & 0xFF config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_17 bool "4.17.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_17 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_16 bool "4.16.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_16 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_15 bool "4.15.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_15 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_14 bool "4.14.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_13 bool "4.13.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_13 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_12 bool "4.12.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_12 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_11 bool "4.11.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_11 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_10 bool "4.10.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_10 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_9 bool "4.9.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_8 bool "4.8.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_8 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_7 bool "4.7.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_7 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_6 bool "4.6.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_6 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_5 bool "4.5.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_4 bool "4.4.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_3 bool "4.3.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_2 bool "4.2.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_1 bool "4.1.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_1 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_0 bool "4.0.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_19 bool "3.19.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_19 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_18 bool "3.18.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_17 bool "3.17.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_16 bool "3.16.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_16 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_15 bool "3.15.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_14 bool "3.14.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_14 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_13 bool "3.13.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_12 bool "3.12.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_11 bool "3.11.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_11 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_10 bool "3.10.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_9 bool "3.9.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_9 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_8 bool "3.8.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_7 bool "3.7.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_6 bool "3.6.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_6 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_5 bool "3.5.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_4 bool "3.4.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_3 bool "3.3.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_2 bool "3.2.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_1 bool "3.1.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_0 bool "3.0.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_REALLY_OLD bool "2.6.x" endchoice choice prompt "External toolchain C library" default BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC bool "uClibc/uClibc-ng" select BR2_TOOLCHAIN_EXTERNAL_UCLIBC help Select this option if your external toolchain uses the uClibc (available from http://www.uclibc.org/) or uClibc-ng (available from http://www.uclibc-ng.org) C library. config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC bool "glibc/eglibc" depends on !BR2_STATIC_LIBS select BR2_TOOLCHAIN_EXTERNAL_GLIBC help Select this option if your external toolchain uses the GNU C library (available from https://www.gnu.org/software/libc/) or its variant the eglibc library (http://www.eglibc.org/). Note: eglibc is a variant of glibc that (among other things) can be configured to exclude some of its features. Using a toolchain with eglibc configured to exclude key features may cause build failures to some packages. comment "(e)glibc only available with shared lib support" depends on BR2_STATIC_LIBS config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_MUSL bool "musl (experimental)" select BR2_TOOLCHAIN_EXTERNAL_MUSL help Select this option if your external toolchain uses the 'musl' C library, available from http://www.musl-libc.org/. endchoice if BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC config BR2_TOOLCHAIN_EXTERNAL_WCHAR bool "Toolchain has WCHAR support?" select BR2_USE_WCHAR help Select this option if your external toolchain supports WCHAR. If you don't know, leave the default value, Buildroot will tell you if it's correct or not. config BR2_TOOLCHAIN_EXTERNAL_LOCALE bool "Toolchain has locale support?" select BR2_TOOLCHAIN_EXTERNAL_WCHAR select BR2_ENABLE_LOCALE help Select this option if your external toolchain has locale support. If you don't know, leave the default value, Buildroot will tell you if it's correct or not. config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS bool "Toolchain has threads support?" default y select BR2_TOOLCHAIN_HAS_THREADS help Select this option if your external toolchain has thread support. If you don't know, leave the default value, Buildroot will tell you if it's correct or not. if BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG bool "Toolchain has threads debugging support?" default y select BR2_TOOLCHAIN_HAS_THREADS_DEBUG help Select this option if your external toolchain has thread debugging support. If you don't know, leave the default value, Buildroot will tell you if it's correct or not. config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_NPTL bool "Toolchain has NPTL threads support?" default y select BR2_TOOLCHAIN_HAS_THREADS_NPTL help Select this option if your external toolchain uses the NPTL (Native Posix Thread Library) implementation of Posix threads. If you don't know, leave the default value, Buildroot will tell you if it's correct or not. endif # BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS endif # BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC config BR2_TOOLCHAIN_EXTERNAL_HAS_SSP bool "Toolchain has SSP support?" default y if BR2_TOOLCHAIN_EXTERNAL_GLIBC default y if BR2_TOOLCHAIN_EXTERNAL_MUSL select BR2_TOOLCHAIN_HAS_SSP help Selection this option if your external toolchain has Stack Smashing Protection support enabled. If you don't know, leave the default value, Buildroot will tell you if it's correct or not. config BR2_TOOLCHAIN_EXTERNAL_INET_RPC bool "Toolchain has RPC support?" default y if BR2_TOOLCHAIN_EXTERNAL_GLIBC depends on !BR2_TOOLCHAIN_EXTERNAL_MUSL select BR2_TOOLCHAIN_HAS_NATIVE_RPC help Select this option if your external toolchain supports RPC. If you don't know, leave the default value, Buildroot will tell you if it's correct or not. config BR2_TOOLCHAIN_EXTERNAL_CXX bool "Toolchain has C++ support?" select BR2_INSTALL_LIBSTDCPP help Select this option if your external toolchain has C++ support. If you don't know, leave the default value, Buildroot will tell you if it's correct or not. config BR2_TOOLCHAIN_EXTRA_EXTERNAL_LIBS string "Extra toolchain libraries to be copied to target" help If your external toolchain provides extra libraries that need to be copied to the target filesystem, enter them here, separated by spaces. They will be copied to the target's /lib directory. endif