X-Git-Url: https://git.madduck.net/code/vcsh.git/blobdiff_plain/23b0d9f461ddd6627c580c0fad9c870d05bb3660..eadb8df6aa71a76e5be36492edcadb118bd862ac:/Makefile diff --git a/Makefile b/Makefile index 7c04077..b9154e7 100644 --- a/Makefile +++ b/Makefile @@ -1,45 +1,51 @@ -PREFIX=/usr - -manpages=vcsh.1 +PREFIX?=/usr +DOCDIR_PREFIX=$(PREFIX)/share/doc +DOCDIR=$(DOCDIR_PREFIX)/$(self) +ZSHDIR=$(PREFIX)/share/zsh/vendor-completions +RONN ?= ronn + +self=vcsh +manpages=$(self).1 all=test manpages all: $(all) install: all install -d $(DESTDIR)$(PREFIX)/bin - install -m 0755 vcsh $(DESTDIR)$(PREFIX)/bin + install -m 0755 $(self) $(DESTDIR)$(PREFIX)/bin install -d $(DESTDIR)$(PREFIX)/share/man/man1 - install -m 0644 $(manpages) $(DESTDIR)$(PREFIX)/share/man/man1 - install -d $(DESTDIR)$(PREFIX)/share/doc/vcsh - install -m 0644 README.md $(DESTDIR)$(PREFIX)/share/doc/vcsh - install -m 0644 doc/hooks $(DESTDIR)$(PREFIX)/share/doc/vcsh - install -d $(DESTDIR)$(PREFIX)/share/zsh/vendor-completions - install -m 0644 _vcsh $(DESTDIR)$(PREFIX)/share/zsh/vendor-completions + install -m 0644 $(manpages) $(DESTDIR)$(PREFIX)/share/man/man1 + install -d $(DESTDIR)$(DOCDIR) + install -m 0644 README.md $(DESTDIR)$(DOCDIR) + install -m 0644 doc/hooks $(DESTDIR)$(DOCDIR) + install -d $(DESTDIR)$(ZSHDIR) + install -m 0644 _$(self) $(DESTDIR)$(ZSHDIR) manpages: $(manpages) -vcsh.1: doc/vcsh.1.ronn - ronn < doc/vcsh.1.ronn > vcsh.1 +$(self).1: doc/$(self).1.ronn + $(RONN) < doc/$(self).1.ronn > $(self).1 || rm $(self).1 clean: - rm -rf vcsh.1 + rm -rf $(self).1 uninstall: - rm -rf $(DESTDIR)$(PREFIX)/bin/vcsh - rm -rf $(DESTDIR)$(PREFIX)/share/man/man1/vcsh.1 - rm -rf $(DESTDIR)$(PREFIX)/share/doc/vcsh - rm -rf $(DESTDIR)$(PREFIX)/share/zsh/vendor-completions/_vcsh + rm -rf $(DESTDIR)$(PREFIX)/bin/$(self) + rm -rf $(DESTDIR)$(PREFIX)/share/man/man1/$(self).1 + rm -rf $(DESTDIR)$(DOCDIR) + rm -rf $(DESTDIR)$(ZSHDIR)/_$(self) # Potentially harmful, used a non-standard option on purpose. # If PREFIX=/usr/local and that's empty... purge: uninstall rmdir -p --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/bin/ rmdir -p --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/man/man1/ - rmdir -p --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/doc/ - rmdir -p --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/zsh/vendor-completions/ + rmdir -p --ignore-fail-on-non-empty $(DESTDIR)$(DOCDIR) + rmdir -p --ignore-fail-on-non-empty $(DESTDIR)$(ZSHDIR) test: - if which git > /dev/null ; then :; else echo "'git' not found, exiting..."; exit 1; fi + @if which git > /dev/null; then : ; else echo "'git' not found, exiting..." ; exit 1; fi + @if which prove > /dev/null; then prove; else echo "'prove' not found; not running tests"; fi moo: - if [ -x /usr/games/cowsay ]; then /usr/games/cowsay "I hope you're happy now..."; fi + @which cowsay >/dev/null 2>&1 && cowsay "I hope you're happy now..."