Salome HOME
22321: [CEA 933] Bug when reading a sauve file containing field on Gauss Pt
[modules/med.git] / CMakeLists.txt
index 05f3f45ead39366e3c67380da18a3b2b1dd37c66..a9472f9aee032ea835985982a2b98feedfe34d9c 100644 (file)
@@ -46,12 +46,16 @@ SET(VERSION_DEV "0")
 # Kernel detection comes before user options to be
 # able to take previous values of SALOME_USE_MPI, SALOME_BUILD_DOC, etc ...
 #
+SET(_default_MPI OFF)
 IF(NOT SALOME_MED_STANDALONE)
   SET(KERNEL_ROOT_DIR $ENV{KERNEL_ROOT_DIR} CACHE PATH "Path to the Salome KERNEL")
   IF(EXISTS ${KERNEL_ROOT_DIR})
     LIST(APPEND CMAKE_MODULE_PATH "${KERNEL_ROOT_DIR}/salome_adm/cmake_files")
     INCLUDE(SalomeMacros)
     FIND_PACKAGE(SalomeKERNEL REQUIRED)
+    ADD_DEFINITIONS(${KERNEL_DEFINITIONS})
+    INCLUDE_DIRECTORIES(${KERNEL_INCLUDE_DIRS})
+    SET(_default_MPI ${SALOME_USE_MPI}) 
   ELSE(EXISTS ${KERNEL_ROOT_DIR})
     MESSAGE(FATAL_ERROR "We absolutely need a Salome KERNEL, please define KERNEL_ROOT_DIR or turn option SALOME_MED_STANDALONE to ON !")
   ENDIF(EXISTS ${KERNEL_ROOT_DIR})
@@ -63,10 +67,6 @@ ELSE(NOT SALOME_MED_STANDALONE)
   INCLUDE(SalomeMacros)
 ENDIF(NOT SALOME_MED_STANDALONE)
 
-# Platform setup
-# ==============
-INCLUDE(SalomeSetupPlatform)
-
 #
 # User options
 # ============
@@ -76,14 +76,13 @@ OPTION(SALOME_MED_MICROMED "Build MED without MED file dependancy." OFF)
 OPTION(SALOME_MED_ENABLE_PYTHON "Build PYTHON bindings." ON)
 OPTION(SALOME_MED_ENABLE_PARTITIONER "Build MEDPartitioner." ON)
 OPTION(SALOME_MED_ENABLE_RENUMBER "Build Renumber." ON)
-OPTION(SALOME_USE_MPI "To build ParaMEDMEM." OFF)
+OPTION(SALOME_USE_MPI "(Use MPI containers) - For MED this triggers the build of ParaMEDMEM." ${_default_MPI})
 OPTION(SALOME_BUILD_GUI "Build GUI of MED." ON)
 OPTION(SALOME_BUILD_TESTS "Build MED tests." ON)
 OPTION(SALOME_BUILD_DOC "Build MED doc." ON)
-CMAKE_DEPENDENT_OPTION(SALOME_MED_PARTITIONER_METIS "Enable metis graph librarie in MEDPartitioner." ON "SALOME_MED_ENABLE_PARTITIONER;NOT SALOME_USE_MPI" OFF)
-CMAKE_DEPENDENT_OPTION(SALOME_MED_PARTITIONER_SCOTCH "Enable scotch graph librarie in MEDPartitioner." ON "SALOME_MED_ENABLE_PARTITIONER;NOT SALOME_USE_MPI" OFF)
-CMAKE_DEPENDENT_OPTION(SALOME_MED_PARTITIONER_PARMETIS "Enable parmetis graph librarie in MEDPartitioner." ON "SALOME_MED_ENABLE_PARTITIONER;SALOME_USE_MPI" OFF)
-
+CMAKE_DEPENDENT_OPTION(SALOME_MED_PARTITIONER_METIS "Enable metis graph library in MEDPartitioner." ON "SALOME_MED_ENABLE_PARTITIONER;NOT SALOME_USE_MPI" OFF)
+CMAKE_DEPENDENT_OPTION(SALOME_MED_PARTITIONER_SCOTCH "Enable scotch graph library in MEDPartitioner." ON "SALOME_MED_ENABLE_PARTITIONER;NOT SALOME_USE_MPI" OFF)
+CMAKE_DEPENDENT_OPTION(SALOME_MED_PARTITIONER_PARMETIS "Enable parmetis graph library in MEDPartitioner." ON "SALOME_MED_ENABLE_PARTITIONER;SALOME_USE_MPI" OFF)
 
 #
 # Set list of prerequisites
@@ -107,19 +106,23 @@ ENDIF(NOT SALOME_MED_STANDALONE)
 
 LIST(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/adm_local/cmake_files")
 
+# Platform setup
+# ==============
+INCLUDE(SalomeSetupPlatform)
+
 IF(NOT SALOME_MED_MICROMED)
   FIND_PACKAGE(SalomeHDF5 REQUIRED)
   FIND_PACKAGE(SalomeMEDFile REQUIRED)
   IF(SALOME_MED_ENABLE_PARTITIONER)
     FIND_PACKAGE(SalomeLibXml2)
-    SALOME_UPDATE_FLAG_AND_LOG_PACKAGE(LibXml2 SALOME_MED_ENABLE_PARTITIONER)
+    SALOME_LOG_OPTIONAL_PACKAGE(LibXml2 SALOME_MED_ENABLE_PARTITIONER)
     IF(SALOME_MED_PARTITIONER_METIS)
       FIND_PACKAGE(SalomeMetis)
-      SALOME_UPDATE_FLAG_AND_LOG_PACKAGE(Metis SALOME_MED_PARTITIONER_METIS)
+      SALOME_LOG_OPTIONAL_PACKAGE(Metis SALOME_MED_PARTITIONER_METIS)
     ENDIF(SALOME_MED_PARTITIONER_METIS)
     IF(SALOME_MED_PARTITIONER_SCOTCH)
       FIND_PACKAGE(SalomeScotch)
-      SALOME_UPDATE_FLAG_AND_LOG_PACKAGE(Scotch SALOME_MED_PARTITIONER_SCOTCH)
+      SALOME_LOG_OPTIONAL_PACKAGE(Scotch SALOME_MED_PARTITIONER_SCOTCH)
     ENDIF(SALOME_MED_PARTITIONER_SCOTCH)
   ENDIF(SALOME_MED_ENABLE_PARTITIONER)
 ENDIF(NOT SALOME_MED_MICROMED)
@@ -144,43 +147,43 @@ ENABLE_TESTING() # let it outsite because even if SALOME_BUILD_TESTS is OFF, pyt
 
 IF(SALOME_BUILD_TESTS)
   FIND_PACKAGE(SalomeCppUnit)
-  SALOME_UPDATE_FLAG_AND_LOG_PACKAGE(CppUnit SALOME_BUILD_TESTS)
+  SALOME_LOG_OPTIONAL_PACKAGE(CppUnit SALOME_BUILD_TESTS)
 ENDIF(SALOME_BUILD_TESTS)
 
 IF(SALOME_USE_MPI)
   FIND_PACKAGE(SalomeMPI REQUIRED)
   IF(SALOME_MED_PARTITIONER_PARMETIS)
     FIND_PACKAGE(SalomeParMetis)
-    SALOME_UPDATE_FLAG_AND_LOG_PACKAGE(ParMetis SALOME_MED_PARTITIONER_PARMETIS)
+    SALOME_LOG_OPTIONAL_PACKAGE(ParMetis SALOME_MED_PARTITIONER_PARMETIS)
   ENDIF(SALOME_MED_PARTITIONER_PARMETIS)
 ENDIF(SALOME_USE_MPI)
 
 IF(SALOME_MED_ENABLE_RENUMBER)
   FIND_PACKAGE(SalomeBoost)
-  SALOME_UPDATE_FLAG_AND_LOG_PACKAGE(Boost SALOME_MED_ENABLE_RENUMBER)
+  SALOME_LOG_OPTIONAL_PACKAGE(Boost SALOME_MED_ENABLE_RENUMBER)
 ENDIF(SALOME_MED_ENABLE_RENUMBER)
 
 IF(SALOME_BUILD_DOC)
   FIND_PACKAGE(SalomeDoxygen)
   FIND_PACKAGE(SalomeGraphviz)
   FIND_PACKAGE(SalomeSphinx)
-  SALOME_UPDATE_FLAG_AND_LOG_PACKAGE(Doxygen SALOME_BUILD_DOC)
-  SALOME_UPDATE_FLAG_AND_LOG_PACKAGE(Graphviz SALOME_BUILD_DOC)
-  SALOME_UPDATE_FLAG_AND_LOG_PACKAGE(Sphinx SALOME_BUILD_DOC)
+  SALOME_LOG_OPTIONAL_PACKAGE(Doxygen SALOME_BUILD_DOC)
+  SALOME_LOG_OPTIONAL_PACKAGE(Graphviz SALOME_BUILD_DOC)
+  SALOME_LOG_OPTIONAL_PACKAGE(Sphinx SALOME_BUILD_DOC)
 ENDIF(SALOME_BUILD_DOC)
 
 IF(SALOME_MED_ENABLE_PYTHON)
   FIND_PACKAGE(SalomePython)
   FIND_PACKAGE(SalomeSWIG)
-  SALOME_UPDATE_FLAG_AND_LOG_PACKAGE(Python SALOME_MED_ENABLE_PYTHON)
-  SALOME_UPDATE_FLAG_AND_LOG_PACKAGE(SWIG   SALOME_MED_ENABLE_PYTHON)
+  SALOME_LOG_OPTIONAL_PACKAGE(Python SALOME_MED_ENABLE_PYTHON)
+  SALOME_LOG_OPTIONAL_PACKAGE(SWIG   SALOME_MED_ENABLE_PYTHON)
   IF(NOT SALOME_MED_STANDALONE)
     FIND_PACKAGE(SalomeOmniORBPy REQUIRED)
   ENDIF(NOT SALOME_MED_STANDALONE)
 ENDIF(SALOME_MED_ENABLE_PYTHON)
 
 # Detection report
-SALOME_PACKAGE_REPORT()
+SALOME_PACKAGE_REPORT_AND_CHECK()
 
 # Directories
 #