| 1 |
jpye |
1528 |
Import('env') |
| 2 |
jpye |
2581 |
import platform |
| 3 |
jpye |
1528 |
|
| 4 |
jpye |
1529 |
if env.get('WITH_IPOPT'): |
| 5 |
jpye |
1787 |
solver_env = env.Clone() |
| 6 |
jpye |
1528 |
|
| 7 |
|
|
solver_env.AppendUnique(CPPPATH=[solver_env.get('IPOPT_CPPPATH')]) |
| 8 |
|
|
|
| 9 |
jpye |
1547 |
solver_env.Append( |
| 10 |
|
|
CPPDEFINES=[ |
| 11 |
|
|
'ASC_WITH_IPOPT' |
| 12 |
|
|
] |
| 13 |
mahesh |
2130 |
,CPPPATH = [solver_env.get('IPOPT_CPPPATH')] |
| 14 |
jpye |
1547 |
) |
| 15 |
jpye |
2581 |
|
| 16 |
|
|
if platform.system()=="Windows": |
| 17 |
|
|
solver_env.Append( |
| 18 |
jpye |
2715 |
CFLAGS=["-static"] |
| 19 |
jpye |
2581 |
) |
| 20 |
jpye |
3307 |
|
| 21 |
|
|
ll = env.get('IPOPT_LIBPATH') |
| 22 |
|
|
ll1 = [] |
| 23 |
|
|
for l in ll: |
| 24 |
|
|
if "/usr/lib/gcc" not in l: |
| 25 |
|
|
ll1.append(l) |
| 26 |
jpye |
1547 |
|
| 27 |
jpye |
3307 |
solver_env.Append( |
| 28 |
|
|
LIBS = ['ascend'] + solver_env.get('IPOPT_LIBS') |
| 29 |
|
|
,LIBPATH = ['#'] + ll1 |
| 30 |
|
|
) |
| 31 |
|
|
|
| 32 |
jpye |
1597 |
lib = solver_env.SharedLibrary("ipopt",["asc_ipopt.c"] |
| 33 |
|
|
,SHLIBSUFFIX = env['EXTLIB_SUFFIX'] |
| 34 |
|
|
,SHLIBPREFIX = env['EXTLIB_PREFIX'] |
| 35 |
jpye |
1529 |
) |
| 36 |
jpye |
1528 |
|
| 37 |
jpye |
1597 |
env.Depends(lib,env['libascend']) |
| 38 |
jpye |
1528 |
|
| 39 |
jpye |
1597 |
env['extfns'] += [lib] |
| 40 |
jpye |
1528 |
|
| 41 |
jpye |
1636 |
if env.get('CAN_INSTALL'): |
| 42 |
|
|
dir = Dir(env.subst("$INSTALL_ROOT$INSTALL_SOLVERS")) |
| 43 |
|
|
env.InstallShared(dir,lib) |
| 44 |
|
|
|
| 45 |
jpye |
1528 |
# vim: set syntax=python: |