b0f8064961760019a4609e05a302b9b41c4ae259
[time-slider.git] / Makefile
1 ifeq ($(wildcard .git),)
2         include VERSION
3 else
4         VERSION=$(shell git describe)
5 endif
6
7 mkinstalldirs = /usr/bin/mkdir -p
8 INSTALL = /usr/bin/install
9 INSTALL_DATA = ${INSTALL} -m 644 -t
10 INSTALL_PROGRAM = ${INSTALL} -t
11 INSTALL_SCRIPT = ${INSTALL} -t
12 RM = /usr/bin/rm -f
13 RMRF = /usr/bin/rm -Rf
14 RMDIR = /usr/bin/rmdir
15 # Use python 2.6 if PYTHON environent is not set
16 ifeq ($(strip $(PYTHON)),)
17 PYTHON = /usr/bin/python2
18 endif
19
20 SUBDIRS = po data
21
22 DISTFILES = Authors \
23                         VERSION \
24                         ChangeLog \
25                         Makefile \
26                         py-compile.py \
27                         $(SUBDIRS) \
28                         lib \
29                         usr \
30                         var \
31                         etc
32
33 clean:
34         $(RM) usr/share/time-slider/lib/time_slider/*.pyc
35         $(RM) usr/share/time-slider/lib/plugin/*.pyc
36         $(RM) usr/share/time-slider/lib/plugin/rsync/*.pyc
37         $(RM) usr/share/time-slider/lib/plugin/zfssend/*.pyc
38
39 all:
40         for subdir in $(SUBDIRS); do \
41           cd $$subdir; make; cd ..;\
42         done
43         echo $(VERSION)
44
45 dist: clean all
46         $(RMRF) time-slider-$(VERSION)
47         mkdir time-slider-$(VERSION)
48         cp -pR $(DISTFILES) time-slider-$(VERSION)
49         /usr/bin/tar cf - time-slider-$(VERSION) | bzip2 > time-slider-$(VERSION).tar.bz2
50         $(RMRF) time-slider-$(VERSION)
51
52 install:
53         for subdir in $(SUBDIRS); do \
54           cd $$subdir; \
55           make DESTDIR=$(DESTDIR) GETTEXT_PACKAGE=time-slider install; \
56           cd ..;\
57         done
58         $(mkinstalldirs) $(DESTDIR)/etc/dbus-1/system.d
59         $(INSTALL_DATA) $(DESTDIR)/etc/dbus-1/system.d etc/dbus-1/system.d/time-slider.conf
60         $(mkinstalldirs) $(DESTDIR)/etc/xdg/autostart
61         $(INSTALL_DATA) $(DESTDIR)/etc/xdg/autostart etc/xdg/autostart/*.desktop
62         $(mkinstalldirs) $(DESTDIR)/usr/lib/systemd/system
63         $(INSTALL_DATA) $(DESTDIR)/usr/lib/systemd/system etc/systemd/system/*.service
64         $(mkinstalldirs) $(DESTDIR)/lib/svc/method
65         $(INSTALL_SCRIPT) $(DESTDIR)/lib/svc/method lib/svc/method/time-slider
66         $(INSTALL_SCRIPT) $(DESTDIR)/lib/svc/method lib/svc/method/time-slider-plugin
67         $(INSTALL_SCRIPT) $(DESTDIR)/lib/svc/method lib/svc/method/time-slider-rsync
68         $(mkinstalldirs) $(DESTDIR)/usr/bin
69         $(INSTALL_PROGRAM) $(DESTDIR)/usr/bin usr/bin/time-slider-setup
70         $(mkinstalldirs) $(DESTDIR)/usr/lib/time-slider/plugins/rsync
71         $(mkinstalldirs) $(DESTDIR)/usr/lib/time-slider/plugins/zfssend
72         $(INSTALL_PROGRAM) $(DESTDIR)/usr/lib usr/lib/time-sliderd
73         $(INSTALL_PROGRAM) $(DESTDIR)/usr/lib usr/lib/time-slider-delete
74         $(INSTALL_PROGRAM) $(DESTDIR)/usr/lib usr/lib/time-slider-notify
75         $(INSTALL_PROGRAM) $(DESTDIR)/usr/lib usr/lib/time-slider-snapshot
76         $(INSTALL_PROGRAM) $(DESTDIR)/usr/lib usr/lib/time-slider-version
77         $(INSTALL_PROGRAM) $(DESTDIR)/usr/lib/time-slider/plugins/zfssend usr/lib/time-slider/plugins/zfssend/zfssend
78         $(INSTALL_PROGRAM) $(DESTDIR)/usr/lib/time-slider/plugins/rsync usr/lib/time-slider/plugins/rsync/rsync-trigger
79         $(INSTALL_PROGRAM) $(DESTDIR)/usr/lib/time-slider/plugins/rsync usr/lib/time-slider/plugins/rsync/rsync-backup
80         $(mkinstalldirs) $(DESTDIR)/usr/share/applications
81         $(INSTALL_DATA) $(DESTDIR)/usr/share/applications usr/share/applications/time-slider.desktop
82         $(mkinstalldirs) $(DESTDIR)/usr/share/icons/hicolor/16x16/apps
83         $(INSTALL_DATA) $(DESTDIR)/usr/share/icons/hicolor/16x16/apps usr/share/icons/hicolor/16x16/apps/time-slider-setup.png
84         $(mkinstalldirs) $(DESTDIR)/usr/share/icons/hicolor/24x24/apps
85         $(INSTALL_DATA) $(DESTDIR)/usr/share/icons/hicolor/24x24/apps usr/share/icons/hicolor/24x24/apps/time-slider-setup.png
86         $(mkinstalldirs) $(DESTDIR)/usr/share/icons/hicolor/32x32/apps
87         $(INSTALL_DATA) $(DESTDIR)/usr/share/icons/hicolor/32x32/apps usr/share/icons/hicolor/32x32/apps/time-slider-setup.png
88         $(mkinstalldirs) $(DESTDIR)/usr/share/icons/hicolor/36x36/apps
89         $(INSTALL_DATA) $(DESTDIR)/usr/share/icons/hicolor/36x36/apps usr/share/icons/hicolor/36x36/apps/time-slider-setup.png
90         $(mkinstalldirs) $(DESTDIR)/usr/share/icons/hicolor/48x48/apps
91         $(INSTALL_DATA) $(DESTDIR)/usr/share/icons/hicolor/48x48/apps usr/share/icons/hicolor/48x48/apps/time-slider-setup.png
92         $(mkinstalldirs) $(DESTDIR)/usr/share/icons/hicolor/72x72/apps
93         $(INSTALL_DATA) $(DESTDIR)/usr/share/icons/hicolor/72x72/apps usr/share/icons/hicolor/72x72/apps/time-slider-setup.png
94         $(mkinstalldirs) $(DESTDIR)/usr/share/icons/hicolor/96x96/apps
95         $(INSTALL_DATA) $(DESTDIR)/usr/share/icons/hicolor/96x96/apps usr/share/icons/hicolor/96x96/apps/time-slider-setup.png
96         $(mkinstalldirs) $(DESTDIR)/usr/share/time-slider/glade
97         $(INSTALL_DATA) $(DESTDIR)/usr/share/time-slider/glade usr/share/time-slider/glade/time-slider-delete.glade
98         $(INSTALL_DATA) $(DESTDIR)/usr/share/time-slider/glade usr/share/time-slider/glade/time-slider-setup.glade
99         $(INSTALL_DATA) $(DESTDIR)/usr/share/time-slider/glade usr/share/time-slider/glade/time-slider-snapshot.glade
100         $(INSTALL_DATA) $(DESTDIR)/usr/share/time-slider/glade usr/share/time-slider/glade/time-slider-version.glade
101         $(mkinstalldirs) $(DESTDIR)/usr/share/time-slider/lib/time_slider
102         for file in usr/share/time-slider/lib/time_slider/*.py; do \
103                 if test -f $$file ; then \
104                   $(INSTALL_DATA) $(DESTDIR)/usr/share/time-slider/lib/time_slider $$file; \
105                 fi; \
106         done
107         $(mkinstalldirs) $(DESTDIR)/usr/share/time-slider/lib/time_slider/linux
108         for file in usr/share/time-slider/lib/time_slider/linux/*.py; do \
109                 if test -f $$file ; then \
110                   $(INSTALL_DATA) $(DESTDIR)/usr/share/time-slider/lib/time_slider/linux $$file; \
111                 fi; \
112         done
113         $(mkinstalldirs) $(DESTDIR)/usr/share/time-slider/lib/plugin
114         for file in usr/share/time-slider/lib/plugin/*.py; do \
115                 if test -f $$file ; then \
116                   $(INSTALL_DATA) $(DESTDIR)/usr/share/time-slider/lib/plugin $$file; \
117                 fi; \
118         done
119         $(mkinstalldirs) $(DESTDIR)/usr/share/time-slider/lib/plugin/rsync
120         for file in usr/share/time-slider/lib/plugin/rsync/*.py; do \
121                 if test -f $$file ; then \
122                   $(INSTALL_DATA) $(DESTDIR)/usr/share/time-slider/lib/plugin/rsync $$file; \
123                 fi; \
124         done
125         $(mkinstalldirs) $(DESTDIR)/usr/share/time-slider/lib/plugin/zfssend
126         for file in usr/share/time-slider/lib/plugin/zfssend/*.py; do \
127                 if test -f $$file ; then \
128                   $(INSTALL_DATA) $(DESTDIR)/usr/share/time-slider/lib/plugin/zfssend $$file; \
129                 fi; \
130         done
131         $(mkinstalldirs) $(DESTDIR)/var/svc/manifest/application
132         $(INSTALL_DATA) $(DESTDIR)/var/svc/manifest/application var/svc/manifest/application/time-slider.xml
133         $(INSTALL_DATA) $(DESTDIR)/var/svc/manifest/application var/svc/manifest/application/time-slider-plugin.xml
134         $(mkinstalldirs) $(DESTDIR)/var/svc/manifest/system/filesystem
135         $(INSTALL_DATA) $(DESTDIR)/var/svc/manifest/system/filesystem var/svc/manifest/system/filesystem/auto-snapshot.xml
136         $(PYTHON) py-compile.py
137         
138 uninstall:
139         for subdir in $(SUBDIRS); do \
140           cd $$subdir; \
141           make DESTDIR=$(DESTDIR) GETTEXT_PACKAGE=time-slider uninstall; \
142           cd ..;\
143         done
144         $(RM) $(DESTDIR)/etc/dbus-1/system.d/time-slider.conf
145         $(RM) $(DESTDIR)/etc/xdg/autostart/time-slider-notify.desktop
146         $(RM) $(DESTDIR)/usr/lib/systemd/system/time-sliderd.service
147         $(RM) $(DESTDIR)/lib/svc/method/time-slider
148         $(RM) $(DESTDIR)/lib/svc/method/time-slider-plugin
149         $(RM) $(DESTDIR)/lib/svc/method/time-slider-rsync
150         $(RM) $(DESTDIR)/usr/bin/time-slider-setup
151         $(RM) $(DESTDIR)/usr/lib/time-sliderd
152         $(RM) $(DESTDIR)/usr/lib/time-slider-delete
153         $(RM) $(DESTDIR)/usr/lib/time-slider-notify
154         $(RM) $(DESTDIR)/usr/lib/time-slider-snapshot
155         $(RM) $(DESTDIR)/usr/lib/time-slider-version
156         $(RM) $(DESTDIR)/usr/lib/time-slider-zfssend
157         $(RM) $(DESTDIR)/usr/lib/time-slider-rsync
158         $(RMRF) $(DESTDIR)/usr/lib/time-slider/plugins/rsync
159         $(RMRF) $(DESTDIR)/usr/lib/time-slider/plugins/zfssend
160         $(RM) $(DESTDIR)/usr/share/applications/time-slider.desktop
161         $(RM) $(DESTDIR)/usr/share/icons/hicolor/*/apps/time-slider-setup.png
162         $(RMRF) $(DESTDIR)/usr/share/time-slider
163         $(RM) $(DESTDIR)/var/svc/manifest/application/time-slider.xml
164         $(RM) $(DESTDIR)/var/svc/manifest/application/time-slider-plugin.xml
165         $(RM) $(DESTDIR)/var/svc/manifest/system/filesystem/auto-snapshot.xml