247 |
|
|
248 |
if env['omp_optim'] == "" and env['omp_debug'] == "": env["useopenmp"] = 0 |
if env['omp_optim'] == "" and env['omp_debug'] == "": env["useopenmp"] = 0 |
249 |
|
|
250 |
|
# Windows doesn't use LD_LIBRARY_PATH but PATH instead |
251 |
|
if IS_WINDOWS_PLATFORM: |
252 |
|
LD_LIBRARY_PATH_KEY='PATH' |
253 |
|
env['ENV']['LD_LIBRARY_PATH']='' |
254 |
|
else: |
255 |
|
LD_LIBRARY_PATH_KEY='LD_LIBRARY_PATH' |
256 |
############ Copy environment variables into scons env ######### |
############ Copy environment variables into scons env ######### |
257 |
|
|
258 |
try: env['ENV']['OMP_NUM_THREADS'] = os.environ['OMP_NUM_THREADS'] |
try: env['ENV']['OMP_NUM_THREADS'] = os.environ['OMP_NUM_THREADS'] |
282 |
try: env['ENV']['CPLUS_INCLUDE_PATH'] = os.environ['CPLUS_INCLUDE_PATH'] |
try: env['ENV']['CPLUS_INCLUDE_PATH'] = os.environ['CPLUS_INCLUDE_PATH'] |
283 |
except KeyError: pass |
except KeyError: pass |
284 |
|
|
285 |
try: env['ENV']['LD_LIBRARY_PATH'] = os.environ['LD_LIBRARY_PATH'] |
try: PrependENVPath['ENV'][LD_LIBRARY_PATH_KEY] = os.environ['LD_LIBRARY_PATH'] |
286 |
except KeyError: pass |
except KeyError: pass |
287 |
|
|
288 |
try: env['ENV']['LIBRARY_PATH'] = os.environ['LIBRARY_PATH'] |
try: env['ENV']['LIBRARY_PATH'] = os.environ['LIBRARY_PATH'] |
298 |
except KeyError: pass |
except KeyError: pass |
299 |
|
|
300 |
# Configure for test suite |
# Configure for test suite |
|
env.PrependENVPath('PYTHONPATH', prefix) |
|
|
env.PrependENVPath('LD_LIBRARY_PATH', env['libinstall']) |
|
301 |
|
|
302 |
|
|
303 |
|
env.PrependENVPath(LD_LIBRARY_PATH_KEY, env['libinstall']) |
304 |
|
env.PrependENVPath('PYTHONPATH', prefix) |
305 |
env['ENV']['ESCRIPT_ROOT'] = prefix |
env['ENV']['ESCRIPT_ROOT'] = prefix |
306 |
|
|
307 |
############ Set up paths for Configure() ###################### |
############ Set up paths for Configure() ###################### |
379 |
conf.env.AppendUnique(LIBPATH = [env['python_lib_path']]) |
conf.env.AppendUnique(LIBPATH = [env['python_lib_path']]) |
380 |
conf.env.AppendUnique(LIBS = [env['python_libs']]) |
conf.env.AppendUnique(LIBS = [env['python_libs']]) |
381 |
|
|
|
conf.env.PrependENVPath('LD_LIBRARY_PATH', env['python_lib_path']) # The wrapper script needs to find these libs |
|
382 |
conf.env.PrependENVPath('PYTHONPATH', prefix) |
conf.env.PrependENVPath('PYTHONPATH', prefix) |
383 |
conf.env.PrependENVPath('LD_LIBRARY_PATH', env['libinstall']) |
conf.env.PrependENVPath(LD_LIBRARY_PATH_KEY, env['python_lib_path']) # The wrapper script needs to find these libs |
384 |
|
conf.env.PrependENVPath(LD_LIBRARY_PATH_KEY, env['libinstall']) |
385 |
|
|
386 |
if not conf.CheckCHeader('Python.h'): |
if not conf.CheckCHeader('Python.h'): |
387 |
print "Cannot find python include files (tried 'Python.h' in directory %s)" % (env['python_path']) |
print "Cannot find python include files (tried 'Python.h' in directory %s)" % (env['python_path']) |
404 |
conf.env.AppendUnique(LIBPATH = [env['boost_lib_path']]) |
conf.env.AppendUnique(LIBPATH = [env['boost_lib_path']]) |
405 |
conf.env.AppendUnique(LIBS = [env['boost_libs']]) |
conf.env.AppendUnique(LIBS = [env['boost_libs']]) |
406 |
|
|
407 |
conf.env.PrependENVPath('LD_LIBRARY_PATH', env['boost_lib_path']) # The wrapper script needs to find these libs |
conf.env.PrependENVPath(LD_LIBRARY_PATH_KEY, env['boost_lib_path']) # The wrapper script needs to find these libs |
408 |
#ensure that our path entries remain at the front |
#ensure that our path entries remain at the front |
409 |
conf.env.PrependENVPath('PYTHONPATH', prefix) |
conf.env.PrependENVPath('PYTHONPATH', prefix) |
410 |
conf.env.PrependENVPath('LD_LIBRARY_PATH', env['libinstall']) |
conf.env.PrependENVPath(LD_LIBRARY_PATH_KEY, env['libinstall']) |
411 |
|
|
412 |
if not conf.CheckCXXHeader('boost/python.hpp'): |
if not conf.CheckCXXHeader('boost/python.hpp'): |
413 |
print "Cannot find boost include files (tried boost/python.hpp in directory %s)" % (env['boost_path']) |
print "Cannot find boost include files (tried boost/python.hpp in directory %s)" % (env['boost_path']) |
441 |
conf.env.AppendUnique(CPPPATH = [env['netCDF_path']]) |
conf.env.AppendUnique(CPPPATH = [env['netCDF_path']]) |
442 |
conf.env.AppendUnique(LIBPATH = [env['netCDF_lib_path']]) |
conf.env.AppendUnique(LIBPATH = [env['netCDF_lib_path']]) |
443 |
conf.env.AppendUnique(LIBS = [env['netCDF_libs']]) |
conf.env.AppendUnique(LIBS = [env['netCDF_libs']]) |
444 |
conf.env.PrependENVPath('LD_LIBRARY_PATH', env['netCDF_lib_path']) # The wrapper script needs to find these libs |
conf.env.PrependENVPath(LD_LIBRARY_PATH_KEY, env['netCDF_lib_path']) # The wrapper script needs to find these libs |
445 |
#ensure that our path entries remain at the front |
#ensure that our path entries remain at the front |
446 |
conf.env.PrependENVPath('PYTHONPATH', prefix) |
conf.env.PrependENVPath('PYTHONPATH', prefix) |
447 |
conf.env.PrependENVPath('LD_LIBRARY_PATH', env['libinstall']) |
conf.env.PrependENVPath(LD_LIBRARY_PATH_KEY, env['libinstall']) |
448 |
|
|
449 |
if env['usenetcdf'] and not conf.CheckCHeader('netcdf.h'): env['usenetcdf'] = 0 |
if env['usenetcdf'] and not conf.CheckCHeader('netcdf.h'): env['usenetcdf'] = 0 |
450 |
if env['usenetcdf'] and not conf.CheckFunc('nc_open'): env['usenetcdf'] = 0 |
if env['usenetcdf'] and not conf.CheckFunc('nc_open'): env['usenetcdf'] = 0 |
465 |
conf.env.AppendUnique(CPPPATH = [env['papi_path']]) |
conf.env.AppendUnique(CPPPATH = [env['papi_path']]) |
466 |
conf.env.AppendUnique(LIBPATH = [env['papi_lib_path']]) |
conf.env.AppendUnique(LIBPATH = [env['papi_lib_path']]) |
467 |
conf.env.AppendUnique(LIBS = [env['papi_libs']]) |
conf.env.AppendUnique(LIBS = [env['papi_libs']]) |
468 |
conf.env.PrependENVPath('LD_LIBRARY_PATH', env['papi_lib_path']) # The wrapper script needs to find these libs |
conf.env.PrependENVPath(LD_LIBRARY_PATH_KEY, env['papi_lib_path']) # The wrapper script needs to find these libs |
469 |
#ensure that our path entries remain at the front |
#ensure that our path entries remain at the front |
470 |
conf.env.PrependENVPath('PYTHONPATH', prefix) |
conf.env.PrependENVPath('PYTHONPATH', prefix) |
471 |
conf.env.PrependENVPath('LD_LIBRARY_PATH', env['libinstall']) |
conf.env.PrependENVPath(LD_LIBRARY_PATH_KEY, env['libinstall']) |
472 |
|
|
473 |
if env['usepapi'] and not conf.CheckCHeader('papi.h'): env['usepapi'] = 0 |
if env['usepapi'] and not conf.CheckCHeader('papi.h'): env['usepapi'] = 0 |
474 |
if env['usepapi'] and not conf.CheckFunc('PAPI_start_counters'): env['usepapi'] = 0 |
if env['usepapi'] and not conf.CheckFunc('PAPI_start_counters'): env['usepapi'] = 0 |
489 |
conf.env.AppendUnique(CPPPATH = [env['mkl_path']]) |
conf.env.AppendUnique(CPPPATH = [env['mkl_path']]) |
490 |
conf.env.AppendUnique(LIBPATH = [env['mkl_lib_path']]) |
conf.env.AppendUnique(LIBPATH = [env['mkl_lib_path']]) |
491 |
conf.env.AppendUnique(LIBS = [env['mkl_libs']]) |
conf.env.AppendUnique(LIBS = [env['mkl_libs']]) |
492 |
conf.env.PrependENVPath('LD_LIBRARY_PATH', env['mkl_lib_path']) # The wrapper script needs to find these libs |
conf.env.PrependENVPath(LD_LIBRARY_PATH_KEY, env['mkl_lib_path']) # The wrapper script needs to find these libs |
493 |
#ensure that our path entries remain at the front |
#ensure that our path entries remain at the front |
494 |
conf.env.PrependENVPath('PYTHONPATH', prefix) |
conf.env.PrependENVPath('PYTHONPATH', prefix) |
495 |
conf.env.PrependENVPath('LD_LIBRARY_PATH', env['libinstall']) |
conf.env.PrependENVPath(LD_LIBRARY_PATH_KEY, env['libinstall']) |
496 |
|
|
497 |
if env['usemkl'] and not conf.CheckCHeader('mkl_solver.h'): env['usemkl'] = 0 |
if env['usemkl'] and not conf.CheckCHeader('mkl_solver.h'): env['usemkl'] = 0 |
498 |
if env['usemkl'] and not conf.CheckFunc('pardiso'): env['usemkl'] = 0 |
if env['usemkl'] and not conf.CheckFunc('pardiso'): env['usemkl'] = 0 |
520 |
conf.env.AppendUnique(CPPPATH = [env['blas_path']]) |
conf.env.AppendUnique(CPPPATH = [env['blas_path']]) |
521 |
conf.env.AppendUnique(LIBPATH = [env['blas_lib_path']]) |
conf.env.AppendUnique(LIBPATH = [env['blas_lib_path']]) |
522 |
conf.env.AppendUnique(LIBS = [env['blas_libs']]) |
conf.env.AppendUnique(LIBS = [env['blas_libs']]) |
523 |
conf.env.PrependENVPath('LD_LIBRARY_PATH', env['umf_lib_path']) # The wrapper script needs to find these libs |
conf.env.PrependENVPath(LD_LIBRARY_PATH_KEY, env['umf_lib_path']) # The wrapper script needs to find these libs |
524 |
conf.env.PrependENVPath('LD_LIBRARY_PATH', env['amd_lib_path']) # The wrapper script needs to find these libs |
conf.env.PrependENVPath(LD_LIBRARY_PATH_KEY, env['amd_lib_path']) # The wrapper script needs to find these libs |
525 |
conf.env.PrependENVPath('LD_LIBRARY_PATH', env['blas_lib_path']) # The wrapper script needs to find these libs |
conf.env.PrependENVPath(LD_LIBRARY_PATH_KEY, env['blas_lib_path']) # The wrapper script needs to find these libs |
526 |
#ensure that our path entries remain at the front |
#ensure that our path entries remain at the front |
527 |
conf.env.PrependENVPath('PYTHONPATH', prefix) |
conf.env.PrependENVPath('PYTHONPATH', prefix) |
528 |
conf.env.PrependENVPath('LD_LIBRARY_PATH', env['libinstall']) |
conf.env.PrependENVPath(LD_LIBRARY_PATH_KEY, env['libinstall']) |
529 |
|
|
530 |
if env['useumfpack'] and not conf.CheckFunc('umfpack_di_symbolic'): env['useumfpack'] = 0 |
if env['useumfpack'] and not conf.CheckFunc('umfpack_di_symbolic'): env['useumfpack'] = 0 |
531 |
if env['useumfpack'] and not conf.CheckCHeader('umfpack.h'): env['useumfpack'] = 0 |
if env['useumfpack'] and not conf.CheckCHeader('umfpack.h'): env['useumfpack'] = 0 |
601 |
conf.env.AppendUnique(CPPPATH = [env_mpi['mpi_path']]) |
conf.env.AppendUnique(CPPPATH = [env_mpi['mpi_path']]) |
602 |
conf.env.AppendUnique(LIBPATH = [env_mpi['mpi_lib_path']]) |
conf.env.AppendUnique(LIBPATH = [env_mpi['mpi_lib_path']]) |
603 |
conf.env.AppendUnique(LIBS = [env_mpi['mpi_libs']]) |
conf.env.AppendUnique(LIBS = [env_mpi['mpi_libs']]) |
604 |
conf.env.PrependENVPath('LD_LIBRARY_PATH', env['mpi_lib_path']) # The wrapper script needs to find these libs |
conf.env.PrependENVPath(LD_LIBRARY_PATH_KEY, env['mpi_lib_path']) # The wrapper script needs to find these libs |
605 |
#ensure that our path entries remain at the front |
#ensure that our path entries remain at the front |
606 |
conf.env.PrependENVPath('PYTHONPATH', prefix) |
conf.env.PrependENVPath('PYTHONPATH', prefix) |
607 |
conf.env.PrependENVPath('LD_LIBRARY_PATH', env['libinstall']) |
conf.env.PrependENVPath(LD_LIBRARY_PATH_KEY, env['libinstall']) |
608 |
|
|
609 |
if env_mpi['usempi'] and not conf.CheckCHeader('mpi.h'): env_mpi['usempi'] = 0 |
if env_mpi['usempi'] and not conf.CheckCHeader('mpi.h'): env_mpi['usempi'] = 0 |
610 |
# if env_mpi['usempi'] and not conf.CheckFunc('MPI_Init'): env_mpi['usempi'] = 0 |
# if env_mpi['usempi'] and not conf.CheckFunc('MPI_Init'): env_mpi['usempi'] = 0 |
630 |
conf.env.AppendUnique(CPPPATH = [env_mpi['parmetis_path']]) |
conf.env.AppendUnique(CPPPATH = [env_mpi['parmetis_path']]) |
631 |
conf.env.AppendUnique(LIBPATH = [env_mpi['parmetis_lib_path']]) |
conf.env.AppendUnique(LIBPATH = [env_mpi['parmetis_lib_path']]) |
632 |
conf.env.AppendUnique(LIBS = [env_mpi['parmetis_libs']]) |
conf.env.AppendUnique(LIBS = [env_mpi['parmetis_libs']]) |
633 |
conf.env.PrependENVPath('LD_LIBRARY_PATH', env['parmetis_lib_path']) # The wrapper script needs to find these libs |
conf.env.PrependENVPath(LD_LIBRARY_PATH_KEY, env['parmetis_lib_path']) # The wrapper script needs to find these libs |
634 |
#ensure that our path entries remain at the front |
#ensure that our path entries remain at the front |
635 |
conf.env.PrependENVPath('PYTHONPATH', prefix) |
conf.env.PrependENVPath('PYTHONPATH', prefix) |
636 |
conf.env.PrependENVPath('LD_LIBRARY_PATH', env['libinstall']) |
conf.env.PrependENVPath(LD_LIBRARY_PATH_KEY, env['libinstall']) |
637 |
|
|
638 |
if env_mpi['useparmetis'] and not conf.CheckCHeader('parmetis.h'): env_mpi['useparmetis'] = 0 |
if env_mpi['useparmetis'] and not conf.CheckCHeader('parmetis.h'): env_mpi['useparmetis'] = 0 |
639 |
if env_mpi['useparmetis'] and not conf.CheckFunc('ParMETIS_V3_PartGeomKway'): env_mpi['useparmetis'] = 0 |
if env_mpi['useparmetis'] and not conf.CheckFunc('ParMETIS_V3_PartGeomKway'): env_mpi['useparmetis'] = 0 |