Hi, 

Our project uses HDF5 and Fortran, and while I was looking through the comments 
in the FindHDF5.cmake file, I saw that it doesn't support finding the Fortran 
bindings. So, I modified it to make it work to find the Fortran bindings. 

Below is the diff output. Let me know if there's a more useful format. This 
works on the RHEL 5 and openSUSE 11.4 distributions I have access to (although, 
openSUSE 11.4 messed up the HDF5 build in the repo -- h5fc says the mod file is 
in /usr/include when it's really in /usr/lib64/gfortran/modules). 

I updated the comments in the file also, and I'm CC'ing the maintainer just in 
case he misses it on the list.

Thanks,

Tim

tpgLaptop:/usr/share/cmake/Modules # diff FindHDF5.cmake FindHDF5.cmake_orig 
12,14c12,15
< # find the language bindings for the specified components.  The only valid 
< # components are C, CXX, and Fortran.  If the COMPONENTS argument is not
< # given, the module will attempt to find only the C bindings.
---
> # find the language bindings for the specified components.  Currently, the 
> only
> # valid components are C and CXX.  The module does not yet support finding the
> # Fortran bindings.  If the COMPONENTS argument is not given, the module will
> # attempt to find only the C bindings.
35d35
< #  HDF5_Fortran_LIBRARIES - Required libraries for the HDF5 Fortran bindings
42d41
< #  HDF5_Fortran_COMPILER_EXECUTABLE - the path to the HDF5 Fortran wrapper 
compiler
67d65
<     Fortran
85,91d82
< find_program( HDF5_Fortran_COMPILER_EXECUTABLE
<     NAMES h5fc h5pfc
<     HINTS ENV HDF5_ROOT
<     PATH_SUFFIXES bin Bin
<     DOC "HDF5 Fortran Wrapper compiler.  Used only to detect HDF5 compile 
flags." )
< mark_as_advanced( HDF5_Fortran_COMPILER_EXECUTABLE )
< 
170d160
<     _HDF5_invoke_compiler( Fortran HDF5_Fortran_COMPILE_LINE 
HDF5_Fortran_RETURN_VALUE )
190d179
<     set( HDF5_Fortran_LIBRARY_NAMES_INIT hdf5_fortran 
${HDF5_C_LIBRARY_NAMES_INIT} )
212,218c201
<       if(${LANGUAGE} STREQUAL "Fortran")
<           set(HDF5_INCLUDE_FILENAME hdf5.mod)
<         else()
<           set(HDF5_INCLUDE_FILENAME hdf5.h)
<       endif()
< 
<         find_path( HDF5_${LANGUAGE}_INCLUDE_DIR ${HDF5_INCLUDE_FILENAME}
---
>         find_path( HDF5_${LANGUAGE}_INCLUDE_DIR hdf5.h
340,341c323
<     HDF5_CXX_COMPILER_EXECUTABLE
<     HDF5_Fortran_COMPILER_EXECUTABLE )
---
>     HDF5_CXX_COMPILER_EXECUTABLE )
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to