--- SConstruct.orig 2011-04-17 17:57:09 UTC +++ SConstruct @@ -20,7 +20,7 @@ BUILD_LOCALE_PATH = BUILD_PATH + 'locale BUILD_FLAGS = { 'common' : ['-I#', '-D_GNU_SOURCE', '-D_LARGEFILE_SOURCE', '-D_FILE_OFFSET_BITS=64', '-D_REENTRANT'], 'debug' : ['-g', '-ggdb', '-Wall', '-D_DEBUG'], - 'release' : ['-O3', '-fomit-frame-pointer', '-DNDEBUG'] + 'release' : ['-fomit-frame-pointer', '-DNDEBUG'] } # ---------------------------------------------------------------------- @@ -106,6 +106,7 @@ else: vars.AddVariables( BoolVariable('debug', 'Compile the program with debug information', 0), BoolVariable('release', 'Compile the program with optimizations', 0), + BoolVariable('libnotify', 'Enable notifications through libnotify', 1), BoolVariable('profile', 'Compile the program with profiling information', 0), PathVariable('PREFIX', 'Compile the program with PREFIX as the root for installation', '/usr/local', PathVariable.PathIsDir), ('FAKE_ROOT', 'Make scons install the program under a fake root', '') @@ -131,7 +132,10 @@ if os.environ.has_key('CC'): env['CC'] = os.environ['CC'] if os.environ.has_key('CXXFLAGS'): - env['CPPFLAGS'] = env['CXXFLAGS'] = os.environ['CXXFLAGS'].split() + env['CXXFLAGS'] = os.environ['CXXFLAGS'].split() + +if os.environ.has_key('CPPFLAGS'): + env['CPPFLAGS'] = os.environ['CPPFLAGS'].split() if os.environ.has_key('LDFLAGS'): env['LINKFLAGS'] = os.environ['LDFLAGS'].split() @@ -139,6 +143,12 @@ if os.environ.has_key('LDFLAGS'): if os.environ.has_key('CFLAGS'): env['CFLAGS'] = os.environ['CFLAGS'].split() +if os.environ.has_key('CPPPATH'): + env['CPPPATH'] = os.environ['CPPPATH'].split() + +if os.environ.has_key('LIBPATH'): + env['LIBPATH'] = os.environ['LIBPATH'].split() + env['CPPDEFINES'] = [] # Initialize as a list so Append doesn't concat strings env.SConsignFile('build/sconf/.sconsign') @@ -256,21 +266,20 @@ if not 'install' in COMMAND_LINE_TARGETS if not conf.CheckHeader('iconv.h'): Exit(1) - elif conf.CheckLibWithHeader('iconv', 'iconv.h', 'c', 'iconv(0, (const char **)0, 0, (char**)0, 0);'): - conf.env.Append(CPPDEFINES = ('ICONV_CONST', 'const')) if conf.CheckHeader(['sys/types.h', 'sys/socket.h', 'ifaddrs.h', 'net/if.h']): conf.env.Append(CPPDEFINES = 'HAVE_IFADDRS_H') # TODO: Implement a plugin system so libnotify doesn't have compile-time dependencies - if not conf.CheckPKG('libnotify >= 0.4.1'): - print '\tlibnotify >= 0.4.1 not found, disabling notifications.' - print '\tNote: You might have the lib but not the headers' - else: - conf.env.Append(CPPDEFINES = 'HAVE_LIBNOTIFY') - conf.env.ParseConfig('pkg-config --libs libnotify') - if conf.CheckPKG('libnotify >= 0.7'): - conf.env.Append(CPPDEFINES = 'HAVE_LIBNOTIFY_0_7') + if conf.env.get('libnotify'): + if not conf.CheckPKG('libnotify >= 0.4.1'): + print '\tlibnotify >= 0.4.1 not found, disabling notifications.' + print '\tNote: You might have the lib but not the headers' + else: + conf.env.Append(CPPDEFINES = 'HAVE_LIBNOTIFY') + conf.env.ParseConfig('pkg-config --libs libnotify') + if conf.CheckPKG('libnotify >= 0.7'): + conf.env.Append(CPPDEFINES = 'HAVE_LIBNOTIFY_0_7') conf.CheckBZRRevision()