Salome HOME
Merge branch 'master' into agy/NewPV1_For_850
[modules/gui.git] / src / GUI_PY / CMakeLists.txt
index e0d3e5e4dd76237f75dbb49f6196f60de6a69843..ed18b1075f44ed4f274be9b9e78182b11213ed22 100755 (executable)
@@ -1,4 +1,4 @@
-# Copyright (C) 2012-2015  CEA/DEN, EDF R&D, OPEN CASCADE
+# Copyright (C) 2012-2016  CEA/DEN, EDF R&D, OPEN CASCADE
 #
 # This library is free software; you can redistribute it and/or
 # modify it under the terms of the GNU Lesser General Public
 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 
-INCLUDE(UsePyQt4)
+INCLUDE(UsePyQt)
 
 # --- resources ---
 
 # uic files / to be processed by pyuic
-SET(_pyuic_files
+SET(_pyuic_FILES
   SelectVarsDialog.ui
   genericdialog.ui
   mytestdialog.ui
@@ -31,8 +31,7 @@ SET(_pyuic_files
 # --- scripts ---
 
 # scripts / pyuic wrappings
-
-PYQT4_WRAP_UIC(_pyuic_SCRIPTS ${_pyuic_files})
+PYQT_WRAP_UIC(_pyuic_SCRIPTS ${_pyuic_FILES} TARGET_NAME _target_name_pyuic)
 
 # scripts / static
 SET(_other_SCRIPTS 
@@ -43,15 +42,22 @@ SET(_other_SCRIPTS
   selectvars.py
   dockwidgets.py
 )
+
 SET(_bin_SCRIPTS
   test_dockwidgets.py
 )
 
-# scripts / to install
+SALOME_CONFIGURE_FILE(qtsalome.py.in qtsalome.py)
 
-SET(_all_SCRIPTS ${_other_SCRIPTS} ${_pyuic_SCRIPTS})
+SET(_gen_SCRIPTS
+    ${CMAKE_CURRENT_BINARY_DIR}/qtsalome.py
+)
 
 # --- rules ---
-
-SALOME_INSTALL_SCRIPTS("${_all_SCRIPTS}" ${SALOME_INSTALL_PYTHON}/salome/gui)
+SALOME_INSTALL_SCRIPTS("${_gen_SCRIPTS}" ${SALOME_INSTALL_PYTHON})
+SALOME_INSTALL_SCRIPTS("${_other_SCRIPTS}" ${SALOME_INSTALL_PYTHON}/salome/gui)
 SALOME_INSTALL_SCRIPTS("${_bin_SCRIPTS}" ${SALOME_INSTALL_SCRIPT_DATA})
+SALOME_INSTALL_SCRIPTS("${_pyuic_SCRIPTS}" ${SALOME_INSTALL_PYTHON}/salome/gui TARGET_NAME _target_name_pyuic_py)
+# add dependency of compiled py files on uic files in order
+# to avoid races problems when compiling in parallel
+ADD_DEPENDENCIES(${_target_name_pyuic_py} ${_target_name_pyuic})