.POSIX: PREFIX = /usr/local MANPREFIX = $(PREFIX)/share/man DATE = 1970-01-01 VERSION = 0.1.0 NAME = gistatic sysconfs = \ etc/gistatic/templates/html/commit.tmpl manpages = \ doc/gistatic.pod.1 \ doc/gistatic-template.pod.5 all: check: all sh tests/cli-opts.sh dev-check: check podchecker doc/* perlcritic --brutal --verbose 9 scripts/gistatic.pl perl -MO=Lint scripts/gistatic.pl sh aux/assert-perltidy.sh sh aux/assert-shellcheck.sh sh aux/workflow/assert-todos.sh sh aux/workflow/assert-changelog.sh $(NAME) do_subst = sed \ -e 's:[@]VERSION[@]:$(VERSION):g' \ -e 's:[@]DATE[@]:$(DATE):g' \ -e 's:[@]PREFIX[@]:$(PREFIX):g' install: all mkdir -p $(DESTDIR)$(PREFIX)/bin $(do_subst) < scripts/gistatic.pl > $(DESTDIR)$(PREFIX)/bin/gistatic chmod +755 $(DESTDIR)$(PREFIX)/bin/gistatic for s in $(sysconfs); do install -m 644 -D $$s $(DESTDIR)$(PREFIX)/$$s; done for m in $(manpages); do \ n=$${m##*.}; \ mkdir -p $(DESTDIR)$(MANPREFIX)/man$$n; \ $(do_subst) < $$m | pod2man | gzip > $(DESTDIR)$(MANPREFIX)/man$$n/`basename $${m%%.*}.$$n`.gz; \ done uninstall: rm -f $(DESTDIR)$(PREFIX)/bin/gistatic for s in $(sysconfs); do rm -f $(DESTDIR)$(PREFIX)/$$s; done for m in $(manpages); do rm -f $(DESTDIR)$(MANPREFIX)/man$${m##*.}/`basename $${m%%.*}`.$${m##*.}.gz; done clean: rm -rf public/ pod2htmd.tmp dist: sh aux/workflow/dist.sh $(DATE) $(VERSION) $(NAME) public: README.md TODOs.md CHANGELOG.md sh aux/workflow/public.sh gistatic $(NAME) public-inbox for m in $(manpages); do pod2html $$m > public/`basename $${m%%.*}`.$${m##*.}.html; done .PHONY: all clean check dev-check dist install uninstall