mirror of
https://github.com/sphinx-doc/sphinx.git
synced 2025-02-25 18:55:22 -06:00
Merge pull request #4354 from stephenfin/builder-success-message
Add 'Builder.epilog' attribute
This commit is contained in:
commit
decbf20ccf
@ -15,6 +15,7 @@ Builder API
|
||||
|
||||
.. autoattribute:: name
|
||||
.. autoattribute:: format
|
||||
.. autoattribute:: epilog
|
||||
.. autoattribute:: supported_image_types
|
||||
|
||||
These methods are predefined and will be called from the application:
|
||||
|
@ -338,6 +338,13 @@ class Sphinx(object):
|
||||
(status, self._warncount)))
|
||||
else:
|
||||
logger.info(bold(__('build %s.') % status))
|
||||
|
||||
if self.statuscode == 0 and self.builder.epilog:
|
||||
logger.info('')
|
||||
logger.info(self.builder.epilog % {
|
||||
'outdir': path.relpath(self.outdir),
|
||||
'project': self.config.project
|
||||
})
|
||||
except Exception as err:
|
||||
# delete the saved env to force a fresh build next time
|
||||
envfile = path.join(self.doctreedir, ENV_PICKLE_FILENAME)
|
||||
|
@ -54,6 +54,11 @@ class Builder(object):
|
||||
name = '' # type: unicode
|
||||
#: The builder's output format, or '' if no document output is produced.
|
||||
format = '' # type: unicode
|
||||
#: The message emitted upon successful build completion. This can be a
|
||||
#: printf-style template string with the following keys: ``outdir``,
|
||||
#: ``project``
|
||||
epilog = '' # type: unicode
|
||||
|
||||
# default translator class for the builder. This will be overrided by
|
||||
# ``app.set_translator()``.
|
||||
default_translator_class = None # type: nodes.NodeVisitor
|
||||
|
@ -75,6 +75,10 @@ class AppleHelpBuilder(StandaloneHTMLBuilder):
|
||||
on the ``hiutil`` command line tool.
|
||||
"""
|
||||
name = 'applehelp'
|
||||
epilog = ('The help book is in %(outdir)s.\n'
|
||||
'Note that won\'t be able to view it unless you put it in '
|
||||
'~/Library/Documentation/Help or install it in your application '
|
||||
'bundle.')
|
||||
|
||||
# don't copy the reST source
|
||||
copysource = False
|
||||
|
@ -38,6 +38,7 @@ class ChangesBuilder(Builder):
|
||||
Write a summary with all versionadded/changed directives.
|
||||
"""
|
||||
name = 'changes'
|
||||
epilog = 'The overview file is in %(outdir)s.'
|
||||
|
||||
def init(self):
|
||||
# type: () -> None
|
||||
|
@ -43,6 +43,10 @@ class DevhelpBuilder(StandaloneHTMLBuilder):
|
||||
Builder that also outputs GNOME Devhelp file.
|
||||
"""
|
||||
name = 'devhelp'
|
||||
epilog = ('To view the help file:\n'
|
||||
'$ mkdir -p $HOME/.local/share/devhelp/%(project)s\n'
|
||||
'$ ln -s %(outdir)s $HOME/.local/share/devhelp/%(project)s\n'
|
||||
'$ devhelp')
|
||||
|
||||
# don't copy the reST source
|
||||
copysource = False
|
||||
|
@ -21,6 +21,8 @@ if False:
|
||||
|
||||
class DummyBuilder(Builder):
|
||||
name = 'dummy'
|
||||
epilog = 'The dummy builder generates no files.'
|
||||
|
||||
allow_parallel = True
|
||||
|
||||
def init(self):
|
||||
|
@ -63,6 +63,7 @@ class Epub3Builder(_epub_base.EpubBuilder):
|
||||
an epub file.
|
||||
"""
|
||||
name = 'epub'
|
||||
epilog = 'The ePub file is in %(outdir)s.'
|
||||
|
||||
supported_remote_images = False
|
||||
template_dir = path.join(package_dir, 'templates', 'epub3')
|
||||
|
@ -214,6 +214,7 @@ class MessageCatalogBuilder(I18nBuilder):
|
||||
Builds gettext-style message catalogs (.pot files).
|
||||
"""
|
||||
name = 'gettext'
|
||||
epilog = 'The message catalogs are in %(outdir)s.'
|
||||
|
||||
def init(self):
|
||||
# type: () -> None
|
||||
|
@ -153,6 +153,8 @@ class StandaloneHTMLBuilder(Builder):
|
||||
"""
|
||||
name = 'html'
|
||||
format = 'html'
|
||||
epilog = 'The HTML pages are in %(outdir)s.'
|
||||
|
||||
copysource = True
|
||||
allow_parallel = True
|
||||
out_suffix = '.html'
|
||||
@ -1066,6 +1068,8 @@ class SingleFileHTMLBuilder(StandaloneHTMLBuilder):
|
||||
HTML page.
|
||||
"""
|
||||
name = 'singlehtml'
|
||||
epilog = 'The HTML page is in %(outdir)s.'
|
||||
|
||||
copysource = False
|
||||
|
||||
def get_outdated_docs(self): # type: ignore
|
||||
@ -1328,12 +1332,14 @@ class PickleHTMLBuilder(SerializingHTMLBuilder):
|
||||
"""
|
||||
A Builder that dumps the generated HTML into pickle files.
|
||||
"""
|
||||
name = 'pickle'
|
||||
epilog = 'You can now process the pickle files in %(outdir)s.'
|
||||
|
||||
implementation = pickle
|
||||
implementation_dumps_unicode = False
|
||||
additional_dump_args = (pickle.HIGHEST_PROTOCOL,)
|
||||
indexer_format = pickle
|
||||
indexer_dumps_unicode = False
|
||||
name = 'pickle'
|
||||
out_suffix = '.fpickle'
|
||||
globalcontext_filename = 'globalcontext.pickle'
|
||||
searchindex_filename = 'searchindex.pickle'
|
||||
@ -1347,11 +1353,13 @@ class JSONHTMLBuilder(SerializingHTMLBuilder):
|
||||
"""
|
||||
A builder that dumps the generated HTML into JSON files.
|
||||
"""
|
||||
name = 'json'
|
||||
epilog = 'You can now process the JSON files in %(outdir)s.'
|
||||
|
||||
implementation = jsonimpl
|
||||
implementation_dumps_unicode = True
|
||||
indexer_format = jsonimpl
|
||||
indexer_dumps_unicode = True
|
||||
name = 'json'
|
||||
out_suffix = '.fjson'
|
||||
globalcontext_filename = 'globalcontext.json'
|
||||
searchindex_filename = 'searchindex.json'
|
||||
|
@ -174,6 +174,8 @@ class HTMLHelpBuilder(StandaloneHTMLBuilder):
|
||||
index files. Adapted from the original Doc/tools/prechm.py.
|
||||
"""
|
||||
name = 'htmlhelp'
|
||||
epilog = ('You can now run HTML Help Workshop with the .htp file in '
|
||||
'%(outdir)s.')
|
||||
|
||||
# don't copy the reST source
|
||||
copysource = False
|
||||
|
@ -49,6 +49,12 @@ class LaTeXBuilder(Builder):
|
||||
"""
|
||||
name = 'latex'
|
||||
format = 'latex'
|
||||
epilog = 'The LaTeX files are in %(outdir)s.'
|
||||
if os.name == 'posix':
|
||||
epilog += ("\nRun 'make' in that directory to run these through "
|
||||
"(pdf)latex\n"
|
||||
"(use `make latexpdf' here to do that automatically).")
|
||||
|
||||
supported_image_types = ['application/pdf', 'image/png', 'image/jpeg']
|
||||
supported_remote_images = False
|
||||
default_translator_class = LaTeXTranslator
|
||||
|
@ -90,6 +90,8 @@ class CheckExternalLinksBuilder(Builder):
|
||||
Checks for broken external links.
|
||||
"""
|
||||
name = 'linkcheck'
|
||||
epilog = ('Look for any errors in the above output or in '
|
||||
'%(outdir)s/output.txt')
|
||||
|
||||
def init(self):
|
||||
# type: () -> None
|
||||
|
@ -40,6 +40,8 @@ class ManualPageBuilder(Builder):
|
||||
"""
|
||||
name = 'man'
|
||||
format = 'man'
|
||||
epilog = 'The manual pages are in %(outdir)s.'
|
||||
|
||||
default_translator_class = ManualPageTranslator
|
||||
supported_image_types = [] # type: List[unicode]
|
||||
|
||||
|
@ -108,6 +108,11 @@ class QtHelpBuilder(StandaloneHTMLBuilder):
|
||||
Builder that also outputs Qt help project, contents and index files.
|
||||
"""
|
||||
name = 'qthelp'
|
||||
epilog = ('You can now run "qcollectiongenerator" with the .qhcp '
|
||||
'project file in %(outdir)s, like this:\n'
|
||||
'$ qcollectiongenerator %(outdir)s/%(project)s.qhcp\n'
|
||||
'To view the help file:\n'
|
||||
'$ assistant -collectionFile %(outdir)s/%(project)s.qhc')
|
||||
|
||||
# don't copy the reST source
|
||||
copysource = False
|
||||
|
@ -9,6 +9,7 @@
|
||||
:license: BSD, see LICENSE for details.
|
||||
"""
|
||||
|
||||
import os
|
||||
from os import path
|
||||
|
||||
from docutils import nodes
|
||||
@ -97,6 +98,12 @@ class TexinfoBuilder(Builder):
|
||||
"""
|
||||
name = 'texinfo'
|
||||
format = 'texinfo'
|
||||
epilog = 'The Texinfo files are in %(outdir)s.'
|
||||
if os.name == 'posix':
|
||||
epilog += ("\nRun 'make' in that directory to run these through "
|
||||
"makeinfo\n"
|
||||
"(use 'make info' here to do that automatically).")
|
||||
|
||||
supported_image_types = ['image/png', 'image/jpeg',
|
||||
'image/gif']
|
||||
default_translator_class = TexinfoTranslator
|
||||
|
@ -31,6 +31,8 @@ logger = logging.getLogger(__name__)
|
||||
class TextBuilder(Builder):
|
||||
name = 'text'
|
||||
format = 'text'
|
||||
epilog = 'The text files are in %(outdir)s.'
|
||||
|
||||
out_suffix = '.txt'
|
||||
allow_parallel = True
|
||||
default_translator_class = TextTranslator
|
||||
|
@ -35,6 +35,8 @@ class XMLBuilder(Builder):
|
||||
"""
|
||||
name = 'xml'
|
||||
format = 'xml'
|
||||
epilog = 'The XML files are in %(outdir)s.'
|
||||
|
||||
out_suffix = '.xml'
|
||||
allow_parallel = True
|
||||
|
||||
@ -108,6 +110,8 @@ class PseudoXMLBuilder(XMLBuilder):
|
||||
"""
|
||||
name = 'pseudoxml'
|
||||
format = 'pseudoxml'
|
||||
epilog = 'The pseudo-XML files are in %(outdir)s.'
|
||||
|
||||
out_suffix = '.pseudoxml'
|
||||
|
||||
_writer_class = PseudoXMLWriter
|
||||
|
@ -50,8 +50,12 @@ def compile_regex_list(name, exps):
|
||||
|
||||
|
||||
class CoverageBuilder(Builder):
|
||||
|
||||
"""
|
||||
Evaluates coverage of code in the documentation.
|
||||
"""
|
||||
name = 'coverage'
|
||||
epilog = ('Testing of coverage in the sources finished, look at the '
|
||||
'results in %(outdir)s/python.txt.')
|
||||
|
||||
def init(self):
|
||||
# type: () -> None
|
||||
|
@ -271,6 +271,8 @@ class DocTestBuilder(Builder):
|
||||
Runs test snippets in the documentation.
|
||||
"""
|
||||
name = 'doctest'
|
||||
epilog = ('Testing of doctests in the sources finished, look at the '
|
||||
'results in %(outdir)s/output.txt.')
|
||||
|
||||
def init(self):
|
||||
# type: () -> None
|
||||
|
@ -97,101 +97,6 @@ class Make(object):
|
||||
if not osname or os.name == osname:
|
||||
print(' %s %s' % (blue(bname.ljust(10)), description))
|
||||
|
||||
def build_html(self):
|
||||
# type: () -> int
|
||||
if self.run_generic_build('html') > 0:
|
||||
return 1
|
||||
print()
|
||||
print('Build finished. The HTML pages are in %s.' % self.builddir_join('html'))
|
||||
return 0
|
||||
|
||||
def build_dirhtml(self):
|
||||
# type: () -> int
|
||||
if self.run_generic_build('dirhtml') > 0:
|
||||
return 1
|
||||
print()
|
||||
print('Build finished. The HTML pages are in %s.' %
|
||||
self.builddir_join('dirhtml'))
|
||||
return 0
|
||||
|
||||
def build_singlehtml(self):
|
||||
# type: () -> int
|
||||
if self.run_generic_build('singlehtml') > 0:
|
||||
return 1
|
||||
print()
|
||||
print('Build finished. The HTML page is in %s.' %
|
||||
self.builddir_join('singlehtml'))
|
||||
return 0
|
||||
|
||||
def build_pickle(self):
|
||||
# type: () -> int
|
||||
if self.run_generic_build('pickle') > 0:
|
||||
return 1
|
||||
print()
|
||||
print('Build finished; now you can process the pickle files.')
|
||||
return 0
|
||||
|
||||
def build_json(self):
|
||||
# type: () -> int
|
||||
if self.run_generic_build('json') > 0:
|
||||
return 1
|
||||
print()
|
||||
print('Build finished; now you can process the JSON files.')
|
||||
return 0
|
||||
|
||||
def build_htmlhelp(self):
|
||||
# type: () -> int
|
||||
if self.run_generic_build('htmlhelp') > 0:
|
||||
return 1
|
||||
print()
|
||||
print('Build finished; now you can run HTML Help Workshop with the '
|
||||
'.hhp project file in %s.' % self.builddir_join('htmlhelp'))
|
||||
return 0
|
||||
|
||||
def build_qthelp(self):
|
||||
# type: () -> int
|
||||
if self.run_generic_build('qthelp') > 0:
|
||||
return 1
|
||||
print()
|
||||
print('Build finished; now you can run "qcollectiongenerator" with the '
|
||||
'.qhcp project file in %s, like this:' % self.builddir_join('qthelp'))
|
||||
print('$ qcollectiongenerator %s.qhcp' % self.builddir_join('qthelp', proj_name))
|
||||
print('To view the help file:')
|
||||
print('$ assistant -collectionFile %s.qhc' %
|
||||
self.builddir_join('qthelp', proj_name))
|
||||
return 0
|
||||
|
||||
def build_devhelp(self):
|
||||
# type: () -> int
|
||||
if self.run_generic_build('devhelp') > 0:
|
||||
return 1
|
||||
print()
|
||||
print("Build finished.")
|
||||
print("To view the help file:")
|
||||
print("$ mkdir -p $HOME/.local/share/devhelp/" + proj_name)
|
||||
print("$ ln -s %s $HOME/.local/share/devhelp/%s" %
|
||||
(self.builddir_join('devhelp'), proj_name))
|
||||
print("$ devhelp")
|
||||
return 0
|
||||
|
||||
def build_epub(self):
|
||||
# type: () -> int
|
||||
if self.run_generic_build('epub') > 0:
|
||||
return 1
|
||||
print()
|
||||
print('Build finished. The ePub file is in %s.' % self.builddir_join('epub'))
|
||||
return 0
|
||||
|
||||
def build_latex(self):
|
||||
# type: () -> int
|
||||
if self.run_generic_build('latex') > 0:
|
||||
return 1
|
||||
print("Build finished; the LaTeX files are in %s." % self.builddir_join('latex'))
|
||||
if os.name == 'posix':
|
||||
print("Run `make' in that directory to run these through (pdf)latex")
|
||||
print("(use `make latexpdf' here to do that automatically).")
|
||||
return 0
|
||||
|
||||
def build_latexpdf(self):
|
||||
# type: () -> int
|
||||
if self.run_generic_build('latex') > 0:
|
||||
@ -206,25 +111,6 @@ class Make(object):
|
||||
with cd(self.builddir_join('latex')):
|
||||
return subprocess.call([self.makecmd, 'all-pdf-ja'])
|
||||
|
||||
def build_text(self):
|
||||
# type: () -> int
|
||||
if self.run_generic_build('text') > 0:
|
||||
return 1
|
||||
print()
|
||||
print('Build finished. The text files are in %s.' % self.builddir_join('text'))
|
||||
return 0
|
||||
|
||||
def build_texinfo(self):
|
||||
# type: () -> int
|
||||
if self.run_generic_build('texinfo') > 0:
|
||||
return 1
|
||||
print("Build finished; the Texinfo files are in %s." %
|
||||
self.builddir_join('texinfo'))
|
||||
if os.name == 'posix':
|
||||
print("Run `make' in that directory to run these through makeinfo")
|
||||
print("(use `make info' here to do that automatically).")
|
||||
return 0
|
||||
|
||||
def build_info(self):
|
||||
# type: () -> int
|
||||
if self.run_generic_build('texinfo') > 0:
|
||||
@ -237,60 +123,6 @@ class Make(object):
|
||||
dtdir = self.builddir_join('gettext', '.doctrees')
|
||||
if self.run_generic_build('gettext', doctreedir=dtdir) > 0:
|
||||
return 1
|
||||
print()
|
||||
print('Build finished. The message catalogs are in %s.' %
|
||||
self.builddir_join('gettext'))
|
||||
return 0
|
||||
|
||||
def build_changes(self):
|
||||
# type: () -> int
|
||||
if self.run_generic_build('changes') > 0:
|
||||
return 1
|
||||
print()
|
||||
print('Build finished. The overview file is in %s.' %
|
||||
self.builddir_join('changes'))
|
||||
return 0
|
||||
|
||||
def build_linkcheck(self):
|
||||
# type: () -> int
|
||||
res = self.run_generic_build('linkcheck')
|
||||
print()
|
||||
print('Link check complete; look for any errors in the above output '
|
||||
'or in %s.' % self.builddir_join('linkcheck', 'output.txt'))
|
||||
return res
|
||||
|
||||
def build_doctest(self):
|
||||
# type: () -> int
|
||||
res = self.run_generic_build('doctest')
|
||||
print("Testing of doctests in the sources finished, look at the "
|
||||
"results in %s." % self.builddir_join('doctest', 'output.txt'))
|
||||
return res
|
||||
|
||||
def build_coverage(self):
|
||||
# type: () -> int
|
||||
if self.run_generic_build('coverage') > 0:
|
||||
print("Has the coverage extension been enabled?")
|
||||
return 1
|
||||
print()
|
||||
print("Testing of coverage in the sources finished, look at the "
|
||||
"results in %s." % self.builddir_join('coverage'))
|
||||
return 0
|
||||
|
||||
def build_xml(self):
|
||||
# type: () -> int
|
||||
if self.run_generic_build('xml') > 0:
|
||||
return 1
|
||||
print()
|
||||
print('Build finished. The XML files are in %s.' % self.builddir_join('xml'))
|
||||
return 0
|
||||
|
||||
def build_pseudoxml(self):
|
||||
# type: () -> int
|
||||
if self.run_generic_build('pseudoxml') > 0:
|
||||
return 1
|
||||
print()
|
||||
print('Build finished. The pseudo-XML files are in %s.' %
|
||||
self.builddir_join('pseudoxml'))
|
||||
return 0
|
||||
|
||||
def run_generic_build(self, builder, doctreedir=None):
|
||||
|
@ -5,14 +5,16 @@
|
||||
SPHINXOPTS ?=
|
||||
SPHINXBUILD ?= sphinx-build
|
||||
PAPER ?=
|
||||
SOURCEDIR = {{ rsrcdir }}
|
||||
BUILDDIR = {{ rbuilddir }}
|
||||
|
||||
# Internal variables.
|
||||
PAPEROPT_a4 = -D latex_elements.papersize=a4
|
||||
PAPEROPT_letter = -D latex_elements.papersize=letter
|
||||
ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) {{ rsrcdir }}
|
||||
# $(O) is meant as a shortcut for $(SPHINXOPTS)
|
||||
ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) $(O) $(SOURCEDIR)
|
||||
# the i18n builder cannot share the environment and doctrees with the others
|
||||
I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) {{ rsrcdir }}
|
||||
I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) $(O) $(SOURCEDIR)
|
||||
|
||||
.PHONY: help
|
||||
help:
|
||||
@ -49,86 +51,6 @@ help:
|
||||
clean:
|
||||
rm -rf $(BUILDDIR)/*
|
||||
|
||||
.PHONY: html
|
||||
html:
|
||||
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
|
||||
@echo
|
||||
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
|
||||
|
||||
.PHONY: dirhtml
|
||||
dirhtml:
|
||||
$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
|
||||
@echo
|
||||
@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
|
||||
|
||||
.PHONY: singlehtml
|
||||
singlehtml:
|
||||
$(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
|
||||
@echo
|
||||
@echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
|
||||
|
||||
.PHONY: pickle
|
||||
pickle:
|
||||
$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
|
||||
@echo
|
||||
@echo "Build finished; now you can process the pickle files."
|
||||
|
||||
.PHONY: json
|
||||
json:
|
||||
$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
|
||||
@echo
|
||||
@echo "Build finished; now you can process the JSON files."
|
||||
|
||||
.PHONY: htmlhelp
|
||||
htmlhelp:
|
||||
$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
|
||||
@echo
|
||||
@echo "Build finished; now you can run HTML Help Workshop with the" \
|
||||
".hhp project file in $(BUILDDIR)/htmlhelp."
|
||||
|
||||
.PHONY: qthelp
|
||||
qthelp:
|
||||
$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
|
||||
@echo
|
||||
@echo "Build finished; now you can run "qcollectiongenerator" with the" \
|
||||
".qhcp project file in $(BUILDDIR)/qthelp, like this:"
|
||||
@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/{{ project_fn }}.qhcp"
|
||||
@echo "To view the help file:"
|
||||
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/{{ project_fn }}.qhc"
|
||||
|
||||
.PHONY: applehelp
|
||||
applehelp:
|
||||
$(SPHINXBUILD) -b applehelp $(ALLSPHINXOPTS) $(BUILDDIR)/applehelp
|
||||
@echo
|
||||
@echo "Build finished. The help book is in $(BUILDDIR)/applehelp."
|
||||
@echo "N.B. You won't be able to view it unless you put it in" \
|
||||
"~/Library/Documentation/Help or install it in your application" \
|
||||
"bundle."
|
||||
|
||||
.PHONY: devhelp
|
||||
devhelp:
|
||||
$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
|
||||
@echo
|
||||
@echo "Build finished."
|
||||
@echo "To view the help file:"
|
||||
@echo "# mkdir -p $$HOME/.local/share/devhelp/{{ project_fn }}"
|
||||
@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/{{ project_fn }}"
|
||||
@echo "# devhelp"
|
||||
|
||||
.PHONY: epub
|
||||
epub:
|
||||
$(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
|
||||
@echo
|
||||
@echo "Build finished. The epub file is in $(BUILDDIR)/epub."
|
||||
|
||||
.PHONY: latex
|
||||
latex:
|
||||
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
|
||||
@echo
|
||||
@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
|
||||
@echo "Run \`make' in that directory to run these through (pdf)latex" \
|
||||
"(use \`make latexpdf' here to do that automatically)."
|
||||
|
||||
.PHONY: latexpdf
|
||||
latexpdf:
|
||||
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
|
||||
@ -157,26 +79,6 @@ xelatexpdf:
|
||||
$(MAKE) PDFLATEX=xelatex -C $(BUILDDIR)/latex all-pdf
|
||||
@echo "xelatex finished; the PDF files are in $(BUILDDIR)/latex."
|
||||
|
||||
.PHONY: text
|
||||
text:
|
||||
$(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
|
||||
@echo
|
||||
@echo "Build finished. The text files are in $(BUILDDIR)/text."
|
||||
|
||||
.PHONY: man
|
||||
man:
|
||||
$(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
|
||||
@echo
|
||||
@echo "Build finished. The manual pages are in $(BUILDDIR)/man."
|
||||
|
||||
.PHONY: texinfo
|
||||
texinfo:
|
||||
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
|
||||
@echo
|
||||
@echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
|
||||
@echo "Run \`make' in that directory to run these through makeinfo" \
|
||||
"(use \`make info' here to do that automatically)."
|
||||
|
||||
.PHONY: info
|
||||
info:
|
||||
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
|
||||
@ -187,49 +89,9 @@ info:
|
||||
.PHONY: gettext
|
||||
gettext:
|
||||
$(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
|
||||
@echo
|
||||
@echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
|
||||
|
||||
.PHONY: changes
|
||||
changes:
|
||||
$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
|
||||
@echo
|
||||
@echo "The overview file is in $(BUILDDIR)/changes."
|
||||
|
||||
.PHONY: linkcheck
|
||||
linkcheck:
|
||||
$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
|
||||
@echo
|
||||
@echo "Link check complete; look for any errors in the above output " \
|
||||
"or in $(BUILDDIR)/linkcheck/output.txt."
|
||||
|
||||
.PHONY: doctest
|
||||
doctest:
|
||||
$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
|
||||
@echo "Testing of doctests in the sources finished, look at the " \
|
||||
"results in $(BUILDDIR)/doctest/output.txt."
|
||||
|
||||
.PHONY: coverage
|
||||
coverage:
|
||||
$(SPHINXBUILD) -b coverage $(ALLSPHINXOPTS) $(BUILDDIR)/coverage
|
||||
@echo "Testing of coverage in the sources finished, look at the " \
|
||||
"results in $(BUILDDIR)/coverage/python.txt."
|
||||
|
||||
.PHONY: xml
|
||||
xml:
|
||||
$(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml
|
||||
@echo
|
||||
@echo "Build finished. The XML files are in $(BUILDDIR)/xml."
|
||||
|
||||
.PHONY: pseudoxml
|
||||
pseudoxml:
|
||||
$(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml
|
||||
@echo
|
||||
@echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml."
|
||||
|
||||
.PHONY: dummy
|
||||
dummy:
|
||||
$(SPHINXBUILD) -b dummy $(ALLSPHINXOPTS) $(BUILDDIR)/dummy
|
||||
@echo
|
||||
@echo "Build finished. Dummy builder generates no files."
|
||||
# Catch-all target: route all unknown targets to Sphinx
|
||||
.PHONY: Makefile
|
||||
%: Makefile
|
||||
$(SPHINXBUILD) -b "$@" $(ALLSPHINXOPTS) "$(BUILDDIR)/$@"
|
||||
|
||||
|
@ -8,8 +8,9 @@ if "%SPHINXBUILD%" == "" (
|
||||
set SPHINXBUILD=sphinx-build
|
||||
)
|
||||
set BUILDDIR={{ rbuilddir }}
|
||||
set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% {{ rsrcdir }}
|
||||
set I18NSPHINXOPTS=%SPHINXOPTS% {{ rsrcdir }}
|
||||
set SOURCEDIR={{ rsrcdir }}
|
||||
set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% %SOURCEDIR%
|
||||
set I18NSPHINXOPTS=%SPHINXOPTS% %SOURCEDIR%
|
||||
if NOT "%PAPER%" == "" (
|
||||
set ALLSPHINXOPTS=-D latex_elements.papersize=%PAPER% %ALLSPHINXOPTS%
|
||||
set I18NSPHINXOPTS=-D latex_elements.papersize=%PAPER% %I18NSPHINXOPTS%
|
||||
@ -50,7 +51,6 @@ if "%1" == "clean" (
|
||||
goto end
|
||||
)
|
||||
|
||||
|
||||
REM Check if sphinx-build is available and fallback to Python version if any
|
||||
%SPHINXBUILD% 1>NUL 2>NUL
|
||||
if errorlevel 9009 goto sphinx_python
|
||||
@ -74,92 +74,6 @@ if errorlevel 9009 (
|
||||
|
||||
:sphinx_ok
|
||||
|
||||
|
||||
if "%1" == "html" (
|
||||
%SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. The HTML pages are in %BUILDDIR%/html.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "dirhtml" (
|
||||
%SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "singlehtml" (
|
||||
%SPHINXBUILD% -b singlehtml %ALLSPHINXOPTS% %BUILDDIR%/singlehtml
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. The HTML pages are in %BUILDDIR%/singlehtml.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "pickle" (
|
||||
%SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished; now you can process the pickle files.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "json" (
|
||||
%SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished; now you can process the JSON files.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "htmlhelp" (
|
||||
%SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished; now you can run HTML Help Workshop with the ^
|
||||
.hhp project file in %BUILDDIR%/htmlhelp.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "qthelp" (
|
||||
%SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished; now you can run "qcollectiongenerator" with the ^
|
||||
.qhcp project file in %BUILDDIR%/qthelp, like this:
|
||||
echo.^> qcollectiongenerator %BUILDDIR%\qthelp\{{ project_fn }}.qhcp
|
||||
echo.To view the help file:
|
||||
echo.^> assistant -collectionFile %BUILDDIR%\qthelp\{{ project_fn }}.ghc
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "devhelp" (
|
||||
%SPHINXBUILD% -b devhelp %ALLSPHINXOPTS% %BUILDDIR%/devhelp
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "epub" (
|
||||
%SPHINXBUILD% -b epub %ALLSPHINXOPTS% %BUILDDIR%/epub
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. The epub file is in %BUILDDIR%/epub.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "latex" (
|
||||
%SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished; the LaTeX files are in %BUILDDIR%/latex.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "latexpdf" (
|
||||
%SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
|
||||
cd %BUILDDIR%/latex
|
||||
@ -180,96 +94,14 @@ if "%1" == "latexpdfja" (
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "text" (
|
||||
%SPHINXBUILD% -b text %ALLSPHINXOPTS% %BUILDDIR%/text
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. The text files are in %BUILDDIR%/text.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "man" (
|
||||
%SPHINXBUILD% -b man %ALLSPHINXOPTS% %BUILDDIR%/man
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. The manual pages are in %BUILDDIR%/man.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "texinfo" (
|
||||
%SPHINXBUILD% -b texinfo %ALLSPHINXOPTS% %BUILDDIR%/texinfo
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. The Texinfo files are in %BUILDDIR%/texinfo.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "gettext" (
|
||||
%SPHINXBUILD% -b gettext %I18NSPHINXOPTS% %BUILDDIR%/locale
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. The message catalogs are in %BUILDDIR%/locale.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "changes" (
|
||||
%SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.The overview file is in %BUILDDIR%/changes.
|
||||
%SPHINXBUILD% -b %1 %ALLSPHINXOPTS% %BUILDDIR%/%1
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "linkcheck" (
|
||||
%SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Link check complete; look for any errors in the above output ^
|
||||
or in %BUILDDIR%/linkcheck/output.txt.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "doctest" (
|
||||
%SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Testing of doctests in the sources finished, look at the ^
|
||||
results in %BUILDDIR%/doctest/output.txt.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "coverage" (
|
||||
%SPHINXBUILD% -b coverage %ALLSPHINXOPTS% %BUILDDIR%/coverage
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Testing of coverage in the sources finished, look at the ^
|
||||
results in %BUILDDIR%/coverage/python.txt.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "xml" (
|
||||
%SPHINXBUILD% -b xml %ALLSPHINXOPTS% %BUILDDIR%/xml
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. The XML files are in %BUILDDIR%/xml.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "pseudoxml" (
|
||||
%SPHINXBUILD% -b pseudoxml %ALLSPHINXOPTS% %BUILDDIR%/pseudoxml
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. The pseudo-XML files are in %BUILDDIR%/pseudoxml.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "dummy" (
|
||||
%SPHINXBUILD% -b dummy %ALLSPHINXOPTS% %BUILDDIR%/dummy
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. Dummy builder generates no files.
|
||||
goto end
|
||||
)
|
||||
|
||||
:end
|
||||
popd
|
||||
|
Loading…
Reference in New Issue
Block a user