]> git.pld-linux.org Git - packages/double-conversion.git/blob - SConstruct
install shared lib, requires scons 2.3.0
[packages/double-conversion.git] / SConstruct
1 # vim:ft=python
2 import os
3
4 double_conversion_sources = ['src/' + x for x in SConscript('src/SConscript')]
5 double_conversion_test_sources = ['test/cctest/' + x for x in SConscript('test/cctest/SConscript')]
6 test = double_conversion_sources + double_conversion_test_sources
7 print(test)
8
9 DESTDIR = ARGUMENTS.get('DESTDIR', '')
10 prefix = ARGUMENTS.get('prefix', '/usr/local')
11 lib = ARGUMENTS.get('libsuffix', 'lib')
12 libdir = os.path.join(DESTDIR + prefix, lib)
13
14 env = Environment(CPPPATH='#/src', LIBS=['m', 'stdc++'])
15 debug = ARGUMENTS.get('debug', 0)
16 optimize = ARGUMENTS.get('optimize', 0)
17 env.Replace(CXX = ARGUMENTS.get('CXX', 'g++'))
18
19 # for shared lib, requires scons 2.3.0
20 env['SHLIBVERSION'] = '0.0.0'
21
22 CCFLAGS = []
23 if int(debug):
24   CCFLAGS.append(ARGUMENTS.get('CXXFLAGS', '-g -Wall -Werror'))
25 if int(optimize):
26   CCFLAGS.append(ARGUMENTS.get('CXXFLAGS', '-O3'))
27
28 env.Append(CCFLAGS = " ".join(CCFLAGS))
29
30 print double_conversion_sources
31 print double_conversion_test_sources
32 double_conversion_shared_objects = [
33     env.SharedObject(src) for src in double_conversion_sources]
34 double_conversion_static_objects = [
35     env.StaticObject(src) for src in double_conversion_sources]
36
37 library_name = 'double_conversion'
38
39 static_lib = env.StaticLibrary(library_name, double_conversion_static_objects)
40 static_lib_pic = env.StaticLibrary(library_name + '_pic', double_conversion_shared_objects)
41 shared_lib = env.SharedLibrary(library_name, double_conversion_shared_objects)
42
43 env.Program('run_tests', double_conversion_test_sources, LIBS=[static_lib])
44
45 env.InstallVersionedLib(libdir, shared_lib)
46 env.Install(libdir, static_lib)
47 env.Install(libdir, static_lib_pic)
48
49 env.Alias('install', libdir)
This page took 0.08786 seconds and 4 git commands to generate.