]> git.donarmstrong.com Git - deb_pkgs/autorandr.git/blob - Makefile
Add xdg autostart config so that configuration will be applied on login.
[deb_pkgs/autorandr.git] / Makefile
1 DESTDIR=/
2 PREFIX=/usr/
3
4 .PHONY: all install uninstall autorandr bash_completion autostart_config pmutils systemd udev
5
6 all:
7         @echo "Call \"make install\" to install this program."
8         @echo "Call \"make uninstall\" to remove this program."
9         @echo
10         @echo "The following components were autodetected and will be installed:"
11         @echo " "$(DEFAULT_TARGETS)
12         @echo "You can use the TARGETS variable to override, e.g. \"make install TAGETS='autorandr pmutils'\"."
13         @echo
14         @echo "The following additional targets are available:"
15         @echo
16         @echo "    make deb        creates a Debian package"
17
18 # Rules for autorandr itself
19 DEFAULT_TARGETS=autorandr
20
21 install_autorandr:
22         install -D -m 755 autorandr.py ${DESTDIR}${PREFIX}/bin/autorandr
23
24 uninstall_autorandr:
25         rm -f ${DESTDIR}${PREFIX}/bin/autorandr
26
27 # Rules for bash_completion
28 BASH_COMPLETION_DIR=/etc/bash_completion.d
29 HAVE_BASH_COMPLETION=$(shell [ -d /etc/bash_completion.d/ ] && echo "y")
30 ifeq ($(HAVE_BASH_COMPLETION),y)
31 DEFAULT_TARGETS+=bash_completion
32 endif
33
34 install_bash_completion:
35         install -D -m 644 contrib/bash_completion/autorandr ${DESTDIR}/${BASH_COMPLETION_DIR}/autorandr
36
37 uninstall_bash_completion:
38         rm -f ${DESTDIR}/${BASH_COMPLETION_DIR}/autorandr
39
40 # Rules for autostart config
41 XDG_AUTOSTART_DIR=/etc/xdg/autostart
42
43 install_autostart_config:
44         install -D -m 644 contrib/etc/xdg/autostart/autorandr.desktop ${DESTDIR}/${XDG_AUTOSTART_DIR}/autorandr.desktop
45
46 uninstall_autostart_config:
47         rm -f ${DESTDIR}/${XDG_AUTOSTART_DIR}/autorandr.desktop
48
49 # Rules for pmutils
50 PM_UTILS_DIR=/etc/pm/sleep.d
51 HAVE_PMUTILS=$(shell [ -x /usr/sbin/pm-suspend ] && echo "y")
52 ifeq ($(HAVE_PMUTILS),y)
53 DEFAULT_TARGETS+=pmutils
54 endif
55
56 install_pmutils:
57         install -D -m 755 contrib/pm-utils/40autorandr ${DESTDIR}/${PM_UTILS_DIR}/40autorandr
58
59 uninstall_pmutils:
60         rm -f ${DESTDIR}/${PM_UTILS_DIR}/40autorandr
61
62 # Rules for systemd
63 SYSTEMD_UNIT_DIR=/etc/systemd/system/
64 HAVE_SYSTEMD=$(shell grep -q systemd /proc/1/comm && echo "y")
65 ifeq ($(HAVE_SYSTEMD),y)
66 DEFAULT_TARGETS+=systemd
67 endif
68
69 install_systemd:
70         install -D -m 644 contrib/systemd/autorandr-resume.service ${DESTDIR}/${SYSTEMD_UNIT_DIR}/autorandr-resume.service
71
72 uninstall_systemd:
73         rm -f ${DESTDIR}/${SYSTEMD_UNIT_DIR}/autorandr-resume.service
74
75 # Rules for udev
76 UDEV_RULES_DIR=/etc/udev/rules.d
77 HAVE_UDEV=$(shell [ -d "${UDEV_RULES_DIR}" ] && echo "y")
78 ifeq ($(HAVE_UDEV),y)
79 DEFAULT_TARGETS+=udev
80 endif
81
82 install_udev:
83         install -D -m 644 contrib/udev/40-monitor-hotplug.rules ${DESTDIR}/${UDEV_RULES_DIR}/40-monitor-hotplug.rules
84 ifeq (${USER},root)
85         udevadm control --reload-rules
86 else
87         @echo "Please run this command as root:"
88         @echo "    udevadm control --reload-rules"
89 endif
90
91 uninstall_udev:
92         rm -f ${DESTDIR}/${UDEV_RULES_DIR}/40-monitor-hotplug.rules
93
94
95 TARGETS=$(DEFAULT_TARGETS)
96 install: $(patsubst %,install_%,$(TARGETS))
97 uninstall: $(patsubst %,uninstall_%,$(TARGETS))
98
99 deb:
100         ./contrib/packaging/debian/make_deb.sh