0633eb58a2
Finally there's working ARC port of glibc thanks to Vineet and Cuper! This port is based on pretty recent glibc's master branch and ARC changes are being reviewed now in glibc's mailing list. Thus we again have to use sources from our GitHub but as soon as there's a glibc release with our patches applied we'll switch to upstream releases and will drop our glibc GitHub repo alltogether. Note now we cut tags in glibc repo simultaneously with tags in Binutils and GCC repos and so to make sure everything works in the best way we plan to update glibc tag together with Binutils and GCC. Also note as of today ARCompact (AKA ARCv1 ISA) is not supported in glibc but we plan to fix it soonish so for now we make glibc intentionally dependent on archs38. Also note we are not creating directory "2.26" because all patches for glibc ver 2.26 applies to arc glibc port. Signed-off-by: Evgeniy Didin <didin@synopsys.com> CC: Alexey Brodkin <abrodkin@synopsys.com> CC: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> CC: Waldemar Brodkorb <wbx@openadk.org> CC: Romain Naour <romain.naour@gmail.com> Cc: Cupertino Miranda <cmiranda@synopsys.com> Cc: Vineet Gupta <vgupta@synopsys.com> Cc: Anton Kolesov <akolesov@synopsys.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
106 lines
3.8 KiB
Plaintext
106 lines
3.8 KiB
Plaintext
# Config entries for internal toolchain backend
|
|
|
|
if BR2_TOOLCHAIN_BUILDROOT
|
|
|
|
comment "Toolchain Buildroot Options"
|
|
|
|
config BR2_TOOLCHAIN_BUILDROOT_VENDOR
|
|
string "custom toolchain vendor name"
|
|
default "buildroot"
|
|
help
|
|
This option allows to customize the "vendor" part of the
|
|
toolchain tuple, where the toolchain tuple has the form
|
|
<arch>-<vendor>-<os>-<libc>. The default value, "buildroot",
|
|
is fine for most cases, except in very specific situations
|
|
where gcc might make different decisions based on the vendor
|
|
part of the tuple. The value "unknown" is not allowed, as the
|
|
cross-compiling toolchain might then be confused with the
|
|
native toolchain when the target and host architecture are
|
|
identical. The value can not be empty either.
|
|
|
|
If you're not sure, just leave the default "buildroot" value.
|
|
|
|
choice
|
|
prompt "C library"
|
|
default BR2_TOOLCHAIN_UCLIBC
|
|
default BR2_TOOLCHAIN_BUILDROOT_GLIBC if BR2_powerpc64
|
|
|
|
config BR2_TOOLCHAIN_BUILDROOT_UCLIBC
|
|
bool "uClibc-ng"
|
|
select BR2_TOOLCHAIN_USES_UCLIBC
|
|
depends on BR2_aarch64 || BR2_aarch64_be || BR2_arcle || BR2_arceb || \
|
|
BR2_arm || BR2_armeb || \
|
|
BR2_bfin || BR2_i386 || BR2_m68k || BR2_microblaze || \
|
|
BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el || \
|
|
BR2_or1k || BR2_powerpc || BR2_sh2a || BR2_sh4 || \
|
|
BR2_sh4eb || BR2_sparc || BR2_xtensa || BR2_x86_64
|
|
help
|
|
This option selects uClibc-ng as the C library for the
|
|
cross-compilation toolchain.
|
|
|
|
http://uclibc-ng.org
|
|
|
|
config BR2_TOOLCHAIN_BUILDROOT_GLIBC
|
|
bool "glibc"
|
|
depends on BR2_arm || BR2_armeb || BR2_aarch64 || \
|
|
BR2_aarch64_be || BR2_i386 || BR2_mips || \
|
|
BR2_mipsel || BR2_mips64 || BR2_mips64el|| \
|
|
BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le || \
|
|
BR2_sh || BR2_sparc64 || BR2_x86_64 || \
|
|
BR2_microblaze || BR2_nios2 || BR2_archs38
|
|
depends on BR2_USE_MMU
|
|
depends on !BR2_STATIC_LIBS
|
|
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2
|
|
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 || !BR2_powerpc64le
|
|
depends on !BR2_powerpc_SPE
|
|
select BR2_TOOLCHAIN_USES_GLIBC
|
|
# our glibc.mk enables RPC support
|
|
select BR2_TOOLCHAIN_HAS_NATIVE_RPC
|
|
help
|
|
This option selects glibc as the C library for the
|
|
cross-compilation toolchain.
|
|
|
|
http://www.gnu.org/software/libc/
|
|
|
|
comment "glibc needs a toolchain w/ dynamic library, kernel headers >= 3.2"
|
|
depends on BR2_USE_MMU
|
|
depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2
|
|
|
|
# glibc >= 2.26 require kernel headers >= 3.10 on powerpc64le.
|
|
comment "glibc on powerpc64le needs a toolchain w/ headers >= 3.10"
|
|
depends on BR2_powerpc64le
|
|
depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10
|
|
|
|
config BR2_TOOLCHAIN_BUILDROOT_MUSL
|
|
bool "musl"
|
|
depends on BR2_aarch64 || BR2_arm || BR2_armeb || BR2_i386 || \
|
|
BR2_microblaze || BR2_mips || BR2_mipsel || BR2_mips64 || \
|
|
BR2_mips64el || BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le || \
|
|
BR2_sh || BR2_x86_64
|
|
depends on !BR2_powerpc_SPE # not supported, build breaks
|
|
# sh2 nommu is supported by musl, but we don't have support
|
|
# for it in Buildroot.
|
|
depends on BR2_USE_MMU
|
|
select BR2_TOOLCHAIN_USES_MUSL
|
|
help
|
|
This option selects musl as the C library for the
|
|
cross-compilation toolchain.
|
|
|
|
endchoice
|
|
|
|
config BR2_TOOLCHAIN_BUILDROOT_LIBC
|
|
string
|
|
default "uclibc" if BR2_TOOLCHAIN_BUILDROOT_UCLIBC
|
|
default "glibc" if BR2_TOOLCHAIN_BUILDROOT_GLIBC
|
|
default "musl" if BR2_TOOLCHAIN_BUILDROOT_MUSL
|
|
|
|
source "package/linux-headers/Config.in.host"
|
|
source "package/linux-headers/Config.in"
|
|
source "package/musl/Config.in"
|
|
source "package/uclibc/Config.in"
|
|
source "package/glibc/Config.in"
|
|
source "package/binutils/Config.in.host"
|
|
source "package/gcc/Config.in.host"
|
|
source "package/elf2flt/Config.in.host"
|
|
endif
|