diff --git a/CMakeLists.txt b/CMakeLists.txt index 73dfee71d..295722ad7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -89,6 +89,23 @@ configure_libs() add_subdirectory(doc) add_subdirectory(src) +# Install License, License is in the App Bundle on mac os (src/gui) +if(WIN32) + install( + FILES + ${PROJECT_SOURCE_DIR}/LICENSE + ${PROJECT_SOURCE_DIR}/LICENSE_EXCEPTION + DESTINATION . + ) +elseif(UNIX AND NOT APPLE) + install( + FILES + ${PROJECT_SOURCE_DIR}/LICENSE + ${PROJECT_SOURCE_DIR}/LICENSE_EXCEPTION + DESTINATION share/licenses/deskflow + ) +endif() + option(BUILD_INSTALLER "Build installer" ON) if(BUILD_INSTALLER) add_subdirectory(deploy) diff --git a/deploy/CMakeLists.txt b/deploy/CMakeLists.txt index 35f05c527..582d646c3 100644 --- a/deploy/CMakeLists.txt +++ b/deploy/CMakeLists.txt @@ -1,6 +1,13 @@ # SPDX-FileCopyrightText: 2024 Chris Rizzitello # SPDX-License-Identifier: MIT +# Copy License with txt ext for picky package creation tools +file(COPY_FILE + ${CMAKE_SOURCE_DIR}/LICENSE + ${CMAKE_CURRENT_BINARY_DIR}/LICENSE.txt + ONLY_IF_DIFFERENT +) + # Handle Pre install Items if(WIN32) @@ -45,7 +52,7 @@ set(CPACK_PACKAGE_NAME ${CMAKE_PROJECT_NAME}) set(CPACK_PACKAGE_CONTACT "Deskflow ") set(CPACK_PACKAGE_DESCRIPTION ${CMAKE_PROJECT_DESCRIPTION}) set(CPACK_PACKAGE_VENDOR "Deskflow") -set(CPACK_RESOURCE_FILE_LICENSE ${PROJECT_SOURCE_DIR}/LICENSE) +set(CPACK_RESOURCE_FILE_LICENSE ${CMAKE_CURRENT_BINARY_DIR}/LICENSE.txt) set(CPACK_PACKAGE_VERSION ${CMAKE_PROJECT_VERSION}) @@ -91,6 +98,7 @@ elseif(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") set(CPACK_DMG_BACKGROUND_IMAGE "${PROJECT_SOURCE_DIR}/deploy/dmg-background.tiff") set(CPACK_DMG_DS_STORE_SETUP_SCRIPT "${PROJECT_SOURCE_DIR}/deploy/generate_ds_store.applescript") set(CPACK_DMG_VOLUME_NAME "Deskflow") + set(CPACK_DMG_SLA_USE_RESOURCE_FILE_LICENSE ON) set(CPACK_GENERATOR "DragNDrop") elseif(${CMAKE_SYSTEM_NAME} MATCHES "Linux") # Gather distro info diff --git a/src/gui/CMakeLists.txt b/src/gui/CMakeLists.txt index 8df567e80..1f7705d12 100644 --- a/src/gui/CMakeLists.txt +++ b/src/gui/CMakeLists.txt @@ -39,7 +39,7 @@ file(GLOB ui_files src/*.ui src/dialogs/*.ui) if(WIN32) set(platform_extra src/deskflow.rc ${PROJECT_BINARY_DIR}/src/version.rc) elseif(APPLE) - set(platform_extra src/Deskflow.icns) + set(platform_extra src/Deskflow.icns ${PROJECT_SOURCE_DIR}/LICENSE ${PROJECT_SOURCE_DIR}/LICENSE_EXCEPTION) set_source_files_properties(${platform_extra} PROPERTIES MACOSX_PACKAGE_LOCATION "Resources") endif()