blob: ed67285a58e32e53264cd5fddc6260ef2eddb037 [file] [log] [blame]
comment "boost needs a toolchain w/ C++, threads, wchar"
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR
config BR2_PACKAGE_BOOST_ARCH_SUPPORTS
bool
default y if !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII
config BR2_PACKAGE_BOOST
bool "boost"
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS
# Boost could theorically be built with threading=single, but
# that unfortunately doesn't work. Until someone fixes that,
# let's depend on threads.
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_USE_WCHAR
help
A general purpose C++ library
http://www.boost.org/
if BR2_PACKAGE_BOOST
choice
prompt "Layout"
default BR2_PACKAGE_BOOST_LAYOUT_SYSTEM
help
Selects the layout of Boost binary names
config BR2_PACKAGE_BOOST_LAYOUT_SYSTEM
bool "system"
help
Boost binary names do not include the Boost version number
or the name and version number of the compiler.
config BR2_PACKAGE_BOOST_LAYOUT_TAGGED
bool "tagged"
help
Boost binary names include the encoded build properties such
as variant and threading, but do not include compiler name
and version, or Boost version. This option is useful if you
build several variants of Boost, using the same compiler.
config BR2_PACKAGE_BOOST_LAYOUT_VERSIONED
bool "versioned"
help
Boost binary names include the Boost version number, name
and version of the compiler and encoded build properties.
endchoice
config BR2_PACKAGE_BOOST_LAYOUT
string
default "system" if BR2_PACKAGE_BOOST_LAYOUT_SYSTEM
default "tagged" if BR2_PACKAGE_BOOST_LAYOUT_TAGGED
default "versioned" if BR2_PACKAGE_BOOST_LAYOUT_VERSIONED
config BR2_PACKAGE_BOOST_ATOMIC
bool "boost-atomic"
config BR2_PACKAGE_BOOST_CHRONO
bool "boost-chrono"
config BR2_PACKAGE_BOOST_CONTAINER
bool "boost-container"
# see
# http://www.boost.org/doc/libs/1_59_0/libs/context/doc/html/context/architectures.html
# for the list of supported architectures. Sparc pretends to be
# supported, but it doesn't build.
config BR2_PACKAGE_BOOST_CONTEXT
bool "boost-context"
depends on (BR2_arm || BR2_armeb || BR2_i386 || BR2_mips || BR2_mipsel \
|| BR2_powerpc || BR2_x86_64)
config BR2_PACKAGE_BOOST_COROUTINE
bool "boost-coroutine"
depends on BR2_PACKAGE_BOOST_CONTEXT
config BR2_PACKAGE_BOOST_COROUTINE2
bool "boost-coroutine2"
depends on BR2_PACKAGE_BOOST_CONTEXT
config BR2_PACKAGE_BOOST_DATE_TIME
bool "boost-date_time"
config BR2_PACKAGE_BOOST_EXCEPTION
bool "boost-exception"
config BR2_PACKAGE_BOOST_FILESYSTEM
bool "boost-filesystem"
config BR2_PACKAGE_BOOST_GRAPH
bool "boost-graph"
config BR2_PACKAGE_BOOST_GRAPH_PARALLEL
bool "boost-graph_parallel"
config BR2_PACKAGE_BOOST_IOSTREAMS
bool "boost-iostreams"
select BR2_PACKAGE_BZIP2
select BR2_PACKAGE_ZLIB
config BR2_PACKAGE_BOOST_LOCALE
bool "boost-locale"
select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
config BR2_PACKAGE_BOOST_LOG
bool "boost-log"
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
# for some reason, uClibc on PowerPC fails to build the boost
# log module
depends on !(BR2_powerpc && BR2_TOOLCHAIN_USES_UCLIBC)
comment "boost-log needs a toolchain w/ NPTL"
depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL
depends on !(BR2_powerpc && BR2_TOOLCHAIN_USES_UCLIBC)
config BR2_PACKAGE_BOOST_MATH
bool "boost-math"
config BR2_PACKAGE_BOOST_MPI
bool "boost-mpi"
config BR2_PACKAGE_BOOST_PROGRAM_OPTIONS
bool "boost-program_options"
config BR2_PACKAGE_BOOST_PYTHON
depends on BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3
bool "boost-python"
config BR2_PACKAGE_BOOST_RANDOM
bool "boost-random"
config BR2_PACKAGE_BOOST_REGEX
bool "boost-regex"
config BR2_PACKAGE_BOOST_SERIALIZATION
bool "boost-serialization"
config BR2_PACKAGE_BOOST_SIGNALS
bool "boost-signals"
config BR2_PACKAGE_BOOST_SYSTEM
bool "boost-system"
config BR2_PACKAGE_BOOST_TEST
bool "boost-test"
depends on BR2_USE_MMU # fork()
config BR2_PACKAGE_BOOST_THREAD
bool "boost-thread"
config BR2_PACKAGE_BOOST_TIMER
bool "boost-timer"
config BR2_PACKAGE_BOOST_WAVE
bool "boost-wave"
endif