Add SCons configure checks
[senf.git] / site_scons / site_tools / Boost.py
index 7c0255b..8df9c6b 100644 (file)
@@ -77,6 +77,8 @@ def CompileCheck(target, source, env):
 CompileCheck = SCons.Script.Action(CompileCheck)
 
 def BoostUnitTest(env, target=None, source=None,  **kw):
+    global _ALL_TESTS
+
     target = env.arg2nodes(target)[0]
     source = env.arg2nodes(source)
 
@@ -89,7 +91,7 @@ def BoostUnitTest(env, target=None, source=None,  **kw):
                       **kw)
 
     stamp = env.Command(stampnode, bin,
-                        [ '$SOURCE $BOOSTTESTARGS', SCons.Script.Touch('$TARGET')],
+                        [ './$SOURCE $BOOSTTESTARGS', SCons.Script.Touch('$TARGET')],
                         **kw)
 
     alias = env.Command(env.File(target), stamp, [ env.NopAction() ] )
@@ -106,6 +108,7 @@ def BoostUnitTest(env, target=None, source=None,  **kw):
     return alias
 
 def FindAllBoostUnitTests(env, target, source):
+    global _ALL_TESTS
     return _ALL_TESTS
 
 def NopAction(env, target, source):
@@ -116,12 +119,13 @@ def NopAction(env, target, source):
 def generate(env):
     env.SetDefault(
         BOOST_VARIANT     = '',
+        _BOOST_VARIANT    = '${BOOST_VARIANT and "-" or None}$BOOST_VARIANT',
 
-        BOOSTTESTLIB      = 'boost_unit_test_framework$BOOST_VARIANT',
-        BOOSTREGEXLIB     = 'boost_regex$BOOST_VARIANT',
-        BOOSTFSLIB        = 'boost_filesystem$BOOST_VARIANT',
-        BOOSTIOSTREAMSLIB = 'boost_iostreams$BOOST_VARIANT',
-        BOOSTSIGNALSLIB   = 'boost_signals$BOOST_VARIANT',
+        BOOSTTESTLIB      = 'boost_unit_test_framework$_BOOST_VARIANT',
+        BOOSTREGEXLIB     = 'boost_regex$_BOOST_VARIANT',
+        BOOSTFSLIB        = 'boost_filesystem$_BOOST_VARIANT',
+        BOOSTIOSTREAMSLIB = 'boost_iostreams$_BOOST_VARIANT',
+        BOOSTSIGNALSLIB   = 'boost_signals$_BOOST_VARIANT',
 
         BOOSTTESTARGS     = [ '--build_info=yes', '--log_level=test_suite' ],
     )