Skip to content

Commit

Permalink
Use existing vars and cpack requires CPACK prefix (#758)
Browse files Browse the repository at this point in the history
  • Loading branch information
byrnHDF authored Aug 30, 2024
1 parent 7967cfe commit a9c3f3d
Show file tree
Hide file tree
Showing 12 changed files with 39 additions and 18 deletions.
8 changes: 6 additions & 2 deletions CMakeInstallation.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -254,6 +254,9 @@ if (NOT HDF4_EXTERNALLY_CONFIGURED AND NOT HDF4_NO_PACKAGES)
endif ()
set (CPACK_PACKAGE_ICON "${HDF_RESOURCES_DIR}/hdf.bmp")

set (CPACK_EXPORT_LIBRARIES ${HDF4_LIBRARIES_TO_EXPORT})
set (CPACK_EXPORT_UTILS ${HDF4_UTILS_TO_EXPORT})

set (CPACK_GENERATOR "TGZ")
if (WIN32)
set (CPACK_GENERATOR "ZIP")
Expand Down Expand Up @@ -288,7 +291,7 @@ if (NOT HDF4_EXTERNALLY_CONFIGURED AND NOT HDF4_NO_PACKAGES)
if (WIX_EXECUTABLE)
list (APPEND CPACK_GENERATOR "WIX")
if (ENV{BINSIGN} MATCHES "exists")
set (CPACK_PRE_BUILD_SCRIPTS ${CMAKE_SOURCE_DIR}/cmake/SignPackageFiles.cmake)
set (CPACK_PRE_BUILD_SCRIPTS ${CMAKE_SOURCE_DIR}/config/cmake/SignPackageFiles.cmake)
endif ()
endif ()
#WiX variables
Expand All @@ -313,7 +316,7 @@ if (NOT HDF4_EXTERNALLY_CONFIGURED AND NOT HDF4_NO_PACKAGES)
if (HDF4_PACK_MACOSX_DMG)
list (APPEND CPACK_GENERATOR "DragNDrop")
if (ENV{BINSIGN} MATCHES "exists")
set (CPACK_PRE_BUILD_SCRIPTS ${CMAKE_SOURCE_DIR}/cmake/SignPackageFiles.cmake)
set (CPACK_PRE_BUILD_SCRIPTS ${CMAKE_SOURCE_DIR}/config/cmake/SignPackageFiles.cmake)
endif ()
endif ()
set (CPACK_COMPONENTS_ALL_IN_ONE_PACKAGE ON)
Expand Down Expand Up @@ -352,6 +355,7 @@ if (NOT HDF4_EXTERNALLY_CONFIGURED AND NOT HDF4_NO_PACKAGES)
list (APPEND CPACK_GENERATOR "STGZ")
set (CPACK_PACKAGING_INSTALL_PREFIX "/${CPACK_PACKAGE_INSTALL_DIRECTORY}")
set (CPACK_COMPONENTS_ALL_IN_ONE_PACKAGE ON)
set (CPACK_PRE_BUILD_SCRIPTS ${CMAKE_SOURCE_DIR}/config/cmake/SignPackageFiles.cmake)

find_program (DPKGSHLIB_EXE dpkg-shlibdeps)
if (DPKGSHLIB_EXE)
Expand Down
2 changes: 0 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -376,8 +376,6 @@ endif ()
#-----------------------------------------------------------------------------
set_global_variable (HDF4_LIBRARIES_TO_EXPORT "")
set_global_variable (HDF4_UTILS_TO_EXPORT "")
# List of targets to be signed for packaging
set_global_variable (HDF4_INSTALL_TARGETS "")

set (EXTERNAL_HEADER_LIST "")
set (EXTERNAL_LIBRARY_LIST "")
Expand Down
37 changes: 33 additions & 4 deletions config/cmake/SignPackageFiles.cmake
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
# This script signs the targets for the package
foreach (target IN LISTS ${HDF4_INSTALL_TARGETS})
message(STATUS "Signing script for ${CPACK_EXPORT_LIBRARIES} and ${CPACK_EXPORT_UTILS}")
foreach (target "${CPACK_EXPORT_LIBRARIES}")
if (WIN32)
# Sign the targets
execute_process(COMMAND ENV{SIGNTOOLDIR}/signtool
sign /v /debug /fd SHA256 /tr http://timestamp.acs.microsoft.com /td SHA256
/dlib "Microsoft.Trusted.Signing.Client\bin\x64\Azure.CodeSigning.Dlib.dll" /dmdf ${CMAKE_CURRENT_SOURCE_DIR}\credentials.json
$<TARGET_FILE:${target}>
WORKING_DIRECTORY ${CPACK_TEMPORARY_INSTALL_DIRECTORY}/packages
WORKING_DIRECTORY ${CPACK_TEMPORARY_INSTALL_DIRECTORY}/ALL_COMPONENTS_IN_ONE/${CPACK_PACKAGE_INSTALL_DIRECTORY}/lib
)
message(STATUS "Signing the target ${target}")
elseif (APPLE)
Expand All @@ -15,8 +16,36 @@ foreach (target IN LISTS ${HDF4_INSTALL_TARGETS})
--force --timestamp --options runtime --entitlements ${CMAKE_CURRENT_SOURCE_DIR}/config/cmake/distribution.entitlements
--verbose=4 --strict --sign "ENV{SIGNER}"
$<TARGET_FILE:${target}>
WORKING_DIRECTORY ${CPACK_TEMPORARY_INSTALL_DIRECTORY}/packages
WORKING_DIRECTORY ${CPACK_TEMPORARY_INSTALL_DIRECTORY}/ALL_COMPONENTS_IN_ONE/${CPACK_PACKAGE_INSTALL_DIRECTORY}/lib
)
message(STATUS "Signing the target ${target}")
else ()
set (target_path ${CPACK_TEMPORARY_INSTALL_DIRECTORY}/ALL_COMPONENTS_IN_ONE/${CPACK_PACKAGE_INSTALL_DIRECTORY}/lib)
message(STATUS "Signing the target ${target} using ${target_path}")
endif ()
endforeach ()
endforeach ()

foreach (target "${CPACK_EXPORT_UTILS}")
if (WIN32)
# Sign the targets
execute_process(COMMAND ENV{SIGNTOOLDIR}/signtool
sign /v /debug /fd SHA256 /tr http://timestamp.acs.microsoft.com /td SHA256
/dlib "Microsoft.Trusted.Signing.Client\bin\x64\Azure.CodeSigning.Dlib.dll" /dmdf ${CMAKE_CURRENT_SOURCE_DIR}\credentials.json
$<TARGET_FILE:${target}>
WORKING_DIRECTORY ${CPACK_TEMPORARY_INSTALL_DIRECTORY}/ALL_COMPONENTS_IN_ONE/${CPACK_PACKAGE_INSTALL_DIRECTORY}/bin
)
message(STATUS "Signing the target ${target}")
elseif (APPLE)
# Sign the targets
execute_process(COMMAND codesign
--force --timestamp --options runtime --entitlements ${CMAKE_CURRENT_SOURCE_DIR}/config/cmake/distribution.entitlements
--verbose=4 --strict --sign "ENV{SIGNER}"
$<TARGET_FILE:${target}>
WORKING_DIRECTORY ${CPACK_TEMPORARY_INSTALL_DIRECTORY}/ALL_COMPONENTS_IN_ONE/${CPACK_PACKAGE_INSTALL_DIRECTORY}/bin
)
message(STATUS "Signing the target ${target}")
else ()
set (target_path ${CPACK_TEMPORARY_INSTALL_DIRECTORY}/ALL_COMPONENTS_IN_ONE/${CPACK_PACKAGE_INSTALL_DIRECTORY}/bin)
message(DEBUG "Signing the target ${target} using ${target_path}")
endif ()
endforeach ()
1 change: 0 additions & 1 deletion hdf/fortran/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -187,5 +187,4 @@ if (HDF4_EXPORTED_TARGETS)
FRAMEWORK DESTINATION ${HDF4_INSTALL_FWRK_DIR} COMPONENT fortlibraries
INCLUDES DESTINATION include
)
set (HDF4_INSTALL_TARGETS ${HDF4_INSTALL_TARGETS} ${install_targets} PARENT_SCOPE)
endif ()
1 change: 0 additions & 1 deletion hdf/src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -216,7 +216,6 @@ if (HDF4_EXPORTED_TARGETS)
FRAMEWORK DESTINATION ${HDF4_INSTALL_FWRK_DIR} COMPONENT libraries
INCLUDES DESTINATION include
)
set (HDF4_INSTALL_TARGETS ${HDF4_INSTALL_TARGETS} ${install_targets} PARENT_SCOPE)
endif ()

#-----------------------------------------------------------------------------
Expand Down
2 changes: 0 additions & 2 deletions hdf/util/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -263,7 +263,6 @@ if (HDF4_BUILD_TOOLS)
TARGETS ${H4_DEP_EXECUTABLES}
RUNTIME DESTINATION ${HDF4_INSTALL_TOOLS_BIN_DIR} COMPONENT toolsapplications
)
set (HDF4_INSTALL_TARGETS ${HDF4_INSTALL_TARGETS} ${H4_DEP_EXECUTABLES} PARENT_SCOPE)
endif ()

if (HDF4_BUILD_UTILS)
Expand All @@ -275,5 +274,4 @@ if (HDF4_BUILD_UTILS)
TARGETS ${H4_DEP_UTILITIES}
RUNTIME DESTINATION ${HDF4_INSTALL_UTILS_BIN_DIR} COMPONENT utilsapplications
)
set (HDF4_INSTALL_TARGETS ${HDF4_INSTALL_TARGETS} ${H4_DEP_UTILITIES} PARENT_SCOPE)
endif ()
1 change: 0 additions & 1 deletion mfhdf/fortran/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -171,7 +171,6 @@ install (
FRAMEWORK DESTINATION ${HDF4_INSTALL_FWRK_DIR} COMPONENT fortlibraries
INCLUDES DESTINATION include
)
set (HDF4_INSTALL_TARGETS ${HDF4_INSTALL_TARGETS} ${install_targets} PARENT_SCOPE)

#-----------------------------------------------------------------------------
# Create pkgconfig files
Expand Down
1 change: 0 additions & 1 deletion mfhdf/hdfimport/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -48,5 +48,4 @@ install (
${HDF4_EXPORTED_TARGETS}
RUNTIME DESTINATION ${HDF4_INSTALL_TOOLS_BIN_DIR} COMPONENT toolsapplications
)
set (HDF4_INSTALL_TARGETS ${HDF4_INSTALL_TARGETS} ${H4_DEP_EXECUTABLES} PARENT_SCOPE)

1 change: 0 additions & 1 deletion mfhdf/hdiff/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -59,4 +59,3 @@ install (
${HDF4_EXPORTED_TARGETS}
RUNTIME DESTINATION ${HDF4_INSTALL_TOOLS_BIN_DIR} COMPONENT toolsapplications
)
set (HDF4_INSTALL_TARGETS ${HDF4_INSTALL_TARGETS} ${H4_DEP_EXECUTABLES} PARENT_SCOPE)
1 change: 0 additions & 1 deletion mfhdf/hdp/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -53,4 +53,3 @@ install (
${HDF4_EXPORTED_TARGETS}
RUNTIME DESTINATION ${HDF4_INSTALL_TOOLS_BIN_DIR} COMPONENT toolsapplications
)
set (HDF4_INSTALL_TARGETS ${HDF4_INSTALL_TARGETS} ${H4_DEP_EXECUTABLES} PARENT_SCOPE)
1 change: 0 additions & 1 deletion mfhdf/hrepack/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -69,4 +69,3 @@ install (
${HDF4_EXPORTED_TARGETS}
RUNTIME DESTINATION ${HDF4_INSTALL_TOOLS_BIN_DIR} COMPONENT toolsapplications
)
set (HDF4_INSTALL_TARGETS ${HDF4_INSTALL_TARGETS} ${H4_DEP_EXECUTABLES} PARENT_SCOPE)
1 change: 0 additions & 1 deletion mfhdf/src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,6 @@ install (
FRAMEWORK DESTINATION ${HDF4_INSTALL_FWRK_DIR} COMPONENT libraries
INCLUDES DESTINATION include
)
set (HDF4_INSTALL_TARGETS ${HDF4_INSTALL_TARGETS} ${install_targets} PARENT_SCOPE)

#-----------------------------------------------------------------------------
# Create pkgconfig files
Expand Down

0 comments on commit a9c3f3d

Please sign in to comment.