mirror of
https://github.com/LizardByte/Sunshine.git
synced 2024-11-16 23:10:13 +00:00
47 lines
1.8 KiB
CMake
47 lines
1.8 KiB
CMake
# common packaging
|
|
|
|
# common cpack options
|
|
set(CPACK_PACKAGE_NAME ${CMAKE_PROJECT_NAME})
|
|
set(CPACK_PACKAGE_VENDOR "LizardByte")
|
|
string(REGEX REPLACE "^v" "" CPACK_PACKAGE_VERSION ${PROJECT_VERSION}) # remove the v prefix if it exists
|
|
set(CPACK_PACKAGE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/cpack_artifacts)
|
|
set(CPACK_PACKAGE_CONTACT "https://app.lizardbyte.dev")
|
|
set(CPACK_PACKAGE_DESCRIPTION ${CMAKE_PROJECT_DESCRIPTION})
|
|
set(CPACK_PACKAGE_HOMEPAGE_URL ${CMAKE_PROJECT_HOMEPAGE_URL})
|
|
set(CPACK_RESOURCE_FILE_LICENSE ${PROJECT_SOURCE_DIR}/LICENSE)
|
|
set(CPACK_PACKAGE_ICON ${PROJECT_SOURCE_DIR}/sunshine.png)
|
|
set(CPACK_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME}")
|
|
set(CPACK_STRIP_FILES YES)
|
|
|
|
# install common assets
|
|
install(DIRECTORY "${SUNSHINE_SOURCE_ASSETS_DIR}/common/assets/"
|
|
DESTINATION "${SUNSHINE_ASSETS_DIR}"
|
|
PATTERN "web" EXCLUDE)
|
|
# copy assets to build directory, for running without install
|
|
file(GLOB_RECURSE ALL_ASSETS
|
|
RELATIVE "${SUNSHINE_SOURCE_ASSETS_DIR}/common/assets/" "${SUNSHINE_SOURCE_ASSETS_DIR}/common/assets/*")
|
|
list(FILTER ALL_ASSETS EXCLUDE REGEX "^web/.*$") # Filter out the web directory
|
|
foreach(asset ${ALL_ASSETS}) # Copy assets to build directory, excluding the web directory
|
|
file(COPY "${SUNSHINE_SOURCE_ASSETS_DIR}/common/assets/${asset}"
|
|
DESTINATION "${CMAKE_CURRENT_BINARY_DIR}/assets")
|
|
endforeach()
|
|
|
|
# install built vite assets
|
|
install(DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/assets/web"
|
|
DESTINATION "${SUNSHINE_ASSETS_DIR}")
|
|
|
|
# platform specific packaging
|
|
if(WIN32)
|
|
include(${CMAKE_MODULE_PATH}/packaging/windows.cmake)
|
|
elseif(UNIX)
|
|
include(${CMAKE_MODULE_PATH}/packaging/unix.cmake)
|
|
|
|
if(APPLE)
|
|
include(${CMAKE_MODULE_PATH}/packaging/macos.cmake)
|
|
else()
|
|
include(${CMAKE_MODULE_PATH}/packaging/linux.cmake)
|
|
endif()
|
|
endif()
|
|
|
|
include(CPack)
|