[CMake] CMake 2.8.12-rc2 FindHDF5 issues
Orion Poplawski
orion at cora.nwra.com
Tue Sep 17 18:01:30 EDT 2013
On 09/16/2013 09:58 PM, clinton at elemtech.com wrote:
> Same here... and this looks like a regression:
>
> A simple CMakeLists.txt like this can reproduce it.
>
> set(CMAKE_BUILD_TYPE Debug)
> find_package(HDF5 COMPONENTS C HL REQUIRED)
> add_executable(foo foo.cpp)
> target_link_libraries(foo ${HDF5_LIBRARIES})
>
> FindHDF5.cmake misuses CMAKE_BUILD_TYPE and CMAKE_CONFIGURATION_TYPES when assembling the HDF5_LIBRARIES variable. If I clear out the CMAKE_BUILD_TYPE variable, then the problem goes away.
>
> Clint
>
cmake 2.8.11.2:
-- Found HDF5:
debug;/usr/lib64/libz.so;debug;/usr/lib64/libdl.so;debug;/usr/lib64/libm.so;debug;/usr/lib64/libhdf5_hl.so;debug;/usr/lib64/libhdf5.so;optimized;/usr/lib64/libz.so;optimized;/usr/lib64/libdl.so;optimized;/usr/lib64/libm.so;optimized;/usr/lib64/libhdf5_hl.so;optimized;/usr/lib64/libhdf5.so
cmake 2.8.12-rc2:
-- Found HDF5:
debug;HDF5_hdf5_LIBRARY_DEBUG-NOTFOUND;debug;HDF5_z_LIBRARY_DEBUG-NOTFOUND;debug;HDF5_dl_LIBRARY_DEBUG-NOTFOUND;debug;HDF5_m_LIBRARY_DEBUG-NOTFOUND;debug;HDF5_hdf5_hl_LIBRARY_DEBUG-NOTFOUND;debug;HDF5_hdf5_LIBRARY_DEBUG-NOTFOUND;optimized;/usr/lib64/libz.so;optimized;/usr/lib64/libdl.so;optimized;/usr/lib64/libm.so;optimized;/usr/lib64/libhdf5_hl.so;optimized;/usr/lib64/libhdf5.so
In comparing the CMakeCache:
--- cmake-2.8.11.2/CMakeCache.txt 2013-09-17 15:53:24.202694310 -0600
+++ cmake-2.8.12-rc2/CMakeCache.txt 2013-09-17 15:54:02.217467588 -0600
@@ -188,45 +203,30 @@
//HDF5 library compiled with parallel IO support
HDF5_IS_PARALLEL:BOOL=FALSE
-//The HDF5_dl library
-HDF5_dl_LIBRARY:FILEPATH=/usr/lib64/libdl.so
-
//Path to a library.
HDF5_dl_LIBRARY_DEBUG:FILEPATH=HDF5_dl_LIBRARY_DEBUG-NOTFOUND
//Path to a library.
HDF5_dl_LIBRARY_RELEASE:FILEPATH=/usr/lib64/libdl.so
-//The HDF5_hdf5 library
-HDF5_hdf5_LIBRARY:FILEPATH=/usr/lib64/libhdf5.so
-
//Path to a library.
HDF5_hdf5_LIBRARY_DEBUG:FILEPATH=HDF5_hdf5_LIBRARY_DEBUG-NOTFOUND
//Path to a library.
HDF5_hdf5_LIBRARY_RELEASE:FILEPATH=/usr/lib64/libhdf5.so
-//The HDF5_hdf5_hl library
-HDF5_hdf5_hl_LIBRARY:FILEPATH=/usr/lib64/libhdf5_hl.so
-
//Path to a library.
HDF5_hdf5_hl_LIBRARY_DEBUG:FILEPATH=HDF5_hdf5_hl_LIBRARY_DEBUG-NOTFOUND
//Path to a library.
HDF5_hdf5_hl_LIBRARY_RELEASE:FILEPATH=/usr/lib64/libhdf5_hl.so
-//The HDF5_m library
-HDF5_m_LIBRARY:FILEPATH=/usr/lib64/libm.so
-
//Path to a library.
HDF5_m_LIBRARY_DEBUG:FILEPATH=HDF5_m_LIBRARY_DEBUG-NOTFOUND
//Path to a library.
HDF5_m_LIBRARY_RELEASE:FILEPATH=/usr/lib64/libm.so
-//The HDF5_z library
-HDF5_z_LIBRARY:FILEPATH=/usr/lib64/libz.so
-
//Path to a library.
HDF5_z_LIBRARY_DEBUG:FILEPATH=HDF5_z_LIBRARY_DEBUG-NOTFOUND
So, both have _DEBUG as NOTFOUND - but 2.8.12-rc2 is also missing the
HDF5_*_LIBRARY vars.
//Details about finding HDF5
-FIND_PACKAGE_MESSAGE_DETAILS_HDF5:INTERNAL=[debug;/usr/lib64/libz.so;debug;/usr/lib64/libdl.so;debug;/usr/lib64/libm.so;debug;/usr/lib64/libhdf5_hl.so;debug;/usr/lib64/libhdf5.so;optimized;/usr/lib64/libz.so;optimized;/usr/lib64/libdl.so;optimized;/usr/lib64/libm.so;optimized;/usr/lib64/libhdf5_hl.so;optimized;/usr/lib64/libhdf5.so][/usr/include][v()]
+FIND_PACKAGE_MESSAGE_DETAILS_HDF5:INTERNAL=[debug;HDF5_hdf5_LIBRARY_DEBUG-NOTFOUND;debug;HDF5_z_LIBRARY_DEBUG-NOTFOUND;debug;HDF5_dl_LIBRARY_DEBUG-NOTFOUND;debug;HDF5_m_LIBRARY_DEBUG-NOTFOUND;debug;HDF5_hdf5_hl_LIBRARY_DEBUG-NOTFOUND;debug;HDF5_hdf5_LIBRARY_DEBUG-NOTFOUND;optimized;/usr/lib64/libz.so;optimized;/usr/lib64/libdl.so;optimized;/usr/lib64/libm.so;optimized;/usr/lib64/libhdf5_hl.so;optimized;/usr/lib64/libhdf5.so][/usr/include][v()]
As Rolf noted, FindHDF5 has not changed.
--
Orion Poplawski
Technical Manager 303-415-9701 x222
NWRA, Boulder/CoRA Office FAX: 303-415-9702
3380 Mitchell Lane orion at nwra.com
Boulder, CO 80301 http://www.nwra.com
More information about the CMake
mailing list