1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 | Doc/make.bat
@echo off setlocal pushd %~dp0 set this=%~n0 if "%SPHINXBUILD%" EQU "" set SPHINXBUILD=sphinx-build if "%PYTHON%" EQU "" set PYTHON=py if DEFINED ProgramFiles(x86) set _PRGMFLS=%ProgramFiles(x86)% if NOT DEFINED ProgramFiles(x86) set _PRGMFLS=%ProgramFiles% if "%HTMLHELP%" EQU "" set HTMLHELP=%_PRGMFLS%\HTML Help Workshop\hhc.exe if "%DISTVERSION%" EQU "" for /f "usebackq" %%v in (`%PYTHON% tools/extensions/patchlevel.py`) do set DISTVERSION=%%v if "%BUILDDIR%" EQU "" set BUILDDIR=build rem Targets that don't require sphinx-build if "%1" EQU "" goto help if "%1" EQU "help" goto help if "%1" EQU "check" goto check if "%1" EQU "serve" goto serve if "%1" == "clean" ( rmdir /q /s %BUILDDIR% goto end ) %SPHINXBUILD% 2> nul if errorlevel 9009 ( echo. echo.The 'sphinx-build' command was not found. Make sure you have Sphinx echo.installed, then set the SPHINXBUILD environment variable to point echo.to the full path of the 'sphinx-build' executable. Alternatively you echo.may add the Sphinx directory to PATH. echo. echo.If you don't have Sphinx installed, grab it from echo.http://sphinx-doc.org/ goto end ) rem Targets that do require sphinx-build and have their own label if "%1" EQU "htmlview" goto htmlview rem Everything else goto build :help echo.usage: %this% BUILDER [filename ...] echo. echo.Call %this% with the desired Sphinx builder as the first argument, e.g. echo.``%this% html`` or ``%this% doctest``. Interesting targets that are echo.always available include: echo. echo. Provided by Sphinx: echo. html, htmlhelp, latex, text echo. suspicious, linkcheck, changes, doctest echo. Provided by this script: echo. clean, check, serve, htmlview echo. echo.All arguments past the first one are passed through to sphinx-build as echo.filenames to build or are ignored. See README.txt in this directory or echo.the documentation for your version of Sphinx for more exhaustive lists echo.of available targets and descriptions of each. echo. echo.This script assumes that the SPHINXBUILD environment variable contains echo.a legitimate command for calling sphinx-build, or that sphinx-build is echo.on your PATH if SPHINXBUILD is not set. Options for sphinx-build can echo.be passed by setting the SPHINXOPTS environment variable. goto end :build if NOT "%PAPER%" == "" ( set SPHINXOPTS=-D latex_paper_size=%PAPER% %SPHINXOPTS% ) cmd /C %SPHINXBUILD% %SPHINXOPTS% -b%1 -dbuild\doctrees . %BUILDDIR%\%* if "%1" EQU "htmlhelp" ( if not exist "%HTMLHELP%" ( echo. echo.The HTML Help Workshop was not found. Set the HTMLHELP variable echo.to the path to hhc.exe or download and install it from echo.http://msdn.microsoft.com/en-us/library/ms669985 rem Set errorlevel to 1 and exit cmd /C exit /b 1 goto end ) cmd /C "%HTMLHELP%" build\htmlhelp\python%DISTVERSION:.=%.hhp rem hhc.exe seems to always exit with code 1, reset to 0 for less than 2 if not errorlevel 2 cmd /C exit /b 0 ) echo. if errorlevel 1 ( echo.Build failed (exit code %ERRORLEVEL%^), check for error messages echo.above. Any output will be found in %BUILDDIR%\%1 ) else ( echo.Build succeeded. All output should be in %BUILDDIR%\%1 ) goto end :htmlview if NOT "%2" EQU "" ( echo.Can't specify filenames to build with htmlview target, ignoring. ) cmd /C %this% html if EXIST %BUILDDIR%\html\index.html ( echo.Opening %BUILDDIR%\html\index.html in the default web browser... start %BUILDDIR%\html\index.html ) goto end :check cmd /C %PYTHON% tools\rstlint.py -i tools goto end :serve cmd /C %PYTHON% ..\Tools\scripts\serve.py %BUILDDIR%\html goto end :end popd |