Call CompileCheck builder from BoostUnitTest
[senf.git] / SConstruct
index cca03b8..ebb1fab 100644 (file)
@@ -15,15 +15,15 @@ env.Tool('Doxygen', [ 'senfscons' ])
 env.Tool('Dia2Png', [ 'senfscons' ])
 env.Tool('PkgDraw', [ 'senfscons' ])
 env.Tool('CopyToDir', [ 'senfscons' ])
-env.Tool('ProgramNoScan', [ 'senfscons' ])
 env.Tool('CompileCheck', [ 'senfscons' ])
 env.Tool('Boost', [ 'senfscons' ])
-env.Tool('BoostUnitTests', [ 'senfscons' ])
+env.Tool('BoostUnitTest', [ 'senfscons' ])
+env.Tool('InstallSubdir', [ 'senfscons' ])
 
 env.Help("""
 Additional top-level build targets:
 
-prepare      Create all source files not part of the repository
+prepare      Create all target files not part of the repository
 all_tests    Build and run unit tests for all modules
 all_docs     Build documentation for all modules
 all          Build everything
@@ -36,30 +36,24 @@ fixlinks     Fix broken links in doxygen documentation
 valgrind     Run all tests under valgrind/memcheck
 """)
 
-# Compile options
-
-# Options used to debug inlining:
-#
-# BEWARE: You need lots of ram to compile with these settings (approx 1G)
-
 class BuildTypeOptions:
     def __init__(self, var):
         self._var = var
 
-    def __call__(self, source, target, env, for_signature):
+    def __call__(self, target, source, env, for_signature):
         type = env['final'] and "final" or env['debug'] and "debug" or "normal"
         return env[self._var + "_" + type]
 
 env.Append(
    ENV                    = { 'PATH' : os.environ.get('PATH') },
-   CLEAN_PATTERNS         = [ '*~', '#*#', '*.pyc', 'semantic.cache', '.sconsign*' ],
+   CLEAN_PATTERNS         = [ '*~', '#*#', '*.pyc', 'semantic.cache', '.sconsign*', '.sconsign' ],
 
    CPPPATH                = [ '#/include' ],
    LOCALLIBDIR            = '#',
    LIBPATH                = [ '$LOCALLIBDIR' ],
    LIBS                   = [ 'rt', '$BOOSTREGEXLIB', '$BOOSTIOSTREAMSLIB', '$BOOSTSIGNALSLIB',
                               '$BOOSTFSLIB' ], 
-   TEST_EXTRA_LIBS        = [ ],
+   TEST_EXTRA_LIBS        = [ '$LIBSENF$LIBADDSUFFIX' ],
 
    PREFIX                 = '/usr/local',
    LIBINSTALLDIR          = '$PREFIX/lib',
@@ -145,17 +139,17 @@ if os.path.exists('SConscript.local'):
 SConscript(list(set(glob.glob("*/SConscript")) - set(initSConscripts)))
 
 # Define the main targets
-SENFSCons.StandardTargets(env)
-SENFSCons.GlobalTargets(env)
+env.Alias('all', [ 'default', 'all_tests', 'all_docs' ])
 
-env.Depends( SENFSCons.Doxygen(env), env.Value(env['ENV']['REVISION']) )
+env.Depends(SENFSCons.Doxygen(env), env.Value(env['ENV']['REVISION']))
 
 libsenf = env.Library(env.subst("$LIBSENF$LIBADDSUFFIX"), env['ALLOBJECTS'])
 env.Default(libsenf)
 env.Clean('all', libsenf)
 env.Alias('default', libsenf)
 
-SENFSCons.InstallIncludeFiles(env, [ 'config.hh' ])
+env.InstallSubdir(target = '$INCLUDEINSTALLDIR', source = [ 'config.hh' ])
+
 env.Alias('install_all', env.Install('$LIBINSTALLDIR', libsenf))
 
 if env.GetOption('clean'):