From 032c64f72c05334bec3c9855811a079b38bdef49 Mon Sep 17 00:00:00 2001 From: ToKiNoBug Date: Mon, 30 Oct 2023 19:54:09 +0800 Subject: [PATCH] Enable CPack to make NSIS installer for windows Signed-off-by: ToKiNoBug --- cmake/cpack-configs/nsis.cmake | 27 +++++++++++++++++++++++++++ cmake/set_package_info.cmake | 8 ++++++++ docs/images/kompute.ico | Bin 0 -> 4286 bytes 3 files changed, 35 insertions(+) create mode 100644 cmake/cpack-configs/nsis.cmake create mode 100644 docs/images/kompute.ico diff --git a/cmake/cpack-configs/nsis.cmake b/cmake/cpack-configs/nsis.cmake new file mode 100644 index 00000000..9cbc64a1 --- /dev/null +++ b/cmake/cpack-configs/nsis.cmake @@ -0,0 +1,27 @@ +# This file is for generating .exe installer (NSIS) for Windows + +# Here are all variables for NSIS generators. +# Commented variables are not used, or their default values are ok. +# Also see https://cmake.org/cmake/help/v3.20/cpack_gen/nsis.html + +# The compressing method. Supported values: ZLIB, BZIP2 and LZMA +set(CPACK_NSIS_COMPRESSOR "LZMA") + +# The name appears in Windows Apps & features in Control Panel +set(CPACK_NSIS_DISPLAY_NAME "Kompute") + +# Ask the user whether to uninstall the previous versions +set(CPACK_NSIS_ENABLE_UNINSTALL_BEFORE_INSTALL ON) + +# The icon of exe installer +set(CPACK_NSIS_MUI_ICON "${CMAKE_SOURCE_DIR}/docs/images/kompute.ico") + +# The icon of exe uninstaller +set(CPACK_NSIS_MUI_UNIICON ${CPACK_NSIS_MUI_ICON}) + +set(CPACK_NSIS_URL_INFO_ABOUT "https://kompute.cc") +set(CPACK_NSIS_HELP_LINK "https://kompute.cc/overview/community.html") + +#set(CPACK_NSNS_CONTACT) +#set(CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP) +#set(CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP) \ No newline at end of file diff --git a/cmake/set_package_info.cmake b/cmake/set_package_info.cmake index 5131f6cd..a2c76e1a 100644 --- a/cmake/set_package_info.cmake +++ b/cmake/set_package_info.cmake @@ -14,6 +14,14 @@ set(CPACK_PACKAGE_DESCRIPTION "General purpose GPU compute framework built on Vu set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "GPGPU framework built on Vulkan.") set(CPACK_PACKAGE_HOMEPAGE_URL "https://kompute.cc/") +# The license file used by GUI installers +set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/LICENSE") +# The readme file used by GUI installers +set(CPACK_RESOURCE_FILE_README "${CMAKE_SOURCE_DIR}/README.md") + +set(CPACK_PACKAGE_INSTALL_DIRECTORY "${PROJECT_NAME}\\\\${PROJECT_VERSION}") +# set(CPACK_PACKAGE_ICON "${CMAKE_SOURCE_DIR}/docs/images/kompute.jpg") + # Other common variables, in most cases they are not used, # otherwise their default values are ok. # Also see https://cmake.org/cmake/help/v3.20/module/CPack.html diff --git a/docs/images/kompute.ico b/docs/images/kompute.ico new file mode 100644 index 0000000000000000000000000000000000000000..bb38438330715759d704df6e5080f1091bd17866 GIT binary patch literal 4286 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 g8j~b~?_t4*t4H{ppCr2Y1|}ao|L6Y?_