1 |
Import('env') |
2 |
|
3 |
if env.get('WITH_IDA'): |
4 |
|
5 |
solver_env = env.Copy() |
6 |
|
7 |
if env.get('WITH_MMIO'): |
8 |
solver_env.Append(CPPPATH=["#/mmio"]) |
9 |
|
10 |
if env.get('SUNDIALS_CPPPATH'): |
11 |
solver_env.Append(CPPPATH=[env.get('SUNDIALS_CPPPATH')]) |
12 |
|
13 |
if env.get('SUNDIALS_CPPPATH_EXTRA'): |
14 |
solver_env.AppendUnique( |
15 |
CPPPATH=env.get('SUNDIALS_CPPPATH_EXTRA') |
16 |
) |
17 |
|
18 |
solver_env.Append( |
19 |
CPPDEFINES=[ |
20 |
('SUNDIALS_VERSION_MAJOR',"$SUNDIALS_VERSION_MAJOR") |
21 |
,('SUNDIALS_VERSION_MINOR',"$SUNDIALS_VERSION_MINOR") |
22 |
,'ASC_WITH_IDA' |
23 |
] |
24 |
) |
25 |
|
26 |
solver_env.Append( |
27 |
LIBPATH=[env.get('SUNDIALS_LIBPATH'),"#"] |
28 |
, LIBS=[env.get('SUNDIALS_LIBS'),"ascend"] |
29 |
) |
30 |
|
31 |
srcs = ['ida.c','idalinear.c', 'idaanalyse.c'] |
32 |
libida = solver_env.SharedLibrary("ida",srcs) |
33 |
|
34 |
env.Depends(libida,env['libascend']) |
35 |
|
36 |
env['extfns'] += libida |
37 |
|
38 |
if env.get('CAN_INSTALL'): |
39 |
dir = Dir(env.subst("$INSTALL_ROOT$INSTALL_SOLVERS")) |
40 |
env.InstallShared(dir,libida) |
41 |
|
42 |
# vim: set syntax=python: |