Config.in.options 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349
  1. if BR2_TOOLCHAIN_EXTERNAL_CUSTOM
  2. config BR2_TOOLCHAIN_EXTERNAL_PREFIX
  3. default BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX
  4. config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL
  5. default "toolchain-external-custom"
  6. config BR2_TOOLCHAIN_EXTERNAL_URL
  7. string "Toolchain URL"
  8. depends on BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD
  9. help
  10. URL of the custom toolchain tarball to download and install.
  11. config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX
  12. string "Toolchain prefix"
  13. default "$(ARCH)-linux"
  14. choice
  15. bool "External toolchain gcc version"
  16. default BR2_TOOLCHAIN_EXTERNAL_GCC_4_3
  17. help
  18. Set to the gcc version that is used by your external
  19. toolchain.
  20. config BR2_TOOLCHAIN_EXTERNAL_GCC_6
  21. bool "6.x"
  22. select BR2_TOOLCHAIN_GCC_AT_LEAST_6
  23. config BR2_TOOLCHAIN_EXTERNAL_GCC_5
  24. bool "5.x"
  25. select BR2_TOOLCHAIN_GCC_AT_LEAST_5
  26. config BR2_TOOLCHAIN_EXTERNAL_GCC_4_9
  27. bool "4.9.x"
  28. select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
  29. config BR2_TOOLCHAIN_EXTERNAL_GCC_4_8
  30. bool "4.8.x"
  31. select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
  32. config BR2_TOOLCHAIN_EXTERNAL_GCC_4_7
  33. bool "4.7.x"
  34. select BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
  35. config BR2_TOOLCHAIN_EXTERNAL_GCC_4_6
  36. bool "4.6.x"
  37. select BR2_TOOLCHAIN_GCC_AT_LEAST_4_6
  38. config BR2_TOOLCHAIN_EXTERNAL_GCC_4_5
  39. bool "4.5.x"
  40. select BR2_TOOLCHAIN_GCC_AT_LEAST_4_5
  41. config BR2_TOOLCHAIN_EXTERNAL_GCC_4_4
  42. bool "4.4.x"
  43. select BR2_TOOLCHAIN_GCC_AT_LEAST_4_4
  44. config BR2_TOOLCHAIN_EXTERNAL_GCC_4_3
  45. bool "4.3.x"
  46. select BR2_TOOLCHAIN_GCC_AT_LEAST_4_3
  47. config BR2_TOOLCHAIN_EXTERNAL_GCC_OLD
  48. bool "older"
  49. help
  50. Use this option if your GCC version is older than any of the
  51. above.
  52. Note that the Buildroot community doesn't do any testing with
  53. such old toolchains. Some packages may fail to build in
  54. surprising ways, or the generated root filesystem may not
  55. work at all. Use such old toolchains at your own risk.
  56. endchoice
  57. choice
  58. bool "External toolchain kernel headers series"
  59. default BR2_TOOLCHAIN_EXTERNAL_HEADERS_REALLY_OLD
  60. help
  61. Set to the kernel headers version that were used to build
  62. this external toolchain.
  63. This is used to hide/show some packages that have strict
  64. requirements on the version of kernel headers.
  65. If unsure what version your toolchain is using, you can look
  66. at the value of LINUX_VERSION_CODE in linux/version.h in your
  67. toolchain. The Linux version is M.m.p, with:
  68. M = ( LINUX_VERSION_CODE >> 16 ) & 0xFF
  69. m = ( LINUX_VERSION_CODE >> 8 ) & 0xFF
  70. p = ( LINUX_VERSION_CODE >> 0 ) & 0xFF
  71. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_9
  72. bool "4.9.x"
  73. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9
  74. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_8
  75. bool "4.8.x"
  76. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_8
  77. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_7
  78. bool "4.7.x"
  79. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_7
  80. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_6
  81. bool "4.6.x"
  82. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_6
  83. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_5
  84. bool "4.5.x"
  85. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5
  86. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_4
  87. bool "4.4.x"
  88. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4
  89. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_3
  90. bool "4.3.x"
  91. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3
  92. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_2
  93. bool "4.2.x"
  94. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2
  95. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_1
  96. bool "4.1.x"
  97. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_1
  98. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_0
  99. bool "4.0.x"
  100. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0
  101. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_19
  102. bool "3.19.x"
  103. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_19
  104. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_18
  105. bool "3.18.x"
  106. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18
  107. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_17
  108. bool "3.17.x"
  109. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17
  110. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_16
  111. bool "3.16.x"
  112. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_16
  113. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_15
  114. bool "3.15.x"
  115. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15
  116. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_14
  117. bool "3.14.x"
  118. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_14
  119. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_13
  120. bool "3.13.x"
  121. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13
  122. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_12
  123. bool "3.12.x"
  124. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12
  125. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_11
  126. bool "3.11.x"
  127. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_11
  128. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_10
  129. bool "3.10.x"
  130. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10
  131. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_9
  132. bool "3.9.x"
  133. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_9
  134. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_8
  135. bool "3.8.x"
  136. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8
  137. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_7
  138. bool "3.7.x"
  139. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7
  140. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_6
  141. bool "3.6.x"
  142. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_6
  143. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_5
  144. bool "3.5.x"
  145. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5
  146. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_4
  147. bool "3.4.x"
  148. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4
  149. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_3
  150. bool "3.3.x"
  151. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3
  152. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_2
  153. bool "3.2.x"
  154. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2
  155. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_1
  156. bool "3.1.x"
  157. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1
  158. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_0
  159. bool "3.0.x"
  160. select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0
  161. config BR2_TOOLCHAIN_EXTERNAL_HEADERS_REALLY_OLD
  162. bool "2.6.x"
  163. endchoice
  164. choice
  165. prompt "External toolchain C library"
  166. default BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
  167. config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
  168. bool "uClibc/uClibc-ng"
  169. select BR2_TOOLCHAIN_EXTERNAL_UCLIBC
  170. # For the time being, we assume that all custom external
  171. # toolchains have shadow password support.
  172. select BR2_TOOLCHAIN_HAS_SHADOW_PASSWORDS
  173. help
  174. Select this option if your external toolchain uses the
  175. uClibc (available from http://www.uclibc.org/)
  176. or uClibc-ng (available from http://www.uclibc-ng.org)
  177. C library.
  178. config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC
  179. bool "glibc/eglibc"
  180. depends on !BR2_STATIC_LIBS
  181. select BR2_TOOLCHAIN_EXTERNAL_GLIBC
  182. help
  183. Select this option if your external toolchain uses the GNU C
  184. library (available from https://www.gnu.org/software/libc/)
  185. or its variant the eglibc library (http://www.eglibc.org/).
  186. Note: eglibc is a variant of glibc that (among other things)
  187. can be configured to exclude some of its features. Using a
  188. toolchain with eglibc configured to exclude key features may
  189. cause build failures to some packages.
  190. comment "(e)glibc only available with shared lib support"
  191. depends on BR2_STATIC_LIBS
  192. config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_MUSL
  193. bool "musl (experimental)"
  194. select BR2_TOOLCHAIN_EXTERNAL_MUSL
  195. help
  196. Select this option if your external toolchain uses the
  197. 'musl' C library, available from http://www.musl-libc.org/.
  198. endchoice
  199. if BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
  200. config BR2_TOOLCHAIN_EXTERNAL_WCHAR
  201. bool "Toolchain has WCHAR support?"
  202. select BR2_USE_WCHAR
  203. help
  204. Select this option if your external toolchain supports
  205. WCHAR. If you don't know, leave the default value, Buildroot
  206. will tell you if it's correct or not.
  207. config BR2_TOOLCHAIN_EXTERNAL_LOCALE
  208. bool "Toolchain has locale support?"
  209. select BR2_TOOLCHAIN_EXTERNAL_WCHAR
  210. select BR2_ENABLE_LOCALE
  211. help
  212. Select this option if your external toolchain has locale
  213. support. If you don't know, leave the default value,
  214. Buildroot will tell you if it's correct or not.
  215. config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS
  216. bool "Toolchain has threads support?"
  217. select BR2_TOOLCHAIN_HAS_THREADS
  218. default y
  219. help
  220. Select this option if your external toolchain has thread
  221. support. If you don't know, leave the default value,
  222. Buildroot will tell you if it's correct or not.
  223. if BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS
  224. config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG
  225. bool "Toolchain has threads debugging support?"
  226. select BR2_TOOLCHAIN_HAS_THREADS_DEBUG
  227. default y
  228. help
  229. Select this option if your external toolchain has thread
  230. debugging support. If you don't know, leave the default
  231. value, Buildroot will tell you if it's correct or not.
  232. config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_NPTL
  233. bool "Toolchain has NPTL threads support?"
  234. select BR2_TOOLCHAIN_HAS_THREADS_NPTL
  235. default y
  236. help
  237. Select this option if your external toolchain uses the NPTL
  238. (Native Posix Thread Library) implementation of Posix
  239. threads. If you don't know, leave the default value,
  240. Buildroot will tell you if it's correct or not.
  241. endif # BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS
  242. endif # BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
  243. config BR2_TOOLCHAIN_EXTERNAL_HAS_SSP
  244. bool "Toolchain has SSP support?"
  245. select BR2_TOOLCHAIN_HAS_SSP
  246. default y if BR2_TOOLCHAIN_EXTERNAL_GLIBC
  247. default y if BR2_TOOLCHAIN_EXTERNAL_MUSL
  248. help
  249. Selection this option if your external toolchain has Stack
  250. Smashing Protection support enabled. If you don't know,
  251. leave the default value, Buildroot will tell you if it's
  252. correct or not.
  253. config BR2_TOOLCHAIN_EXTERNAL_INET_RPC
  254. bool "Toolchain has RPC support?"
  255. select BR2_TOOLCHAIN_HAS_NATIVE_RPC
  256. depends on !BR2_TOOLCHAIN_EXTERNAL_MUSL
  257. default y if BR2_TOOLCHAIN_EXTERNAL_GLIBC
  258. help
  259. Select this option if your external toolchain supports
  260. RPC. If you don't know, leave the default value, Buildroot
  261. will tell you if it's correct or not.
  262. config BR2_TOOLCHAIN_EXTERNAL_CXX
  263. bool "Toolchain has C++ support?"
  264. select BR2_INSTALL_LIBSTDCPP
  265. help
  266. Select this option if your external toolchain has C++
  267. support. If you don't know, leave the default value,
  268. Buildroot will tell you if it's correct or not.
  269. config BR2_TOOLCHAIN_EXTRA_EXTERNAL_LIBS
  270. string "Extra toolchain libraries to be copied to target"
  271. help
  272. If your external toolchain provides extra libraries that
  273. need to be copied to the target filesystem, enter them
  274. here, separated by spaces. They will be copied to the
  275. target's /lib directory.
  276. endif