summaryrefslogtreecommitdiff
path: root/jam-files
diff options
context:
space:
mode:
Diffstat (limited to 'jam-files')
-rw-r--r--jam-files/sanity.jam20
1 files changed, 15 insertions, 5 deletions
diff --git a/jam-files/sanity.jam b/jam-files/sanity.jam
index 9c75c247..957f4f43 100644
--- a/jam-files/sanity.jam
+++ b/jam-files/sanity.jam
@@ -74,6 +74,7 @@ if $(with-macports) {
}
else {
with-boost = [ option.get "with-boost" ] ;
+ with-boost ?= [ os.environ "BOOST_ROOT" ] ;
if $(with-boost) {
L-boost-search = -L$(with-boost)/lib" "-L$(with-boost)/lib64 ;
boost-search = <search>$(with-boost)/lib <search>$(with-boost)/lib64 ;
@@ -86,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) ] ;
@@ -95,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) : : <threading>single $(boost-search) <name>boost_$(name) ;
- lib inner_boost_$(name) : : <threading>multi $(boost-search) <name>boost_$(name)-mt ;
+# if [ test_flags $(L-boost-search)" -lboost_"$(name) ] {
+# lib inner_boost_$(name) : : <threading>single $(boost-search) <name>boost_$(name) ;
+# lib inner_boost_$(name) : : <threading>multi $(boost-search) <name>boost_$(name)-mt ;
+# } else {
+ if ! <threading>multi in $(requirements) {
+ requirements += <threading>multi ;
+ }
+ lib inner_boost_$(name) : : <threading>multi $(boost-search) <name>boost_$(name)-mt ;
+# }
} else {
lib inner_boost_$(name) : : $(boost-search) <name>boost_$(name) ;
}
@@ -148,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>$(cxxflags) <cflags>$(cflags) <linkflags>$(ldflags) <toolset>clang:<link>shared ;
@@ -173,9 +182,10 @@ if $(prefix) {
} else {
prefix = $(TOP)/dist$(GITTAG) ;
}
+
+bindir = [ option.get "bindir" : $(prefix)/bin ] ;
+libdir = [ option.get "libdir" : $(prefix)/lib ] ;
rule install-bin-libs ( deps * ) {
- local bindir = [ option.get "bindir" : $(prefix)/bin ] ;
- local libdir = [ option.get "libdir" : $(prefix)/lib ] ;
install prefix-bin : $(deps) : <location>$(bindir) <install-dependencies>on <install-type>EXE <link>shared:<dll-path>$(libdir) ;
install prefix-lib : $(deps) : <location>$(libdir) <install-dependencies>on <install-type>LIB <link>shared:<dll-path>$(libdir) ;
}