#
# gc-utils doc install program
#

VERSION = 0.1.0

prefix  = $(HOME)
export prefix DESTDIR INSTALL

mandir  = $(prefix)/share/man
man1dir = $(mandir)/man1

VERSION_SQ = $(subst .,\.,$(VERSION))
DESTDIR_SQ = $(subst ','\'',$(DESTDIR))

INSTALL = install
RM = rm
MANDB = mandb
MKINSTALLDIRS = mkdir -p

manpages   = gc-import.1 gc-update.1 gc-commit.1 gc-multi-commit.1 gc-utils.1
manpagesgz = $(manpages:%.1=../build/%.1.gz)

ifndef V
	QUIET_GEN      = @echo '   ' GEN   $(@:../build/%=%);
	QUIET_INSTALL  =  echo '   ' INS   $(f:../build/%=%);
	QUIET_MANDB    =  echo '   ' MANDB $f;
endif

.PHONY: gen install clean uninstall

gen:: $(manpagesgz)

$(manpagesgz):
	$(QUIET_GEN) cat $(@:../build/%.1.gz=%.1) | sed -e 's,\$$VERSION\$$,$(VERSION_SQ),' | gzip -9 > $@

install: $(manpagesgz)
	@$(MKINSTALLDIRS) $(DESTDIR)$(man1dir)
ifndef V
	@$(foreach f, $(manpagesgz), $(QUIET_INSTALL) $(INSTALL) -m644 $f "$(DESTDIR)$(man1dir)/$(f:../build/%=%)" ;)
else
	$(foreach f, $(manpagesgz), $(INSTALL) -m644 $f "$(DESTDIR)$(man1dir)/$(f:../build/%=%)" ;)
endif

uninstall:
	@$(foreach f, $(manpages:%.1=%.1.gz), $(RM) '$(DESTDIR_SQ)$(man1dir)/$f' && echo '   ' UNINS $f ;)
