1 |
jgs |
181 |
Import('*') |
2 |
|
|
|
3 |
robwdcock |
623 |
local_env=env.Copy() |
4 |
jgs |
181 |
|
5 |
robwdcock |
623 |
src_dir = local_env.Dir('.').srcnode().abspath |
6 |
jgs |
277 |
|
7 |
robwdcock |
623 |
import os |
8 |
|
|
filenames = os.listdir(src_dir) |
9 |
|
|
sources = [x for x in filenames if os.path.splitext(x)[1] in ['.cpp', '.c']] |
10 |
|
|
headers = [x for x in filenames if os.path.splitext(x)[1] in ['.h']] |
11 |
|
|
# Filter out sources that should not be in the list automatically |
12 |
jgs |
181 |
|
13 |
robwdcock |
623 |
lib_name = 'escriptcpp' |
14 |
jgs |
277 |
|
15 |
robwdcock |
623 |
local_env.Append(LIBS = [boost_lib, 'esysUtils', ]) |
16 |
jgs |
277 |
|
17 |
robwdcock |
623 |
lib = local_env.SharedLibrary(lib_name, sources) |
18 |
jgs |
190 |
|
19 |
robwdcock |
623 |
include_path = Dir(lib_name, incinstall) |
20 |
jgs |
481 |
|
21 |
robwdcock |
623 |
local_env.Install(include_path, headers ) |
22 |
|
|
local_env.Install(libinstall, lib) |
23 |
jgs |
181 |
|
24 |
robwdcock |
639 |
# Call the unit tests SConscript |
25 |
|
|
# export the lib target since tests will depend on it |
26 |
|
|
# the lib target is a list of file nodes (why? win32 produces more than one output file: .lib, .dll, .pdb) |
27 |
|
|
# FIXME: This list handling produces the desired result but can this be done directly with scons File nodes? |
28 |
jgs |
277 |
|
29 |
robwdcock |
639 |
dep_lib = [libinstall+'/'+str(x) for x in lib] |
30 |
|
|
Export('dep_lib') |
31 |
jgs |
277 |
|
32 |
robwdcock |
639 |
local_env.SConscript(dirs = ['#/escript/test'], build_dir='#/build/$PLATFORM/escript/test', duplicate=0) |