| # Makefile for Sphinx documentation | |
| # You can set these variables from the command line. | |
| SPHINXOPTS = -W | |
| SPHINXBUILD = DOC_NAME=$* sphinx-build | |
| PAPER = | |
| BUILDDIR = build | |
| SOURCEDIR = . | |
| # Internal variables. | |
| PAPEROPT_a4 = -D latex_paper_size=a4 | |
| PAPEROPT_letter = -D latex_paper_size=letter | |
| ALLSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) \ | |
| -c $(SOURCEDIR)/share \ | |
| -d $(BUILDDIR)/$*/doctrees \ | |
| $(SOURCEDIR) | |
| DOC_LIST=gnat_rm gnat_ugn gnat-style | |
| FMT_LIST=html pdf txt info | |
| .PHONY: help clean | |
| help: | |
| @echo "Please use \`make <target>' where <target> is one of" | |
| @echo " DOC_NAME.html to make standalone HTML files" | |
| @echo " DOC_NAME.pdf to make LaTeX files and run them through pdflatex" | |
| @echo " DOC_NAME.txt to make text files" | |
| @echo " DOC_NAME.info to make info files" | |
| @echo " DOC_NAME.texinfo to make Texinfo files" | |
| @echo " DOC_NAME.all to build DOC_NAME for all previous formats" | |
| @echo " all to build all documentations in all formats" | |
| @echo " html-all same as previous rule but only for HTML format" | |
| @echo " pdf-all same as previous rule but only for PDF format" | |
| @echo " txt-all same as previous rule but only for text format" | |
| @echo " info-all same as previous rule but only for info format" | |
| @echo " texinfo-all same as previous rule but only for texinfo format" | |
| @echo "" | |
| @echo "DOC_NAME should be a documentation name in the following list:" | |
| @echo " $(DOC_LIST)" | |
| @echo "" | |
| @echo "source and location can be overridden using SOURCEDIR and BUILDDIR variables" | |
| clean: | |
| -rm -rf $(BUILDDIR) | |
| .PHONY: mk_empty_dirs | |
| mk_empty_dirs: | |
| mkdir -p share/_static | |
| %.html: mk_empty_dirs | |
| $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/$*/html | |
| %.pdf: mk_empty_dirs | |
| $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/$*/pdf | |
| $(MAKE) -C $(BUILDDIR)/$*/pdf all-pdf LATEXOPTS="-interaction=nonstopmode" | |
| %.txt: mk_empty_dirs | |
| $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/$*/txt | |
| $(MAKE) -C $(BUILDDIR)/$*/txt plaintext | |
| %.info: mk_empty_dirs | |
| $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/$*/info | |
| $(MAKE) -C $(BUILDDIR)/$*/info info | |
| %.texinfo: mk_empty_dirs | |
| $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/$*/texinfo | |
| sed -e 's/^@dircategory/@dircategory GNU Ada Tools/g' < $(BUILDDIR)/$*/texinfo/$*.texi > $(BUILDDIR)/../../$*.texi | |
| .PHONY: html-all | |
| html-all: $(foreach doc, $(DOC_LIST), $(doc).html) | |
| .PHONY: pdf-all | |
| pdf-all: $(foreach doc, $(DOC_LIST), $(doc).pdf) | |
| .PHONY: txt-all | |
| txt-all: $(foreach doc, $(DOC_LIST), $(doc).txt) | |
| .PHONY: info-all | |
| info-all: $(foreach doc, $(DOC_LIST), $(doc).info) | |
| .PHONY: texinfo-all | |
| texinfo-all: $(foreach doc, $(DOC_LIST), $(doc).texinfo) | |
| %.all: | |
| $(MAKE) $(foreach fmt, $(FMT_LIST), $*.$(fmt)) | |
| .PHONY: all | |
| all: $(foreach fmt, $(FMT_LIST), $(fmt)-all) |