From 9b78a060a9e3e44ed0fb4790312497d7cb294163 Mon Sep 17 00:00:00 2001 From: ageay Date: Tue, 24 Apr 2012 07:33:05 +0000 Subject: [PATCH] Dealing with HDF5 compiled with mpi. addition of MPI_INCLUDES_DIR into HDF5_INCLUDES_DIR. Same for FLAGs and LIBS. --- salome_adm/cmake_files/FindHDF5.cmake | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/salome_adm/cmake_files/FindHDF5.cmake b/salome_adm/cmake_files/FindHDF5.cmake index df1ba775d..a5bb8eb08 100644 --- a/salome_adm/cmake_files/FindHDF5.cmake +++ b/salome_adm/cmake_files/FindHDF5.cmake @@ -158,6 +158,26 @@ IF(HDF5_STATUS) ENDIF(HDF5_LIB) ENDIF(HDF5_STATUS) +IF(HDF5_STATUS) + FILE(TO_NATIVE_PATH "${HDF5_INCLUDE_DIR}/H5public.h" HDF5_H5PUBLIC_FILE) + EXECUTE_PROCESS( + COMMAND ${PYTHON_EXECUTABLE} -c "import re,sys ; f=file(sys.argv[1]) ; s=f.read() ; c=re.compile('^#[\s]*include[\s]*\\\"(?P[A-Za-z0-9\-]+\.h)\\\"',re.M) ; sys.stdout.write(c.search(s).group('nm'))" + ${HDF5_H5PUBLIC_FILE} + OUTPUT_VARIABLE HDF5_H5PUBLIC_DEFS_FILE + ) + FILE(TO_NATIVE_PATH "${HDF5_INCLUDE_DIR}/${HDF5_H5PUBLIC_DEFS_FILE}" HDF5_H5PUBLIC_DEFS_FILE) + EXECUTE_PROCESS( + COMMAND ${PYTHON_EXECUTABLE} -c "import re,sys ; f=file(sys.argv[1]) ; s=f.read() ; c=re.compile('^#[\s]*define[\s]+H5_HAVE_PARALLEL[\s]+(?P[\d]+)',re.M) ; m=c.search(s); exec('if m: sys.stdout.write(m.group(\'nm\'))') ; exec('if not m:\n sys.stdout.write(\'0\');')" + ${HDF5_H5PUBLIC_DEFS_FILE} + OUTPUT_VARIABLE HD5_HAVE_PARALLEL + ) + IF(HD5_HAVE_PARALLEL) + SET(HDF5_INCLUDES_DIR ${HDF5_INCLUDES_DIR} ${MPI_INCLUDES_DIR}) + SET(HDF5_FLAGS "${HDF5_FLAGS} ${MPI_FLAGS}") + SET(HDF5_LIBS ${HDF5_LIBS} ${MPI_LIBS}) + ENDIF(HD5_HAVE_PARALLEL) +ENDIF(HDF5_STATUS) + # ---- IF(HDF5_STATUS) -- 2.39.2