Config.in 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321
  1. comment "boost needs a toolchain w/ C++, threads, wchar"
  2. depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR
  3. config BR2_PACKAGE_BOOST
  4. bool "boost"
  5. depends on BR2_INSTALL_LIBSTDCPP
  6. # Boost could theorically be built with threading=single, but
  7. # that unfortunately doesn't work. Until someone fixes that,
  8. # let's depend on threads.
  9. depends on BR2_TOOLCHAIN_HAS_THREADS
  10. depends on BR2_USE_WCHAR
  11. help
  12. A general purpose C++ library
  13. http://www.boost.org/
  14. if BR2_PACKAGE_BOOST
  15. choice
  16. prompt "Layout"
  17. default BR2_PACKAGE_BOOST_LAYOUT_SYSTEM
  18. help
  19. Selects the layout of Boost binary names
  20. config BR2_PACKAGE_BOOST_LAYOUT_SYSTEM
  21. bool "system"
  22. help
  23. Boost binary names do not include the Boost version number
  24. or the name and version number of the compiler.
  25. config BR2_PACKAGE_BOOST_LAYOUT_TAGGED
  26. bool "tagged"
  27. help
  28. Boost binary names include the encoded build properties such
  29. as variant and threading, but do not include compiler name
  30. and version, or Boost version. This option is useful if you
  31. build several variants of Boost, using the same compiler.
  32. config BR2_PACKAGE_BOOST_LAYOUT_VERSIONED
  33. bool "versioned"
  34. help
  35. Boost binary names include the Boost version number, name
  36. and version of the compiler and encoded build properties.
  37. endchoice
  38. config BR2_PACKAGE_BOOST_LAYOUT
  39. string
  40. default "system" if BR2_PACKAGE_BOOST_LAYOUT_SYSTEM
  41. default "tagged" if BR2_PACKAGE_BOOST_LAYOUT_TAGGED
  42. default "versioned" if BR2_PACKAGE_BOOST_LAYOUT_VERSIONED
  43. config BR2_PACKAGE_BOOST_ATOMIC
  44. bool "boost-atomic"
  45. help
  46. C++11-style atomic<>.
  47. config BR2_PACKAGE_BOOST_CHRONO
  48. bool "boost-chrono"
  49. help
  50. Useful time utilities. C++11.
  51. config BR2_PACKAGE_BOOST_CONTAINER
  52. bool "boost-container"
  53. help
  54. Standard library containers and extensions.
  55. # see
  56. # http://www.boost.org/doc/libs/1_59_0/libs/context/doc/html/context/architectures.html
  57. # for the list of supported architectures. Sparc pretends to be
  58. # supported, but it doesn't build.
  59. config BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
  60. bool
  61. default y if ((BR2_arm || BR2_armeb) && BR2_ARM_CPU_HAS_ARM)
  62. default y if BR2_i386
  63. default y if BR2_mips
  64. default y if BR2_mipsel
  65. default y if BR2_powerpc
  66. default y if BR2_x86_64
  67. config BR2_PACKAGE_BOOST_CONTEXT
  68. bool "boost-context"
  69. depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
  70. depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735
  71. help
  72. C++11 context switching library.
  73. config BR2_PACKAGE_BOOST_CONTRACT
  74. bool "boost-contract"
  75. # pthread_condattr_setclock
  76. depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
  77. help
  78. Contract programming for C++.
  79. comment "boost-contract needs a toolchain w/ NPTL"
  80. depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL
  81. config BR2_PACKAGE_BOOST_COROUTINE
  82. bool "boost-coroutine"
  83. depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
  84. depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-context
  85. select BR2_PACKAGE_BOOST_CONTEXT
  86. help
  87. deprecated coroutine library, the non-depricated coroutine2
  88. library is a header-only library and does not need to be
  89. selected.
  90. comment "boost-coroutine needs a toolchain not affected by GCC bug 64735"
  91. depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
  92. depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
  93. config BR2_PACKAGE_BOOST_DATE_TIME
  94. bool "boost-date_time"
  95. help
  96. A set of date-time libraries based on generic programming
  97. concepts.
  98. config BR2_PACKAGE_BOOST_EXCEPTION
  99. bool "boost-exception"
  100. help
  101. The Boost Exception library supports transporting of arbitrary
  102. data in exception objects, and transporting of exceptions
  103. between threads.
  104. config BR2_PACKAGE_BOOST_FIBER
  105. bool "boost-fiber"
  106. depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
  107. depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
  108. # mips support uses the "pause" instruction, only available
  109. # since mips32r2/mips64r2.
  110. depends on !BR2_MIPS_CPU_MIPS32 && !BR2_MIPS_CPU_MIPS64
  111. depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-context
  112. depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_85180
  113. select BR2_PACKAGE_BOOST_CONTEXT
  114. help
  115. C++11 userland threads library.
  116. comment "boost-fiber needs a toolchain w/ NPTL"
  117. depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
  118. depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL
  119. comment "boost-fiber needs a toolchain not affected by GCC bug 64735, 85180"
  120. depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
  121. depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735 || BR2_TOOLCHAIN_HAS_GCC_BUG_85180
  122. config BR2_PACKAGE_BOOST_FILESYSTEM
  123. bool "boost-filesystem"
  124. select BR2_PACKAGE_BOOST_SYSTEM
  125. help
  126. The Boost Filesystem Library provides portable facilities to
  127. query and manipulate paths, files, and directories.
  128. config BR2_PACKAGE_BOOST_GRAPH
  129. bool "boost-graph"
  130. help
  131. The BGL graph interface and graph components are generic, in
  132. the same sense as the the Standard Template Library (STL).
  133. config BR2_PACKAGE_BOOST_GRAPH_PARALLEL
  134. bool "boost-graph_parallel"
  135. help
  136. The PBGL graph interface and graph components are generic, in
  137. the same sense as the the Standard Template Library (STL).
  138. config BR2_PACKAGE_BOOST_IOSTREAMS
  139. bool "boost-iostreams"
  140. select BR2_PACKAGE_BZIP2
  141. select BR2_PACKAGE_ZLIB
  142. help
  143. Boost.IOStreams provides a framework for defining streams,
  144. stream buffers and i/o filters.
  145. config BR2_PACKAGE_BOOST_LOCALE
  146. bool "boost-locale"
  147. # When boost-locale is enabled with icu support, Boost no
  148. # longer supports building the libboost_* libraries as static
  149. # libraries, causing build failures when other boost features
  150. # than boost-locale are enabled. To work around this, we
  151. # prevent using boost-locale on static linking configurations
  152. # with icu enabled. See
  153. # https://svn.boost.org/trac/boost/ticket/9685 for more
  154. # details.
  155. depends on !(BR2_STATIC_LIBS && BR2_PACKAGE_ICU)
  156. select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
  157. help
  158. Provide localization and Unicode handling tools for C++.
  159. comment "boost-locale needs a toolchain w/ dynamic library"
  160. depends on BR2_PACKAGE_ICU
  161. depends on BR2_STATIC_LIBS
  162. config BR2_PACKAGE_BOOST_LOG
  163. bool "boost-log"
  164. depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
  165. # for some reason, uClibc on PowerPC fails to build the boost
  166. # log module
  167. depends on !(BR2_powerpc && BR2_TOOLCHAIN_USES_UCLIBC)
  168. help
  169. Logging library.
  170. comment "boost-log needs a toolchain w/ NPTL"
  171. depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL
  172. depends on !(BR2_powerpc && BR2_TOOLCHAIN_USES_UCLIBC)
  173. config BR2_PACKAGE_BOOST_MATH
  174. bool "boost-math"
  175. help
  176. Boost.Math includes several contributions in the domain of
  177. mathematics:
  178. The Greatest Common Divisor and Least Common
  179. Multiple library provides run-time and compile-time evaluation
  180. of the greatest common divisor (GCD) or least common multiple
  181. (LCM) of two integers.
  182. The Special Functions library currently provides eight
  183. templated special functions, in namespace boost.
  184. The Complex Number Inverse Trigonometric Functions are the
  185. inverses of trigonometric functions currently present in the
  186. C++ standard.
  187. Quaternions are a relative of complex numbers often used to
  188. parameterise rotations in three dimentional space.
  189. Octonions, like quaternions, are a relative of complex
  190. numbers.
  191. config BR2_PACKAGE_BOOST_MPI
  192. bool "boost-mpi"
  193. help
  194. Message Passing Interface library, for use in
  195. distributed-memory parallel application programming.
  196. config BR2_PACKAGE_BOOST_PROGRAM_OPTIONS
  197. bool "boost-program_options"
  198. help
  199. The program_options library allows program developers to
  200. obtain program options, that is (name, value) pairs from the
  201. user, via conventional methods such as command line and config
  202. file.
  203. config BR2_PACKAGE_BOOST_PYTHON
  204. bool "boost-python"
  205. depends on BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3
  206. help
  207. The Boost Python Library is a framework for interfacing Python
  208. and C++. It allows you to quickly and seamlessly expose C++
  209. classes functions and objects to Python, and vice-versa,
  210. using no special tools -- just your C++ compiler.
  211. config BR2_PACKAGE_BOOST_RANDOM
  212. bool "boost-random"
  213. help
  214. A complete system for random number generation.
  215. config BR2_PACKAGE_BOOST_REGEX
  216. bool "boost-regex"
  217. help
  218. A new infrastructure for generic algorithms that builds on top
  219. of the new iterator concepts.
  220. config BR2_PACKAGE_BOOST_SERIALIZATION
  221. bool "boost-serialization"
  222. help
  223. Serialization for persistence and marshalling.
  224. config BR2_PACKAGE_BOOST_SIGNALS
  225. bool "boost-signals"
  226. help
  227. Managed signals & slots callback implementation.
  228. config BR2_PACKAGE_BOOST_STACKTRACE
  229. bool "boost-stacktrace"
  230. depends on !BR2_STATIC_LIBS
  231. help
  232. Gather, store, copy and print backtraces.
  233. comment "boost-stacktrace needs a toolchain w/ dynamic library"
  234. depends on BR2_STATIC_LIBS
  235. config BR2_PACKAGE_BOOST_SYSTEM
  236. bool "boost-system"
  237. help
  238. Operating system support, including the diagnostics support
  239. that will be part of the C++0x standard library.
  240. config BR2_PACKAGE_BOOST_TEST
  241. bool "boost-test"
  242. depends on BR2_USE_MMU # fork()
  243. help
  244. Support for simple program testing, full unit testing, and for
  245. program execution monitoring.
  246. config BR2_PACKAGE_BOOST_THREAD
  247. bool "boost-thread"
  248. help
  249. Portable C++ multi-threading. C++11, C++14.
  250. config BR2_PACKAGE_BOOST_TIMER
  251. bool "boost-timer"
  252. help
  253. Event timer, progress timer, and progress display classes.
  254. config BR2_PACKAGE_BOOST_TYPE_ERASURE
  255. bool "boost-type_erasure"
  256. help
  257. Runtime polymorphism based on concepts.
  258. config BR2_PACKAGE_BOOST_WAVE
  259. bool "boost-wave"
  260. # limitation of assembler for coldfire
  261. # error: Tried to convert PC relative branch to absolute jump
  262. depends on !BR2_m68k_cf
  263. help
  264. The Boost.Wave library is a Standards conformant, and highly
  265. configurable implementation of the mandated C99/C++
  266. preprocessor functionality packed behind an easy to use
  267. iterator interface.
  268. endif