mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-12-24 02:14:52 +01:00
39 lines
1.2 KiB
Makefile
39 lines
1.2 KiB
Makefile
|
# Makefile for Sphinx documentation
|
||
|
#
|
||
|
|
||
|
# You can set these variables from the command line.
|
||
|
SPHINXOPTS =
|
||
|
SPHINXBUILD = sphinx-build
|
||
|
DOCBUILDDIR := _build
|
||
|
|
||
|
SRCDIR ?= .
|
||
|
ALLSPHINXOPTS := -d $(DOCBUILDDIR)/doctrees $(SPHINXOPTS) $(SRCDIR)
|
||
|
|
||
|
MAN_RST_FILES := $(shell find $(SRCDIR)/man* -name '*.rst')
|
||
|
MAN_ROFF_FILES := $(patsubst $(SRCDIR)/man%.rst,$(DOCBUILDDIR)/man/man%,$(MAN_RST_FILES))
|
||
|
MAN_GZIP_FILES := $(addsuffix .gz,$(MAN_ROFF_FILES))
|
||
|
|
||
|
.PHONY: build-man
|
||
|
build-man: $(MAN_GZIP_FILES)
|
||
|
|
||
|
%.gz: %
|
||
|
rm -f $@ && gzip --stdout $^ > $@
|
||
|
|
||
|
$(MAN_ROFF_FILES): $(DOCBUILDDIR)/.roff.stamp
|
||
|
|
||
|
# By using $(DOCBUILDDIR)/.roff.stamp instead of $(MAN_ROFF_FILES), we
|
||
|
# convey to make that a single invocation of this recipe builds all
|
||
|
# of the roff files. This prevents parallel make from starting an
|
||
|
# instance of this recipe for each roff file.
|
||
|
$(DOCBUILDDIR)/.roff.stamp $(MAN_ROFF_FILES): $(MAN_RST_FILES)
|
||
|
mkdir -p $(DOCBUILDDIR)
|
||
|
touch $(DOCBUILDDIR)/.roff.stamp
|
||
|
$(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(DOCBUILDDIR)/man
|
||
|
for section in 1 5; do \
|
||
|
mkdir -p $(DOCBUILDDIR)/man/man$${section}; \
|
||
|
mv $(DOCBUILDDIR)/man/*.$${section} $(DOCBUILDDIR)/man/man$${section}; \
|
||
|
done
|
||
|
|
||
|
clean:
|
||
|
rm -rf $(DOCBUILDDIR) $(SRCDIR)/conf.pyc
|