Config.in.options 12 KB

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