# # gitolite-sync - synchronize git repositories (designed for gitolite # managed ones) # # Copyright (c) 2013-2016 Erich Eckner # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, # USA. # DESTDIR = ETCDIR = /etc BINDIR = /usr/bin GITUSER = gitolite LIBDIR = /usr/lib MANDIR = /usr/share/man VERSION = 0.0 all: man.commons \ gitolite-sync.conf \ gitolite-sync gitolite-sync.1 \ gitolite-sync.service gitolite-sync.timer %: %.in sed " \ s/#VERSION#/$(VERSION)/; \ s@#BINDIR#@$(BINDIR)@; \ s@#ETCDIR#@$(ETCDIR)@; \ s@#GITUSER#@$(GITUSER)@; \ s@#HELPTEXT#\(\s\+\)#@ --help \1display this help and exit\n --version\1display version and exit@; \ " $< > $@ && \ ( [[ "$@" = *.* ]] || chmod +x "$@" ) %.1: % man.commons grep -v "^$<(" man.commons | sed '/^\[SEE ALSO]$$/{n;:a;N;/\[/b;s/\n/, /;ta;}' > "$<.common" && \ help2man -o "$@" -N --include $<.common --no-discard-stderr "./$<" .PHONY: install dist clean install: all install -D -m0755 -t $(DESTDIR)$(BINDIR) gitolite-sync install -D -m0644 -t $(DESTDIR)$(LIBDIR)/systemd/system gitolite-sync.service gitolite-sync.timer install -D -m0644 -t $(DESTDIR)$(MANDIR)/man1 gitolite-sync.1 install -D -m0644 -t $(DESTDIR)$(ETCDIR) gitolite-sync.conf clean: git clean -x -d -f dist: clean git status --porcelain 2> /dev/null | grep -q "\S" && (git add .; git commit -m"neue Version: $(VERSION)") || true ! git tag -d v$(VERSION) 2> /dev/null git tag v$(VERSION) git push git push --tags # End of file