docs/Makefile
changeset 125 985534bc6ab9
parent 124 53dc81f933ed
child 126 e2aeba0dd99c
equal deleted inserted replaced
124:53dc81f933ed 125:985534bc6ab9
     1 # Makefile for Sphinx documentation
       
     2 #
       
     3 
       
     4 # You can set these variables from the command line.
       
     5 SPHINXOPTS    =
       
     6 SPHINXBUILD   = ../bin/py ../bin/sphinx-build
       
     7 PAPER         =
       
     8 BUILDDIR      = build
       
     9 
       
    10 # Internal variables.
       
    11 PAPEROPT_a4     = -D latex_paper_size=a4
       
    12 PAPEROPT_letter = -D latex_paper_size=letter
       
    13 ALLSPHINXOPTS   = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
       
    14 # the i18n builder cannot share the environment and doctrees with the others
       
    15 I18NSPHINXOPTS  = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
       
    16 
       
    17 .PHONY: help
       
    18 help:
       
    19 	@echo "Please use \`make <target>' where <target> is one of"
       
    20 	@echo "  html       to make standalone HTML files"
       
    21 	@echo "  dirhtml    to make HTML files named index.html in directories"
       
    22 	@echo "  singlehtml to make a single large HTML file"
       
    23 	@echo "  pickle     to make pickle files"
       
    24 	@echo "  json       to make JSON files"
       
    25 	@echo "  htmlhelp   to make HTML files and a HTML help project"
       
    26 	@echo "  qthelp     to make HTML files and a qthelp project"
       
    27 	@echo "  applehelp  to make an Apple Help Book"
       
    28 	@echo "  devhelp    to make HTML files and a Devhelp project"
       
    29 	@echo "  epub       to make an epub"
       
    30 	@echo "  epub3      to make an epub3"
       
    31 	@echo "  latex      to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
       
    32 	@echo "  latexpdf   to make LaTeX files and run them through pdflatex"
       
    33 	@echo "  latexpdfja to make LaTeX files and run them through platex/dvipdfmx"
       
    34 	@echo "  text       to make text files"
       
    35 	@echo "  man        to make manual pages"
       
    36 	@echo "  texinfo    to make Texinfo files"
       
    37 	@echo "  info       to make Texinfo files and run them through makeinfo"
       
    38 	@echo "  gettext    to make PO message catalogs"
       
    39 	@echo "  changes    to make an overview of all changed/added/deprecated items"
       
    40 	@echo "  xml        to make Docutils-native XML files"
       
    41 	@echo "  pseudoxml  to make pseudoxml-XML files for display purposes"
       
    42 	@echo "  linkcheck  to check all external links for integrity"
       
    43 	@echo "  doctest    to run all doctests embedded in the documentation (if enabled)"
       
    44 	@echo "  coverage   to run coverage check of the documentation (if enabled)"
       
    45 	@echo "  dummy      to check syntax errors of document sources"
       
    46 
       
    47 .PHONY: clean
       
    48 clean:
       
    49 	rm -rf $(BUILDDIR)/*
       
    50 
       
    51 .PHONY: html
       
    52 html:
       
    53 	$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
       
    54 	@echo
       
    55 	@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
       
    56 
       
    57 .PHONY: dirhtml
       
    58 dirhtml:
       
    59 	$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
       
    60 	@echo
       
    61 	@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
       
    62 
       
    63 .PHONY: singlehtml
       
    64 singlehtml:
       
    65 	$(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
       
    66 	@echo
       
    67 	@echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
       
    68 
       
    69 .PHONY: pickle
       
    70 pickle:
       
    71 	$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
       
    72 	@echo
       
    73 	@echo "Build finished; now you can process the pickle files."
       
    74 
       
    75 .PHONY: json
       
    76 json:
       
    77 	$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
       
    78 	@echo
       
    79 	@echo "Build finished; now you can process the JSON files."
       
    80 
       
    81 .PHONY: htmlhelp
       
    82 htmlhelp:
       
    83 	$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
       
    84 	@echo
       
    85 	@echo "Build finished; now you can run HTML Help Workshop with the" \
       
    86 	      ".hhp project file in $(BUILDDIR)/htmlhelp."
       
    87 
       
    88 .PHONY: qthelp
       
    89 qthelp:
       
    90 	$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
       
    91 	@echo
       
    92 	@echo "Build finished; now you can run "qcollectiongenerator" with the" \
       
    93 	      ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
       
    94 	@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/PyAMS_utils.qhcp"
       
    95 	@echo "To view the help file:"
       
    96 	@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/PyAMS_utils.qhc"
       
    97 
       
    98 .PHONY: applehelp
       
    99 applehelp:
       
   100 	$(SPHINXBUILD) -b applehelp $(ALLSPHINXOPTS) $(BUILDDIR)/applehelp
       
   101 	@echo
       
   102 	@echo "Build finished. The help book is in $(BUILDDIR)/applehelp."
       
   103 	@echo "N.B. You won't be able to view it unless you put it in" \
       
   104 	      "~/Library/Documentation/Help or install it in your application" \
       
   105 	      "bundle."
       
   106 
       
   107 .PHONY: devhelp
       
   108 devhelp:
       
   109 	$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
       
   110 	@echo
       
   111 	@echo "Build finished."
       
   112 	@echo "To view the help file:"
       
   113 	@echo "# mkdir -p $$HOME/.local/share/devhelp/PyAMS_utils"
       
   114 	@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/PyAMS_utils"
       
   115 	@echo "# devhelp"
       
   116 
       
   117 .PHONY: epub
       
   118 epub:
       
   119 	$(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
       
   120 	@echo
       
   121 	@echo "Build finished. The epub file is in $(BUILDDIR)/epub."
       
   122 
       
   123 .PHONY: epub3
       
   124 epub3:
       
   125 	$(SPHINXBUILD) -b epub3 $(ALLSPHINXOPTS) $(BUILDDIR)/epub3
       
   126 	@echo
       
   127 	@echo "Build finished. The epub3 file is in $(BUILDDIR)/epub3."
       
   128 
       
   129 .PHONY: latex
       
   130 latex:
       
   131 	$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
       
   132 	@echo
       
   133 	@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
       
   134 	@echo "Run \`make' in that directory to run these through (pdf)latex" \
       
   135 	      "(use \`make latexpdf' here to do that automatically)."
       
   136 
       
   137 .PHONY: latexpdf
       
   138 latexpdf:
       
   139 	$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
       
   140 	@echo "Running LaTeX files through pdflatex..."
       
   141 	$(MAKE) -C $(BUILDDIR)/latex all-pdf
       
   142 	@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
       
   143 
       
   144 .PHONY: latexpdfja
       
   145 latexpdfja:
       
   146 	$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
       
   147 	@echo "Running LaTeX files through platex and dvipdfmx..."
       
   148 	$(MAKE) -C $(BUILDDIR)/latex all-pdf-ja
       
   149 	@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
       
   150 
       
   151 .PHONY: text
       
   152 text:
       
   153 	$(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
       
   154 	@echo
       
   155 	@echo "Build finished. The text files are in $(BUILDDIR)/text."
       
   156 
       
   157 .PHONY: man
       
   158 man:
       
   159 	$(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
       
   160 	@echo
       
   161 	@echo "Build finished. The manual pages are in $(BUILDDIR)/man."
       
   162 
       
   163 .PHONY: texinfo
       
   164 texinfo:
       
   165 	$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
       
   166 	@echo
       
   167 	@echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
       
   168 	@echo "Run \`make' in that directory to run these through makeinfo" \
       
   169 	      "(use \`make info' here to do that automatically)."
       
   170 
       
   171 .PHONY: info
       
   172 info:
       
   173 	$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
       
   174 	@echo "Running Texinfo files through makeinfo..."
       
   175 	make -C $(BUILDDIR)/texinfo info
       
   176 	@echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
       
   177 
       
   178 .PHONY: gettext
       
   179 gettext:
       
   180 	$(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
       
   181 	@echo
       
   182 	@echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
       
   183 
       
   184 .PHONY: changes
       
   185 changes:
       
   186 	$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
       
   187 	@echo
       
   188 	@echo "The overview file is in $(BUILDDIR)/changes."
       
   189 
       
   190 .PHONY: linkcheck
       
   191 linkcheck:
       
   192 	$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
       
   193 	@echo
       
   194 	@echo "Link check complete; look for any errors in the above output " \
       
   195 	      "or in $(BUILDDIR)/linkcheck/output.txt."
       
   196 
       
   197 .PHONY: doctest
       
   198 doctest:
       
   199 	$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
       
   200 	@echo "Testing of doctests in the sources finished, look at the " \
       
   201 	      "results in $(BUILDDIR)/doctest/output.txt."
       
   202 
       
   203 .PHONY: coverage
       
   204 coverage:
       
   205 	$(SPHINXBUILD) -b coverage $(ALLSPHINXOPTS) $(BUILDDIR)/coverage
       
   206 	@echo "Testing of coverage in the sources finished, look at the " \
       
   207 	      "results in $(BUILDDIR)/coverage/python.txt."
       
   208 
       
   209 .PHONY: xml
       
   210 xml:
       
   211 	$(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml
       
   212 	@echo
       
   213 	@echo "Build finished. The XML files are in $(BUILDDIR)/xml."
       
   214 
       
   215 .PHONY: pseudoxml
       
   216 pseudoxml:
       
   217 	$(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml
       
   218 	@echo
       
   219 	@echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml."
       
   220 
       
   221 .PHONY: dummy
       
   222 dummy:
       
   223 	$(SPHINXBUILD) -b dummy $(ALLSPHINXOPTS) $(BUILDDIR)/dummy
       
   224 	@echo
       
   225 	@echo "Build finished. Dummy builder generates no files."