diff options
author | Allen Byrne <byrn@hdfgroup.org> | 2010-09-02 21:00:43 (GMT) |
---|---|---|
committer | Allen Byrne <byrn@hdfgroup.org> | 2010-09-02 21:00:43 (GMT) |
commit | add9f142d44adef9bf3df151326b30befea48f47 (patch) | |
tree | 404a7b16ca3b4feae5729010aa42d0e91ad2c6dd /CMakeLists.txt | |
parent | d9e84977b8220854457c92830b544f5e06e09c73 (diff) | |
download | hdf5-add9f142d44adef9bf3df151326b30befea48f47.zip hdf5-add9f142d44adef9bf3df151326b30befea48f47.tar.gz hdf5-add9f142d44adef9bf3df151326b30befea48f47.tar.bz2 |
[svn-r19343] Corrected long long printf test.
Added CMake commands to allow the install of the extlibs on windows.
Updated ctest warning exception regex for VS2010
Tested: windows
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 125 |
1 files changed, 100 insertions, 25 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 7e9ecc6..8401c6e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -477,6 +477,39 @@ IF (HDF5_ENABLE_SZIP_SUPPORT) ENDIF (HDF5_ENABLE_SZIP_SUPPORT) #----------------------------------------------------------------------------- +# Option for external libraries on windows +#----------------------------------------------------------------------------- +IF (WIN32) + OPTION (HDF5_PACKAGE_EXTLIBS "CPACK - include external libraries" OFF) + IF (BUILD_SHARED_LIBS) + FILE (MAKE_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${BLDTYPE}) + + IF (HDF5_ENABLE_Z_LIB_SUPPORT AND ZLIB_FOUND) + GET_FILENAME_COMPONENT(ZLIB_DLL_NAME ${ZLIB_LIBRARY} NAME_WE) + # MESSAGE (STATUS "ZLIB_DLL_NAME: ${ZLIB_DLL_NAME}") + GET_FILENAME_COMPONENT(ZLIB_BIN_PATH ${ZLIB_LIBRARY} PATH) + # MESSAGE (STATUS "ZLIB_BIN_PATH: ${ZLIB_BIN_PATH}") + ADD_CUSTOM_TARGET (ZLIB-Release-Copy ALL + COMMAND ${CMAKE_COMMAND} -E copy_if_different ${ZLIB_BIN_PATH}/${ZLIB_DLL_NAME}.dll ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${CMAKE_CFG_INTDIR}/ + COMMENT "Copying ${ZLIB_BIN_PATH}/${ZLIB_DLL_NAME}.dll to ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${CMAKE_CFG_INTDIR}/" + ) + ENDIF (HDF5_ENABLE_Z_LIB_SUPPORT AND ZLIB_FOUND) + + IF (HDF5_ENABLE_SZIP_SUPPORT AND SZIP_FOUND) + GET_FILENAME_COMPONENT(SZIP_DLL_NAME ${SZIP_LIBRARY} NAME_WE) + # MESSAGE (STATUS "SZIP_DLL_NAME: ${SZIP_DLL_NAME}") + GET_FILENAME_COMPONENT(SZIP_BIN_PATH ${SZIP_LIBRARY} PATH) + # MESSAGE (STATUS "SZIP_BIN_PATH: ${SZIP_BIN_PATH}") + ADD_CUSTOM_TARGET (SZIP-Release-Copy ALL + COMMAND ${CMAKE_COMMAND} -E copy_if_different ${SZIP_BIN_PATH}/${SZIP_DLL_NAME}.dll ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${CMAKE_CFG_INTDIR}/ + COMMENT "Copying ${SZIP_BIN_PATH}/${SZIP_DLL_NAME}.dll to ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${CMAKE_CFG_INTDIR}/" + ) + ENDIF (HDF5_ENABLE_SZIP_SUPPORT AND SZIP_FOUND) + + ENDIF (BUILD_SHARED_LIBS) +ENDIF (WIN32) + +#----------------------------------------------------------------------------- # Option to use PACKED BITS SUPPORT #----------------------------------------------------------------------------- OPTION (HDF5_USE_H5DUMP_PACKED_BITS "Use the PACKED BITS feature in h5dump" OFF) @@ -598,26 +631,74 @@ CONFIGURE_FILE (${HDF5_RESOURCES_DIR}/H5pubconf.h.in ${HDF5_BINARY_DIR}/H5pubcon #----------------------------------------------------------------------------- IF (NOT HDF5_INSTALL_NO_DEVELOPMENT) INSTALL ( - FILES - ${PROJECT_BINARY_DIR}/H5pubconf.h - DESTINATION - ${HDF5_INSTALL_INCLUDE_DIR} - COMPONENT - headers + FILES ${PROJECT_BINARY_DIR}/H5pubconf.h + DESTINATION ${HDF5_INSTALL_INCLUDE_DIR} + COMPONENT headers ) ENDIF (NOT HDF5_INSTALL_NO_DEVELOPMENT) #----------------------------------------------------------------------------- +# Option for external libraries on windows +#----------------------------------------------------------------------------- +IF (NOT HDF5_EXTERNALLY_CONFIGURED) + IF (HDF5_PACKAGE_EXTLIBS) + IF (HDF5_ENABLE_Z_LIB_SUPPORT AND ZLIB_FOUND) + INSTALL ( + FILES ${ZLIB_INCLUDE_DIR}/zconf.h ${ZLIB_INCLUDE_DIR}/zlib.h + DESTINATION ${HDF5_INSTALL_INCLUDE_DIR} + COMPONENT headers + ) + INSTALL( + FILES ${ZLIB_LIBRARY} + DESTINATION ${HDF5_INSTALL_LIB_DIR} + COMPONENT libraries + ) + IF (BUILD_SHARED_LIBS) + GET_FILENAME_COMPONENT(ZLIB_DLL_NAME ${ZLIB_LIBRARY} NAME_WE) + # message(STATUS "ZLIB_DLL_NAME: ${ZLIB_DLL_NAME}") + GET_FILENAME_COMPONENT(ZLIB_BIN_PATH ${ZLIB_LIBRARY} PATH) + # message(STATUS "ZLIB_BIN_PATH: ${ZLIB_BIN_PATH}") + INSTALL( + FILES ${ZLIB_BIN_PATH}/${ZLIB_DLL_NAME}.dll + DESTINATION ${HDF5_INSTALL_BIN_DIR} + COMPONENT libraries + ) + ENDIF (BUILD_SHARED_LIBS) + ENDIF (HDF5_ENABLE_Z_LIB_SUPPORT AND ZLIB_FOUND) + IF (HDF5_ENABLE_SZIP_SUPPORT AND SZIP_FOUND) + INSTALL ( + FILES ${SZIP_INCLUDE_DIR}/SZconfig.h ${SZIP_INCLUDE_DIR}/szlib.h ${SZIP_INCLUDE_DIR}/szip_adpt.h ${SZIP_INCLUDE_DIR}/ricehdf.h + DESTINATION ${HDF5_INSTALL_INCLUDE_DIR} + COMPONENT headers + ) + INSTALL( + FILES ${SZIP_LIBRARY} + DESTINATION ${HDF5_INSTALL_LIB_DIR} + COMPONENT libraries + ) + IF (BUILD_SHARED_LIBS) + GET_FILENAME_COMPONENT(SZIP_DLL_NAME ${SZIP_LIBRARY} NAME_WE) + # message(STATUS "SZIP_DLL_NAME: ${SZIP_DLL_NAME}") + GET_FILENAME_COMPONENT(SZIP_BIN_PATH ${SZIP_LIBRARY} PATH) + # message(STATUS "SZIP_BIN_PATH: ${ZLIB_BIN_PATH}") + INSTALL( + FILES ${SZIP_BIN_PATH}/${SZIP_DLL_NAME}.dll + DESTINATION ${HDF5_INSTALL_BIN_DIR} + COMPONENT libraries + ) + ENDIF (BUILD_SHARED_LIBS) + ENDIF (HDF5_ENABLE_SZIP_SUPPORT AND SZIP_FOUND) + ENDIF (HDF5_PACKAGE_EXTLIBS) +ENDIF (NOT HDF5_EXTERNALLY_CONFIGURED) + +#----------------------------------------------------------------------------- # Add Target(s) to CMake Install for import into other projects #----------------------------------------------------------------------------- IF (NOT HDF5_EXTERNALLY_CONFIGURED) INSTALL ( - EXPORT - ${HDF5_EXPORTED_TARGETS} - DESTINATION - lib/cmake/hdf5-${HDF5_PACKAGE_VERSION} - FILE - hdf5-targets.cmake + EXPORT ${HDF5_EXPORTED_TARGETS} + DESTINATION lib/cmake/hdf5-${HDF5_PACKAGE_VERSION} + FILE hdf5-targets.cmake ) ENDIF (NOT HDF5_EXTERNALLY_CONFIGURED) @@ -626,10 +707,8 @@ ENDIF (NOT HDF5_EXTERNALLY_CONFIGURED) #----------------------------------------------------------------------------- IF (NOT HDF5_EXTERNALLY_CONFIGURED) EXPORT ( - TARGETS - ${HDF5_LIBRARIES_TO_EXPORT} ${HDF5_LIB_DEPENDENCIES} - FILE - hdf5-targets.cmake + TARGETS ${HDF5_LIBRARIES_TO_EXPORT} ${HDF5_LIB_DEPENDENCIES} + FILE hdf5-targets.cmake ) ENDIF (NOT HDF5_EXTERNALLY_CONFIGURED) @@ -658,10 +737,8 @@ IF (NOT HDF5_EXTERNALLY_CONFIGURED) ${HDF5_BINARY_DIR}/CMakeFiles/hdf5-config.cmake @ONLY ) INSTALL ( - FILES - ${HDF5_BINARY_DIR}/CMakeFiles/hdf5-config.cmake - DESTINATION - lib/cmake/hdf5-${HDF5_PACKAGE_VERSION} + FILES ${HDF5_BINARY_DIR}/CMakeFiles/hdf5-config.cmake + DESTINATION lib/cmake/hdf5-${HDF5_PACKAGE_VERSION} ) ENDIF (NOT HDF5_EXTERNALLY_CONFIGURED) @@ -674,10 +751,8 @@ IF (NOT HDF5_EXTERNALLY_CONFIGURED) ${HDF5_BINARY_DIR}/CMakeFiles/hdf5-config-version.cmake @ONLY ) INSTALL ( - FILES - ${HDF5_BINARY_DIR}/CMakeFiles/hdf5-config-version.cmake - DESTINATION - lib/cmake/hdf5-${HDF5_PACKAGE_VERSION} + FILES ${HDF5_BINARY_DIR}/CMakeFiles/hdf5-config-version.cmake + DESTINATION lib/cmake/hdf5-${HDF5_PACKAGE_VERSION} ) ENDIF (NOT HDF5_EXTERNALLY_CONFIGURED) @@ -702,7 +777,7 @@ IF (NOT HDF5_EXTERNALLY_CONFIGURED AND EXISTS "${HDF5_SOURCE_DIR}/release_docs") #--------------------------------------------------------------------------- # Now list the cpack commands #--------------------------------------------------------------------------- - CPACK_ADD_COMPONENT (applications + CPACK_ADD_COMPONENT (hdfapplications DISPLAY_NAME "HDF5 Applications" DEPENDS libraries GROUP Applications |