diff options
author | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2025-04-01 18:58:38 +0200 |
---|---|---|
committer | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2025-04-01 18:58:38 +0200 |
commit | e46cd1329492e9e4268a7b8661155eda178b689f (patch) | |
tree | c978bd4280995318dfc39658a880f7b31e961b4f | |
parent | 7f59c03c4f77c62f76f020e30319d19016b915c8 (diff) | |
download | ayatana-indicator-datetime-e46cd1329492e9e4268a7b8661155eda178b689f.tar.gz ayatana-indicator-datetime-e46cd1329492e9e4268a7b8661155eda178b689f.tar.bz2 ayatana-indicator-datetime-e46cd1329492e9e4268a7b8661155eda178b689f.zip |
CMake: Switch to building datetime indicator in two variants with different service executable names and systemd service files.
-rw-r--r-- | data/CMakeLists.txt | 35 | ||||
-rw-r--r-- | data/ayatana-indicator-datetime.service.in | 4 | ||||
-rw-r--r-- | data/lomiri-indicator-datetime.service.in | 11 | ||||
-rw-r--r-- | src/CMakeLists.txt | 12 |
4 files changed, 45 insertions, 17 deletions
diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt index 726bcec..80a5a93 100644 --- a/data/CMakeLists.txt +++ b/data/CMakeLists.txt @@ -1,4 +1,13 @@ ## +## indicator variant +## +if (ENABLE_LOMIRI_FEATURES) + set (INDICATOR_VARIANT_NAME "lomiri-indicator-datetime") +else () + set (INDICATOR_VARIANT_NAME "${CMAKE_PROJECT_NAME}") +endif () + +## ## GSettings schema ## @@ -22,7 +31,7 @@ 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_NAME "${INDICATOR_VARIANT_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") @@ -38,20 +47,22 @@ 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") +if (NOT ENABLE_LOMIRI_FEATURES) + # 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") + 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 -configure_file ("${XDG_AUTOSTART_FILE_IN}" "${XDG_AUTOSTART_FILE}") + # build it + configure_file ("${XDG_AUTOSTART_FILE_IN}" "${XDG_AUTOSTART_FILE}") -# install XDG autostart -install (FILES "${XDG_AUTOSTART_FILE}" - DESTINATION "${XDG_AUTOSTART_DIR}") + # install XDG autostart + install (FILES "${XDG_AUTOSTART_FILE}" + DESTINATION "${XDG_AUTOSTART_DIR}") +endif() ## ## Ayatana Indicator File diff --git a/data/ayatana-indicator-datetime.service.in b/data/ayatana-indicator-datetime.service.in index d0c1941..6b7803b 100644 --- a/data/ayatana-indicator-datetime.service.in +++ b/data/ayatana-indicator-datetime.service.in @@ -1,11 +1,11 @@ [Unit] Description=Ayatana Indicator DateTime Service PartOf=graphical-session.target -PartOf=ayatana-indicators.target lomiri-indicators.target +PartOf=ayatana-indicators.target [Service] ExecStart=@CMAKE_INSTALL_FULL_LIBEXECDIR@/ayatana-indicator-datetime/ayatana-indicator-datetime-service Restart=on-failure [Install] -WantedBy=ayatana-indicators.target lomiri-indicators.target +WantedBy=ayatana-indicators.target diff --git a/data/lomiri-indicator-datetime.service.in b/data/lomiri-indicator-datetime.service.in new file mode 100644 index 0000000..517ca14 --- /dev/null +++ b/data/lomiri-indicator-datetime.service.in @@ -0,0 +1,11 @@ +[Unit] +Description=Lomiri Indicator DateTime Service +PartOf=graphical-session.target +PartOf=lomiri-indicators.target + +[Service] +ExecStart=@CMAKE_INSTALL_FULL_LIBEXECDIR@/lomiri-indicator-datetime/lomiri-indicator-datetime-service +Restart=on-failure + +[Install] +WantedBy=lomiri-indicators.target diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index e13a4f1..2bc4452 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,7 +1,13 @@ set (SERVICE_LIB "indicatordatetimeservice") -set (SERVICE_EXEC "ayatana-indicator-datetime-service") -add_definitions (-DG_LOG_DOMAIN="ayatana-indicator-datetime") +if (ENABLE_LOMIRI_FEATURES) + set (INDICATOR_VARIANT_NAME "lomiri-indicator-datetime") +else () + set (INDICATOR_VARIANT_NAME "${CMAKE_PROJECT_NAME}") +endif () + +add_definitions (-DG_LOG_DOMAIN="${INDICATOR_VARIANT_NAME}") +set (SERVICE_EXEC "${INDICATOR_VARIANT_NAME}-service") # handwritten sources set (SERVICE_C_SOURCES @@ -82,4 +88,4 @@ endif () add_executable (${SERVICE_EXEC} main.cpp) target_link_libraries (${SERVICE_EXEC} ${SERVICE_LIB} ${SERVICE_DEPS_LIBRARIES}) -install (TARGETS ${SERVICE_EXEC} RUNTIME DESTINATION "${CMAKE_INSTALL_FULL_LIBEXECDIR}/${CMAKE_PROJECT_NAME}") +install (TARGETS ${SERVICE_EXEC} RUNTIME DESTINATION "${CMAKE_INSTALL_FULL_LIBEXECDIR}/${INDICATOR_VARIANT_NAME}") |