From 80e6dfe3ba830d2e1399737ecd23b16889c262c9 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Wed, 19 May 2010 15:11:00 -0500 Subject: [svn-r18856] Added CPack commands for installtion program Tested: local linux and Windows --- CMakeLists.txt | 110 ++++++++++++++++++++++++++++++++++++++++++ c++/src/CMakeLists.txt | 8 +-- fortran/src/CMakeLists.txt | 6 +-- hl/c++/src/CMakeLists.txt | 8 +-- hl/fortran/src/CMakeLists.txt | 6 +-- hl/src/CMakeLists.txt | 8 +-- hl/tools/CMakeLists.txt | 2 + src/CMakeLists.txt | 8 +-- tools/h5copy/CMakeLists.txt | 2 + tools/h5diff/CMakeLists.txt | 2 + tools/h5dump/CMakeLists.txt | 2 + tools/h5import/CMakeLists.txt | 2 + tools/h5jam/CMakeLists.txt | 2 + tools/h5ls/CMakeLists.txt | 2 + tools/h5repack/CMakeLists.txt | 2 + tools/h5stat/CMakeLists.txt | 2 + tools/lib/CMakeLists.txt | 8 +-- tools/misc/CMakeLists.txt | 2 + 18 files changed, 161 insertions(+), 21 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index dc7e2fa..52cd5fb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -82,6 +82,7 @@ SET (HDF5_PACKAGE "hdf5") SET (HDF5_PACKAGE_NAME "HDF5") SET (HDF5_PACKAGE_VERSION 1.8.5) SET (HDF5_PACKAGE_VERSION_MAJOR 1.8) +SET (HDF5_PACKAGE_VERSION_MINOR 5) SET (HDF5_PACKAGE_STRING "${HDF5_PACKAGE_NAME} ${HDF5_PACKAGE_VERSION}") SET (HDF5_PACKAGE_TARNAME "hdf5") SET (HDF5_PACKAGE_URL "htt://www.hdfgroup.org") @@ -542,6 +543,8 @@ INSTALL ( ${PROJECT_BINARY_DIR}/H5pubconf.h DESTINATION include + COMPONENT + headers ) #----------------------------------------------------------------------------- @@ -565,3 +568,110 @@ EXPORT ( FILE HDF5-config.cmake ) + +#----------------------------------------------------------------------------- +# Set the cpack variables +#----------------------------------------------------------------------------- +SET (CPACK_PACKAGE_VENDOR "The HDF Group") +SET (CPACK_PACKAGE_NAME "${HDF5_PACKAGE_NAME}") +SET (CPACK_PACKAGE_VERSION "${HDF5_PACKAGE_VERSION}") +SET (CPACK_PACKAGE_VERSION_MAJOR "${HDF5_PACKAGE_VERSION_MAJOR}") +SET (CPACK_PACKAGE_VERSION_MINOR "${HDF5_PACKAGE_VERSION_MINOR}") +SET (CPACK_PACKAGE_VERSION_PATCH "") +SET (CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/release_docs/COPYING") + +IF (WIN32) + SET (CPACK_NSIS_PACKAGE_NAME "HDF5 ${HDF5_PACKAGE_VERSION}") +ENDIF (WIN32) + +INCLUDE (CPack) + +#----------------------------------------------------------------------------- +# Now list the cpack commands +#----------------------------------------------------------------------------- +CPACK_ADD_COMPONENT (applications + DISPLAY_NAME "HDF5 Applications" + DEPENDS libraries + GROUP Applications +) +CPACK_ADD_COMPONENT (libraries + DISPLAY_NAME "HDF5 Libraries" + GROUP Runtime +) +CPACK_ADD_COMPONENT (headers + DISPLAY_NAME "HDF5 Headers" + DEPENDS libraries + GROUP Development +) + +IF (HDF5_BUILD_FORTRAN) + CPACK_ADD_COMPONENT (fortlibraries + DISPLAY_NAME "HDF5 Fortran Libraries" + DEPENDS libraries + GROUP Runtime + ) +ENDIF (HDF5_BUILD_FORTRAN) + +IF (HDF5_BUILD_CPP_LIB) + CPACK_ADD_COMPONENT (cpplibraries + DISPLAY_NAME "HDF5 C++ Libraries" + DEPENDS libraries + GROUP Runtime + ) + CPACK_ADD_COMPONENT (cppheaders + DISPLAY_NAME "HDF5 C++ Headers" + DEPENDS cpplibraries + GROUP Development + ) +ENDIF (HDF5_BUILD_CPP_LIB) + +IF (HDF5_BUILD_TOOLS) + CPACK_ADD_COMPONENT (toolsapplications + DISPLAY_NAME "HDF5 Tools Applications" + DEPENDS toolslibraries + GROUP Applications + ) + CPACK_ADD_COMPONENT (toolslibraries + DISPLAY_NAME "HDF5 Tools Libraries" + DEPENDS libraries + GROUP Runtime + ) + CPACK_ADD_COMPONENT (toolsheaders + DISPLAY_NAME "HDF5 Tools Headers" + DEPENDS toolslibraries + GROUP Development + ) +ENDIF (HDF5_BUILD_TOOLS) + +IF (HDF5_BUILD_HL_LIB) + CPACK_ADD_COMPONENT (hllibraries + DISPLAY_NAME "HDF5 HL Libraries" + DEPENDS libraries + GROUP Runtime + ) + CPACK_ADD_COMPONENT (hlheaders + DISPLAY_NAME "HDF5 HL Headers" + DEPENDS hllibraries + GROUP Development + ) + CPACK_ADD_COMPONENT (hltoolsapplications + DISPLAY_NAME "HDF5 HL Tools Applications" + DEPENDS hllibraries + GROUP Applications + ) + CPACK_ADD_COMPONENT (hlcpplibraries + DISPLAY_NAME "HDF5 HL C++ Libraries" + DEPENDS hllibraries + GROUP Runtime + ) + CPACK_ADD_COMPONENT (hlcppheaders + DISPLAY_NAME "HDF5 HL C++ Headers" + DEPENDS hlcpplibraries + GROUP Development + ) + CPACK_ADD_COMPONENT (hlfortlibraries + DISPLAY_NAME "HDF5 HL Fortran Libraries" + DEPENDS fortlibraries + GROUP Runtime + ) +ENDIF (HDF5_BUILD_HL_LIB) diff --git a/c++/src/CMakeLists.txt b/c++/src/CMakeLists.txt index 3658e57..2cf3d7b 100644 --- a/c++/src/CMakeLists.txt +++ b/c++/src/CMakeLists.txt @@ -94,6 +94,8 @@ INSTALL ( ${CPP_HDRS} DESTINATION include/cpp + COMPONENT + cppheaders ) #----------------------------------------------------------------------------- @@ -105,9 +107,9 @@ IF (HDF5_EXPORTED_TARGETS) ${HDF5_CPP_LIB_TARGET} EXPORT ${HDF5_EXPORTED_TARGETS} - LIBRARY DESTINATION lib - ARCHIVE DESTINATION lib - RUNTIME DESTINATION bin + LIBRARY DESTINATION lib COMPONENT cpplibraries + ARCHIVE DESTINATION lib COMPONENT cpplibraries + RUNTIME DESTINATION bin COMPONENT cpplibraries ) ENDIF (HDF5_EXPORTED_TARGETS) diff --git a/fortran/src/CMakeLists.txt b/fortran/src/CMakeLists.txt index dc68891..6c5efb2 100644 --- a/fortran/src/CMakeLists.txt +++ b/fortran/src/CMakeLists.txt @@ -222,8 +222,8 @@ IF (HDF5_EXPORTED_TARGETS) ${HDF5_F90_LIB_TARGET} EXPORT ${HDF5_EXPORTED_TARGETS} - LIBRARY DESTINATION lib - ARCHIVE DESTINATION lib - RUNTIME DESTINATION bin + LIBRARY DESTINATION lib COMPONENT fortlibraries + ARCHIVE DESTINATION lib COMPONENT fortlibraries + RUNTIME DESTINATION bin COMPONENT fortlibraries ) ENDIF (HDF5_EXPORTED_TARGETS) diff --git a/hl/c++/src/CMakeLists.txt b/hl/c++/src/CMakeLists.txt index 889b716..459520e 100644 --- a/hl/c++/src/CMakeLists.txt +++ b/hl/c++/src/CMakeLists.txt @@ -26,6 +26,8 @@ INSTALL ( ${HDF5_HL_CPP_HDRS} DESTINATION include/hl/cpp + COMPONENT + hlcppheaders ) #----------------------------------------------------------------------------- @@ -37,8 +39,8 @@ IF (HDF5_EXPORTED_TARGETS) ${HDF5_HL_CPP_LIB_TARGET} EXPORT ${HDF5_EXPORTED_TARGETS} - LIBRARY DESTINATION lib - ARCHIVE DESTINATION lib - RUNTIME DESTINATION bin + LIBRARY DESTINATION lib COMPONENT hlcpplibraries + ARCHIVE DESTINATION lib COMPONENT hlcpplibraries + RUNTIME DESTINATION bin COMPONENT hlcpplibraries ) ENDIF (HDF5_EXPORTED_TARGETS) diff --git a/hl/fortran/src/CMakeLists.txt b/hl/fortran/src/CMakeLists.txt index a967d54..1ff49d6 100644 --- a/hl/fortran/src/CMakeLists.txt +++ b/hl/fortran/src/CMakeLists.txt @@ -96,8 +96,8 @@ IF (HDF5_EXPORTED_TARGETS) ${HDF5_HL_F90_LIB_TARGET} EXPORT ${HDF5_EXPORTED_TARGETS} - LIBRARY DESTINATION lib - ARCHIVE DESTINATION lib - RUNTIME DESTINATION bin + LIBRARY DESTINATION lib COMPONENT hlfortlibraries + ARCHIVE DESTINATION lib COMPONENT hlfortlibraries + RUNTIME DESTINATION bin COMPONENT hlfortlibraries ) ENDIF (HDF5_EXPORTED_TARGETS) diff --git a/hl/src/CMakeLists.txt b/hl/src/CMakeLists.txt index 8773e50..6042853 100644 --- a/hl/src/CMakeLists.txt +++ b/hl/src/CMakeLists.txt @@ -47,6 +47,8 @@ INSTALL ( ${HL_HEADERS} DESTINATION include + COMPONENT + hlheaders ) #----------------------------------------------------------------------------- @@ -58,8 +60,8 @@ IF (HDF5_EXPORTED_TARGETS) ${HDF5_HL_LIB_TARGET} EXPORT ${HDF5_EXPORTED_TARGETS} - LIBRARY DESTINATION lib - ARCHIVE DESTINATION lib - RUNTIME DESTINATION bin + LIBRARY DESTINATION lib COMPONENT hllibraries + ARCHIVE DESTINATION lib COMPONENT hllibraries + RUNTIME DESTINATION bin COMPONENT hllibraries ) ENDIF (HDF5_EXPORTED_TARGETS) diff --git a/hl/tools/CMakeLists.txt b/hl/tools/CMakeLists.txt index 5730205..b99e742 100644 --- a/hl/tools/CMakeLists.txt +++ b/hl/tools/CMakeLists.txt @@ -52,4 +52,6 @@ INSTALL ( hdf2gif RUNTIME DESTINATION bin/tools + COMPONENT + hltoolsapplications ) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index bdcc598..506ca80 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -704,6 +704,8 @@ INSTALL ( ${H5_PRIVATE_HEADERS} DESTINATION include + COMPONENT + headers ) #----------------------------------------------------------------------------- @@ -715,8 +717,8 @@ IF (HDF5_EXPORTED_TARGETS) ${HDF5_LIB_TARGET} EXPORT ${HDF5_EXPORTED_TARGETS} - LIBRARY DESTINATION lib - ARCHIVE DESTINATION lib - RUNTIME DESTINATION bin + LIBRARY DESTINATION lib COMPONENT libraries + ARCHIVE DESTINATION lib COMPONENT libraries + RUNTIME DESTINATION bin COMPONENT libraries ) ENDIF (HDF5_EXPORTED_TARGETS) diff --git a/tools/h5copy/CMakeLists.txt b/tools/h5copy/CMakeLists.txt index 302ad49..62411ea 100644 --- a/tools/h5copy/CMakeLists.txt +++ b/tools/h5copy/CMakeLists.txt @@ -226,4 +226,6 @@ INSTALL ( h5copy RUNTIME DESTINATION bin/tools + COMPONENT + toolsapplications ) diff --git a/tools/h5diff/CMakeLists.txt b/tools/h5diff/CMakeLists.txt index b4ae18b..8f4a9bd 100644 --- a/tools/h5diff/CMakeLists.txt +++ b/tools/h5diff/CMakeLists.txt @@ -651,4 +651,6 @@ INSTALL ( h5diff RUNTIME DESTINATION bin/tools + COMPONENT + toolsapplications ) diff --git a/tools/h5dump/CMakeLists.txt b/tools/h5dump/CMakeLists.txt index 01e2c54..d78b314 100644 --- a/tools/h5dump/CMakeLists.txt +++ b/tools/h5dump/CMakeLists.txt @@ -605,4 +605,6 @@ INSTALL ( h5dump RUNTIME DESTINATION bin/tools + COMPONENT + toolsapplications ) diff --git a/tools/h5import/CMakeLists.txt b/tools/h5import/CMakeLists.txt index b99b45d..50d90e5 100644 --- a/tools/h5import/CMakeLists.txt +++ b/tools/h5import/CMakeLists.txt @@ -36,4 +36,6 @@ INSTALL ( h5import RUNTIME DESTINATION bin/tools + COMPONENT + toolsapplications ) diff --git a/tools/h5jam/CMakeLists.txt b/tools/h5jam/CMakeLists.txt index 2fe2c8c..03ec913 100644 --- a/tools/h5jam/CMakeLists.txt +++ b/tools/h5jam/CMakeLists.txt @@ -55,4 +55,6 @@ INSTALL ( h5jam h5unjam RUNTIME DESTINATION bin/tools + COMPONENT + toolsapplications ) diff --git a/tools/h5ls/CMakeLists.txt b/tools/h5ls/CMakeLists.txt index 54669ad..840f80e 100644 --- a/tools/h5ls/CMakeLists.txt +++ b/tools/h5ls/CMakeLists.txt @@ -165,4 +165,6 @@ INSTALL ( h5ls RUNTIME DESTINATION bin/tools + COMPONENT + toolsapplications ) diff --git a/tools/h5repack/CMakeLists.txt b/tools/h5repack/CMakeLists.txt index 07688ae..67c9f68 100644 --- a/tools/h5repack/CMakeLists.txt +++ b/tools/h5repack/CMakeLists.txt @@ -528,4 +528,6 @@ INSTALL ( h5repack RUNTIME DESTINATION bin/tools + COMPONENT + toolsapplications ) diff --git a/tools/h5stat/CMakeLists.txt b/tools/h5stat/CMakeLists.txt index 98a9dde..d9407ef 100644 --- a/tools/h5stat/CMakeLists.txt +++ b/tools/h5stat/CMakeLists.txt @@ -119,4 +119,6 @@ INSTALL ( h5stat RUNTIME DESTINATION bin/tools + COMPONENT + toolsapplications ) diff --git a/tools/lib/CMakeLists.txt b/tools/lib/CMakeLists.txt index 2e6501a..e12a7a6 100644 --- a/tools/lib/CMakeLists.txt +++ b/tools/lib/CMakeLists.txt @@ -50,6 +50,8 @@ INSTALL ( ${H5_TOOLS_LIB_HDRS} DESTINATION include/tools + COMPONENT + toolsheaders ) #----------------------------------------------------------------------------- @@ -61,8 +63,8 @@ IF (HDF5_EXPORTED_TARGETS) ${HDF5_TOOLS_LIB_TARGET} EXPORT ${HDF5_EXPORTED_TARGETS} - LIBRARY DESTINATION lib/tools - ARCHIVE DESTINATION lib/tools - RUNTIME DESTINATION bin/tools + LIBRARY DESTINATION lib/tools COMPONENT toolslibraries + ARCHIVE DESTINATION lib/tools COMPONENT toolslibraries + RUNTIME DESTINATION bin/tools COMPONENT toolslibraries ) ENDIF (HDF5_EXPORTED_TARGETS) diff --git a/tools/misc/CMakeLists.txt b/tools/misc/CMakeLists.txt index 0b2eb42..5583b3d 100644 --- a/tools/misc/CMakeLists.txt +++ b/tools/misc/CMakeLists.txt @@ -97,4 +97,6 @@ INSTALL ( h5debug h5repart RUNTIME DESTINATION bin/tools + COMPONENT + toolsapplications ) -- cgit v0.12