mirror of
https://github.com/godotengine/buildroot.git
synced 2026-01-05 14:09:53 +03:00
uClibc doesn't build with the upstream binutils 2.32.x and gcc or1k port due to the following error: LD libuClibc-1.0.31.so /opt/openrisc--uclibc--bleeding-edge-1/lib/gcc/or1k-buildroot-linux-uclibc/9.2.0/../../../../or1k-buildroot-linux-uclibc/bin/ld: libc/libc_so.a(or1k_clone.os): pc-relative relocation against dynamic symbol __syscall_error See: https://gitlab.com/kubu93/toolchains-builder/-/jobs/270854456 This error message come from a new check in binutils 2.32.x: https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=f2c1801f6255a3f9f483ae2f07c7d7da0ddae4af This issue has been reported on the uClibc-ng mailing list: https://mailman.uclibc-ng.org/pipermail/devel/2019-August/001885.html Since gcc 9.1 needs binutils 2.32.x or later to build successfully for or1k, there is no binutils version left that can build gcc 9.1 and uClibc. For now, disable uClibc if gcc 9.1 is used for or1k. Signed-off-by: Romain Naour <romain.naour@gmail.com> Cc: Waldemar Brodkorb <mail@waldemar-brodkorb.de> [Arnout: invert the logic, like in the rest of the file] Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
147 lines
4.5 KiB
Plaintext
147 lines
4.5 KiB
Plaintext
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
|