Salome HOME
spns #26907: use distro.name to retrieve platform
[tools/sat_salome.git] / products / env_scripts / qt.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     env.set('QTDIR', prereq_dir)
9     
10     version_table = version.split('.') 
11     if version_table[0] == '5':
12         env.set('QT5_ROOT_DIR', prereq_dir)
13         env.prepend('QT_PLUGIN_PATH', os.path.join(prereq_dir, 'plugins'))
14         env.prepend('QT_QPA_PLATFORM_PLUGIN_PATH', os.path.join(prereq_dir, 'plugins'))
15     else:
16         env.set('QT4_ROOT_DIR', prereq_dir)
17
18     env.prepend('PATH', os.path.join(prereq_dir, 'bin'))
19
20     if platform.system() == "Windows" :
21         env.prepend('LIB', os.path.join(prereq_dir, 'lib'))
22     else :
23         env.prepend('LD_LIBRARY_PATH', os.path.join(prereq_dir, 'lib'))
24
25 def set_nativ_env(env):
26
27     # Adapt Qt libraries dir according to the current distribution (generic -> Ubuntu)
28     import distro
29     if any(distribution in distro.name().lower() for distribution in ["debian", "generic", "ubuntu"]) :
30         qt_lib_dir='/usr/lib/x86_64-linux-gnu'
31     else :
32         qt_lib_dir='/usr/lib64'
33
34     env.set('QT5_ROOT_DIR', '/usr')
35     env.set('Qt5Core_DIR', os.path.join(qt_lib_dir, 'cmake/Qt5Core'))
36     env.set('Qt5Gui_DIR', os.path.join(qt_lib_dir, 'cmake/Qt5Gui'))
37     env.set('Qt5Widgets_DIR', os.path.join(qt_lib_dir, 'cmake/Qt5Widgets'))
38     env.set('Qt5Network_DIR', os.path.join(qt_lib_dir, 'cmake/Qt5Network'))
39     env.set('Qt5Xml_DIR', os.path.join(qt_lib_dir, 'cmake/Qt5Xml'))
40     env.set('Qt5OpenGL_DIR', os.path.join(qt_lib_dir, 'cmake/Qt5OpenGL'))
41     env.set('Qt5PrintSupport_DIR', os.path.join(qt_lib_dir, 'cmake/Qt5PrintSupport'))
42     env.set('Qt5Help_DIR', os.path.join(qt_lib_dir, 'cmake/Qt5Help'))
43     env.set('Qt5Test_DIR', os.path.join(qt_lib_dir, 'cmake/Qt5Test'))
44     env.set('Qt5X11Extras_DIR', os.path.join(qt_lib_dir, 'cmake/Qt5X11Extras'))