]> git.donarmstrong.com Git - deb_pkgs/autorandr.git/blobdiff - Makefile
udev rule: Dynamically call either systemd or autorandr directly depending on whether...
[deb_pkgs/autorandr.git] / Makefile
index 797bf597bade630b917ca513696558825f36b7e4..8ce4906ea200fb958f3ceda1a19006f65d498dbe 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -53,6 +53,9 @@ DEFAULT_TARGETS+=autostart_config
 
 install_autostart_config:
        install -D -m 644 contrib/etc/xdg/autostart/autorandr.desktop ${DESTDIR}/${XDG_AUTOSTART_DIR}/autorandr.desktop
+ifneq ($(PREFIX),/usr/)
+       sed -i -re 's#/usr/bin/autorandr#$(subst #,\#,${PREFIX})/bin/autorandr#g' ${DESTDIR}/${XDG_AUTOSTART_DIR}/autorandr.desktop
+endif
 
 uninstall_autostart_config:
        rm -f ${DESTDIR}/${XDG_AUTOSTART_DIR}/autorandr.desktop
@@ -66,6 +69,9 @@ endif
 install_systemd:
        $(if $(SYSTEMD_UNIT_DIR),,$(error SYSTEMD_UNIT_DIR is not defined))
        install -D -m 644 contrib/systemd/autorandr.service ${DESTDIR}/${SYSTEMD_UNIT_DIR}/autorandr.service
+ifneq ($(PREFIX),/usr/)
+       sed -i -re 's#/usr/bin/autorandr#$(subst #,\#,${PREFIX})/bin/autorandr#g' ${DESTDIR}/${SYSTEMD_UNIT_DIR}/autorandr.service
+endif
 
 uninstall_systemd:
        $(if $(SYSTEMD_UNIT_DIR),,$(error SYSTEMD_UNIT_DIR is not defined))
@@ -82,6 +88,9 @@ endif
 install_pmutils:
        $(if $(PM_SLEEPHOOKS_DIR),,$(error PM_SLEEPHOOKS_DIR is not defined))
        install -D -m 755 contrib/pm-utils/40autorandr ${DESTDIR}/${PM_SLEEPHOOKS_DIR}/40autorandr
+ifneq ($(PREFIX),/usr/)
+       sed -i -re 's#/usr/bin/autorandr#$(subst #,\#,${PREFIX})/bin/autorandr#g' ${DESTDIR}/${PM_SLEEPHOOKS_DIR}/40autorandr
+endif
 
 uninstall_pmutils:
        $(if $(PM_SLEEPHOOKS_DIR),,$(error PM_SLEEPHOOKS_DIR is not defined))
@@ -96,7 +105,8 @@ endif
 
 install_udev:
        $(if $(UDEV_RULES_DIR),,$(error UDEV_RULES_DIR is not defined))
-       install -D -m 644 contrib/udev/40-monitor-hotplug.rules ${DESTDIR}/${UDEV_RULES_DIR}/40-monitor-hotplug.rules
+       mkdir -p ${DESTDIR}/${UDEV_RULES_DIR}/
+       echo 'ACTION=="change", SUBSYSTEM=="drm", RUN+="$(if $(findstring systemd, $(TARGETS)),/bin/systemctl start autorandr.service,${PREFIX}/bin/autorandr --batch --change --default default)"' > ${DESTDIR}/${UDEV_RULES_DIR}/40-monitor-hotplug.rules
 ifeq (${USER},root)
        udevadm control --reload-rules
 else