mirror of
https://github.com/jellyfin/jellyfin-desktop.git
synced 2026-11-02 20:26:07 +00:00
75 lines
3.0 KiB
CMake
75 lines
3.0 KiB
CMake
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Plex Media Player")
|
|
set(CPACK_PACKAGE_VENDOR "Plex")
|
|
set(CPACK_PACKAGE_VERSION_MAJOR ${VERSION_MAJOR})
|
|
set(CPACK_PACKAGE_VERSION_MINOR ${VERSION_MINOR})
|
|
set(CPACK_PACKAGE_VERSION_PATCH ${VERSION_NANO})
|
|
|
|
if(APPLE)
|
|
set(CPACK_SYSTEM_NAME "macosx-x86_64")
|
|
elseif(WIN32)
|
|
set(CPACK_SYSTEM_NAME "windows-x86_64")
|
|
else()
|
|
set(CPACK_SYSTEM_NAME linux-${CMAKE_HOST_SYSTEM_PROCESSOR})
|
|
endif()
|
|
set(CPACK_PACKAGE_FILE_NAME "PlexMediaPlayer-${VERSION_STRING}-${CPACK_SYSTEM_NAME}")
|
|
set(CPACK_SOURCE_PACKAGE_FILE_NAME "PlexMediaPlayer-${VERSION_STRING}-src")
|
|
|
|
set(CPACK_PACKAGE_INSTALL_DIRECTORY "PlexMediaPlayer")
|
|
set(CPACK_STRIP_FILES 1)
|
|
|
|
set(CPACK_GENERATOR "ZIP")
|
|
|
|
if(WIN32)
|
|
list(APPEND CPACK_GENERATOR "IFW")
|
|
endif(WIN32)
|
|
|
|
# config IFW
|
|
set(CPACK_IFW_FRAMEWORK_VERSION 2.0.1)
|
|
set(CPACK_IFW_PACKAGE_NAME "Plex Media Player")
|
|
set(CPACK_IFW_PACKAGE_START_MENU_DIRECTORY "Plex Media Player")
|
|
set(CPACK_IFW_PACKAGE_TITLE "Plex Media Player Installer")
|
|
set(CPACK_IFW_PACKAGE_PUBLISHER "Plex")
|
|
set(CPACK_IFW_PRODUCT_URL "https://plex.tv")
|
|
set(CPACK_IFW_PACKAGE_ICON ${CMAKE_SOURCE_DIR}/bundle/win/Plex.ico)
|
|
set(CPACK_IFW_PACKAGE_WINDOW_ICON ${CMAKE_SOURCE_DIR}/resources/images/icon.png)
|
|
set(CPACK_IFW_TARGET_DIRECTORY "C:/Program Files/PlexMediaPlayer")
|
|
|
|
if(APPLE)
|
|
set(CPACK_INCLUDE_TOPLEVEL_DIRECTORY 0)
|
|
endif(APPLE)
|
|
|
|
configure_file(${CMAKE_SOURCE_DIR}/CMakeModules/CPackGeneratedConfig.cmake.in ${CMAKE_BINARY_DIR}/CPackGeneratedConfig.cmake)
|
|
set(CPACK_PROJECT_CONFIG_FILE ${CMAKE_BINARY_DIR}/CPackGeneratedConfig.cmake)
|
|
|
|
include(CPack)
|
|
|
|
cpack_add_component(Core DISPLAY_NAME "Plex Media Player" DESCRIPTION "Plex Media Player (Core Application)" REQUIRED)
|
|
|
|
# borrowed from https://github.com/peersafe/PeerSafe/blob/master/cmake_modules/package.cmake
|
|
if(WIN32)
|
|
string(REPLACE "." "" VCVER $ENV{VisualStudioVersion})
|
|
if(MSVC)
|
|
if(CMAKE_CL_64)
|
|
set(VC_RUNTIME_DIR "$ENV{VCInstallDir}/redist/x64/Microsoft.VC${VCVER}.CRT")
|
|
else()
|
|
set(VC_RUNTIME_DIR "$ENV{VCInstallDir}/redist/x86/Microsoft.VC${VCVER}.CRT")
|
|
endif()
|
|
find_file(MSVCP NAMES msvcp${VCVER}.dll PATHS ${VC_RUNTIME_DIR} NO_DEFAULT_PATH)
|
|
#find_file(MSVCR NAMES msvcr${VCVER}.dll PATHS ${VC_RUNTIME_DIR} NO_DEFAULT_PATH)
|
|
find_file(VCCORLIB NAMES vccorlib${VCVER}.dll PATHS ${VC_RUNTIME_DIR} NO_DEFAULT_PATH)
|
|
if(NOT MSVCP)
|
|
set(ERROR_MESSAGE "\nCould not find library msvcp${VCVER}.dll.\nRun cmake from a Visual Studio Command Prompt.")
|
|
message(FATAL_ERROR "${ERROR_MESSAGE}")
|
|
endif()
|
|
endif()
|
|
|
|
install(FILES ${MSVCP} ${VCCORLIB} DESTINATION .)
|
|
endif()
|
|
|
|
if(WIN32 AND DEFINED DEPENDENCY_ROOT)
|
|
install(FILES ${CMAKE_SOURCE_DIR}/bundle/win/qt.conf DESTINATION .)
|
|
#add_custom_command(TARGET package POST_BUILD COMMAND ${CMAKE_SOURCE_DIR}/scripts/WindowsSign.cmd ${CPACK_PACKAGE_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}.exe WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} )
|
|
# group/component configuration
|
|
include(CPackIFW)
|
|
cpack_ifw_configure_component(Core PRIORITY 1 SCRIPT ${CMAKE_SOURCE_DIR}/bundle/win/shortcut.qs)
|
|
endif(WIN32 AND DEFINED DEPENDENCY_ROOT) |