Config.in.options 11 KB

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