Makefile: add option to bypass compression (COMPRESS=no)

While on traditional UNIX the documentation (especially the man pages)
are gzip'ed, modern distros have helpers to compress it.

This patch adds an option to disable compression:

    make COMPRESS=no
pull/274/head
Axel Burri 2019-03-26 14:03:19 +01:00
parent a412908451
commit 86a930daf1
2 changed files with 25 additions and 12 deletions

View File

@ -28,6 +28,12 @@ SYSTEMDDIR = $(PREFIX)/lib/systemd/system
MAN1DIR = $(PREFIX)/share/man/man1
MAN5DIR = $(PREFIX)/share/man/man5
export COMPRESS ?= yes
ifeq ($(COMPRESS), yes)
DOCS := $(addsuffix .gz,$(DOCS))
endif
replace_vars = sed \
-e "s|@PN@|$(PN)|g" \
-e "s|@CONFDIR@|$(CONFDIR)|g" \
@ -72,11 +78,10 @@ install-man: man
@echo 'installing man pages...'
@$(MAKE) -C doc install-man
install-doc:
install-doc: $(DOCS)
@echo 'installing documentation...'
install -d -m 755 "$(DESTDIR)$(DOCDIR)"
install -p -m 644 $(DOCS) "$(DESTDIR)$(DOCDIR)"
gzip -9f $(addprefix "$(DESTDIR)$(DOCDIR)"/, $(DOCS))
@$(MAKE) -C doc install-doc
man:
@ -84,4 +89,8 @@ man:
@$(MAKE) -C doc man
clean:
rm -f *.gz
@$(MAKE) -C doc clean
%.gz : %
gzip -9 -n -c $< > $@

View File

@ -10,8 +10,13 @@ DOCDIR = $(PREFIX)/share/doc/$(PN)
MAN1DIR = $(PREFIX)/share/man/man1
MAN5DIR = $(PREFIX)/share/man/man5
GZ_MAN1 = $(addsuffix .gz,$(MAN_MAN1))
GZ_MAN5 = $(addsuffix .gz,$(MAN_MAN5))
COMPRESS ?= yes
ifeq ($(COMPRESS), yes)
DOCS := $(addsuffix .gz,$(DOCS))
MAN_MAN1 := $(addsuffix .gz,$(MAN_MAN1))
MAN_MAN5 := $(addsuffix .gz,$(MAN_MAN5))
endif
# convert using "asciidoctor": <https://asciidoctor.org>
# fallback to "a2x" from asciidoc package: <http://asciidoc.org>
@ -31,27 +36,26 @@ endif
all: man
man: man1 man5
man1: $(GZ_MAN1)
man5: $(GZ_MAN5)
man1: $(MAN_MAN1)
man5: $(MAN_MAN5)
install: install-man install-doc
install-man: man
install -d -m 755 "$(DESTDIR)$(MAN1DIR)"
install -d -m 755 "$(DESTDIR)$(MAN5DIR)"
install -p -m 644 $(GZ_MAN1) "$(DESTDIR)$(MAN1DIR)"
install -p -m 644 $(GZ_MAN5) "$(DESTDIR)$(MAN5DIR)"
install -p -m 644 $(MAN_MAN1) "$(DESTDIR)$(MAN1DIR)"
install -p -m 644 $(MAN_MAN5) "$(DESTDIR)$(MAN5DIR)"
install-doc:
install-doc: $(DOCS)
install -d -m 755 "$(DESTDIR)$(DOCDIR)"
install -p -m 644 $(DOCS) "$(DESTDIR)$(DOCDIR)"
gzip -9f $(addprefix "$(DESTDIR)$(DOCDIR)"/, $(DOCS))
clean:
rm -f $(GZ_MAN1) $(GZ_MAN5)
rm -f *.md.gz *.[15] *.[15].{gz,html}
%.gz : %
gzip -9f $<
gzip -9 -n -c $< > $@
%.1 : %.1.asciidoc
$(ASCIIDOC_MANPAGE) $<