Commit 8b354dac authored by Peter Korsgaard's avatar Peter Korsgaard
Browse files

boost: fix build with uClibc, add locale/timer modules options



Boost 1.49 added two new modules, locale and timer - So add sub options
to control compilation of those. The locale module by default compiles
the posix backend under Linux, but this needs monetary.h which isn't
provided by uClibc, so work around that.

While we're at it, hide the icu option as that is just an internal
configuration option used by E.G. the locale module.

Signed-off-by: default avatarPeter Korsgaard <jacmet@sunsite.dk>
parent feba8b13
Loading
Loading
Loading
Loading
+10 −4
Original line number Diff line number Diff line
@@ -37,13 +37,16 @@ config BR2_PACKAGE_BOOST_GRAPH
config BR2_PACKAGE_BOOST_GRAPH_PARALLEL
	bool "boost-graph_parallel"

config BR2_PACKAGE_BOOST_ICU
        select BR2_PACKAGE_ICU
	bool "boost-icu"

config BR2_PACKAGE_BOOST_IOSTREAMS
	bool "boost-iostreams"

config BR2_PACKAGE_BOOST_LOCALE
	depends on BR2_USE_WCHAR
	bool "boost-locale"

comment "boost-locale requires a toolchain with wchar support"
	depends on !BR2_USE_WCHAR

config BR2_PACKAGE_BOOST_MATH
	bool "boost-math"

@@ -75,6 +78,9 @@ config BR2_PACKAGE_BOOST_THREAD
	depends on BR2_TOOLCHAIN_HAS_THREADS
	bool "boost-thread"

config BR2_PACKAGE_BOOST_TIMER
	bool "boost-timer"

config BR2_PACKAGE_BOOST_WAVE
	bool "boost-wave"

+14 −1
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@ BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_FILESYSTEM),,filesystem)
BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_GRAPH),,graph)
BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_GRAPH_PARALLEL),,graph_parallel)
BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_IOSTREAMS),,iostreams)
BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_LOCALE),,locale)
BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_MATH),,math)
BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_MPI),,mpi)
BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_PROGRAM_OPTIONS),,program_options)
@@ -34,15 +35,25 @@ BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_SIGNALS),,signals)
BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_SYSTEM),,system)
BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_TEST),,test)
BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_THREAD),,thread)
BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_TIMER),,timer)
BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_WAVE),,wave)

ifeq ($(BR2_PACKAGE_BOOST_ICU),y)
ifeq ($(BR2_PACKAGE_ICU),y)
BOOST_FLAGS += --with-icu
BOOST_DEPENDENCIES += icu
else
BOOST_FLAGS += --without-icu
endif

ifeq ($(BR2_PACKAGE_BOOST_LOCALE),y)
ifeq ($(BR2_TOOLCHAIN_BUILDROOT)$(BR2_TOOLCHAIN_EXTERNAL_UCLIBC)$(BR2_TOOLCHAIN_CTNG_uClibc),y)
# posix backend needs monetary.h which isn't available on uClibc
BOOST_OPT += boost.locale.posix=off
endif

BOOST_DEPENDENCIES += $(if $(BR2_ENABLE_LOCALE),,libiconv)
endif

BOOST_LINK = $(if $(BR2_PREFER_STATIC_LIB),static,shared)
BOOST_MULTI = $(if $(BR2_PACKAGE_BOOST_MULTITHREADED),multi,single)
BOOST_VARIANT = $(if $(BR2_ENABLE_DEBUG),debug,release)
@@ -64,6 +75,7 @@ define BOOST_INSTALL_TARGET_CMDS
	link=$(BOOST_LINK) \
	threading=$(BOOST_MULTI) \
	runtime-link=$(BOOST_LINK) \
	$(BOOST_OPT) \
	--prefix=$(TARGET_DIR)/usr \
	--layout=system install )
endef
@@ -75,6 +87,7 @@ define BOOST_INSTALL_STAGING_CMDS
	variant=$(BOOST_VARIANT) \
	link=$(BOOST_LINK) \
	threading=$(BOOST_MULTI) \
	$(BOOST_OPT) \
	runtime-link=$(BOOST_LINK) \
	--prefix=$(STAGING_DIR)/usr \
	--layout=system install)