From ae00878274178e98e57d02471cfce8f8228a55d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christian=20Hohnst=C3=A4dt?= Date: Sun, 23 May 2021 11:50:59 +0200 Subject: [PATCH] cmake: Improve packaging --- CMakeLists.txt | 15 ++++++++++++++- cmake/git_version.cmake | 3 +++ img/CMakeLists.txt | 4 ++++ 3 files changed, 21 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index fedaf42c..7cf4d3b8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -53,6 +53,7 @@ target_link_libraries(${CMAKE_PROJECT_NAME} target_link_libraries(xcadoc core Qt5::Core) if (APPLE) + find_library(IOKIT_LIBRARY IOKit) find_library(COREFOUNDATION_LIBRARY CoreFoundation) target_link_libraries(${CMAKE_PROJECT_NAME} @@ -71,6 +72,11 @@ if (APPLE) list(APPEND sqlplugin_paths "${loc}") endforeach() qt5_import_plugins(${CMAKE_PROJECT_NAME} INCLUDE_BY_TYPE sqldrivers) + +elseif(WIN32) + + set(QT_USE_QTMAIN TRUE) + endif() ##### Sub directories @@ -95,7 +101,12 @@ set(CPACK_PACKAGE_VERSION "${PROJECT_VERSION}") ##### Host specific settings if(APPLE) - # message(STATUS "Blaaaaaahhhh ${APP_RESOURCES}") + if (DEFINED ENV{APPLE_DEVELOPER}) + set(APPLE_CERT_3PARTY_INST "3rd Party Mac Developer Installer: $ENV{APPLE_DEVELOPER}") + set(APPLE_CERT_3PARTY_APP "3rd Party Mac Developer Application: $ENV{APPLE_DEVELOPER}") + set(APPLE_CERT_ID_APP "Developer ID Application: $ENV{APPLE_DEVELOPER}") + endif() + message(STATUS "Blaaaaaahhhh ${APP_RESOURCES}") set_target_properties(${CMAKE_PROJECT_NAME} PROPERTIES MACOSX_BUNDLE TRUE RESOURCE "${APP_RESOURCES}" @@ -106,6 +117,8 @@ if(APPLE) verify_app(xca) " COMPONENT Runtime) + set(CPACK_BUNDLE_APPLE_CERT_APP "${APPLE_CERT_ID_APP}") + set(CPACK_BUNDLE_NAME ${PROJECT_NAME}) set(CPACK_GENERATOR "DragNDrop") elseif(WIN32) diff --git a/cmake/git_version.cmake b/cmake/git_version.cmake index 1d047438..9848f10a 100644 --- a/cmake/git_version.cmake +++ b/cmake/git_version.cmake @@ -33,6 +33,9 @@ if(Git_FOUND AND EXISTS "${PROJECT_SOURCE_DIR}/.git") endif() set(RELEASE_TAG "RELEASE.${PROJECT_VERSION}" CACHE STRING "Release TAG for the release") + if (DEFINED ENV{RELEASE_TAG}) + set(RELEASE_TAG "$ENV{RELEASE_TAG}") + endif() set(RELEASE_NAME "${PROJECT_NAME}-${PROJECT_VERSION}") add_custom_command( OUTPUT "${RELEASE_NAME}.tar.gz" diff --git a/img/CMakeLists.txt b/img/CMakeLists.txt index a5cc763a..64f06437 100644 --- a/img/CMakeLists.txt +++ b/img/CMakeLists.txt @@ -12,6 +12,7 @@ macro(Install_PNG size) endmacro() if(APPLE) + ###### MAC ICONS find_program(ICONUTIL iconutil) if(ICONUTIL) @@ -27,6 +28,8 @@ if(APPLE) target_sources(${CMAKE_PROJECT_NAME} PRIVATE ${ICON_SRC}) add_dependencies(${CMAKE_PROJECT_NAME} mac-icons) endif() + set(CPACK_DMG_BACKGROUND_IMAGE "${CMAKE_CURRENT_SOURCE_DIR}/bigcert.png") + endif() if (UNIX) @@ -40,4 +43,5 @@ if (UNIX) Install_PNG(32x32) Install_PNG(48x48) Install_PNG(64x64) + endif()