10f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva@ECHO OFF
20f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
30f48f9d5548b0617d6f17d11727d752aecb7da0cSean SilvaREM Command file for Sphinx documentation
40f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
50f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%SPHINXBUILD%" == "" (
60f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	set SPHINXBUILD=sphinx-build
70f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
80f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaset BUILDDIR=_build
90f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaset ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% .
100f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaset I18NSPHINXOPTS=%SPHINXOPTS% .
110f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif NOT "%PAPER%" == "" (
120f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS%
130f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	set I18NSPHINXOPTS=-D latex_paper_size=%PAPER% %I18NSPHINXOPTS%
140f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
150f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
160f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%1" == "" goto help
170f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
180f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%1" == "help" (
190f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	:help
200f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.Please use `make ^<target^>` where ^<target^> is one of
210f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.  html       to make standalone HTML files
220f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.  dirhtml    to make HTML files named index.html in directories
230f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.  singlehtml to make a single large HTML file
240f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.  pickle     to make pickle files
250f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.  json       to make JSON files
260f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.  htmlhelp   to make HTML files and a HTML help project
270f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.  qthelp     to make HTML files and a qthelp project
280f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.  devhelp    to make HTML files and a Devhelp project
290f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.  epub       to make an epub
300f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.  latex      to make LaTeX files, you can set PAPER=a4 or PAPER=letter
310f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.  text       to make text files
320f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.  man        to make manual pages
330f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.  texinfo    to make Texinfo files
340f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.  gettext    to make PO message catalogs
350f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.  changes    to make an overview over all changed/added/deprecated items
360f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.  linkcheck  to check all external links for integrity
370f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.  doctest    to run all doctests embedded in the documentation if enabled
380f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	goto end
390f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
400f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
410f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%1" == "clean" (
420f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i
430f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	del /q /s %BUILDDIR%\*
440f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	goto end
450f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
460f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
470f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%1" == "html" (
480f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	%SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html
490f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	if errorlevel 1 exit /b 1
500f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.
510f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.Build finished. The HTML pages are in %BUILDDIR%/html.
520f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	goto end
530f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
540f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
550f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%1" == "dirhtml" (
560f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	%SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml
570f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	if errorlevel 1 exit /b 1
580f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.
590f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml.
600f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	goto end
610f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
620f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
630f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%1" == "singlehtml" (
640f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	%SPHINXBUILD% -b singlehtml %ALLSPHINXOPTS% %BUILDDIR%/singlehtml
650f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	if errorlevel 1 exit /b 1
660f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.
670f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.Build finished. The HTML pages are in %BUILDDIR%/singlehtml.
680f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	goto end
690f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
700f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
710f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%1" == "pickle" (
720f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	%SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle
730f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	if errorlevel 1 exit /b 1
740f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.
750f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.Build finished; now you can process the pickle files.
760f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	goto end
770f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
780f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
790f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%1" == "json" (
800f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	%SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json
810f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	if errorlevel 1 exit /b 1
820f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.
830f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.Build finished; now you can process the JSON files.
840f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	goto end
850f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
860f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
870f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%1" == "htmlhelp" (
880f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	%SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp
890f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	if errorlevel 1 exit /b 1
900f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.
910f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.Build finished; now you can run HTML Help Workshop with the ^
920f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva.hhp project file in %BUILDDIR%/htmlhelp.
930f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	goto end
940f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
950f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
960f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%1" == "qthelp" (
970f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	%SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp
980f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	if errorlevel 1 exit /b 1
990f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.
1000f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.Build finished; now you can run "qcollectiongenerator" with the ^
1010f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva.qhcp project file in %BUILDDIR%/qthelp, like this:
1020f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.^> qcollectiongenerator %BUILDDIR%\qthelp\ClangStaticAnalyzer.qhcp
1030f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.To view the help file:
1040f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.^> assistant -collectionFile %BUILDDIR%\qthelp\ClangStaticAnalyzer.ghc
1050f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	goto end
1060f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
1070f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
1080f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%1" == "devhelp" (
1090f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	%SPHINXBUILD% -b devhelp %ALLSPHINXOPTS% %BUILDDIR%/devhelp
1100f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	if errorlevel 1 exit /b 1
1110f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.
1120f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.Build finished.
1130f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	goto end
1140f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
1150f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
1160f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%1" == "epub" (
1170f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	%SPHINXBUILD% -b epub %ALLSPHINXOPTS% %BUILDDIR%/epub
1180f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	if errorlevel 1 exit /b 1
1190f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.
1200f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.Build finished. The epub file is in %BUILDDIR%/epub.
1210f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	goto end
1220f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
1230f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
1240f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%1" == "latex" (
1250f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	%SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
1260f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	if errorlevel 1 exit /b 1
1270f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.
1280f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.Build finished; the LaTeX files are in %BUILDDIR%/latex.
1290f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	goto end
1300f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
1310f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
1320f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%1" == "text" (
1330f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	%SPHINXBUILD% -b text %ALLSPHINXOPTS% %BUILDDIR%/text
1340f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	if errorlevel 1 exit /b 1
1350f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.
1360f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.Build finished. The text files are in %BUILDDIR%/text.
1370f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	goto end
1380f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
1390f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
1400f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%1" == "man" (
1410f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	%SPHINXBUILD% -b man %ALLSPHINXOPTS% %BUILDDIR%/man
1420f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	if errorlevel 1 exit /b 1
1430f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.
1440f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.Build finished. The manual pages are in %BUILDDIR%/man.
1450f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	goto end
1460f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
1470f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
1480f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%1" == "texinfo" (
1490f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	%SPHINXBUILD% -b texinfo %ALLSPHINXOPTS% %BUILDDIR%/texinfo
1500f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	if errorlevel 1 exit /b 1
1510f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.
1520f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.Build finished. The Texinfo files are in %BUILDDIR%/texinfo.
1530f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	goto end
1540f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
1550f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
1560f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%1" == "gettext" (
1570f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	%SPHINXBUILD% -b gettext %I18NSPHINXOPTS% %BUILDDIR%/locale
1580f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	if errorlevel 1 exit /b 1
1590f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.
1600f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.Build finished. The message catalogs are in %BUILDDIR%/locale.
1610f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	goto end
1620f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
1630f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
1640f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%1" == "changes" (
1650f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	%SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes
1660f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	if errorlevel 1 exit /b 1
1670f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.
1680f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.The overview file is in %BUILDDIR%/changes.
1690f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	goto end
1700f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
1710f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
1720f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%1" == "linkcheck" (
1730f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	%SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck
1740f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	if errorlevel 1 exit /b 1
1750f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.
1760f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.Link check complete; look for any errors in the above output ^
1770f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaor in %BUILDDIR%/linkcheck/output.txt.
1780f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	goto end
1790f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
1800f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
1810f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaif "%1" == "doctest" (
1820f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	%SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest
1830f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	if errorlevel 1 exit /b 1
1840f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.
1850f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	echo.Testing of doctests in the sources finished, look at the ^
1860f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silvaresults in %BUILDDIR%/doctest/output.txt.
1870f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva	goto end
1880f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva)
1890f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva
1900f48f9d5548b0617d6f17d11727d752aecb7da0cSean Silva:end
191