123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243 |
- # This file is part of the OpenADK project. OpenADK is copyrighted
- # material, please see the LICENCE file in the top-level directory.
- choice
- prompt "Target C library"
- depends on !ADK_TARGET_CHOOSE_ARCH
- default ADK_TARGET_LIB_UCLIBC_NG if ADK_TARGET_OS_LINUX
- config ADK_TARGET_LIB_UCLIBC_NG
- bool "uClibc-ng"
- select ADK_PACKAGE_LIBGCC
- depends on (\
- ADK_TARGET_ARCH_AARCH64 || \
- ADK_TARGET_ARCH_ALPHA || \
- ADK_TARGET_ARCH_ARC || \
- ADK_TARGET_ARCH_ARM || \
- ADK_TARGET_ARCH_AVR32 || \
- ADK_TARGET_ARCH_BFIN || \
- ADK_TARGET_ARCH_C6X || \
- ADK_TARGET_ARCH_CRIS || \
- ADK_TARGET_ARCH_CSKY || \
- ADK_TARGET_ARCH_FRV || \
- ADK_TARGET_ARCH_H8300 || \
- ADK_TARGET_ARCH_HPPA || \
- ADK_TARGET_ARCH_IA64 || \
- ADK_TARGET_ARCH_LM32 || \
- ADK_TARGET_ARCH_M68K || \
- ADK_TARGET_ARCH_METAG || \
- ADK_TARGET_ARCH_MICROBLAZE || \
- ADK_TARGET_ARCH_MIPS || \
- ADK_TARGET_ARCH_MIPS64 || \
- ADK_TARGET_ARCH_NDS32 || \
- ADK_TARGET_ARCH_NIOS2 || \
- ADK_TARGET_ARCH_OR1K || \
- ADK_TARGET_ARCH_PPC || \
- ADK_TARGET_ARCH_RISCV32 || \
- ADK_TARGET_ARCH_RISCV64 || \
- ADK_TARGET_ARCH_SH || \
- ADK_TARGET_ARCH_SPARC || \
- ADK_TARGET_ARCH_SPARC64 || \
- ADK_TARGET_ARCH_TILE || \
- ADK_TARGET_ARCH_X86 || \
- ADK_TARGET_ARCH_X86_64 || \
- ADK_TARGET_ARCH_XTENSA) && ADK_TARGET_OS_LINUX
- help
- https://uclibc-ng.org
- config ADK_TARGET_LIB_MUSL
- bool "musl"
- select ADK_PACKAGE_LIBGCC
- depends on (\
- ADK_TARGET_ARCH_AARCH64 || \
- ADK_TARGET_ARCH_ARM || \
- ADK_TARGET_ARCH_M68K || \
- ADK_TARGET_ARCH_MICROBLAZE || \
- ADK_TARGET_ARCH_MIPS || \
- ADK_TARGET_ARCH_MIPS64 || \
- ADK_TARGET_ARCH_OR1K || \
- ADK_TARGET_ARCH_PPC || \
- ADK_TARGET_ARCH_PPC64 || \
- ADK_TARGET_ARCH_RISCV64 || \
- ADK_TARGET_ARCH_S390 || \
- ADK_TARGET_ARCH_SH || \
- ADK_TARGET_ARCH_X86 || \
- ADK_TARGET_ARCH_X86_64 ) && ADK_TARGET_OS_LINUX
- help
- http://musl-libc.org
- config ADK_TARGET_LIB_GLIBC
- bool "glibc"
- select ADK_PACKAGE_LIBGCC
- depends on (\
- ADK_TARGET_ARCH_AARCH64 || \
- ADK_TARGET_ARCH_ALPHA || \
- ADK_TARGET_ARCH_ARM || \
- ADK_TARGET_ARCH_CSKY || \
- ADK_TARGET_ARCH_HPPA || \
- ADK_TARGET_ARCH_IA64 || \
- ADK_TARGET_ARCH_M68K || \
- ADK_TARGET_ARCH_MICROBLAZE || \
- ADK_TARGET_ARCH_MIPS || \
- ADK_TARGET_ARCH_MIPS64 || \
- ADK_TARGET_ARCH_NIOS2 || \
- ADK_TARGET_ARCH_PPC || \
- ADK_TARGET_ARCH_PPC64 || \
- ADK_TARGET_ARCH_S390 || \
- ADK_TARGET_CPU_SH_SH4 || \
- ADK_TARGET_CPU_SH_SH4A || \
- ADK_TARGET_ARCH_SPARC64 || \
- ADK_TARGET_ARCH_TILE || \
- ADK_TARGET_ARCH_RISCV32 || \
- ADK_TARGET_ARCH_RISCV64 || \
- ADK_TARGET_ARCH_X86 || \
- ADK_TARGET_ARCH_X86_64) && ADK_TARGET_OS_LINUX
- help
- http://www.gnu.org/libc
- config ADK_TARGET_LIB_NEWLIB
- bool "newlib"
- select ADK_TARGET_WITHOUT_THREADS
- depends on (\
- ADK_TARGET_ARCH_AARCH64 || \
- ADK_TARGET_ARCH_ARC || \
- ADK_TARGET_ARCH_ARM || \
- ADK_TARGET_ARCH_BFIN || \
- ADK_TARGET_ARCH_CR16 || \
- ADK_TARGET_ARCH_CRIS || \
- ADK_TARGET_ARCH_CSKY || \
- ADK_TARGET_ARCH_EPIPHANY || \
- ADK_TARGET_ARCH_FRV || \
- ADK_TARGET_ARCH_FT32 || \
- ADK_TARGET_ARCH_H8300 || \
- ADK_TARGET_ARCH_IA64 || \
- ADK_TARGET_ARCH_LM32 || \
- ADK_TARGET_ARCH_M32C || \
- ADK_TARGET_ARCH_M32R || \
- ADK_TARGET_ARCH_M68K || \
- ADK_TARGET_ARCH_MICROBLAZE || \
- ADK_TARGET_ARCH_MIPS || \
- ADK_TARGET_ARCH_MN10300 || \
- ADK_TARGET_ARCH_MOXIE || \
- ADK_TARGET_ARCH_MSP430 || \
- ADK_TARGET_ARCH_NIOS2 || \
- ADK_TARGET_ARCH_NDS32 || \
- ADK_TARGET_ARCH_OR1K || \
- ADK_TARGET_ARCH_PPC || \
- ADK_TARGET_ARCH_RISCV32 || \
- ADK_TARGET_ARCH_RISCV64 || \
- ADK_TARGET_ARCH_RX || \
- ADK_TARGET_ARCH_SH || \
- ADK_TARGET_ARCH_SPARC || \
- ADK_TARGET_ARCH_SPARC64 || \
- ADK_TARGET_ARCH_V850 || \
- ADK_TARGET_ARCH_X86 || \
- ADK_TARGET_ARCH_X86_64 || \
- ADK_TARGET_ARCH_XTENSA) && \
- ADK_TARGET_OS_BAREMETAL
- help
- https://sourceware.org/newlib/
- endchoice
- choice
- prompt "Target C library version"
- depends on !ADK_TARGET_CHOOSE_ARCH
- config ADK_TARGET_LIB_UCLIBC_NG_1_0_34
- bool "1.0.34"
- depends on ADK_TARGET_LIB_UCLIBC_NG
- config ADK_TARGET_LIB_UCLIBC_NG_GIT
- bool "git"
- depends on ADK_TARGET_LIB_UCLIBC_NG && ADK_EXPERIMENTAL
- config ADK_TARGET_LIB_GLIBC_2_31
- bool "2.31"
- depends on ADK_TARGET_LIB_GLIBC
- config ADK_TARGET_LIB_GLIBC_GIT
- bool "git"
- depends on ADK_TARGET_LIB_GLIBC && ADK_EXPERIMENTAL
- config ADK_TARGET_LIB_MUSL_1_1_24
- bool "1.1.24"
- depends on ADK_TARGET_LIB_MUSL
- config ADK_TARGET_LIB_MUSL_GIT
- bool "git"
- depends on ADK_TARGET_LIB_MUSL && ADK_EXPERIMENTAL
- config ADK_TARGET_LIB_NEWLIB_3_1_0
- bool "3.1.0"
- depends on ADK_TARGET_LIB_NEWLIB \
- && !ADK_TARGET_ARCH_XTENSA
- config ADK_TARGET_LIB_NEWLIB_XTENSA
- bool "xtensa"
- depends on ADK_TARGET_LIB_NEWLIB && ADK_TARGET_ARCH_XTENSA
- config ADK_TARGET_LIB_NEWLIB_GIT
- bool "git"
- depends on ADK_TARGET_LIB_NEWLIB && ADK_EXPERIMENTAL
- endchoice
- config ADK_TARGET_LIBC_UTILS
- bool
- default n if ADK_TARGET_ARCH_C6X
- default n if ADK_TARGET_ARCH_LM32
- default n if ADK_TARGET_ARCH_H8300
- default y
- config ADK_TARGET_LIBC
- string
- default "uclibc-ng" if ADK_TARGET_LIB_UCLIBC_NG
- default "glibc" if ADK_TARGET_LIB_GLIBC
- default "musl" if ADK_TARGET_LIB_MUSL
- default "newlib" if ADK_TARGET_LIB_NEWLIB
- config ADK_LIBC_VERSION
- string
- default "1.0.34" if ADK_TARGET_LIB_UCLIBC_NG_1_0_34
- default "1.1.24" if ADK_TARGET_LIB_MUSL_1_1_24
- default "2.31" if ADK_TARGET_LIB_GLIBC_2_31
- default "3.1.0" if ADK_TARGET_LIB_NEWLIB_3_1_0
- default "git" if ADK_TARGET_LIB_UCLIBC_NG_GIT || \
- ADK_TARGET_LIB_MUSL_GIT || \
- ADK_TARGET_LIB_GLIBC_GIT || \
- ADK_TARGET_LIB_NEWLIB_GIT
- config ADK_TARGET_SUFFIX
- string
- default "gnueabihf" if ADK_TARGET_LIB_GLIBC && ADK_TARGET_ARCH_ARM && ADK_TARGET_HARD_FLOAT
- default "gnueabi" if ADK_TARGET_LIB_GLIBC && ADK_TARGET_ARCH_ARM
- default "gnuabi64" if ADK_TARGET_LIB_GLIBC && ADK_TARGET_ABI_N64
- default "gnuabin32" if ADK_TARGET_LIB_GLIBC && ADK_TARGET_ABI_N32
- default "gnuabi32" if ADK_TARGET_LIB_GLIBC && ADK_TARGET_ABI_O64
- default "gnu32" if ADK_TARGET_LIB_GLIBC && ADK_TARGET_ABI_32 && ADK_LINUX_64
- default "gnux32" if ADK_TARGET_LIB_GLIBC && ADK_TARGET_ABI_X32 && ADK_LINUX_64
- default "gnuspe" if ADK_TARGET_LIB_GLIBC && ADK_TARGET_ARCH_PPC && ADK_TARGET_ARCH_PPC_WITH_SPE
- default "gnu" if ADK_TARGET_LIB_GLIBC
- default "uclinuxfdpiceabi" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ARCH_ARM && ADK_TARGET_BINFMT_FDPIC
- default "uclibceabihf" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ARCH_ARM && ADK_TARGET_HARD_FLOAT
- default "uclibceabi" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ARCH_ARM
- default "uclinuxeabi" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ARCH_ARM && ADK_TARGET_UCLINUX
- default "uclibcabi64" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ABI_N64
- default "uclibcabin32" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ABI_N32
- default "uclibcabi32" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ABI_O32
- default "uclibc32" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ABI_32 && ADK_LINUX_64
- default "uclibcspe" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ARCH_PPC && ADK_TARGET_ARCH_PPC_WITH_SPE
- default "uclibcabiv2" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ARCH_CSKY
- default "uclibc" if ADK_TARGET_LIB_UCLIBC_NG
- default "musleabihf" if ADK_TARGET_LIB_MUSL && ADK_TARGET_ARCH_ARM && ADK_TARGET_HARD_FLOAT
- default "musleabi" if ADK_TARGET_LIB_MUSL && ADK_TARGET_ARCH_ARM
- default "muslabi64" if ADK_TARGET_LIB_MUSL && ADK_TARGET_ABI_N64
- default "muslabin32" if ADK_TARGET_LIB_MUSL && ADK_TARGET_ABI_N32
- default "muslabi32" if ADK_TARGET_LIB_MUSL && ADK_TARGET_ABI_O32
- default "musl32" if ADK_TARGET_LIB_MUSL && ADK_TARGET_ABI_32 && ADK_LINUX_64
- default "muslx32" if ADK_TARGET_LIB_MUSL && ADK_TARGET_ABI_X32 && ADK_LINUX_64
- default "muslfdpic" if ADK_TARGET_LIB_MUSL && ADK_TARGET_BINFMT_FDPIC
- default "musl" if ADK_TARGET_LIB_MUSL
- default "eabi" if ADK_TARGET_LIB_NEWLIB && ADK_TARGET_ARCH_ARM
- default "elf" if ADK_TARGET_LIB_NEWLIB && ADK_TARGET_OS_BAREMETAL
|