X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=site_scons%2Fsenfutil.py;h=546846363b91f8fb4c7bc712ba048d7bb85d7cc5;hb=b6acba899f44ba9422476022c775cef823fc9337;hp=bda8b3ccd1cc86a906aff5c5e4e5c30ec9af38e0;hpb=737789818bf8658d3b3f4444a273b2d44021e51a;p=senf.git diff --git a/site_scons/senfutil.py b/site_scons/senfutil.py index bda8b3c..5468463 100644 --- a/site_scons/senfutil.py +++ b/site_scons/senfutil.py @@ -31,6 +31,13 @@ class BuildTypeOptions: type = env['final'] and "final" or env['debug'] and "debug" or "normal" return env[self._var + "_" + type] +def loadTools(env): + global senfutildir + tooldir = os.path.join(senfutildir, 'site_tools') + for tool in os.listdir(tooldir): + name, ext = os.path.splitext(tool) + if ext == '.py' and name != "__init__" : env.Tool(name, [ tooldir ]) + def parseArguments(env, *defs): vars = Variables(args=ARGUMENTS) for d in defs : vars.Add(d) @@ -64,13 +71,8 @@ Special command line parameters: def SetupForSENF(env, senf_path = []): global senfutildir senf_path.extend(('senf', os.path.dirname(senfutildir), '/usr/local', '/usr')) - tooldir = os.path.join(senfutildir, 'site_tools') - env.Tool('Boost', [ tooldir ]) - env.Tool('PhonyTarget', [ tooldir ]) - env.Tool('Yaptu', [ tooldir ]) - env.Tool('CopyToDir', [ tooldir ]) - env.Tool('Doxygen', [ tooldir ]) + loadTools(env) env.Append( LIBS = [ 'senf', 'rt', '$BOOSTREGEXLIB', @@ -178,9 +180,9 @@ def Glob(env, exclude=[], subdirs=[]): for x in env.Glob("*.cc", strings=True) if x not in testSources and x not in exclude ] for subdir in subdirs: - testSources += glob.glob(os.path.join(subdir,"*.test.cc")) + testSources += env.Glob(os.path.join(subdir,"*.test.cc"), strings=True) sources += [ x - for x in env.Glob(os.path.join(subdir,"*.cc")) + for x in env.Glob(os.path.join(subdir,"*.cc"), strings=True) if x not in testSources and x not in exclude ] sources.sort() testSources.sort() @@ -213,7 +215,9 @@ def Doxygen(env, doxyheader=None, doxyfooter=None, doxycss=None, mydoxyfile=Fals else: for dir, dirs, files in os.walk(senfdocdir): tagfiles.extend([ os.path.join(dir,f) for f in files if f.endswith('.tag') ]) - if dir.endswith('/doc') : dirs.remove('html') + if dir.endswith('/doc') : + try: dirs.remove('html') + except ValueError: pass for d in dirs: if d.startswith('.') : dirs.remove(d)