Salome HOME
spns #24419
[tools/sat_salome.git] / products / env_scripts / openmpi.py
1 #!/usr/bin/env python
2 #-*- coding:utf-8 -*-
3
4 import os.path
5
6 def set_env(env, prereq_dir, version):
7     env.set('OPENMPIDIR', prereq_dir)
8     env.set('OPAL_PREFIX', prereq_dir) # be able to move openmpi install (packages)
9     env.set('MPI_ROOT_DIR', prereq_dir)  # update for cmake  
10     env.set('MPI_ROOT', prereq_dir)
11     env.set('MPI_C_FOUND', os.path.join(prereq_dir,'lib','libmpi.so'))
12     root = env.get('OPENMPIDIR')
13     
14     env.prepend('PATH', os.path.join(root, 'bin'))
15     env.prepend('PATH', os.path.join(root, 'include'))
16     env.prepend('LD_LIBRARY_PATH', os.path.join(root, 'lib'))
17     env.prepend('C_INCLUDE_PATH', os.path.join(root, 'include'))  # needed for parallel h5py
18
19 def set_nativ_env(env):
20     prereq_dir='/usr'
21     try:
22         import distro
23         if any(distribution in distro.name().lower() for distribution in ["centos", "fedora"]) :
24             prereq_dir='/usr/lib64/openmpi'
25     except:
26         import platform
27         if any(distribution in platform.linux_distribution()[0].lower() for distribution in ["centos", "fedora"]) :
28             prereq_dir='/usr/lib64/openmpi'
29     env.set('MPI_ROOT_DIR', prereq_dir)
30     env.set('OPENMPIDIR', prereq_dir)
31     env.set('MPI_ROOT', prereq_dir)
32     env.set('MPI_C_FOUND', os.path.join(prereq_dir,'lib','libmpi.so'))
33     env.prepend('PATH', os.path.join(prereq_dir, 'bin'))
34     env.prepend('LD_LIBRARY_PATH', os.path.join(prereq_dir,'lib'))