Config.in.options 12 KB

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