.POSIX: PREFIX = /usr/local MANPREFIX = $(PREFIX)/share/man VERSION = v0.1.0 DATE = 2021-01-26 all: do_subst = sed \ -e 's:[@]VERSION[@]:$(VERSION):g' \ -e 's:[@]DATE[@]:$(DATE):g' install: mkdir -p $(DESTDIR)$(PREFIX)/bin \ $(DESTDIR)$(MANPREFIX)/man1 \ $(DESTDIR)$(MANPREFIX)/man5 install -m 755 remembering $(DESTDIR)$(PREFIX)/bin/ $(do_subst) < remembering.1 > $(DESTDIR)$(MANPREFIX)/man1/remembering.1 $(do_subst) < remembering.5 > $(DESTDIR)$(MANPREFIX)/man5/remembering.5 chmod 644 $(DESTDIR)$(MANPREFIX)/man1/remembering.1 chmod 644 $(DESTDIR)$(MANPREFIX)/man5/remembering.5 uninstall: rm -f \ $(DESTDIR)$(PREFIX)/bin/remembering \ $(DESTDIR)$(MANPREFIX)/man1/remembering.1 \ $(DESTDIR)$(MANPREFIX)/man5/remembering.5 check: sh tests/cli-opts.sh sh tests/ranking.sh sh tests/signals.sh if [ -d .git ]; then \ echo 'Assuming Git repository, running development checks.'; \ sh build-aux/assert-shellcheck.sh; \ sh build-aux/workflow/assert-todos.sh; \ fi dist: if git show $(VERSION) 1>/dev/null 2>/dev/null; then \ echo 'Version $(VERSION) already exists.'; \ exit 1; \ fi if [ '$(DATE)' != "$$(git log -1 --format=%cd --date=short HEAD)" ]; then \ echo 'Date $(DATE) is not up-to-date.'; \ exit 1; \ fi git tag $(VERSION) NAME = remembering public: README.md TODOs.md CHANGELOG.md sh build-aux/workflow/TODOs.sh $(NAME) $(NAME) public-inbox sh build-aux/workflow/README.sh $(NAME) $(NAME) sh build-aux/workflow/CHANGELOG.sh $(NAME) $(NAME) clean: rm -rf public/ tests/test-profiles/ .PHONY: all clean check dist install uninstall