@ -17,7 +17,7 @@ include $(INCLUDE_DIR)/target.mk
PKG_NAME := boost
PKG_VERSION := 1_59_0
PKG_RELEASE := 6
PKG_RELEASE := 8
PKG_SOURCE := $( PKG_NAME) _$( PKG_VERSION) .tar.gz
PKG_SOURCE_URL := @SF/boost
@ -115,31 +115,75 @@ define Package/boost/config
menu "Select Boost Options"
depends on PACKAGE_boost
comment "Boost compilation options."
config boost-static-libs
bool "Compile Static Libraries"
help
Compile static version of all selected boost libraries.
default y
config boost-shared-libs
bool "Compile Shared Libraries"
help
Compile shared version of all selected boost libraries.
default y
config boost-runtime-static
bool "Use static version of C and C++ runtimes for static libraries."
help
Determines if shared or static version of C and C++ runtimes should be used for static libraries.
default n
select boost-static-libs
config boost-runtime-shared
bool "Use shared version of C and C++ runtimes for shared libraries."
help
Determines if shared or static version of C and C++ runtimes should be used for shared libraries.
default y
select boost-shared-libs
choice
prompt "Compile Boost libraries."
default boost-static-and-shared-libs
help
Choose which version to compile.
-> Shared:
- Only Shared libs will be compiled.
-> Static:
- Only Static libs will be compiled.
-> Both:
- Both Static and Shared libs will be compiled.
config boost-shared-libs
bool "Shared"
config boost-static-libs
bool "Static"
config boost-static-and-shared-libs
bool "Both"
endchoice
choice
prompt "Selects Boost Runtime linkage."
default boost-runtime-shared
help
Choose which C and C++ runtimes to use:
-> Use Shared runtimes.
-> Use Static runtimes.
- Not available if Shared libs are to be built.
-> Use both runtimes.
- Not available if Shared libs are to be built.
- Two seperate versions of Boost are built, linking each to a different runtime.
- This option requires "Use tagged names" option to be active.
config boost-runtime-shared
bool "Shared"
config boost-runtime-static
depends on @( !boost-shared-libs&& !boost-static-and-shared-libs)
bool "Static"
config boost-runtime-static-and-shared
depends on @( boost-use-name-tags&& !boost-shared-libs&& !boost-static-and-shared-libs)
bool "Both"
endchoice
choice
prompt "Select a Variant."
default boost-variant-release
help
Chooses which boost variant should be selected:
-> Release: Optimizes Boost for release.
- Optimization: Speed; Debug Symbols: Off; Inlining: Full; Runtime Debugging: Off.
-> Debug:
- Optimization: Off; Debug Symbols: On; Inlining: Off; Runtime Debugging: On.
-> Profile:
- Profiling: On; Debug Symbols: On.
config boost-variant-release
bool "Release"
config boost-variant-debug
bool "Debug"
config boost-variant-profile
bool "Profile"
endchoice
config boost-use-name-tags
bool "Use tagged names."
@ -153,16 +197,16 @@ define Package/boost/config
config boost-single-thread
depends on @boost-use-name-tags
bool "Single thread Support"
bool "Single thread Support. "
help
Compile Boost libraries in single-thread mode.
default n
config boost-with-debug
config boost-build-type-complete
depends on @boost-use-name-tags
bool "Boost Debug Support"
bool "Complete Boost Build."
help
Compile Boost libraries with debug support .
Builds both release and debug libs. It will take much longer to compile .
default n
endmenu
@ -262,7 +306,7 @@ $(eval $(call DefineBoostLibrary,wave,date_time thread filesystem,))
d e f i n e H o s t / C o m p i l e
# bjam does not provide a configure-script nor a Makefile
# b2 does not provide a configure-script nor a Makefile
( cd $( HOST_BUILD_DIR) /tools/build/src/engine ; ./build.sh gcc )
e n d e f
@ -287,6 +331,7 @@ else
BOOST_ABI = sysv
e n d i f
comma := ,
d e f i n e B u i l d / C o m p i l e
$( info Selected Boost API $( BOOST_ABI) for architecture $( ARCH) and cpu $( CPU_TYPE) $( CPU_SUBTYPE) )
@ -300,20 +345,24 @@ define Build/Compile
echo " using python : 2.7 : $( STAGING_DIR_ROOT) /usr/bin/python : $( STAGING_DIR) /usr/include/python2.7/ ; " >> \
tools/build/src/user-config.jam; \
) \
bjam \
'-sBUILD=release <optimization>space <inlining>on <debug-symbols>off' \
b2 \
$( CONFIGURE_ARGS) \
--ignore-site-config \
--toolset= gcc-$( ARCH) abi = $( BOOST_ABI) \
--disable-long-double \
$( if $( CONFIG_boost-variant-release) , variant = release,) \
$( if $( CONFIG_boost-variant-debug) , variant = debug,) \
$( if $( CONFIG_boost-variant-profile) , variant = profile,) \
$( if $( CONFIG_boost-use-name-tags) ,--layout= tagged,--layout= system) \
$( if $( CONFIG_boost-with-debug) ,--build-type= complete,--build-type= minimal) \
$( if $( CONFIG_boost-static-libs) ,link= static,) \
$( if $( CONFIG_boost-runtime-static) ,runtime-link= static,runtime-link= shared) \
$( if $( CONFIG_boost-build-type-complete) ,--build-type= complete,--build-type= minimal) \
$( if $( CONFIG_boost-shared-libs) ,link= shared,) \
$( if $( CONFIG_boost-static-libs) ,link= static,) \
$( if $( CONFIG_boost-static-and-shared-libs) ,link= static$( comma) shared,) \
$( if $( CONFIG_boost-runtime-shared) ,runtime-link= shared,) \
$( if $( CONFIG_boost-runtime-static) ,runtime-link= static,) \
$( if $( CONFIG_boost-runtime-static-and-shared) ,runtime-link= shared$( comma) static,) \
$( if $( CONFIG_boost-single-thread) ,threading= single,) \
threading = multi \
$( CONFIGURE_ARGS) \
--without-mpi \
$( if $( CONFIG_boost-coroutine2) ,,--without-coroutine2) \
$( if $( CONFIG_boost-graph-parallel) ,,--without-graph_parallel) \
@ -342,7 +391,7 @@ define Build/InstallDev
# copies _all_ header files - independent of <--with-library>-argument above
$( INSTALL_DIR) $( 1) /usr/lib
$( CP) -v $( PKG_INSTALL_DIR) /lib/*.a $( 1) /usr/lib/ # copies all compiled archive files
$( CP) -v $( PKG_INSTALL_DIR) /lib/*.a $( 1) /usr/lib/ # copies all compiled archive files
$( FIND) $( PKG_INSTALL_DIR) /lib/ -name '*.so*' -exec $( CP) { } $( 1) /usr/lib/ \; # copies all the shared objects files
e n d e f
@ -351,7 +400,7 @@ define Host/Install
$( STAGING_DIR_HOST) /bin
$( CP) \
$( HOST_BUILD_DIR) /tools/build/src/engine/bin.*/bjam \
$( HOST_BUILD_DIR) /tools/build/src/engine/bin.*/b2 \
$( STAGING_DIR_HOST) /bin/
e n d e f