]> SALOME platform Git repositories - tools/sat.git/blob - data/env_scripts/ParaView.py
Salome HOME
Rename table to board for jobs publishing
[tools/sat.git] / data / env_scripts / ParaView.py
1 #!/usr/bin/env python
2 #-*- coding:utf-8 -*-
3
4 import os.path
5 import platform
6
7 def set_env(env, prereq_dir, version):
8     # keep only the first two version numbers
9     ver = '.'.join(version.replace('-', '.').split('.')[:2])
10
11     # BUG WITH 5.0_beta
12     if ver == '5.0_beta':
13         ver = '5.0'
14
15     env.set('PVHOME', prereq_dir)
16     env.set('VTKHOME', prereq_dir)  
17
18     env.set('PVVERSION', ver)
19     # [CMake GUI] Nouveau nom pour PVHOME = PARAVIEW_ROOT_DIR 22/03/2013
20     # [CMake GUI] Nouveau nom pour PVVERSION = PARAVIEW_VERSION 22/03/2013
21     env.set('PARAVIEW_ROOT_DIR', prereq_dir)
22
23     env.set('PARAVIEW_VERSION', ver)
24     version = env.get('PVVERSION') # = ${PVVERSION}
25
26     set_paraview_env(env, version)
27     set_vtk_env(env, version)
28
29 def set_nativ_env(env):
30     if os.getenv("PVHOME") is None:
31         raise Exception("PVHOME is not set")
32     
33     if os.getenv("PVVERSION") is None:
34         raise Exception("PVVERSION is not set")
35
36     version = env.get("PVVERSION")
37     set_paraview_env(env, version)
38
39 def set_paraview_env(env, version):
40     root = env.get('PVHOME')
41
42     env.set('ParaView_DIR', os.path.join(root, 'lib', 'paraview-%s' % version))
43     
44     env.prepend('PATH', os.path.join(root, 'bin'))
45     env.prepend('PATH', os.path.join(root, 'include', 'paraview-' + version))
46     
47     env.prepend('LD_LIBRARY_PATH', os.path.join(root, 'lib', 'paraview-' + version))
48     
49     paralib = os.path.join(root, 'lib', 'paraview-' + version)
50     env.prepend('PYTHONPATH', paralib)
51     env.set('PV_PLUGIN_PATH', paralib)
52     env.prepend('PYTHONPATH', os.path.join(paralib, 'site-packages'))
53     env.prepend('PYTHONPATH', os.path.join(paralib, 'site-packages', 'vtk'))
54
55
56 def set_vtk_env(env, version):
57     root = env.get('VTKHOME')
58     pyver = 'python' + env.get('PYTHON_VERSION')
59
60     env.prepend('PATH', os.path.join(root, 'bin'))
61     env.prepend('LD_LIBRARY_PATH', os.path.join(root, 'lib'))
62     env.prepend('PYTHONPATH', os.path.join(root, 'lib', pyver, 'site-packages'))
63     #http://computer-programming-forum.com/57-tcl/1dfddc136afccb94.htm
64     #Tcl treats the contents of that variable as a list. Be happy, for you can now use drive letters on windows.
65     env.prepend('TCLLIBPATH', os.path.join(root, 'lib', 'vtk-5.0', 'tcl'), sep=" ")
66
67     env.set('VTK_ROOT_DIR', root)
68     if platform.system() == "Windows" :
69         env.set('VTK_DIR', os.path.join(root, 'lib', 'cmake', 'paraview-' + version))
70         env.prepend('VTK_ROOT_DIR', os.path.join(root, 'lib', 'cmake', 'paraview-' + version))
71     else :
72         env.set('VTK_DIR', os.path.join(root, 'lib', 'paraview-' + version))
73         env.prepend('VTK_ROOT_DIR', os.path.join(root, 'lib', 'paraview-' + version))
74
75     # 20 03 2013 compilation de PARAVIS basé sur paraview 3.98.1 et VTK 6
76     if version == '3.98':
77         cmake_dir = os.path.join(root, 'lib', 'cmake', 'paraview-' + version)
78         env.set('VTK_DIR', cmake_dir)
79     # fin
80