1 ifeq ($(wildcard .git),)
4 VERSION=$(shell git describe)
6 MAINVER=$(shell echo $(VERSION) | cut -f1 -d'-')
7 RELEASE=$(shell echo $(VERSION) | cut -f2- -d'-' | sed -e 's/-/./g')
9 mkinstalldirs = /usr/bin/mkdir -p
10 INSTALL = /usr/bin/install
11 INSTALL_DATA = ${INSTALL} -m 644 -t
12 INSTALL_PROGRAM = ${INSTALL} -m 755 -t
13 INSTALL_SCRIPT = ${INSTALL} -t
15 RMRF = /usr/bin/rm -Rf
16 RMDIR = /usr/bin/rmdir
18 RPMBUILD = /usr/bin/rpmbuild
19 # Use python 2.6 if PYTHON environent is not set
20 ifeq ($(strip $(PYTHON)),)
21 PYTHON = /usr/bin/python2
38 $(RM) usr/share/time-slider/lib/time_slider/*.pyc
39 $(RM) usr/share/time-slider/lib/plugin/*.pyc
40 $(RM) usr/share/time-slider/lib/plugin/rsync/*.pyc
41 $(RM) usr/share/time-slider/lib/plugin/zfssend/*.pyc
42 $(RM) rpm/time-slider.spec
45 for subdir in $(SUBDIRS); do \
46 cd $$subdir; make; cd ..;\
51 $(RMRF) time-slider-$(VERSION)
52 mkdir time-slider-$(VERSION)
53 cp -pR $(DISTFILES) time-slider-$(VERSION)
54 /usr/bin/tar cf - time-slider-$(VERSION) | bzip2 > time-slider-$(VERSION).tar.bz2
55 $(RMRF) time-slider-$(VERSION)
58 for subdir in $(SUBDIRS); do \
60 make DESTDIR=$(DESTDIR) GETTEXT_PACKAGE=time-slider install; \
63 $(mkinstalldirs) $(DESTDIR)/etc/dbus-1/system.d
64 $(INSTALL_DATA) $(DESTDIR)/etc/dbus-1/system.d etc/dbus-1/system.d/time-slider.conf
65 $(mkinstalldirs) $(DESTDIR)/etc/xdg/autostart
66 $(INSTALL_DATA) $(DESTDIR)/etc/xdg/autostart etc/xdg/autostart/*.desktop
67 $(mkinstalldirs) $(DESTDIR)/usr/lib/systemd/system
68 $(INSTALL_DATA) $(DESTDIR)/usr/lib/systemd/system etc/systemd/system/*.service
69 $(mkinstalldirs) $(DESTDIR)/lib/svc/method
70 $(INSTALL_SCRIPT) $(DESTDIR)/lib/svc/method lib/svc/method/time-slider
71 $(INSTALL_SCRIPT) $(DESTDIR)/lib/svc/method lib/svc/method/time-slider-plugin
72 $(INSTALL_SCRIPT) $(DESTDIR)/lib/svc/method lib/svc/method/time-slider-rsync
73 $(mkinstalldirs) $(DESTDIR)/usr/bin
74 $(INSTALL_PROGRAM) $(DESTDIR)/usr/bin usr/bin/time-slider-setup
75 $(mkinstalldirs) $(DESTDIR)/usr/lib/time-slider/plugins/rsync
76 $(mkinstalldirs) $(DESTDIR)/usr/lib/time-slider/plugins/zfssend
77 $(INSTALL_PROGRAM) $(DESTDIR)/usr/lib usr/lib/time-sliderd
78 $(INSTALL_PROGRAM) $(DESTDIR)/usr/lib usr/lib/time-slider-delete
79 $(INSTALL_PROGRAM) $(DESTDIR)/usr/lib usr/lib/time-slider-notify
80 $(INSTALL_PROGRAM) $(DESTDIR)/usr/lib usr/lib/time-slider-snapshot
81 $(INSTALL_PROGRAM) $(DESTDIR)/usr/lib usr/lib/time-slider-version
82 $(INSTALL_PROGRAM) $(DESTDIR)/usr/lib/time-slider/plugins/zfssend usr/lib/time-slider/plugins/zfssend/zfssend
83 $(INSTALL_PROGRAM) $(DESTDIR)/usr/lib/time-slider/plugins/rsync usr/lib/time-slider/plugins/rsync/rsync-trigger
84 $(INSTALL_PROGRAM) $(DESTDIR)/usr/lib/time-slider/plugins/rsync usr/lib/time-slider/plugins/rsync/rsync-backup
85 $(mkinstalldirs) $(DESTDIR)/usr/share/applications
86 $(INSTALL_DATA) $(DESTDIR)/usr/share/applications usr/share/applications/time-slider.desktop
87 $(mkinstalldirs) $(DESTDIR)/usr/share/icons/hicolor/16x16/apps
88 $(INSTALL_DATA) $(DESTDIR)/usr/share/icons/hicolor/16x16/apps usr/share/icons/hicolor/16x16/apps/time-slider-setup.png
89 $(mkinstalldirs) $(DESTDIR)/usr/share/icons/hicolor/24x24/apps
90 $(INSTALL_DATA) $(DESTDIR)/usr/share/icons/hicolor/24x24/apps usr/share/icons/hicolor/24x24/apps/time-slider-setup.png
91 $(mkinstalldirs) $(DESTDIR)/usr/share/icons/hicolor/32x32/apps
92 $(INSTALL_DATA) $(DESTDIR)/usr/share/icons/hicolor/32x32/apps usr/share/icons/hicolor/32x32/apps/time-slider-setup.png
93 $(mkinstalldirs) $(DESTDIR)/usr/share/icons/hicolor/36x36/apps
94 $(INSTALL_DATA) $(DESTDIR)/usr/share/icons/hicolor/36x36/apps usr/share/icons/hicolor/36x36/apps/time-slider-setup.png
95 $(mkinstalldirs) $(DESTDIR)/usr/share/icons/hicolor/48x48/apps
96 $(INSTALL_DATA) $(DESTDIR)/usr/share/icons/hicolor/48x48/apps usr/share/icons/hicolor/48x48/apps/time-slider-setup.png
97 $(mkinstalldirs) $(DESTDIR)/usr/share/icons/hicolor/72x72/apps
98 $(INSTALL_DATA) $(DESTDIR)/usr/share/icons/hicolor/72x72/apps usr/share/icons/hicolor/72x72/apps/time-slider-setup.png
99 $(mkinstalldirs) $(DESTDIR)/usr/share/icons/hicolor/96x96/apps
100 $(INSTALL_DATA) $(DESTDIR)/usr/share/icons/hicolor/96x96/apps usr/share/icons/hicolor/96x96/apps/time-slider-setup.png
101 $(mkinstalldirs) $(DESTDIR)/usr/share/time-slider/glade
102 $(INSTALL_DATA) $(DESTDIR)/usr/share/time-slider/glade usr/share/time-slider/glade/time-slider-delete.glade
103 $(INSTALL_DATA) $(DESTDIR)/usr/share/time-slider/glade usr/share/time-slider/glade/time-slider-setup.glade
104 $(INSTALL_DATA) $(DESTDIR)/usr/share/time-slider/glade usr/share/time-slider/glade/time-slider-snapshot.glade
105 $(INSTALL_DATA) $(DESTDIR)/usr/share/time-slider/glade usr/share/time-slider/glade/time-slider-version.glade
106 $(mkinstalldirs) $(DESTDIR)/usr/share/time-slider/lib/time_slider
107 for file in usr/share/time-slider/lib/time_slider/*.py; do \
108 if test -f $$file ; then \
109 $(INSTALL_DATA) $(DESTDIR)/usr/share/time-slider/lib/time_slider $$file; \
112 $(mkinstalldirs) $(DESTDIR)/usr/share/time-slider/lib/time_slider/linux
113 for file in usr/share/time-slider/lib/time_slider/linux/*.py; do \
114 if test -f $$file ; then \
115 $(INSTALL_DATA) $(DESTDIR)/usr/share/time-slider/lib/time_slider/linux $$file; \
118 $(mkinstalldirs) $(DESTDIR)/usr/share/time-slider/lib/plugin
119 for file in usr/share/time-slider/lib/plugin/*.py; do \
120 if test -f $$file ; then \
121 $(INSTALL_DATA) $(DESTDIR)/usr/share/time-slider/lib/plugin $$file; \
124 $(mkinstalldirs) $(DESTDIR)/usr/share/time-slider/lib/plugin/rsync
125 for file in usr/share/time-slider/lib/plugin/rsync/*.py; do \
126 if test -f $$file ; then \
127 $(INSTALL_DATA) $(DESTDIR)/usr/share/time-slider/lib/plugin/rsync $$file; \
130 $(mkinstalldirs) $(DESTDIR)/usr/share/time-slider/lib/plugin/zfssend
131 for file in usr/share/time-slider/lib/plugin/zfssend/*.py; do \
132 if test -f $$file ; then \
133 $(INSTALL_DATA) $(DESTDIR)/usr/share/time-slider/lib/plugin/zfssend $$file; \
136 $(mkinstalldirs) $(DESTDIR)/var/svc/manifest/application
137 $(INSTALL_DATA) $(DESTDIR)/var/svc/manifest/application var/svc/manifest/application/time-slider.xml
138 $(INSTALL_DATA) $(DESTDIR)/var/svc/manifest/application var/svc/manifest/application/time-slider-plugin.xml
139 $(mkinstalldirs) $(DESTDIR)/var/svc/manifest/system/filesystem
140 $(INSTALL_DATA) $(DESTDIR)/var/svc/manifest/system/filesystem var/svc/manifest/system/filesystem/auto-snapshot.xml
141 $(PYTHON) py-compile.py
144 for subdir in $(SUBDIRS); do \
146 make DESTDIR=$(DESTDIR) GETTEXT_PACKAGE=time-slider uninstall; \
149 $(RM) $(DESTDIR)/etc/dbus-1/system.d/time-slider.conf
150 $(RM) $(DESTDIR)/etc/xdg/autostart/time-slider-notify.desktop
151 $(RM) $(DESTDIR)/usr/lib/systemd/system/time-sliderd.service
152 $(RM) $(DESTDIR)/lib/svc/method/time-slider
153 $(RM) $(DESTDIR)/lib/svc/method/time-slider-plugin
154 $(RM) $(DESTDIR)/lib/svc/method/time-slider-rsync
155 $(RM) $(DESTDIR)/usr/bin/time-slider-setup
156 $(RM) $(DESTDIR)/usr/lib/time-sliderd
157 $(RM) $(DESTDIR)/usr/lib/time-slider-delete
158 $(RM) $(DESTDIR)/usr/lib/time-slider-notify
159 $(RM) $(DESTDIR)/usr/lib/time-slider-snapshot
160 $(RM) $(DESTDIR)/usr/lib/time-slider-version
161 $(RM) $(DESTDIR)/usr/lib/time-slider-zfssend
162 $(RM) $(DESTDIR)/usr/lib/time-slider-rsync
163 $(RMRF) $(DESTDIR)/usr/lib/time-slider/plugins/rsync
164 $(RMRF) $(DESTDIR)/usr/lib/time-slider/plugins/zfssend
165 $(RM) $(DESTDIR)/usr/share/applications/time-slider.desktop
166 $(RM) $(DESTDIR)/usr/share/icons/hicolor/*/apps/time-slider-setup.png
167 $(RMRF) $(DESTDIR)/usr/share/time-slider
168 $(RM) $(DESTDIR)/var/svc/manifest/application/time-slider.xml
169 $(RM) $(DESTDIR)/var/svc/manifest/application/time-slider-plugin.xml
170 $(RM) $(DESTDIR)/var/svc/manifest/system/filesystem/auto-snapshot.xml
174 @(if test ! -x "${RPMBUILD}"; then \
176 "*** Required util ${RPMBUILD} missing. Please install the\n" \
177 "*** package for your distribution which provides ${RPMBUILD},\n" \
178 "*** re-run configure, and try again.\n"; \
181 mkdir -p $(rpmbuild)/TMP && \
182 mkdir -p $(rpmbuild)/BUILD && \
183 mkdir -p $(rpmbuild)/RPMS && \
184 mkdir -p $(rpmbuild)/SRPMS && \
185 mkdir -p $(rpmbuild)/SPECS && \
186 cp rpm/$(rpmspec) $(rpmbuild)/SPECS && \
187 mkdir -p $(rpmbuild)/SOURCES && \
188 cp time-slider-$(VERSION).tar.bz2 $(rpmbuild)/SOURCES)
191 @(dist=`$(RPM) --eval %{?dist}`; \
192 rpmpkg=time-slider-$(MAINVER)-0.$(RELEASE)$$dist*src.rpm; \
193 rpmspec=time-slider.spec; \
194 rpmbuild=`mktemp -t -d time-slider-build-$$USER-XXXXXXXX`; \
196 rpmbuild="$$rpmbuild" \
197 rpmspec="$$rpmspec" \
198 rpm-local || exit 1; \
200 --define "_tmppath $$rpmbuild/TMP" \
201 --define "_topdir $$rpmbuild" \
202 $(def) -bs $$rpmbuild/SPECS/$$rpmspec || exit 1; \
203 cp $$rpmbuild/SRPMS/$$rpmpkg . || exit 1; \
207 @(dist=`$(RPM) --eval %{?dist}`; \
208 rpmpkg=time-slider-$(MAINVER)-0.$(RELEASE)$$dist*src.rpm; \
209 rpmspec=time-slider.spec; \
210 rpmbuild=`mktemp -t -d time-slider-build-$$USER-XXXXXXXX`; \
212 rpmbuild="$$rpmbuild" \
213 rpmspec="$$rpmspec" \
214 rpm-local || exit 1; \
216 --define "_tmppath $$rpmbuild/TMP" \
217 --define "_topdir $$rpmbuild" \
218 $(def) --rebuild $$rpmpkg || exit 1; \
219 cp $$rpmbuild/RPMS/*/* . || exit 1; \