X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=cpp%2FSConscript;h=fd03b3d2fb71eaa613fd0f703c86191467199527;hb=1c9e73e7a16394454dc876775cb2eade5f6a5a8d;hp=22bb17e5353aa83f1048fea81782949e377b4b3d;hpb=1bd3f8056f89c3e7c5163326ce2145de97acb829;p=zxing.git diff --git a/cpp/SConscript b/cpp/SConscript index 22bb17e5..fd03b3d2 100644 --- a/cpp/SConscript +++ b/cpp/SConscript @@ -1,42 +1,50 @@ -Decider('MD5') - -env = Environment() - -debug = True -compile_options = {} -flags = [] -if debug: - #compile_options['CPPDEFINES'] = "-DDEBUG" - flags.append("-O0 -g3 -Wall") -compile_options['CXXFLAGS'] = ' '.join(flags) - - -def all_files(dir, ext='.cpp', level=5): - files = [] - for i in range(level): - files += Glob(dir + ('/*' * i) + ext) - return files - - - -magick_include = ['/usr/include/ImageMagick/'] -magick_libs = ['Magick++', 'MagickWand', 'MagickCore'] - -cppunit_libs = ['cppunit'] - -zxing_files = all_files('core/src') - -zxing_include = ['core/src'] -zxing_libs = env.Library('zxing', source=zxing_files, CPPPATH=zxing_include, **compile_options) - -app_files = all_files('magick/src') -app_executable = env.Program('zxing', app_files, CPPPATH=magick_include + zxing_include, LIBS=magick_libs + zxing_libs, **compile_options) - -test_files = all_files('core/tests/src') -test_executable = env.Program('testrunner', test_files, CPPPATH=zxing_include, LIBS=zxing_libs + cppunit_libs, **compile_options) - - -Alias('lib', zxing_libs) -Alias('tests', test_executable) -Alias('zxing', app_executable) - +Decider('MD5') + +vars = Variables() +vars.Add(BoolVariable('DEBUG', 'Set to disable optimizations', 1)) +vars.Add(BoolVariable('PIC', 'Set to 1 for to always generate PIC code', 0)) +env = Environment(variables = vars) + +debug = env['DEBUG'] +compile_options = {} +flags = [] +if debug: + #compile_options['CPPDEFINES'] = "-DDEBUG" + flags.append("-O0 -g3 -ggdb -Wall") +else: + flags.append("-O -g3 -Wall") +if env['PIC']: + flags.append("-fPIC") + +compile_options['CXXFLAGS'] = ' '.join(flags) + + +def all_files(dir, ext='.cpp', level=5): + files = [] + for i in range(1, level): + files += Glob(dir + ('/*' * i) + ext) + return files + + + +magick_include = ['/usr/include/ImageMagick/'] +magick_libs = ['Magick++', 'MagickWand', 'MagickCore'] + +cppunit_libs = ['cppunit'] + +zxing_files = all_files('core/src') + +zxing_include = ['core/src'] +zxing_libs = env.Library('zxing', source=zxing_files, CPPPATH=zxing_include, **compile_options) + +app_files = ['magick/src/MagickBitmapSource.cpp', 'magick/src/main.cpp'] +app_executable = env.Program('zxing', app_files, CPPPATH=magick_include + zxing_include, LIBS=magick_libs + zxing_libs, **compile_options) + +test_files = all_files('core/tests/src') +test_executable = env.Program('testrunner', test_files, CPPPATH=zxing_include, LIBS=zxing_libs + cppunit_libs, **compile_options) + + +Alias('lib', zxing_libs) +Alias('tests', test_executable) +Alias('zxing', app_executable) +