X-Git-Url: https://git.camperquake.de/gitweb.cgi?p=time-slider.git;a=blobdiff_plain;f=Makefile;h=59fb3925c0fb7adb0219871ca4e0f351d4c35ffd;hp=3b95458ea29af7927c6eb3d98281283723c004a7;hb=6891fdf52f42a21713f5a9ff09238320bc3b4ba6;hpb=467e4548ca3d2adec3e75fd6b499861b5f7d0c73 diff --git a/Makefile b/Makefile index 3b95458..59fb392 100644 --- a/Makefile +++ b/Makefile @@ -3,21 +3,25 @@ ifeq ($(wildcard .git),) else VERSION=$(shell git describe) endif +MAINVER=$(shell echo $(VERSION) | cut -f1 -d'-') +RELEASE=$(shell echo $(VERSION) | cut -f2- -d'-' | sed -e 's/-/./g') mkinstalldirs = /usr/bin/mkdir -p INSTALL = /usr/bin/install INSTALL_DATA = ${INSTALL} -m 644 -t -INSTALL_PROGRAM = ${INSTALL} -t +INSTALL_PROGRAM = ${INSTALL} -m 755 -t INSTALL_SCRIPT = ${INSTALL} -t RM = /usr/bin/rm -f RMRF = /usr/bin/rm -Rf RMDIR = /usr/bin/rmdir +RPM = /usr/bin/rpm +RPMBUILD = /usr/bin/rpmbuild # Use python 2.6 if PYTHON environent is not set ifeq ($(strip $(PYTHON)),) PYTHON = /usr/bin/python2 endif -SUBDIRS = po data +SUBDIRS = po data rpm DISTFILES = Authors \ VERSION \ @@ -35,6 +39,7 @@ clean: $(RM) usr/share/time-slider/lib/plugin/*.pyc $(RM) usr/share/time-slider/lib/plugin/rsync/*.pyc $(RM) usr/share/time-slider/lib/plugin/zfssend/*.pyc + $(RM) rpm/time-slider.spec all: for subdir in $(SUBDIRS); do \ @@ -59,10 +64,8 @@ install: $(INSTALL_DATA) $(DESTDIR)/etc/dbus-1/system.d etc/dbus-1/system.d/time-slider.conf $(mkinstalldirs) $(DESTDIR)/etc/xdg/autostart $(INSTALL_DATA) $(DESTDIR)/etc/xdg/autostart etc/xdg/autostart/*.desktop - $(mkinstalldirs) $(DESTDIR)/lib/svc/method - $(INSTALL_SCRIPT) $(DESTDIR)/lib/svc/method lib/svc/method/time-slider - $(INSTALL_SCRIPT) $(DESTDIR)/lib/svc/method lib/svc/method/time-slider-plugin - $(INSTALL_SCRIPT) $(DESTDIR)/lib/svc/method lib/svc/method/time-slider-rsync + $(mkinstalldirs) $(DESTDIR)/usr/lib/systemd/system + $(INSTALL_DATA) $(DESTDIR)/usr/lib/systemd/system etc/systemd/system/*.service $(mkinstalldirs) $(DESTDIR)/usr/bin $(INSTALL_PROGRAM) $(DESTDIR)/usr/bin usr/bin/time-slider-setup $(mkinstalldirs) $(DESTDIR)/usr/lib/time-slider/plugins/rsync @@ -126,12 +129,6 @@ install: $(INSTALL_DATA) $(DESTDIR)/usr/share/time-slider/lib/plugin/zfssend $$file; \ fi; \ done - $(mkinstalldirs) $(DESTDIR)/var/svc/manifest/application - $(INSTALL_DATA) $(DESTDIR)/var/svc/manifest/application var/svc/manifest/application/time-slider.xml - $(INSTALL_DATA) $(DESTDIR)/var/svc/manifest/application var/svc/manifest/application/time-slider-plugin.xml - $(mkinstalldirs) $(DESTDIR)/var/svc/manifest/system/filesystem - $(INSTALL_DATA) $(DESTDIR)/var/svc/manifest/system/filesystem var/svc/manifest/system/filesystem/auto-snapshot.xml - $(PYTHON) py-compile.py uninstall: for subdir in $(SUBDIRS); do \ @@ -141,9 +138,7 @@ uninstall: done $(RM) $(DESTDIR)/etc/dbus-1/system.d/time-slider.conf $(RM) $(DESTDIR)/etc/xdg/autostart/time-slider-notify.desktop - $(RM) $(DESTDIR)/lib/svc/method/time-slider - $(RM) $(DESTDIR)/lib/svc/method/time-slider-plugin - $(RM) $(DESTDIR)/lib/svc/method/time-slider-rsync + $(RM) $(DESTDIR)/usr/lib/systemd/system/time-sliderd.service $(RM) $(DESTDIR)/usr/bin/time-slider-setup $(RM) $(DESTDIR)/usr/lib/time-sliderd $(RM) $(DESTDIR)/usr/lib/time-slider-delete @@ -157,6 +152,53 @@ uninstall: $(RM) $(DESTDIR)/usr/share/applications/time-slider.desktop $(RM) $(DESTDIR)/usr/share/icons/hicolor/*/apps/time-slider-setup.png $(RMRF) $(DESTDIR)/usr/share/time-slider - $(RM) $(DESTDIR)/var/svc/manifest/application/time-slider.xml - $(RM) $(DESTDIR)/var/svc/manifest/application/time-slider-plugin.xml - $(RM) $(DESTDIR)/var/svc/manifest/system/filesystem/auto-snapshot.xml + + +rpm-local: + @(if test ! -x "${RPMBUILD}"; then \ + echo -e "\n" \ + "*** Required util ${RPMBUILD} missing. Please install the\n" \ + "*** package for your distribution which provides ${RPMBUILD},\n" \ + "*** re-run configure, and try again.\n"; \ + exit 1; \ + fi; \ + mkdir -p $(rpmbuild)/TMP && \ + mkdir -p $(rpmbuild)/BUILD && \ + mkdir -p $(rpmbuild)/RPMS && \ + mkdir -p $(rpmbuild)/SRPMS && \ + mkdir -p $(rpmbuild)/SPECS && \ + cp rpm/$(rpmspec) $(rpmbuild)/SPECS && \ + mkdir -p $(rpmbuild)/SOURCES && \ + cp time-slider-$(VERSION).tar.bz2 $(rpmbuild)/SOURCES) + +srpm: dist + @(dist=`$(RPM) --eval %{?dist}`; \ + rpmpkg=time-slider-$(MAINVER)-0.$(RELEASE)$$dist*src.rpm; \ + rpmspec=time-slider.spec; \ + rpmbuild=`mktemp -t -d time-slider-build-$$USER-XXXXXXXX`; \ + $(MAKE) \ + rpmbuild="$$rpmbuild" \ + rpmspec="$$rpmspec" \ + rpm-local || exit 1; \ + $(RPMBUILD) \ + --define "_tmppath $$rpmbuild/TMP" \ + --define "_topdir $$rpmbuild" \ + $(def) -bs $$rpmbuild/SPECS/$$rpmspec || exit 1; \ + cp $$rpmbuild/SRPMS/$$rpmpkg . || exit 1; \ + rm -R $$rpmbuild) + +rpm: srpm + @(dist=`$(RPM) --eval %{?dist}`; \ + rpmpkg=time-slider-$(MAINVER)-0.$(RELEASE)$$dist*src.rpm; \ + rpmspec=time-slider.spec; \ + rpmbuild=`mktemp -t -d time-slider-build-$$USER-XXXXXXXX`; \ + $(MAKE) \ + rpmbuild="$$rpmbuild" \ + rpmspec="$$rpmspec" \ + rpm-local || exit 1; \ + ${RPMBUILD} \ + --define "_tmppath $$rpmbuild/TMP" \ + --define "_topdir $$rpmbuild" \ + $(def) --rebuild $$rpmpkg || exit 1; \ + cp $$rpmbuild/RPMS/*/* . || exit 1; \ + rm -R $$rpmbuild)