Salome HOME
CMake:
[modules/kernel.git] / salome_adm / cmake_files / FindSalomeMPI.cmake
index b38709d629fcd0b337c08189790aa1cc65075ae5..8741b5df0522412309b83c11bbdc104e19161339 100644 (file)
@@ -1,14 +1,37 @@
+# Copyright (C) 2013  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
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this library; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
+# Author: Adrien Bruneton
+#
 
 # MPI detection for Salome
+#
+#  !! Please read the generic detection procedure in SalomeMacros.cmake !!
+# 
 
-set(MPI_ROOT_DIR $ENV{MPI_ROOT_DIR} CACHE PATH "Path to Mpi directory")
-if(EXISTS ${MPI_ROOT_DIR})
-  set(CMAKE_INCLUDE_PATH ${MPI_ROOT_DIR}/include)
-  set(CMAKE_LIBRARY_PATH ${MPI_ROOT_DIR}/lib)
-  set(CMAKE_PROGRAM_PATH ${MPI_ROOT_DIR}/bin)
-endif(EXISTS ${MPI_ROOT_DIR})
-find_package(MPI REQUIRED)
-if(HDF5_IS_PARALLEL)
-  set(HDF5_INCLUDE_DIRS ${HDF5_INCLUDE_DIRS} ${MPI_C_INCLUDE_PATH} ${MPI_CXX_INCLUDE_PATH} )
-  set(HDF5_LIBRARIES ${HDF5_LIBRARIES} ${MPI_C_LIBRARIES} ${MPI_CXX_LIBRARIES})
-endif(HDF5_IS_PARALLEL)
+SALOME_FIND_PACKAGE_AND_DETECT_CONFLICTS(MPI MPIEXEC 2)
+MARK_AS_ADVANCED(MPI_EXTRA_LIBRARY MPI_LIBRARY)
+
+SET(MPI_INCLUDE_DIRS ${MPI_C_INCLUDE_PATH} ${MPI_CXX_INCLUDE_PATH})
+SET(MPI_LIBRARIES ${MPI_C_LIBRARIES} ${MPI_CXX_LIBRARIES})
+
+IF(MPI_FOUND) 
+  SALOME_ACCUMULATE_HEADERS(MPI_INCLUDE_DIRS)
+  SALOME_ACCUMULATE_ENVIRONMENT(PATH ${MPI_ROOT_DIR}/bin)
+  SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH ${MPI_ROOT_DIR}/lib)
+ENDIF()