.POSIX: PREFIX = /usr/local MANPREFIX = $(PREFIX)/share/man DATE = 2021-06-13 VERSION = 0.1.0 NAME = git-permalink MAILING_LIST = public-inbox manpages = \ doc/git-permalink.1 all: git-permalink git-permalink: src/git-permalink.sh $(do_subst) < $? > $@-t chmod +x $@-t mv $@-t $@ check: all sh tests/cli-opts.sh dev-check: check sh aux/assert-shellcheck.sh sh aux/workflow/assert-todos.sh sh aux/workflow/assert-changelog.sh $(NAME) sh aux/workflow/assert-readme.sh $(NAME) $(MAILING_LIST) sh aux/workflow/assert-manpages.sh $(NAME) $(MAILING_LIST) do_subst = sed \ -e 's:[@]VERSION[@]:$(VERSION):g' \ -e 's:[@]DATE[@]:$(DATE):g' install: all install -m 755 -D git-permalink $(DESTDIR)$(PREFIX)/bin/$(NAME) for m in $(manpages); do \ n=$${m##*.}; \ mkdir -p $(DESTDIR)$(MANPREFIX)/man$$n; \ $(do_subst) < $$m > $(DESTDIR)$(MANPREFIX)/man$$n/`basename $$m`; \ done uninstall: rm -f $(DESTDIR)$(PREFIX)/bin/$(NAME) for m in $(manpages); do rm -f $(DESTDIR)$(MANPREFIX)/man$${m##*.}/`basename $$m`; done clean: rm -rf public/ git-permalink dist: sh aux/workflow/dist.sh $(DATE) $(VERSION) $(NAME) public: README.md TODOs.md CHANGELOG.md sh aux/workflow/public.sh $(NAME) $(NAME) $(MAILING_LIST) for m in $(manpages); do $(do_subst) < $$m | pandoc -s -r man -w html > public/`basename $$m`.html; done .PHONY: all clean check dev-check dist install uninstall