From 03e9b201c88d9ab11217851410a049c7efbd5dc0 Mon Sep 17 00:00:00 2001 From: Kenneth Heafield Date: Fri, 25 May 2012 12:00:45 -0400 Subject: Force multi-threaded build if only multi-threaded Boost is present. --- jam-files/sanity.jam | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'jam-files') diff --git a/jam-files/sanity.jam b/jam-files/sanity.jam index 2a5fc381..4e0432f9 100644 --- a/jam-files/sanity.jam +++ b/jam-files/sanity.jam @@ -87,6 +87,8 @@ else { boost-include = ; } } + +requirements = ; #Are we linking static binaries against shared boost? boost-auto-shared = [ auto-shared "boost_program_options" : $(L-boost-search) ] ; @@ -96,8 +98,15 @@ rule boost-lib ( name macro ) { #versions of boost do not have -mt tagged versions of all libraries. Sadly, #boost.jam does not handle this correctly. if [ test_flags $(L-boost-search)" -lboost_"$(name)"-mt" ] { - lib inner_boost_$(name) : : single $(boost-search) boost_$(name) ; - lib inner_boost_$(name) : : multi $(boost-search) boost_$(name)-mt ; +# if [ test_flags $(L-boost-search)" -lboost_"$(name) ] { +# lib inner_boost_$(name) : : single $(boost-search) boost_$(name) ; +# lib inner_boost_$(name) : : multi $(boost-search) boost_$(name)-mt ; +# } else { + if ! multi in $(requirements) { + requirements += multi ; + } + lib inner_boost_$(name) : : multi $(boost-search) boost_$(name)-mt ; +# } } else { lib inner_boost_$(name) : : $(boost-search) boost_$(name) ; } @@ -149,7 +158,6 @@ rule external-lib ( name : search-path * ) { local ignored = @($(build-log):E=$(script)) ; } -requirements = ; { #Boost jam's static clang is buggy. requirements += $(cxxflags) $(cflags) $(ldflags) clang:shared ; -- cgit v1.2.3