diff options
author | Robert Tari <robert@tari.in> | 2020-11-08 13:50:13 +0100 |
---|---|---|
committer | Robert Tari <robert@tari.in> | 2020-11-10 12:10:27 +0100 |
commit | f9a39b44803e6347c72c1edd8ba46f633e99dd57 (patch) | |
tree | 558d0879ddc9318f7e9c0bb7362fd7f086fa29f0 /data/CMakeLists.txt | |
parent | f872e9097ff373a172119bd3f7e9d0ef84b31ce1 (diff) | |
download | ayatana-indicator-notifications-f9a39b44803e6347c72c1edd8ba46f633e99dd57.tar.gz ayatana-indicator-notifications-f9a39b44803e6347c72c1edd8ba46f633e99dd57.tar.bz2 ayatana-indicator-notifications-f9a39b44803e6347c72c1edd8ba46f633e99dd57.zip |
Rewrite to indicator-ng, simplify, drop all GTK references, move to CMake
fixes #9, fixes #12
Diffstat (limited to 'data/CMakeLists.txt')
-rw-r--r-- | data/CMakeLists.txt | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt new file mode 100644 index 0000000..b806dd1 --- /dev/null +++ b/data/CMakeLists.txt @@ -0,0 +1,83 @@ +## +## GSettings schema +## + +include (UseGSettings) +set (SCHEMA_NAME "org.ayatana.indicator.notifications.gschema.xml") +set (SCHEMA_FILE "${CMAKE_CURRENT_BINARY_DIR}/${SCHEMA_NAME}") +set (SCHEMA_FILE_IN "${CMAKE_CURRENT_SOURCE_DIR}/${SCHEMA_NAME}.in") + +# generate the .xml file using intltool +set (ENV{LC_ALL} "C") +execute_process (COMMAND intltool-merge -quiet --xml-style --utf8 --no-translations "${SCHEMA_FILE_IN}" "${SCHEMA_FILE}") + +# let UseGSettings do the rest +add_schema (${SCHEMA_FILE}) + +## +## Systemd Unit File +## + +pkg_check_modules(SYSTEMD systemd) +if (${SYSTEMD_FOUND}) + pkg_get_variable(SYSTEMD_USER_DIR systemd systemduserunitdir) + message (STATUS "${SYSTEMD_USER_DIR} is the systemd user unit file install dir") + + set (SYSTEMD_USER_NAME "${CMAKE_PROJECT_NAME}.service") + set (SYSTEMD_USER_FILE "${CMAKE_CURRENT_BINARY_DIR}/${SYSTEMD_USER_NAME}") + set (SYSTEMD_USER_FILE_IN "${CMAKE_CURRENT_SOURCE_DIR}/${SYSTEMD_USER_NAME}.in") + + # build it + set (pkglibexecdir "${CMAKE_INSTALL_FULL_PKGLIBEXECDIR}") + configure_file ("${SYSTEMD_USER_FILE_IN}" "${SYSTEMD_USER_FILE}") + + # install it + install (FILES "${SYSTEMD_USER_FILE}" + DESTINATION "${SYSTEMD_USER_DIR}") +endif() + +## +## XDG Autostart File +## + +# where to install +set (XDG_AUTOSTART_DIR "/etc/xdg/autostart") +message (STATUS "${XDG_AUTOSTART_DIR} is the DBus Service File install dir") + +set (XDG_AUTOSTART_NAME "${CMAKE_PROJECT_NAME}.desktop") +set (XDG_AUTOSTART_FILE "${CMAKE_CURRENT_BINARY_DIR}/${XDG_AUTOSTART_NAME}") +set (XDG_AUTOSTART_FILE_IN "${CMAKE_CURRENT_SOURCE_DIR}/${XDG_AUTOSTART_NAME}.in") + +# build it +set (pkglibexecdir "${CMAKE_INSTALL_FULL_PKGLIBEXECDIR}") +configure_file ("${XDG_AUTOSTART_FILE_IN}" "${XDG_AUTOSTART_FILE}") + +# install it +install (FILES "${XDG_AUTOSTART_FILE}" + DESTINATION "${XDG_AUTOSTART_DIR}") + +## Ayatana Indicators File +## + +# where to install +set (AYATANA_INDICATOR_DIR "${CMAKE_INSTALL_FULL_DATAROOTDIR}/ayatana/indicators") +message (STATUS "${AYATANA_INDICATOR_DIR} is the Ayatana Indicators install dir") + +set (AYATANA_INDICATOR_NAME "org.ayatana.indicator.notifications") +set (AYATANA_INDICATOR_FILE "${CMAKE_CURRENT_SOURCE_DIR}/${AYATANA_INDICATOR_NAME}") + +install (FILES "${AYATANA_INDICATOR_FILE}" + DESTINATION "${AYATANA_INDICATOR_DIR}") + +## +## Icons +## + +# where to install +set (ICON_DIR "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_DATADIR}/icons/hicolor") +message (STATUS "${ICON_DIR} is the Icon install dir") + +install (DIRECTORY icons/scalable DESTINATION "${ICON_DIR}" FILES_MATCHING PATTERN "*.svg") + +install(CODE "execute_process (COMMAND gtk-update-icon-cache -t -f ${ICON_DIR})" + CODE "message (STATUS \"Updating icon cache\")") |