]>
Commit | Line | Data |
---|---|---|
a6527f0c ER |
1 | import os |
2 | ||
002c3a9e ER |
3 | double_conversion_sources = ['src/' + x for x in SConscript('src/SConscript')] |
4 | double_conversion_test_sources = ['test/cctest/' + x for x in SConscript('test/cctest/SConscript')] | |
5 | test = double_conversion_sources + double_conversion_test_sources | |
6 | print(test) | |
a6527f0c ER |
7 | |
8 | DESTDIR = ARGUMENTS.get('DESTDIR', '') | |
9 | prefix = ARGUMENTS.get('prefix', '/usr/local') | |
10 | lib = ARGUMENTS.get('libsuffix', 'lib') | |
11 | libdir = os.path.join(DESTDIR + prefix, lib) | |
12 | ||
002c3a9e ER |
13 | env = Environment(CPPPATH='#/src') |
14 | debug = ARGUMENTS.get('debug', 0) | |
15 | optimize = ARGUMENTS.get('optimize', 0) | |
3a886c7c ER |
16 | env.Replace(CXX = ARGUMENTS.get('CXX', 'g++')) |
17 | ||
a6527f0c | 18 | CCFLAGS = ['-fPIC'] |
002c3a9e | 19 | if int(debug): |
a6527f0c | 20 | CCFLAGS.append(ARGUMENTS.get('CXXFLAGS', '-g -Wall -Werror')) |
002c3a9e | 21 | if int(optimize): |
a6527f0c ER |
22 | CCFLAGS.append(ARGUMENTS.get('CXXFLAGS', '-O3')) |
23 | ||
24 | env.Append(CCFLAGS = " ".join(CCFLAGS)) | |
25 | ||
002c3a9e ER |
26 | print double_conversion_sources |
27 | print double_conversion_test_sources | |
28 | double_conversion_shared_objects = [ | |
29 | env.SharedObject(src) for src in double_conversion_sources] | |
30 | double_conversion_static_objects = [ | |
31 | env.StaticObject(src) for src in double_conversion_sources] | |
a6527f0c | 32 | |
002c3a9e | 33 | library_name = 'double_conversion' |
a6527f0c | 34 | |
002c3a9e | 35 | static_lib = env.StaticLibrary(library_name, double_conversion_static_objects) |
a6527f0c ER |
36 | static_lib_pic = env.StaticLibrary(library_name + '_pic', double_conversion_shared_objects) |
37 | shared_lib = env.SharedLibrary(library_name, double_conversion_sources) | |
38 | ||
002c3a9e | 39 | env.Program('run_tests', double_conversion_test_sources, LIBS=[static_lib]) |
a6527f0c ER |
40 | |
41 | env.Install(libdir, shared_lib) | |
42 | env.Install(libdir, static_lib) | |
43 | env.Install(libdir, static_lib_pic) | |
44 | ||
45 | env.Alias('install', libdir) |