build(cmake): Use GNUInstallDirs to install data and lib directories (#1817)
This commit is contained in:
parent
44b34d1e23
commit
faeeb7ec57
4 changed files with 16 additions and 14 deletions
|
|
@ -9,9 +9,9 @@ if(${SUNSHINE_BUILD_APPIMAGE} OR ${SUNSHINE_BUILD_FLATPAK})
|
||||||
DESTINATION "${SUNSHINE_ASSETS_DIR}/systemd/user")
|
DESTINATION "${SUNSHINE_ASSETS_DIR}/systemd/user")
|
||||||
else()
|
else()
|
||||||
install(FILES "${SUNSHINE_SOURCE_ASSETS_DIR}/linux/misc/85-sunshine.rules"
|
install(FILES "${SUNSHINE_SOURCE_ASSETS_DIR}/linux/misc/85-sunshine.rules"
|
||||||
DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/udev/rules.d")
|
DESTINATION "${CMAKE_INSTALL_LIBDIR}/udev/rules.d")
|
||||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/sunshine.service"
|
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/sunshine.service"
|
||||||
DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/systemd/user")
|
DESTINATION "${CMAKE_INSTALL_LIBDIR}/systemd/user")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Post install
|
# Post install
|
||||||
|
|
@ -63,19 +63,19 @@ set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS OFF)
|
||||||
|
|
||||||
# application icon
|
# application icon
|
||||||
install(FILES "${CMAKE_SOURCE_DIR}/sunshine.svg"
|
install(FILES "${CMAKE_SOURCE_DIR}/sunshine.svg"
|
||||||
DESTINATION "${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/scalable/apps")
|
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/scalable/apps")
|
||||||
|
|
||||||
# tray icon
|
# tray icon
|
||||||
if(${SUNSHINE_TRAY} STREQUAL 1)
|
if(${SUNSHINE_TRAY} STREQUAL 1)
|
||||||
install(FILES "${CMAKE_SOURCE_DIR}/sunshine.svg"
|
install(FILES "${CMAKE_SOURCE_DIR}/sunshine.svg"
|
||||||
DESTINATION "${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/scalable/status"
|
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/scalable/status"
|
||||||
RENAME "sunshine-tray.svg")
|
RENAME "sunshine-tray.svg")
|
||||||
install(FILES "${SUNSHINE_SOURCE_ASSETS_DIR}/common/assets/web/public/images/sunshine-playing.svg"
|
install(FILES "${SUNSHINE_SOURCE_ASSETS_DIR}/common/assets/web/public/images/sunshine-playing.svg"
|
||||||
DESTINATION "${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/scalable/status")
|
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/scalable/status")
|
||||||
install(FILES "${SUNSHINE_SOURCE_ASSETS_DIR}/common/assets/web/public/images/sunshine-pausing.svg"
|
install(FILES "${SUNSHINE_SOURCE_ASSETS_DIR}/common/assets/web/public/images/sunshine-pausing.svg"
|
||||||
DESTINATION "${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/scalable/status")
|
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/scalable/status")
|
||||||
install(FILES "${SUNSHINE_SOURCE_ASSETS_DIR}/common/assets/web/public/images/sunshine-locked.svg"
|
install(FILES "${SUNSHINE_SOURCE_ASSETS_DIR}/common/assets/web/public/images/sunshine-locked.svg"
|
||||||
DESTINATION "${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/scalable/status")
|
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/scalable/status")
|
||||||
|
|
||||||
set(CPACK_DEBIAN_PACKAGE_DEPENDS "\
|
set(CPACK_DEBIAN_PACKAGE_DEPENDS "\
|
||||||
${CPACK_DEBIAN_PACKAGE_DEPENDS}, \
|
${CPACK_DEBIAN_PACKAGE_DEPENDS}, \
|
||||||
|
|
@ -89,17 +89,17 @@ endif()
|
||||||
# desktop file
|
# desktop file
|
||||||
# todo - validate desktop files with `desktop-file-validate`
|
# todo - validate desktop files with `desktop-file-validate`
|
||||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/sunshine.desktop"
|
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/sunshine.desktop"
|
||||||
DESTINATION "${CMAKE_INSTALL_PREFIX}/share/applications")
|
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applications")
|
||||||
if(NOT ${SUNSHINE_BUILD_APPIMAGE})
|
if(NOT ${SUNSHINE_BUILD_APPIMAGE})
|
||||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/sunshine_terminal.desktop"
|
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/sunshine_terminal.desktop"
|
||||||
DESTINATION "${CMAKE_INSTALL_PREFIX}/share/applications")
|
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applications")
|
||||||
endif()
|
endif()
|
||||||
if(${SUNSHINE_BUILD_FLATPAK})
|
if(${SUNSHINE_BUILD_FLATPAK})
|
||||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/sunshine_kms.desktop"
|
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/sunshine_kms.desktop"
|
||||||
DESTINATION "${CMAKE_INSTALL_PREFIX}/share/applications")
|
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applications")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# metadata file
|
# metadata file
|
||||||
# todo - validate file with `appstream-util validate-relax`
|
# todo - validate file with `appstream-util validate-relax`
|
||||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/sunshine.appdata.xml"
|
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/sunshine.appdata.xml"
|
||||||
DESTINATION "${CMAKE_INSTALL_PREFIX}/share/metainfo")
|
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/metainfo")
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
# unix specific packaging
|
# unix specific packaging
|
||||||
# put anything here that applies to both linux and macos
|
# put anything here that applies to both linux and macos
|
||||||
|
|
||||||
|
include(GNUInstallDirs)
|
||||||
|
|
||||||
# return here if building a macos package
|
# return here if building a macos package
|
||||||
if(SUNSHINE_PACKAGE_MACOS)
|
if(SUNSHINE_PACKAGE_MACOS)
|
||||||
return()
|
return()
|
||||||
|
|
|
||||||
|
|
@ -12,9 +12,9 @@ Actions=RunInTerminal;KMS;
|
||||||
[Desktop Action RunInTerminal]
|
[Desktop Action RunInTerminal]
|
||||||
Name=Run in Terminal
|
Name=Run in Terminal
|
||||||
Icon=application-x-executable
|
Icon=application-x-executable
|
||||||
Exec=gio launch @CMAKE_INSTALL_PREFIX@/share/applications/sunshine_terminal.desktop
|
Exec=gio launch @CMAKE_INSTALL_DATAROOTDIR@/applications/sunshine_terminal.desktop
|
||||||
|
|
||||||
[Desktop Action KMS]
|
[Desktop Action KMS]
|
||||||
Name=Run in Terminal (KMS)
|
Name=Run in Terminal (KMS)
|
||||||
Icon=application-x-executable
|
Icon=application-x-executable
|
||||||
Exec=gio launch @CMAKE_INSTALL_PREFIX@/share/applications/sunshine_kms.desktop
|
Exec=gio launch @CMAKE_INSTALL_DATAROOTDIR@/applications/sunshine_kms.desktop
|
||||||
|
|
|
||||||
|
|
@ -12,4 +12,4 @@ Actions=RunInTerminal;
|
||||||
[Desktop Action RunInTerminal]
|
[Desktop Action RunInTerminal]
|
||||||
Name=Run in Terminal
|
Name=Run in Terminal
|
||||||
Icon=application-x-executable
|
Icon=application-x-executable
|
||||||
Exec=gio launch @CMAKE_INSTALL_PREFIX@/share/applications/sunshine_terminal.desktop
|
Exec=gio launch @CMAKE_INSTALL_DATAROOTDIR@/applications/sunshine_terminal.desktop
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue