CMakeLists.txt tweaks for release builds

This commit is contained in:
Marcus Holland-Moritz 2023-07-10 11:20:50 +02:00
parent a2628fd71e
commit da79f53e02

View File

@ -1108,18 +1108,19 @@ if(STATIC_BUILD_DO_NOT_USE OR WIN32)
add_custom_target(universal_upx DEPENDS ${UNIVERSAL_PACKED}) add_custom_target(universal_upx DEPENDS ${UNIVERSAL_PACKED})
if(PRJ_GIT_RELEASE_TAG) if(DEFINED ENV{GITHUB_REF_TYPE})
set(ARTIFACTS_SUBDIR "releases") if($ENV{GITHUB_REF_TYPE} == "tag")
set(ARTIFACTS_SUBDIR "releases/$ENV{GITHUB_REF_NAME}@${PRJ_GIT_REV}")
else() else()
set(ARTIFACTS_SUBDIR "builds") set(ARTIFACTS_SUBDIR "builds/${PRJ_VERSION_FULL}")
endif() endif()
set(ARTIFACTS_FULL_PATH "${DWARFS_ARTIFACTS_DIR}/${ARTIFACTS_SUBDIR}/${PRJ_VERSION_FULL}") set(ARTIFACTS_FULL_PATH "${DWARFS_ARTIFACTS_DIR}/${ARTIFACTS_SUBDIR}")
if(WIN32) if(WIN32)
set(PACKAGE_EXT ".7z") set(PACKAGE_EXT ".7z")
else() else()
set(PACKAGE_EXT ".tar.xz") set(PACKAGE_EXT ".tar.zstd")
endif() endif()
add_custom_target(copy_artifacts add_custom_target(copy_artifacts
@ -1132,6 +1133,7 @@ if(STATIC_BUILD_DO_NOT_USE OR WIN32)
COMMAND ${CMAKE_COMMAND} -E make_directory ${ARTIFACTS_FULL_PATH} COMMAND ${CMAKE_COMMAND} -E make_directory ${ARTIFACTS_FULL_PATH}
COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_PROJECT_NAME}-${PRJ_VERSION_FULL}${PACKAGE_EXT} ${ARTIFACTS_FULL_PATH} COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_PROJECT_NAME}-${PRJ_VERSION_FULL}${PACKAGE_EXT} ${ARTIFACTS_FULL_PATH}
) )
endif()
endif() endif()
if(NOT "${PRJ_VERSION_FULL}" STREQUAL "") if(NOT "${PRJ_VERSION_FULL}" STREQUAL "")
@ -1144,7 +1146,8 @@ if(NOT "${PRJ_VERSION_FULL}" STREQUAL "")
# set(CPACK_GENERATOR "NSIS;ZIP;7Z") # set(CPACK_GENERATOR "NSIS;ZIP;7Z")
set(CPACK_GENERATOR "7Z") set(CPACK_GENERATOR "7Z")
else() else()
set(CPACK_GENERATOR "TXZ") # use TZST and later re-pack as TXZ
set(CPACK_GENERATOR "TZST")
endif() endif()
set(CPACK_SOURCE_GENERATOR "${CPACK_GENERATOR}") set(CPACK_SOURCE_GENERATOR "${CPACK_GENERATOR}")
set(CPACK_PACKAGE_VERSION_MAJOR "${PRJ_VERSION_MAJOR}") set(CPACK_PACKAGE_VERSION_MAJOR "${PRJ_VERSION_MAJOR}")