X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=senfscons%2Fsenfutil.py;h=d9f67ed32b2b927329798bff8e67dc3b0727fb93;hb=844c117cb04bc73a5b920c2c49efbf14515da3e2;hp=ad80d8bcd09948c26c31e04b7b6a9c39998f7d08;hpb=275e7f8a473a1b04516f2db9ba7cbb81e7fa53b7;p=senf.git diff --git a/senfscons/senfutil.py b/senfscons/senfutil.py index ad80d8b..d9f67ed 100644 --- a/senfscons/senfutil.py +++ b/senfscons/senfutil.py @@ -8,10 +8,18 @@ from SCons.Script import * # c) check for a local SENF, set options accordingly and update that SENF if needed def SetupForSENF(env): - env.Append( LIBS = [ 'senf', 'iberty', 'boost_regex', 'boost_iostreams' ], + env.Append( LIBS = [ 'senf', 'readline', 'rt', '$BOOSTREGEXLIB', + '$BOOSTIOSTREAMSLIB', '$BOOSTSIGNALSLIB', + '$BOOSTFSLIB' ], + BOOSTREGEXLIB = 'boost_regex', + BOOSTIOSTREAMSLIB = 'boost_iostreams', + BOOSTSIGNALSLIB = 'boost_signals', + BOOSTFSLIB = 'boost_filesystem', CXXFLAGS = [ '-Wno-long-long', - '${"$CXXFLAGS_"+(final and "final" or "debug")}' ], - LINKFLAGS = [ '${"$LINKFLAGS_"+(final and "final" or "debug")}' ], + '${"$CXXFLAGS_"+(final and "final" or "debug")}', + '${profile and ("-g","-pg") or None}' ], + LINKFLAGS = [ '${"$LINKFLAGS_"+(final and "final" or "debug")}', + '${profile and "-pg" or None}' ], SENF_BUILDOPTS = [ '-j%s' % (env.GetOption('num_jobs') or "1") ], CXXFLAGS_debug = [ '-O0', '-g', '-fno-inline' ], LINKFLAGS_debug = [ '-g', '-rdynamic' ], @@ -21,7 +29,7 @@ def SetupForSENF(env): def parseLogOption(value): stream, area, level = ( x.strip() for x in value.strip().split('|') ) stream = ''.join('(%s)' % x for x in stream.split('::') ) - if area : area = ''.join( '(%s)' % x for x in elts[1].split('::') ) + if area : area = ''.join( '(%s)' % x for x in area.split('::') ) else : area = '(_)' return '(( %s,%s,%s ))' % (stream,area,level) @@ -33,6 +41,8 @@ def SetupForSENF(env): opts.Add( 'LOGLEVELS', 'Special log levels. Syntax: |[]| ...', '${"$LOGLEVELS_"+(final and "final" or "debug")}' ) opts.Add( BoolOption('final', 'Build final (optimized) build', False) ) + opts.Add( BoolOption('debug', 'Link in debug symbols', False) ) + opts.Add( BoolOption('profile', 'Add profile information', False) ) opts.Update(env) if env.subst('$LOGLEVELS'): @@ -47,7 +57,9 @@ def SetupForSENF(env): print "\nUsing SENF in './senf'\n" env.Append( LIBPATH = [ 'senf' ], CPPPATH = [ 'senf/include' ], - SENF_BUILDOPTS = [ '${final and "final=1" or None}' ], + SENF_BUILDOPTS = [ '${final and "final=1" or None}', + '${debug and "debug=1" or None}', + '${profile and "profile=1" or None}' ], CPPDEFINES = [ '${not(final) and "SENF_DEBUG" or None}' ] ) env.Default(