Config.in 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. # Config entries for internal toolchain backend
  2. if BR2_TOOLCHAIN_BUILDROOT
  3. config BR2_TOOLCHAIN_BUILDROOT_VENDOR
  4. string "custom toolchain vendor name"
  5. default "buildroot"
  6. help
  7. This option allows to customize the "vendor" part of the
  8. toolchain tuple, where the toolchain tuple has the form
  9. <arch>-<vendor>-<os>-<libc>. The default value, "buildroot",
  10. is fine for most cases, except in very specific situations
  11. where gcc might make different decisions based on the vendor
  12. part of the tuple. The value "unknown" is not allowed, as the
  13. cross-compiling toolchain might then be confused with the
  14. native toolchain when the target and host architecture are
  15. identical. The value can not be empty either.
  16. If you're not sure, just leave the default "buildroot" value.
  17. source "package/linux-headers/Config.in.host"
  18. choice
  19. prompt "C library"
  20. default BR2_TOOLCHAIN_UCLIBC
  21. default BR2_TOOLCHAIN_BUILDROOT_GLIBC if BR2_aarch64 || BR2_aarch64_be \
  22. || BR2_microblaze || BR2_powerpc64
  23. config BR2_TOOLCHAIN_BUILDROOT_UCLIBC
  24. bool "uClibc"
  25. select BR2_TOOLCHAIN_USES_UCLIBC
  26. depends on BR2_arcle || BR2_arceb || BR2_arm || BR2_armeb || \
  27. BR2_bfin || BR2_i386 || BR2_m68k || \
  28. BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el || \
  29. BR2_powerpc || BR2_sh2a || BR2_sh4 || BR2_sh4eb || \
  30. BR2_sparc || BR2_xtensa || BR2_x86_64
  31. # Unsupported for MIPS R6
  32. depends on !BR2_mips_32r6 && !BR2_mips_64r6
  33. help
  34. This option selects uClibc as the C library for the
  35. cross-compilation toolchain.
  36. http://uclibc.org
  37. config BR2_TOOLCHAIN_BUILDROOT_EGLIBC
  38. bool "eglibc"
  39. depends on BR2_arm || BR2_armeb || BR2_aarch64 || \
  40. BR2_aarch64_be || BR2_i386 || BR2_mips || \
  41. BR2_mipsel || BR2_mips64 || BR2_mips64el || \
  42. BR2_powerpc || BR2_sh || BR2_sh64 || \
  43. BR2_sparc || BR2_x86_64 || BR2_microblaze || \
  44. BR2_powerpc64
  45. depends on BR2_USE_MMU
  46. depends on !BR2_STATIC_LIBS
  47. depends on BR2_DEPRECATED_SINCE_2015_08
  48. select BR2_TOOLCHAIN_USES_GLIBC
  49. # our eglibc.mk enables RPC support
  50. select BR2_TOOLCHAIN_HAS_NATIVE_RPC
  51. help
  52. This option selects eglibc as the C library for the
  53. cross-compilation toolchain.
  54. http://eglibc.org
  55. config BR2_TOOLCHAIN_BUILDROOT_GLIBC
  56. bool "glibc"
  57. depends on BR2_arm || BR2_armeb || BR2_aarch64 || \
  58. BR2_aarch64_be || BR2_i386 || BR2_mips || \
  59. BR2_mipsel || BR2_mips64 || BR2_mips64el|| \
  60. BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le || \
  61. BR2_sh || BR2_sh64 || BR2_sparc64 || \
  62. BR2_x86_64 || BR2_microblaze || BR2_nios2
  63. depends on BR2_USE_MMU
  64. depends on !BR2_STATIC_LIBS
  65. depends on !BR2_powerpc_SPE
  66. select BR2_TOOLCHAIN_USES_GLIBC
  67. # our glibc.mk enables RPC support
  68. select BR2_TOOLCHAIN_HAS_NATIVE_RPC
  69. help
  70. This option selects glibc as the C library for the
  71. cross-compilation toolchain.
  72. http://www.gnu.org/software/libc/
  73. comment "(e)glibc only available with shared lib support"
  74. depends on BR2_USE_MMU
  75. depends on BR2_STATIC_LIBS
  76. config BR2_TOOLCHAIN_BUILDROOT_MUSL
  77. bool "musl (experimental)"
  78. depends on BR2_aarch64 || BR2_arm || BR2_armeb || BR2_i386 || \
  79. BR2_microblaze || BR2_mips || BR2_mipsel || BR2_powerpc || \
  80. BR2_sh || BR2_x86_64
  81. depends on !BR2_powerpc_SPE # not supported, build breaks
  82. # Unsupported for MIPS R6
  83. depends on !BR2_mips_32r6 && !BR2_mips_64r6
  84. # sh2 nommu is supported by musl, but we don't have support
  85. # for it in Buildroot.
  86. depends on BR2_USE_MMU
  87. select BR2_TOOLCHAIN_USES_MUSL
  88. help
  89. This option selects musl as the C library for the
  90. cross-compilation toolchain.
  91. endchoice
  92. config BR2_TOOLCHAIN_BUILDROOT_LIBC
  93. string
  94. default "uclibc" if BR2_TOOLCHAIN_BUILDROOT_UCLIBC
  95. # Both glibc and eglibc are handled by the package called
  96. # 'glibc'
  97. default "glibc" if BR2_TOOLCHAIN_BUILDROOT_EGLIBC
  98. default "glibc" if BR2_TOOLCHAIN_BUILDROOT_GLIBC
  99. default "musl" if BR2_TOOLCHAIN_BUILDROOT_MUSL
  100. source "package/linux-headers/Config.in"
  101. source "package/musl/Config.in"
  102. source "package/uclibc/Config.in"
  103. source "package/glibc/Config.in"
  104. source "package/binutils/Config.in.host"
  105. source "package/gcc/Config.in.host"
  106. source "package/elf2flt/Config.in.host"
  107. endif