| comment "GCC Options" |
| |
| choice |
| prompt "GCC compiler Version" |
| default BR2_GCC_VERSION_ARC if BR2_arc |
| default BR2_GCC_VERSION_CSKY if BR2_csky |
| default BR2_GCC_VERSION_OR1K if BR2_or1k |
| default BR2_GCC_VERSION_8_X |
| help |
| Select the version of gcc you wish to use. |
| |
| config BR2_GCC_VERSION_ARC |
| bool "gcc arc (8.x)" |
| # Only supported architecture |
| depends on BR2_arc |
| select BR2_TOOLCHAIN_GCC_AT_LEAST_8 |
| |
| config BR2_GCC_VERSION_CSKY |
| bool "gcc csky" |
| # Only supported architecture |
| depends on BR2_csky |
| select BR2_TOOLCHAIN_GCC_AT_LEAST_6 |
| |
| config BR2_GCC_VERSION_OR1K |
| bool "gcc or1k (5.x)" |
| # Only supported architecture |
| depends on BR2_or1k |
| select BR2_TOOLCHAIN_GCC_AT_LEAST_5 |
| |
| config BR2_GCC_VERSION_5_X |
| bool "gcc 5.x" |
| depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_6 |
| # Broken or unsupported architectures |
| depends on !BR2_arc |
| depends on !BR2_or1k |
| # musl on ppc64 and mips64 unsupported |
| depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64le)) |
| depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_mips64 || BR2_mips64el)) |
| # glibc >= 2.26 needs gcc >= 6.2 |
| depends on !(BR2_TOOLCHAIN_USES_GLIBC && BR2_powerpc64le) |
| select BR2_TOOLCHAIN_GCC_AT_LEAST_5 |
| |
| config BR2_GCC_VERSION_7_X |
| bool "gcc 7.x" |
| depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_8 |
| # Broken or unsupported architectures |
| depends on !BR2_or1k |
| select BR2_TOOLCHAIN_GCC_AT_LEAST_7 |
| |
| config BR2_GCC_VERSION_8_X |
| bool "gcc 8.x" |
| depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_9 |
| # Broken or unsupported architectures |
| depends on !BR2_or1k |
| # powerpc spe support has been deprecated since gcc 8.x. |
| # https://gcc.gnu.org/ml/gcc/2018-04/msg00102.html |
| depends on !BR2_powerpc_SPE |
| select BR2_TOOLCHAIN_GCC_AT_LEAST_8 |
| |
| config BR2_GCC_VERSION_9_X |
| bool "gcc 9.x" |
| # or1k needs binutils >= 2.32 |
| depends on !(BR2_or1k && \ |
| (BR2_BINUTILS_VERSION_2_30_X || BR2_BINUTILS_VERSION_2_31_X)) |
| # uClibc doesn't build with upstream or1k gcc |
| # https://mailman.uclibc-ng.org/pipermail/devel/2019-August/001885.html |
| depends on !(BR2_or1k && BR2_TOOLCHAIN_USES_UCLIBC) |
| # powerpc spe support has been deprecated since gcc 8.x. |
| # https://gcc.gnu.org/ml/gcc/2018-04/msg00102.html |
| depends on !BR2_powerpc_SPE |
| # C-SKY sk610 needs abiv1, which is not supported in |
| # upstream gcc |
| depends on !BR2_ck610 |
| select BR2_TOOLCHAIN_GCC_AT_LEAST_9 |
| |
| endchoice |
| |
| # libcilkrts was introduced in gcc 4.9 and removed in gcc 8.x |
| config BR2_GCC_SUPPORTS_LIBCILKRTS |
| bool |
| default y if !BR2_TOOLCHAIN_GCC_AT_LEAST_8 |
| |
| config BR2_GCC_VERSION |
| string |
| default "5.5.0" if BR2_GCC_VERSION_5_X |
| default "7.4.0" if BR2_GCC_VERSION_7_X |
| default "8.3.0" if BR2_GCC_VERSION_8_X |
| default "9.1.0" if BR2_GCC_VERSION_9_X |
| default "arc-2019.03-release" if BR2_GCC_VERSION_ARC |
| default "or1k-musl-5.4.0-20170218" if BR2_GCC_VERSION_OR1K |
| default "48152afb96c59733d5bc79e3399bb7b3d4b44266" if BR2_GCC_VERSION_CSKY |
| |
| config BR2_EXTRA_GCC_CONFIG_OPTIONS |
| string "Additional gcc options" |
| default "" |
| help |
| Any additional gcc configure options you may want to |
| include. Those options are applied for all of the gcc |
| initial, gcc intermediate and gcc final passes. |
| |
| config BR2_TOOLCHAIN_BUILDROOT_CXX |
| bool "Enable C++ support" |
| select BR2_INSTALL_LIBSTDCPP |
| help |
| Enable this option if you want your toolchain to support the |
| C++ language and you want C++ libraries to be installed on |
| your target system. |
| |
| comment "Fortran support needs a toolchain w/ wchar" |
| depends on BR2_TOOLCHAIN_HAS_LIBQUADMATH |
| depends on !BR2_USE_WCHAR # libquadmath |
| |
| config BR2_TOOLCHAIN_BUILDROOT_FORTRAN |
| bool "Enable Fortran support" |
| # on architecture building libquadmath, wchar is required |
| depends on !BR2_TOOLCHAIN_HAS_LIBQUADMATH || \ |
| (BR2_TOOLCHAIN_HAS_LIBQUADMATH && BR2_USE_WCHAR) |
| select BR2_TOOLCHAIN_HAS_FORTRAN |
| help |
| Enable this option if you want your toolchain to support the |
| Fortran language and you want Fortran libraries to be |
| installed on your target system. |
| |
| config BR2_GCC_ENABLE_LTO |
| bool "Enable compiler link-time-optimization support" |
| select BR2_BINUTILS_ENABLE_LTO |
| help |
| This option enables link-time optimization (LTO) support in |
| gcc. |
| |
| config BR2_GCC_ENABLE_OPENMP |
| bool "Enable compiler OpenMP support" |
| depends on !BR2_PTHREADS_NONE && !BR2_arc && !BR2_microblaze |
| select BR2_TOOLCHAIN_HAS_OPENMP |
| help |
| Enable OpenMP support for the compiler |
| |
| config BR2_GCC_ENABLE_GRAPHITE |
| bool "Enable graphite support" |
| depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 |
| help |
| This option enables the graphite optimizations in the |
| compiler. |
| |
| comment "graphite support needs gcc >= 5.x" |
| depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_5 |