Config.in.host 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. comment "GCC Options"
  2. choice
  3. prompt "GCC compiler Version"
  4. default BR2_GCC_VERSION_ARC if BR2_arc
  5. default BR2_GCC_VERSION_CSKY if BR2_csky
  6. default BR2_GCC_VERSION_OR1K if BR2_or1k
  7. default BR2_GCC_VERSION_8_X
  8. help
  9. Select the version of gcc you wish to use.
  10. config BR2_GCC_VERSION_ARC
  11. bool "gcc arc (8.x)"
  12. # Only supported architecture
  13. depends on BR2_arc
  14. select BR2_TOOLCHAIN_GCC_AT_LEAST_8
  15. config BR2_GCC_VERSION_CSKY
  16. bool "gcc csky"
  17. # Only supported architecture
  18. depends on BR2_csky
  19. select BR2_TOOLCHAIN_GCC_AT_LEAST_6
  20. config BR2_GCC_VERSION_OR1K
  21. bool "gcc or1k (5.x)"
  22. # Only supported architecture
  23. depends on BR2_or1k
  24. select BR2_TOOLCHAIN_GCC_AT_LEAST_5
  25. config BR2_GCC_VERSION_4_9_X
  26. bool "gcc 4.9.x"
  27. depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_5
  28. # Broken or unsupported architectures
  29. depends on !BR2_arc
  30. depends on !BR2_csky
  31. depends on !BR2_or1k
  32. # musl on microblaze, ppc64 and mips64 unsupported
  33. depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_microblazeel || BR2_microblazebe))
  34. depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64le))
  35. depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_mips64 || BR2_mips64el))
  36. # glibc >= 2.29 needs gcc >= 5 on all architectures.
  37. depends on !BR2_TOOLCHAIN_USES_GLIBC
  38. select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
  39. config BR2_GCC_VERSION_5_X
  40. bool "gcc 5.x"
  41. depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_6
  42. # Broken or unsupported architectures
  43. depends on !BR2_arc
  44. depends on !BR2_csky
  45. depends on !BR2_or1k
  46. # musl on ppc64 and mips64 unsupported
  47. depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64le))
  48. depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_mips64 || BR2_mips64el))
  49. # glibc >= 2.26 needs gcc >= 6.2
  50. depends on !(BR2_TOOLCHAIN_USES_GLIBC && BR2_powerpc64le)
  51. select BR2_TOOLCHAIN_GCC_AT_LEAST_5
  52. config BR2_GCC_VERSION_6_X
  53. bool "gcc 6.x"
  54. depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_7
  55. # Broken or unsupported architectures
  56. depends on !BR2_arc
  57. depends on !BR2_csky
  58. depends on !BR2_or1k
  59. select BR2_TOOLCHAIN_GCC_AT_LEAST_6
  60. config BR2_GCC_VERSION_7_X
  61. bool "gcc 7.x"
  62. depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_8
  63. # Broken or unsupported architectures
  64. depends on !BR2_csky
  65. depends on !BR2_or1k
  66. select BR2_TOOLCHAIN_GCC_AT_LEAST_7
  67. config BR2_GCC_VERSION_8_X
  68. bool "gcc 8.x"
  69. depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_9
  70. # Broken or unsupported architectures
  71. depends on !BR2_csky
  72. depends on !BR2_or1k
  73. # powerpc spe support has been deprecated since gcc 8.x.
  74. # https://gcc.gnu.org/ml/gcc/2018-04/msg00102.html
  75. depends on !BR2_powerpc_SPE
  76. select BR2_TOOLCHAIN_GCC_AT_LEAST_8
  77. config BR2_GCC_VERSION_9_X
  78. bool "gcc 9.x"
  79. # powerpc spe support has been deprecated since gcc 8.x.
  80. # https://gcc.gnu.org/ml/gcc/2018-04/msg00102.html
  81. depends on !BR2_powerpc_SPE
  82. # C-SKY sk610 needs abiv1, which is not supported in
  83. # upstream gcc
  84. depends on !BR2_ck610
  85. select BR2_TOOLCHAIN_GCC_AT_LEAST_9
  86. endchoice
  87. # libcilkrts was introduced in gcc 4.9 (oldest gcc version we
  88. # support), and removed in gcc 8.x
  89. config BR2_GCC_SUPPORTS_LIBCILKRTS
  90. bool
  91. default y if !BR2_TOOLCHAIN_GCC_AT_LEAST_8
  92. config BR2_GCC_VERSION
  93. string
  94. default "4.9.4" if BR2_GCC_VERSION_4_9_X
  95. default "5.5.0" if BR2_GCC_VERSION_5_X
  96. default "6.5.0" if BR2_GCC_VERSION_6_X
  97. default "7.4.0" if BR2_GCC_VERSION_7_X
  98. default "8.3.0" if BR2_GCC_VERSION_8_X
  99. default "9.1.0" if BR2_GCC_VERSION_9_X
  100. default "arc-2019.03-release" if BR2_GCC_VERSION_ARC
  101. default "or1k-musl-5.4.0-20170218" if BR2_GCC_VERSION_OR1K
  102. default "48152afb96c59733d5bc79e3399bb7b3d4b44266" if BR2_GCC_VERSION_CSKY
  103. config BR2_EXTRA_GCC_CONFIG_OPTIONS
  104. string "Additional gcc options"
  105. default ""
  106. help
  107. Any additional gcc configure options you may want to
  108. include. Those options are applied for all of the gcc
  109. initial, gcc intermediate and gcc final passes.
  110. config BR2_TOOLCHAIN_BUILDROOT_CXX
  111. bool "Enable C++ support"
  112. select BR2_INSTALL_LIBSTDCPP
  113. help
  114. Enable this option if you want your toolchain to support the
  115. C++ language and you want C++ libraries to be installed on
  116. your target system.
  117. comment "Fortran support needs a toolchain w/ wchar"
  118. depends on BR2_TOOLCHAIN_HAS_LIBQUADMATH
  119. depends on !BR2_USE_WCHAR # libquadmath
  120. config BR2_TOOLCHAIN_BUILDROOT_FORTRAN
  121. bool "Enable Fortran support"
  122. # on architecture building libquadmath, wchar is required
  123. depends on !BR2_TOOLCHAIN_HAS_LIBQUADMATH || \
  124. (BR2_TOOLCHAIN_HAS_LIBQUADMATH && BR2_USE_WCHAR)
  125. select BR2_TOOLCHAIN_HAS_FORTRAN
  126. help
  127. Enable this option if you want your toolchain to support the
  128. Fortran language and you want Fortran libraries to be
  129. installed on your target system.
  130. config BR2_GCC_ENABLE_LTO
  131. bool "Enable compiler link-time-optimization support"
  132. select BR2_BINUTILS_ENABLE_LTO
  133. help
  134. This option enables link-time optimization (LTO) support in
  135. gcc.
  136. config BR2_GCC_ENABLE_OPENMP
  137. bool "Enable compiler OpenMP support"
  138. depends on !BR2_PTHREADS_NONE && !BR2_arc && !BR2_microblaze
  139. select BR2_TOOLCHAIN_HAS_OPENMP
  140. help
  141. Enable OpenMP support for the compiler
  142. config BR2_GCC_ENABLE_LIBMUDFLAP
  143. bool "Enable libmudflap support"
  144. # There are architectures, or specific configurations for
  145. # which mudflap is not supported.
  146. depends on !BR2_ARM_INSTRUCTIONS_THUMB && !BR2_powerpc_SPE
  147. depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
  148. help
  149. libmudflap is a gcc library used for the mudflap pointer
  150. debugging functionality. It is only needed if you intend to
  151. use the -fmudflap gcc flag.
  152. See http://gcc.gnu.org/wiki/Mudflap_Pointer_Debugging and
  153. the help of the gcc -fmudflap option for more details.
  154. If you're unsure, leave this option disabled.
  155. config BR2_GCC_ENABLE_GRAPHITE
  156. bool "Enable graphite support"
  157. depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5
  158. help
  159. This option enables the graphite optimizations in the
  160. compiler.
  161. comment "graphite support needs gcc >= 5.x"
  162. depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_5