Salome HOME
first ver. (creating of new channel => calc case => export calc case works OK)
[modules/hydro.git] / CMakeLists.txt
index 7be94504dbe530c532f8f8594fee930e207f6ce0..ceb5f5a6c1b705f73327711440cf89895597844d 100644 (file)
@@ -1,8 +1,11 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8 FATAL_ERROR)
-INCLUDE(CMakeDependentOption)
 
+CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8 FATAL_ERROR)
 PROJECT(SalomeHYDRO C CXX)
 
+ADD_SUBDIRECTORY (src/HYDRO_tests)
+
+INCLUDE(CMakeDependentOption)
+
 # Ensure a proper linker behavior:
 CMAKE_POLICY(SET CMP0003 NEW)
 
@@ -11,8 +14,8 @@ CMAKE_POLICY(SET CMP0003 NEW)
 # Project name, upper case
 STRING(TOUPPER ${PROJECT_NAME} PROJECT_NAME_UC)
 
-SET(${PROJECT_NAME_UC}_MAJOR_VERSION 0)
-SET(${PROJECT_NAME_UC}_MINOR_VERSION 1)
+SET(${PROJECT_NAME_UC}_MAJOR_VERSION 1)
+SET(${PROJECT_NAME_UC}_MINOR_VERSION 5)
 SET(${PROJECT_NAME_UC}_PATCH_VERSION 0)
 SET(${PROJECT_NAME_UC}_VERSION
   ${${PROJECT_NAME_UC}_MAJOR_VERSION}.${${PROJECT_NAME_UC}_MINOR_VERSION}.${${PROJECT_NAME_UC}_PATCH_VERSION})
@@ -90,10 +93,17 @@ OPTION(SALOME_BUILD_TESTS "Build HYDRO tests" ON)
 ## From KERNEL:
 ##
 
-# Mandatory products
-FIND_PACKAGE(SalomePython    REQUIRED)
+# Mandatory products:
+
+FIND_PACKAGE(SalomePython REQUIRED)
+#FIND_PACKAGE(SalomePythonInterp REQUIRED)
+#FIND_PACKAGE(SalomePythonLibs REQUIRED)
+FIND_PACKAGE(SalomeCAS     REQUIRED)
+FIND_PACKAGE(SalomeVTK     REQUIRED)
+FIND_PACKAGE(SalomeOmniORB REQUIRED)
 
 # Optional products:
+
 IF(SALOME_BUILD_TESTS)
   ENABLE_TESTING()
   FIND_PACKAGE(SalomeCppUnit)
@@ -111,25 +121,31 @@ IF(SALOME_BUILD_DOC)
   SALOME_LOG_OPTIONAL_PACKAGE(Sphinx SALOME_BUILD_DOC)
 ENDIF()
 
-# Find optional GUI libraries
-IF(SALOME_BUILD_GUI)
-  # Qt4
-  FIND_PACKAGE(SalomeQt4 REQUIRED COMPONENTS QtCore QtGui)
-ENDIF(SALOME_BUILD_GUI)
-
 ##
-## HYDRO specifics
+## From GUI:
 ##
 
-FIND_PACKAGE(SalomeCAS REQUIRED)
-
-FIND_PACKAGE(SalomeVTK REQUIRED)
-
 FIND_PACKAGE(SalomeSIP REQUIRED)  # should come after Python and before PyQt4
 
-FIND_PACKAGE(SalomePyQt4 REQUIRED)
+# Qt
+IF(NOT SALOME_GUI_BUILD_WITH_QT5)
+  FIND_PACKAGE(SalomeQt4 REQUIRED COMPONENTS QtCore QtGui QtXml QtWebKit QtOpenGL QtNetwork QtTest)
+  SET(QT_ROOT_DIR "${QT4_ROOT_DIR}")
+  SALOME_CONFIGURE_PREPARE(HYDROData HYDROGUI HYDROPy Qt4 PyQt4)
+ELSE()
+  FIND_PACKAGE(SalomeQt5 REQUIRED)
+  SET(QT_ROOT_DIR "${QT5_ROOT_DIR}")
+  SALOME_CONFIGURE_PREPARE(HYDROData HYDROGUI HYDROPy Qt5 PyQt5)
+ENDIF()
 
-FIND_PACKAGE(SalomeOmniORB REQUIRED)
+# PyQt
+IF(NOT SALOME_GUI_BUILD_WITH_QT5)
+  FIND_PACKAGE(SalomePyQt4 REQUIRED)
+  SET(PYQT_ROOT_DIR "${PYQT4_ROOT_DIR}")
+ELSE()
+  FIND_PACKAGE(SalomePyQt5 REQUIRED)
+  SET(PYQT_ROOT_DIR "${PYQT5_ROOT_DIR}")
+ENDIF()
 
 # Detection summary:
 SALOME_PACKAGE_REPORT_AND_CHECK()
@@ -176,6 +192,7 @@ ADD_SUBDIRECTORY (src/shapelib)
 ADD_SUBDIRECTORY (src/HYDROData)
 ADD_SUBDIRECTORY (src/HYDROGUI)
 ADD_SUBDIRECTORY (src/HYDROPy)
+ADD_SUBDIRECTORY (src/HYDROTools)
 IF(SALOME_BUILD_DOC)
   ADD_SUBDIRECTORY(doc)
 ENDIF()
@@ -193,7 +210,7 @@ INCLUDE(CMakePackageConfigHelpers)
 # List of targets in this project we want to make visible to the rest of the world.
 # They all have to be INSTALL'd with the option "EXPORT ${PROJECT_NAME}TargetGroup"
 SET(_${PROJECT_NAME}_exposed_targets 
-  HYDROData HYDROPy
+  shapelib HYDROData HYDROPy
 )
 
 IF(SALOME_BUILD_TESTS)
@@ -251,3 +268,9 @@ INSTALL(FILES
 # Install the export set for use with the install-tree
 INSTALL(EXPORT ${PROJECT_NAME}TargetGroup DESTINATION "${SALOME_INSTALL_CMAKE_LOCAL}" 
         FILE ${PROJECT_NAME}Targets.cmake)
+
+
+
+SET(_bin_scripts bin/hydro_setenv.py)
+SALOME_INSTALL_SCRIPTS("${_bin_scripts}" ${SALOME_INSTALL_SCRIPT_SCRIPTS})
+