29 changed files with 1040 additions and 1037 deletions
-
3.hgeol
-
266Doc/make.bat
-
2Lib/ctypes/macholib/fetch_macholib.bat
-
8Lib/idlelib/idle.bat
-
222Modules/_decimal/tests/runall.bat
-
44PC/bdist_wininst/build.bat
-
86PCbuild/build.bat
-
2PCbuild/build_env.bat
-
96PCbuild/build_pgo.bat
-
10PCbuild/clean.bat
-
32PCbuild/env.bat
-
206PCbuild/get_externals.bat
-
30PCbuild/idle.bat
-
24PCbuild/prepare_ssl.bat
-
116PCbuild/rt.bat
-
4Tools/buildbot/build-amd64.bat
-
40Tools/buildbot/build.bat
-
16Tools/buildbot/buildmsi.bat
-
4Tools/buildbot/clean-amd64.bat
-
58Tools/buildbot/clean.bat
-
4Tools/buildbot/external-amd64.bat
-
4Tools/buildbot/external.bat
-
14Tools/buildbot/test-amd64.bat
-
14Tools/buildbot/test.bat
-
92Tools/msi/build.bat
-
326Tools/msi/buildrelease.bat
-
228Tools/msi/testrelease.bat
-
112Tools/msi/uploadrelease.bat
-
14Tools/unicode/genwincodecs.bat
@ -1,133 +1,133 @@ |
|||
@echo off |
|||
setlocal |
|||
|
|||
pushd %~dp0 |
|||
|
|||
set this=%~n0 |
|||
|
|||
if "%SPHINXBUILD%" EQU "" set SPHINXBUILD=sphinx-build |
|||
if "%PYTHON%" EQU "" set PYTHON=py |
|||
|
|||
if "%1" NEQ "htmlhelp" goto :skiphhcsearch |
|||
if exist "%HTMLHELP%" goto :skiphhcsearch |
|||
|
|||
rem Search for HHC in likely places |
|||
set HTMLHELP= |
|||
where hhc /q && set HTMLHELP=hhc && goto :skiphhcsearch |
|||
where /R ..\externals hhc > "%TEMP%\hhc.loc" 2> nul && set /P HTMLHELP= < "%TEMP%\hhc.loc" & del "%TEMP%\hhc.loc" |
|||
if not exist "%HTMLHELP%" where /R "%ProgramFiles(x86)%" hhc > "%TEMP%\hhc.loc" 2> nul && set /P HTMLHELP= < "%TEMP%\hhc.loc" & del "%TEMP%\hhc.loc" |
|||
if not exist "%HTMLHELP%" where /R "%ProgramFiles%" hhc > "%TEMP%\hhc.loc" 2> nul && set /P HTMLHELP= < "%TEMP%\hhc.loc" & del "%TEMP%\hhc.loc" |
|||
if not exist "%HTMLHELP%" echo Cannot find HHC on PATH or in externals & exit /B 1 |
|||
:skiphhcsearch |
|||
|
|||
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/ |
|||
popd |
|||
exit /B 1 |
|||
) |
|||
|
|||
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 |
|||
@echo off |
|||
setlocal |
|||
|
|||
pushd %~dp0 |
|||
|
|||
set this=%~n0 |
|||
|
|||
if "%SPHINXBUILD%" EQU "" set SPHINXBUILD=sphinx-build |
|||
if "%PYTHON%" EQU "" set PYTHON=py |
|||
|
|||
if "%1" NEQ "htmlhelp" goto :skiphhcsearch |
|||
if exist "%HTMLHELP%" goto :skiphhcsearch |
|||
|
|||
rem Search for HHC in likely places |
|||
set HTMLHELP= |
|||
where hhc /q && set HTMLHELP=hhc && goto :skiphhcsearch |
|||
where /R ..\externals hhc > "%TEMP%\hhc.loc" 2> nul && set /P HTMLHELP= < "%TEMP%\hhc.loc" & del "%TEMP%\hhc.loc" |
|||
if not exist "%HTMLHELP%" where /R "%ProgramFiles(x86)%" hhc > "%TEMP%\hhc.loc" 2> nul && set /P HTMLHELP= < "%TEMP%\hhc.loc" & del "%TEMP%\hhc.loc" |
|||
if not exist "%HTMLHELP%" where /R "%ProgramFiles%" hhc > "%TEMP%\hhc.loc" 2> nul && set /P HTMLHELP= < "%TEMP%\hhc.loc" & del "%TEMP%\hhc.loc" |
|||
if not exist "%HTMLHELP%" echo Cannot find HHC on PATH or in externals & exit /B 1 |
|||
:skiphhcsearch |
|||
|
|||
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/ |
|||
popd |
|||
exit /B 1 |
|||
) |
|||
|
|||
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 |
|||
@ -1 +1 @@ |
|||
svn export --force http://svn.red-bean.com/bob/macholib/trunk/macholib/ . |
|||
svn export --force http://svn.red-bean.com/bob/macholib/trunk/macholib/ . |
|||
@ -1,4 +1,4 @@ |
|||
@echo off |
|||
rem Start IDLE using the appropriate Python interpreter |
|||
set CURRDIR=%~dp0 |
|||
start "IDLE" "%CURRDIR%..\..\pythonw.exe" "%CURRDIR%idle.pyw" %1 %2 %3 %4 %5 %6 %7 %8 %9 |
|||
@echo off |
|||
rem Start IDLE using the appropriate Python interpreter |
|||
set CURRDIR=%~dp0 |
|||
start "IDLE" "%CURRDIR%..\..\pythonw.exe" "%CURRDIR%idle.pyw" %1 %2 %3 %4 %5 %6 %7 %8 %9 |
|||
@ -1,111 +1,111 @@ |
|||
@ECHO OFF |
|||
|
|||
rem Test all machine configurations, pydebug, refleaks, release build. |
|||
|
|||
cd ..\..\..\ |
|||
|
|||
|
|||
echo. |
|||
echo # ====================================================================== |
|||
echo # Building Python |
|||
echo # ====================================================================== |
|||
echo. |
|||
|
|||
call "%VS100COMNTOOLS%\..\..\VC\vcvarsall.bat" x64 |
|||
msbuild /noconsolelogger /target:clean PCbuild\pcbuild.sln /p:Configuration=Release /p:PlatformTarget=x64 |
|||
msbuild /noconsolelogger /target:clean PCbuild\pcbuild.sln /p:Configuration=Debug /p:PlatformTarget=x64 |
|||
msbuild /noconsolelogger PCbuild\pcbuild.sln /p:Configuration=Release /p:Platform=x64 |
|||
msbuild /noconsolelogger PCbuild\pcbuild.sln /p:Configuration=Debug /p:Platform=x64 |
|||
|
|||
call "%VS100COMNTOOLS%\..\..\VC\vcvarsall.bat" x86 |
|||
msbuild /noconsolelogger PCbuild\pcbuild.sln /p:Configuration=Release /p:Platform=Win32 |
|||
msbuild /noconsolelogger PCbuild\pcbuild.sln /p:Configuration=Debug /p:Platform=Win32 |
|||
echo. |
|||
echo. |
|||
|
|||
echo. |
|||
echo # ====================================================================== |
|||
echo # test_decimal: platform=x64 |
|||
echo # ====================================================================== |
|||
echo. |
|||
|
|||
cd PCbuild\amd64 |
|||
|
|||
echo # ==================== refleak tests ======================= |
|||
echo. |
|||
python_d.exe -m test -uall -R 2:2 test_decimal |
|||
echo. |
|||
echo. |
|||
|
|||
echo # ==================== regular tests ======================= |
|||
echo. |
|||
python.exe -m test -uall test_decimal |
|||
echo. |
|||
echo. |
|||
|
|||
cd .. |
|||
|
|||
echo. |
|||
echo # ====================================================================== |
|||
echo # test_decimal: platform=x86 |
|||
echo # ====================================================================== |
|||
echo. |
|||
|
|||
echo # ==================== refleak tests ======================= |
|||
echo. |
|||
python_d.exe -m test -uall -R 2:2 test_decimal |
|||
echo. |
|||
echo. |
|||
|
|||
echo # ==================== regular tests ======================= |
|||
echo. |
|||
python.exe -m test -uall test_decimal |
|||
echo. |
|||
echo. |
|||
|
|||
cd amd64 |
|||
|
|||
echo. |
|||
echo # ====================================================================== |
|||
echo # deccheck: platform=x64 |
|||
echo # ====================================================================== |
|||
echo. |
|||
|
|||
echo # ==================== debug build ======================= |
|||
echo. |
|||
python_d.exe ..\..\Modules\_decimal\tests\deccheck.py |
|||
echo. |
|||
echo. |
|||
|
|||
echo # =================== release build ====================== |
|||
echo. |
|||
python.exe ..\..\Modules\_decimal\tests\deccheck.py |
|||
echo. |
|||
echo. |
|||
|
|||
cd .. |
|||
|
|||
echo. |
|||
echo # ====================================================================== |
|||
echo # deccheck: platform=x86 |
|||
echo # ====================================================================== |
|||
echo. |
|||
echo. |
|||
|
|||
echo # ==================== debug build ======================= |
|||
echo. |
|||
python_d.exe ..\Modules\_decimal\tests\deccheck.py |
|||
echo. |
|||
echo. |
|||
|
|||
echo # =================== release build ====================== |
|||
echo. |
|||
python.exe ..\Modules\_decimal\tests\deccheck.py |
|||
echo. |
|||
echo. |
|||
|
|||
|
|||
cd ..\Modules\_decimal\tests |
|||
|
|||
|
|||
|
|||
@ECHO OFF |
|||
|
|||
rem Test all machine configurations, pydebug, refleaks, release build. |
|||
|
|||
cd ..\..\..\ |
|||
|
|||
|
|||
echo. |
|||
echo # ====================================================================== |
|||
echo # Building Python |
|||
echo # ====================================================================== |
|||
echo. |
|||
|
|||
call "%VS100COMNTOOLS%\..\..\VC\vcvarsall.bat" x64 |
|||
msbuild /noconsolelogger /target:clean PCbuild\pcbuild.sln /p:Configuration=Release /p:PlatformTarget=x64 |
|||
msbuild /noconsolelogger /target:clean PCbuild\pcbuild.sln /p:Configuration=Debug /p:PlatformTarget=x64 |
|||
msbuild /noconsolelogger PCbuild\pcbuild.sln /p:Configuration=Release /p:Platform=x64 |
|||
msbuild /noconsolelogger PCbuild\pcbuild.sln /p:Configuration=Debug /p:Platform=x64 |
|||
|
|||
call "%VS100COMNTOOLS%\..\..\VC\vcvarsall.bat" x86 |
|||
msbuild /noconsolelogger PCbuild\pcbuild.sln /p:Configuration=Release /p:Platform=Win32 |
|||
msbuild /noconsolelogger PCbuild\pcbuild.sln /p:Configuration=Debug /p:Platform=Win32 |
|||
echo. |
|||
echo. |
|||
|
|||
echo. |
|||
echo # ====================================================================== |
|||
echo # test_decimal: platform=x64 |
|||
echo # ====================================================================== |
|||
echo. |
|||
|
|||
cd PCbuild\amd64 |
|||
|
|||
echo # ==================== refleak tests ======================= |
|||
echo. |
|||
python_d.exe -m test -uall -R 2:2 test_decimal |
|||
echo. |
|||
echo. |
|||
|
|||
echo # ==================== regular tests ======================= |
|||
echo. |
|||
python.exe -m test -uall test_decimal |
|||
echo. |
|||
echo. |
|||
|
|||
cd .. |
|||
|
|||
echo. |
|||
echo # ====================================================================== |
|||
echo # test_decimal: platform=x86 |
|||
echo # ====================================================================== |
|||
echo. |
|||
|
|||
echo # ==================== refleak tests ======================= |
|||
echo. |
|||
python_d.exe -m test -uall -R 2:2 test_decimal |
|||
echo. |
|||
echo. |
|||
|
|||
echo # ==================== regular tests ======================= |
|||
echo. |
|||
python.exe -m test -uall test_decimal |
|||
echo. |
|||
echo. |
|||
|
|||
cd amd64 |
|||
|
|||
echo. |
|||
echo # ====================================================================== |
|||
echo # deccheck: platform=x64 |
|||
echo # ====================================================================== |
|||
echo. |
|||
|
|||
echo # ==================== debug build ======================= |
|||
echo. |
|||
python_d.exe ..\..\Modules\_decimal\tests\deccheck.py |
|||
echo. |
|||
echo. |
|||
|
|||
echo # =================== release build ====================== |
|||
echo. |
|||
python.exe ..\..\Modules\_decimal\tests\deccheck.py |
|||
echo. |
|||
echo. |
|||
|
|||
cd .. |
|||
|
|||
echo. |
|||
echo # ====================================================================== |
|||
echo # deccheck: platform=x86 |
|||
echo # ====================================================================== |
|||
echo. |
|||
echo. |
|||
|
|||
echo # ==================== debug build ======================= |
|||
echo. |
|||
python_d.exe ..\Modules\_decimal\tests\deccheck.py |
|||
echo. |
|||
echo. |
|||
|
|||
echo # =================== release build ====================== |
|||
echo. |
|||
python.exe ..\Modules\_decimal\tests\deccheck.py |
|||
echo. |
|||
echo. |
|||
|
|||
|
|||
cd ..\Modules\_decimal\tests |
|||
|
|||
|
|||
|
|||
@ -1,22 +1,22 @@ |
|||
@echo off |
|||
setlocal |
|||
|
|||
set D=%~dp0 |
|||
set PCBUILD=%~dp0..\..\PCBuild\ |
|||
|
|||
|
|||
echo Building Lib\distutils\command\wininst-xx.0.exe |
|||
|
|||
call "%PCBUILD%env.bat" x86 |
|||
if errorlevel 1 goto :eof |
|||
|
|||
msbuild "%D%bdist_wininst.vcxproj" "/p:SolutionDir=%PCBUILD%\" /p:Configuration=Release /p:Platform=Win32 |
|||
if errorlevel 1 goto :eof |
|||
|
|||
|
|||
echo Building Lib\distutils\command\wininst-xx.0-amd64.exe |
|||
|
|||
call "%PCBUILD%env.bat" x86_amd64 |
|||
if errorlevel 1 goto :eof |
|||
|
|||
msbuild "%D%bdist_wininst.vcxproj" "/p:SolutionDir=%PCBUILD%\" /p:Configuration=Release /p:Platform=x64 |
|||
@echo off |
|||
setlocal |
|||
|
|||
set D=%~dp0 |
|||
set PCBUILD=%~dp0..\..\PCBuild\ |
|||
|
|||
|
|||
echo Building Lib\distutils\command\wininst-xx.0.exe |
|||
|
|||
call "%PCBUILD%env.bat" x86 |
|||
if errorlevel 1 goto :eof |
|||
|
|||
msbuild "%D%bdist_wininst.vcxproj" "/p:SolutionDir=%PCBUILD%\" /p:Configuration=Release /p:Platform=Win32 |
|||
if errorlevel 1 goto :eof |
|||
|
|||
|
|||
echo Building Lib\distutils\command\wininst-xx.0-amd64.exe |
|||
|
|||
call "%PCBUILD%env.bat" x86_amd64 |
|||
if errorlevel 1 goto :eof |
|||
|
|||
msbuild "%D%bdist_wininst.vcxproj" "/p:SolutionDir=%PCBUILD%\" /p:Configuration=Release /p:Platform=x64 |
|||
@ -1,43 +1,43 @@ |
|||
@echo off |
|||
rem A batch program to build or rebuild a particular configuration, |
|||
rem just for convenience. |
|||
|
|||
rem Arguments: |
|||
rem -c Set the configuration (default: Release) |
|||
rem -p Set the platform (x64 or Win32, default: Win32) |
|||
rem -r Target Rebuild instead of Build |
|||
rem -t Set the target manually (Build, Rebuild, Clean, or CleanAll) |
|||
rem -d Set the configuration to Debug |
|||
rem -e Pull in external libraries using get_externals.bat |
|||
rem -M Disable parallel build |
|||
rem -v Increased output messages |
|||
|
|||
setlocal |
|||
set platf=Win32 |
|||
set vs_platf=x86 |
|||
set conf=Release |
|||
set target=Build |
|||
set dir=%~dp0 |
|||
set parallel=/m |
|||
set verbose=/nologo /v:m |
|||
|
|||
:CheckOpts |
|||
if '%1'=='-c' (set conf=%2) & shift & shift & goto CheckOpts |
|||
if '%1'=='-p' (set platf=%2) & shift & shift & goto CheckOpts |
|||
if '%1'=='-r' (set target=Rebuild) & shift & goto CheckOpts |
|||
if '%1'=='-t' (set target=%2) & shift & shift & goto CheckOpts |
|||
if '%1'=='-d' (set conf=Debug) & shift & goto CheckOpts |
|||
if '%1'=='-e' call "%dir%get_externals.bat" & shift & goto CheckOpts |
|||
if '%1'=='-M' (set parallel=) & shift & goto CheckOpts |
|||
if '%1'=='-v' (set verbose=/v:n) & shift & goto CheckOpts |
|||
|
|||
if '%platf%'=='x64' (set vs_platf=x86_amd64) |
|||
|
|||
rem Setup the environment |
|||
call "%dir%env.bat" %vs_platf% >nul |
|||
|
|||
rem Call on MSBuild to do the work, echo the command. |
|||
rem Passing %1-9 is not the preferred option, but argument parsing in |
|||
rem batch is, shall we say, "lackluster" |
|||
echo on |
|||
msbuild "%dir%pcbuild.proj" /t:%target% %parallel% %verbose% /p:Configuration=%conf% /p:Platform=%platf% %1 %2 %3 %4 %5 %6 %7 %8 %9 |
|||
@echo off |
|||
rem A batch program to build or rebuild a particular configuration, |
|||
rem just for convenience. |
|||
|
|||
rem Arguments: |
|||
rem -c Set the configuration (default: Release) |
|||
rem -p Set the platform (x64 or Win32, default: Win32) |
|||
rem -r Target Rebuild instead of Build |
|||
rem -t Set the target manually (Build, Rebuild, Clean, or CleanAll) |
|||
rem -d Set the configuration to Debug |
|||
rem -e Pull in external libraries using get_externals.bat |
|||
rem -M Disable parallel build |
|||
rem -v Increased output messages |
|||
|
|||
setlocal |
|||
set platf=Win32 |
|||
set vs_platf=x86 |
|||
set conf=Release |
|||
set target=Build |
|||
set dir=%~dp0 |
|||
set parallel=/m |
|||
set verbose=/nologo /v:m |
|||
|
|||
:CheckOpts |
|||
if '%1'=='-c' (set conf=%2) & shift & shift & goto CheckOpts |
|||
if '%1'=='-p' (set platf=%2) & shift & shift & goto CheckOpts |
|||
if '%1'=='-r' (set target=Rebuild) & shift & goto CheckOpts |
|||
if '%1'=='-t' (set target=%2) & shift & shift & goto CheckOpts |
|||
if '%1'=='-d' (set conf=Debug) & shift & goto CheckOpts |
|||
if '%1'=='-e' call "%dir%get_externals.bat" & shift & goto CheckOpts |
|||
if '%1'=='-M' (set parallel=) & shift & goto CheckOpts |
|||
if '%1'=='-v' (set verbose=/v:n) & shift & goto CheckOpts |
|||
|
|||
if '%platf%'=='x64' (set vs_platf=x86_amd64) |
|||
|
|||
rem Setup the environment |
|||
call "%dir%env.bat" %vs_platf% >nul |
|||
|
|||
rem Call on MSBuild to do the work, echo the command. |
|||
rem Passing %1-9 is not the preferred option, but argument parsing in |
|||
rem batch is, shall we say, "lackluster" |
|||
echo on |
|||
msbuild "%dir%pcbuild.proj" /t:%target% %parallel% %verbose% /p:Configuration=%conf% /p:Platform=%platf% %1 %2 %3 %4 %5 %6 %7 %8 %9 |
|||
@ -1 +1 @@ |
|||
@%comspec% /k env.bat %* |
|||
@%comspec% /k env.bat %* |
|||
@ -1,48 +1,48 @@ |
|||
@echo off |
|||
rem A batch program to build PGO (Profile guided optimization) by first |
|||
rem building instrumented binaries, then running the testsuite, and |
|||
rem finally building the optimized code. |
|||
rem Note, after the first instrumented run, one can just keep on |
|||
rem building the PGUpdate configuration while developing. |
|||
|
|||
setlocal |
|||
set platf=Win32 |
|||
set parallel=/m |
|||
set dir=%~dp0 |
|||
|
|||
rem use the performance testsuite. This is quick and simple |
|||
set job1="%dir%..\tools\pybench\pybench.py" -n 1 -C 1 --with-gc |
|||
set path1="%dir%..\tools\pybench" |
|||
|
|||
rem or the whole testsuite for more thorough testing |
|||
set job2="%dir%..\lib\test\regrtest.py" |
|||
set path2="%dir%..\lib" |
|||
|
|||
set job=%job1% |
|||
set clrpath=%path1% |
|||
|
|||
:CheckOpts |
|||
if "%1"=="-p" (set platf=%2) & shift & shift & goto CheckOpts |
|||
if "%1"=="-2" (set job=%job2%) & (set clrpath=%path2%) & shift & goto CheckOpts |
|||
if "%1"=="-M" (set parallel=) & shift & goto CheckOpts |
|||
|
|||
|
|||
rem We cannot cross compile PGO builds, as the optimization needs to be run natively |
|||
set vs_platf=x86 |
|||
set PGO=%dir%win32-pgo |
|||
|
|||
if "%platf%"=="x64" (set vs_platf=amd64) & (set PGO=%dir%amd64-pgo) |
|||
rem Setup the environment |
|||
call "%dir%env.bat" %vs_platf% |
|||
|
|||
|
|||
rem build the instrumented version |
|||
msbuild "%dir%pcbuild.proj" %parallel% /t:Build /p:Configuration=PGInstrument /p:Platform=%platf% %1 %2 %3 %4 %5 %6 %7 %8 %9 |
|||
|
|||
rem remove .pyc files, .pgc files and execute the job |
|||
"%PGO%\python.exe" "%dir%rmpyc.py" %clrpath% |
|||
del "%PGO%\*.pgc" |
|||
"%PGO%\python.exe" %job% |
|||
|
|||
rem build optimized version |
|||
msbuild "%dir%pcbuild.proj" %parallel% /t:Build /p:Configuration=PGUpdate /p:Platform=%platf% %1 %2 %3 %4 %5 %6 %7 %8 %9 |
|||
@echo off |
|||
rem A batch program to build PGO (Profile guided optimization) by first |
|||
rem building instrumented binaries, then running the testsuite, and |
|||
rem finally building the optimized code. |
|||
rem Note, after the first instrumented run, one can just keep on |
|||
rem building the PGUpdate configuration while developing. |
|||
|
|||
setlocal |
|||
set platf=Win32 |
|||
set parallel=/m |
|||
set dir=%~dp0 |
|||
|
|||
rem use the performance testsuite. This is quick and simple |
|||
set job1="%dir%..\tools\pybench\pybench.py" -n 1 -C 1 --with-gc |
|||
set path1="%dir%..\tools\pybench" |
|||
|
|||
rem or the whole testsuite for more thorough testing |
|||
set job2="%dir%..\lib\test\regrtest.py" |
|||
set path2="%dir%..\lib" |
|||
|
|||
set job=%job1% |
|||
set clrpath=%path1% |
|||
|
|||
:CheckOpts |
|||
if "%1"=="-p" (set platf=%2) & shift & shift & goto CheckOpts |
|||
if "%1"=="-2" (set job=%job2%) & (set clrpath=%path2%) & shift & goto CheckOpts |
|||
if "%1"=="-M" (set parallel=) & shift & goto CheckOpts |
|||
|
|||
|
|||
rem We cannot cross compile PGO builds, as the optimization needs to be run natively |
|||
set vs_platf=x86 |
|||
set PGO=%dir%win32-pgo |
|||
|
|||
if "%platf%"=="x64" (set vs_platf=amd64) & (set PGO=%dir%amd64-pgo) |
|||
rem Setup the environment |
|||
call "%dir%env.bat" %vs_platf% |
|||
|
|||
|
|||
rem build the instrumented version |
|||
msbuild "%dir%pcbuild.proj" %parallel% /t:Build /p:Configuration=PGInstrument /p:Platform=%platf% %1 %2 %3 %4 %5 %6 %7 %8 %9 |
|||
|
|||
rem remove .pyc files, .pgc files and execute the job |
|||
"%PGO%\python.exe" "%dir%rmpyc.py" %clrpath% |
|||
del "%PGO%\*.pgc" |
|||
"%PGO%\python.exe" %job% |
|||
|
|||
rem build optimized version |
|||
msbuild "%dir%pcbuild.proj" %parallel% /t:Build /p:Configuration=PGUpdate /p:Platform=%platf% %1 %2 %3 %4 %5 %6 %7 %8 %9 |
|||
@ -1,5 +1,5 @@ |
|||
@echo off |
|||
rem A batch program to clean a particular configuration, |
|||
rem just for convenience. |
|||
|
|||
call %~dp0build.bat -t Clean %* |
|||
@echo off |
|||
rem A batch program to clean a particular configuration, |
|||
rem just for convenience. |
|||
|
|||
call %~dp0build.bat -t Clean %* |
|||
@ -1,16 +1,16 @@ |
|||
@echo off |
|||
rem This script adds the latest available tools to the path for the current |
|||
rem command window. However, most builds of Python will ignore the version |
|||
rem of the tools on PATH and use PlatformToolset instead. Ideally, both sets of |
|||
rem tools should be the same version to avoid potential conflicts. |
|||
rem |
|||
rem To build Python with an earlier toolset, pass "/p:PlatformToolset=v100" (or |
|||
rem 'v110', 'v120' or 'v140') to the build script. |
|||
|
|||
echo Build environments: x86, amd64, x86_amd64 |
|||
echo. |
|||
set VSTOOLS=%VS140COMNTOOLS% |
|||
if "%VSTOOLS%"=="" set VSTOOLS=%VS120COMNTOOLS% |
|||
if "%VSTOOLS%"=="" set VSTOOLS=%VS110COMNTOOLS% |
|||
if "%VSTOOLS%"=="" set VSTOOLS=%VS100COMNTOOLS% |
|||
call "%VSTOOLS%..\..\VC\vcvarsall.bat" %* |
|||
@echo off |
|||
rem This script adds the latest available tools to the path for the current |
|||
rem command window. However, most builds of Python will ignore the version |
|||
rem of the tools on PATH and use PlatformToolset instead. Ideally, both sets of |
|||
rem tools should be the same version to avoid potential conflicts. |
|||
rem |
|||
rem To build Python with an earlier toolset, pass "/p:PlatformToolset=v100" (or |
|||
rem 'v110', 'v120' or 'v140') to the build script. |
|||
|
|||
echo Build environments: x86, amd64, x86_amd64 |
|||
echo. |
|||
set VSTOOLS=%VS140COMNTOOLS% |
|||
if "%VSTOOLS%"=="" set VSTOOLS=%VS120COMNTOOLS% |
|||
if "%VSTOOLS%"=="" set VSTOOLS=%VS110COMNTOOLS% |
|||
if "%VSTOOLS%"=="" set VSTOOLS=%VS100COMNTOOLS% |
|||
call "%VSTOOLS%..\..\VC\vcvarsall.bat" %* |
|||
@ -1,103 +1,103 @@ |
|||
@echo off |
|||
setlocal |
|||
rem Simple script to fetch source for external libraries |
|||
|
|||
if not exist "%~dp0..\externals" mkdir "%~dp0..\externals" |
|||
pushd "%~dp0..\externals" |
|||
|
|||
if "%SVNROOT%"=="" set SVNROOT=http://svn.python.org/projects/external/ |
|||
|
|||
rem Optionally clean up first. Be warned that this can be very destructive! |
|||
if not "%1"=="" ( |
|||
for %%c in (-c --clean --clean-only) do ( |
|||
if "%1"=="%%c" goto clean |
|||
) |
|||
goto usage |
|||
) |
|||
goto fetch |
|||
|
|||
:clean |
|||
echo.Cleaning up external libraries. |
|||
for /D %%d in ( |
|||
bzip2-* |
|||
db-* |
|||
nasm-* |
|||
openssl-* |
|||
tcl-* |
|||
tcltk* |
|||
tk-* |
|||
tix-* |
|||
sqlite-* |
|||
xz-* |
|||
) do ( |
|||
echo.Removing %%d |
|||
rmdir /s /q %%d |
|||
) |
|||
if "%1"=="--clean-only" ( |
|||
goto end |
|||
) |
|||
|
|||
:fetch |
|||
rem Fetch current versions |
|||
|
|||
svn --version > nul 2>&1 |
|||
if ERRORLEVEL 9009 ( |
|||
echo.svn.exe must be on your PATH. |
|||
echo.Try TortoiseSVN (http://tortoisesvn.net/^) and be sure to check the |
|||
echo.command line tools option. |
|||
popd |
|||
exit /b 1 |
|||
) |
|||
|
|||
echo.Fetching external libraries... |
|||
|
|||
for %%e in ( |
|||
bzip2-1.0.6 |
|||
nasm-2.11.06 |
|||
openssl-1.0.2a |
|||
tcl-core-8.6.3.1 |
|||
tk-8.6.3.1 |
|||
tix-8.4.3.4 |
|||
sqlite-3.8.3.1 |
|||
xz-5.0.5 |
|||
) do ( |
|||
if exist %%e ( |
|||
echo.%%e already exists, skipping. |
|||
) else ( |
|||
echo.Fetching %%e... |
|||
svn export %SVNROOT%%%e |
|||
) |
|||
) |
|||
|
|||
goto end |
|||
|
|||
:usage |
|||
echo.invalid argument: %1 |
|||
echo.usage: %~n0 [[ -c ^| --clean ] ^| --clean-only ] |
|||
echo. |
|||
echo.Pull all sources necessary for compiling optional extension modules |
|||
echo.that rely on external libraries. Requires svn.exe to be on your PATH |
|||
echo.and pulls sources from %SVNROOT%. |
|||
echo. |
|||
echo.Use the -c or --clean option to clean up all external library sources |
|||
echo.before pulling in the current versions. |
|||
echo. |
|||
echo.Use the --clean-only option to do the same cleaning, without pulling in |
|||
echo.anything new. |
|||
echo. |
|||
echo.Only the first argument is checked, all others are ignored. |
|||
echo. |
|||
echo.**WARNING**: the cleaning options unconditionally remove any directory |
|||
echo.that is a child of |
|||
echo. %CD% |
|||
echo.and matches wildcard patterns beginning with bzip2-, db-, nasm-, openssl-, |
|||
echo.tcl-, tcltk, tk-, tix-, sqlite-, or xz-, and as such has the potential |
|||
echo.to be very destructive if you are not aware of what it is doing. Use with |
|||
echo.caution! |
|||
popd |
|||
exit /b -1 |
|||
|
|||
|
|||
:end |
|||
echo Finished. |
|||
popd |
|||
@echo off |
|||
setlocal |
|||
rem Simple script to fetch source for external libraries |
|||
|
|||
if not exist "%~dp0..\externals" mkdir "%~dp0..\externals" |
|||
pushd "%~dp0..\externals" |
|||
|
|||
if "%SVNROOT%"=="" set SVNROOT=http://svn.python.org/projects/external/ |
|||
|
|||
rem Optionally clean up first. Be warned that this can be very destructive! |
|||
if not "%1"=="" ( |
|||
for %%c in (-c --clean --clean-only) do ( |
|||
if "%1"=="%%c" goto clean |
|||
) |
|||
goto usage |
|||
) |
|||
goto fetch |
|||
|
|||
:clean |
|||
echo.Cleaning up external libraries. |
|||
for /D %%d in ( |
|||
bzip2-* |
|||
db-* |
|||
nasm-* |
|||
openssl-* |
|||
tcl-* |
|||
tcltk* |
|||
tk-* |
|||
tix-* |
|||
sqlite-* |
|||
xz-* |
|||
) do ( |
|||
echo.Removing %%d |
|||
rmdir /s /q %%d |
|||
) |
|||
if "%1"=="--clean-only" ( |
|||
goto end |
|||
) |
|||
|
|||
:fetch |
|||
rem Fetch current versions |
|||
|
|||
svn --version > nul 2>&1 |
|||
if ERRORLEVEL 9009 ( |
|||
echo.svn.exe must be on your PATH. |
|||
echo.Try TortoiseSVN (http://tortoisesvn.net/^) and be sure to check the |
|||
echo.command line tools option. |
|||
popd |
|||
exit /b 1 |
|||
) |
|||
|
|||
echo.Fetching external libraries... |
|||
|
|||
for %%e in ( |
|||
bzip2-1.0.6 |
|||
nasm-2.11.06 |
|||
openssl-1.0.2a |
|||
tcl-core-8.6.3.1 |
|||
tk-8.6.3.1 |
|||
tix-8.4.3.4 |
|||
sqlite-3.8.3.1 |
|||
xz-5.0.5 |
|||
) do ( |
|||
if exist %%e ( |
|||
echo.%%e already exists, skipping. |
|||
) else ( |
|||
echo.Fetching %%e... |
|||
svn export %SVNROOT%%%e |
|||
) |
|||
) |
|||
|
|||
goto end |
|||
|
|||
:usage |
|||
echo.invalid argument: %1 |
|||
echo.usage: %~n0 [[ -c ^| --clean ] ^| --clean-only ] |
|||
echo. |
|||
echo.Pull all sources necessary for compiling optional extension modules |
|||
echo.that rely on external libraries. Requires svn.exe to be on your PATH |
|||
echo.and pulls sources from %SVNROOT%. |
|||
echo. |
|||
echo.Use the -c or --clean option to clean up all external library sources |
|||
echo.before pulling in the current versions. |
|||
echo. |
|||
echo.Use the --clean-only option to do the same cleaning, without pulling in |
|||
echo.anything new. |
|||
echo. |
|||
echo.Only the first argument is checked, all others are ignored. |
|||
echo. |
|||
echo.**WARNING**: the cleaning options unconditionally remove any directory |
|||
echo.that is a child of |
|||
echo. %CD% |
|||
echo.and matches wildcard patterns beginning with bzip2-, db-, nasm-, openssl-, |
|||
echo.tcl-, tcltk, tk-, tix-, sqlite-, or xz-, and as such has the potential |
|||
echo.to be very destructive if you are not aware of what it is doing. Use with |
|||
echo.caution! |
|||
popd |
|||
exit /b -1 |
|||
|
|||
|
|||
:end |
|||
echo Finished. |
|||
popd |
|||
@ -1,15 +1,15 @@ |
|||
@echo off |
|||
rem start idle |
|||
rem Usage: idle [-d] |
|||
rem -d Run Debug build (python_d.exe). Else release build. |
|||
|
|||
setlocal |
|||
set exe=win32\python |
|||
PATH %PATH%;..\externals\tcltk\bin |
|||
|
|||
if "%1"=="-d" (set exe=%exe%_d) & shift |
|||
|
|||
set cmd=%exe% ../Lib/idlelib/idle.py %1 %2 %3 %4 %5 %6 %7 %8 %9 |
|||
|
|||
echo on |
|||
%cmd% |
|||
@echo off |
|||
rem start idle |
|||
rem Usage: idle [-d] |
|||
rem -d Run Debug build (python_d.exe). Else release build. |
|||
|
|||
setlocal |
|||
set exe=win32\python |
|||
PATH %PATH%;..\externals\tcltk\bin |
|||
|
|||
if "%1"=="-d" (set exe=%exe%_d) & shift |
|||
|
|||
set cmd=%exe% ../Lib/idlelib/idle.py %1 %2 %3 %4 %5 %6 %7 %8 %9 |
|||
|
|||
echo on |
|||
%cmd% |
|||
@ -1,12 +1,12 @@ |
|||
@echo off |
|||
if not defined HOST_PYTHON ( |
|||
if %1 EQU Debug ( |
|||
shift |
|||
set HOST_PYTHON=python_d.exe |
|||
if not exist python35_d.dll exit 1 |
|||
) ELSE ( |
|||
set HOST_PYTHON=python.exe |
|||
if not exist python35.dll exit 1 |
|||
) |
|||
) |
|||
%HOST_PYTHON% prepare_ssl.py %1 |
|||
@echo off |
|||
if not defined HOST_PYTHON ( |
|||
if %1 EQU Debug ( |
|||
shift |
|||
set HOST_PYTHON=python_d.exe |
|||
if not exist python35_d.dll exit 1 |
|||
) ELSE ( |
|||
set HOST_PYTHON=python.exe |
|||
if not exist python35.dll exit 1 |
|||
) |
|||
) |
|||
%HOST_PYTHON% prepare_ssl.py %1 |
|||
@ -1,58 +1,58 @@ |
|||
@echo off |
|||
rem Run Tests. Run the regression test suite. |
|||
rem Usage: rt [-d] [-O] [-q] [-x64] regrtest_args |
|||
rem -d Run Debug build (python_d.exe). Else release build. |
|||
rem -O Run python.exe or python_d.exe (see -d) with -O. |
|||
rem -q "quick" -- normally the tests are run twice, the first time |
|||
rem after deleting all the .py[co] files reachable from Lib/. |
|||
rem -q runs the tests just once, and without deleting .py[co] files. |
|||
rem -x64 Run the 64-bit build of python (or python_d if -d was specified) |
|||
rem from the 'amd64' dir instead of the 32-bit build in this dir. |
|||
rem All leading instances of these switches are shifted off, and |
|||
rem whatever remains (up to 9 arguments) is passed to regrtest.py. |
|||
rem For example, |
|||
rem rt -O -d -x test_thread |
|||
rem runs |
|||
rem python_d -O ../lib/test/regrtest.py -x test_thread |
|||
rem twice, and |
|||
rem rt -q -g test_binascii |
|||
rem runs |
|||
rem python_d ../lib/test/regrtest.py -g test_binascii |
|||
rem to generate the expected-output file for binascii quickly. |
|||
rem |
|||
rem Confusing: if you want to pass a comma-separated list, like |
|||
rem -u network,largefile |
|||
rem then you have to quote it on the rt line, like |
|||
rem rt -u "network,largefile" |
|||
|
|||
setlocal |
|||
|
|||
set pcbuild=%~dp0 |
|||
set prefix=%pcbuild%win32\ |
|||
set suffix= |
|||
set qmode= |
|||
set dashO= |
|||
|
|||
:CheckOpts |
|||
if "%1"=="-O" (set dashO=-O) & shift & goto CheckOpts |
|||
if "%1"=="-q" (set qmode=yes) & shift & goto CheckOpts |
|||
if "%1"=="-d" (set suffix=_d) & shift & goto CheckOpts |
|||
if "%1"=="-x64" (set prefix=%pcbuild%amd64\) & shift & goto CheckOpts |
|||
|
|||
set exe=%prefix%python%suffix%.exe |
|||
set cmd="%exe%" %dashO% -Wd -E -bb "%pcbuild%..\lib\test\regrtest.py" %1 %2 %3 %4 %5 %6 %7 %8 %9 |
|||
if defined qmode goto Qmode |
|||
|
|||
echo Deleting .pyc/.pyo files ... |
|||
"%exe%" "%pcbuild%rmpyc.py" |
|||
|
|||
echo on |
|||
%cmd% |
|||
@echo off |
|||
|
|||
echo About to run again without deleting .pyc/.pyo first: |
|||
pause |
|||
|
|||
:Qmode |
|||
echo on |
|||
%cmd% |
|||
@echo off |
|||
rem Run Tests. Run the regression test suite. |
|||
rem Usage: rt [-d] [-O] [-q] [-x64] regrtest_args |
|||
rem -d Run Debug build (python_d.exe). Else release build. |
|||
rem -O Run python.exe or python_d.exe (see -d) with -O. |
|||
rem -q "quick" -- normally the tests are run twice, the first time |
|||
rem after deleting all the .py[co] files reachable from Lib/. |
|||
rem -q runs the tests just once, and without deleting .py[co] files. |
|||
rem -x64 Run the 64-bit build of python (or python_d if -d was specified) |
|||
rem from the 'amd64' dir instead of the 32-bit build in this dir. |
|||
rem All leading instances of these switches are shifted off, and |
|||
rem whatever remains (up to 9 arguments) is passed to regrtest.py. |
|||
rem For example, |
|||
rem rt -O -d -x test_thread |
|||
rem runs |
|||
rem python_d -O ../lib/test/regrtest.py -x test_thread |
|||
rem twice, and |
|||
rem rt -q -g test_binascii |
|||
rem runs |
|||
rem python_d ../lib/test/regrtest.py -g test_binascii |
|||
rem to generate the expected-output file for binascii quickly. |
|||
rem |
|||
rem Confusing: if you want to pass a comma-separated list, like |
|||
rem -u network,largefile |
|||
rem then you have to quote it on the rt line, like |
|||
rem rt -u "network,largefile" |
|||
|
|||
setlocal |
|||
|
|||
set pcbuild=%~dp0 |
|||
set prefix=%pcbuild%win32\ |
|||
set suffix= |
|||
set qmode= |
|||
set dashO= |
|||
|
|||
:CheckOpts |
|||
if "%1"=="-O" (set dashO=-O) & shift & goto CheckOpts |
|||
if "%1"=="-q" (set qmode=yes) & shift & goto CheckOpts |
|||
if "%1"=="-d" (set suffix=_d) & shift & goto CheckOpts |
|||
if "%1"=="-x64" (set prefix=%pcbuild%amd64\) & shift & goto CheckOpts |
|||
|
|||
set exe=%prefix%python%suffix%.exe |
|||
set cmd="%exe%" %dashO% -Wd -E -bb "%pcbuild%..\lib\test\regrtest.py" %1 %2 %3 %4 %5 %6 %7 %8 %9 |
|||
if defined qmode goto Qmode |
|||
|
|||
echo Deleting .pyc/.pyo files ... |
|||
"%exe%" "%pcbuild%rmpyc.py" |
|||
|
|||
echo on |
|||
%cmd% |
|||
@echo off |
|||
|
|||
echo About to run again without deleting .pyc/.pyo first: |
|||
pause |
|||
|
|||
:Qmode |
|||
echo on |
|||
%cmd% |
|||
@ -1,2 +1,2 @@ |
|||
@rem Used by the buildbot "compile" step. |
|||
call "%~dp0build.bat" -p x64 %* |
|||
@rem Used by the buildbot "compile" step. |
|||
call "%~dp0build.bat" -p x64 %* |
|||
@ -1,20 +1,20 @@ |
|||
@rem Used by the buildbot "compile" step. |
|||
|
|||
@rem Clean up |
|||
set PLAT= |
|||
if '%1' EQU '-p' if '%2' EQU 'x64' (set PLAT=-amd64) |
|||
|
|||
call "%~dp0clean%PLAT%.bat" |
|||
|
|||
@rem If you need the buildbots to start fresh (such as when upgrading to |
|||
@rem a new version of an external library, especially Tcl/Tk): |
|||
@rem 1) uncomment the following line: |
|||
|
|||
@rem call "%~dp0..\..\PCbuild\get_externals.bat" --clean-only |
|||
|
|||
@rem 2) commit and push |
|||
@rem 3) wait for all Windows bots to start a build with that changeset |
|||
@rem 4) re-comment, commit and push again |
|||
|
|||
@rem Do the build |
|||
call "%~dp0..\..\PCbuild\build.bat" -e -d -v %* |
|||
@rem Used by the buildbot "compile" step. |
|||
|
|||
@rem Clean up |
|||
set PLAT= |
|||
if '%1' EQU '-p' if '%2' EQU 'x64' (set PLAT=-amd64) |
|||
|
|||
call "%~dp0clean%PLAT%.bat" |
|||
|
|||
@rem If you need the buildbots to start fresh (such as when upgrading to |
|||
@rem a new version of an external library, especially Tcl/Tk): |
|||
@rem 1) uncomment the following line: |
|||
|
|||
@rem call "%~dp0..\..\PCbuild\get_externals.bat" --clean-only |
|||
|
|||
@rem 2) commit and push |
|||
@rem 3) wait for all Windows bots to start a build with that changeset |
|||
@rem 4) re-comment, commit and push again |
|||
|
|||
@rem Do the build |
|||
call "%~dp0..\..\PCbuild\build.bat" -e -d -v %* |
|||
@ -1,9 +1,9 @@ |
|||
@rem Used by the buildbot "buildmsi" step. |
|||
setlocal |
|||
|
|||
pushd |
|||
|
|||
@rem build both snapshot MSIs |
|||
call "%~dp0..\msi\build.bat" -x86 -x64 |
|||
|
|||
@rem Used by the buildbot "buildmsi" step. |
|||
setlocal |
|||
|
|||
pushd |
|||
|
|||
@rem build both snapshot MSIs |
|||
call "%~dp0..\msi\build.bat" -x86 -x64 |
|||
|
|||
popd |
|||
@ -1,2 +1,2 @@ |
|||
@rem Used by the buildbot "clean" step. |
|||
@call "%~dp0clean.bat" x64 |
|||
@rem Used by the buildbot "clean" step. |
|||
@call "%~dp0clean.bat" x64 |
|||
@ -1,29 +1,29 @@ |
|||
@echo off |
|||
rem Used by the buildbot "clean" step. |
|||
|
|||
setlocal |
|||
set root=%~dp0..\.. |
|||
set pcbuild=%root%\PCbuild |
|||
|
|||
if "%1" == "x64" ( |
|||
set vcvars_target=x86_amd64 |
|||
set platform=x64 |
|||
) else ( |
|||
set vcvars_target=x86 |
|||
set platform=Win32 |
|||
) |
|||
|
|||
call "%pcbuild%\env.bat" %vcvars_target% |
|||
|
|||
echo.Attempting to kill Pythons... |
|||
msbuild /v:m /nologo /target:KillPython "%pcbuild%\pythoncore.vcxproj" /p:Configuration=Release /p:Platform=%platform% /p:KillPython=true |
|||
|
|||
echo Deleting .pyc/.pyo files ... |
|||
del /s "%root%\Lib\*.pyc" "%root%\Lib\*.pyo" |
|||
|
|||
echo Deleting test leftovers ... |
|||
rmdir /s /q "%root%\build" |
|||
|
|||
echo Deleting build |
|||
msbuild /v:m /nologo /target:clean "%pcbuild%\pcbuild.proj" /p:Configuration=Release /p:Platform=%platform% |
|||
msbuild /v:m /nologo /target:clean "%pcbuild%\pcbuild.proj" /p:Configuration=Debug /p:Platform=%platform% |
|||
@echo off |
|||
rem Used by the buildbot "clean" step. |
|||
|
|||
setlocal |
|||
set root=%~dp0..\.. |
|||
set pcbuild=%root%\PCbuild |
|||
|
|||
if "%1" == "x64" ( |
|||
set vcvars_target=x86_amd64 |
|||
set platform=x64 |
|||
) else ( |
|||
set vcvars_target=x86 |
|||
set platform=Win32 |
|||
) |
|||
|
|||
call "%pcbuild%\env.bat" %vcvars_target% |
|||
|
|||
echo.Attempting to kill Pythons... |
|||
msbuild /v:m /nologo /target:KillPython "%pcbuild%\pythoncore.vcxproj" /p:Configuration=Release /p:Platform=%platform% /p:KillPython=true |
|||
|
|||
echo Deleting .pyc/.pyo files ... |
|||
del /s "%root%\Lib\*.pyc" "%root%\Lib\*.pyo" |
|||
|
|||
echo Deleting test leftovers ... |
|||
rmdir /s /q "%root%\build" |
|||
|
|||
echo Deleting build |
|||
msbuild /v:m /nologo /target:clean "%pcbuild%\pcbuild.proj" /p:Configuration=Release /p:Platform=%platform% |
|||
msbuild /v:m /nologo /target:clean "%pcbuild%\pcbuild.proj" /p:Configuration=Debug /p:Platform=%platform% |
|||
@ -1,2 +1,2 @@ |
|||
@echo Please use PCbuild\get_externals.bat instead. |
|||
@"%~dp0..\..\PCbuild\get_externals.bat" %* |
|||
@echo Please use PCbuild\get_externals.bat instead. |
|||
@"%~dp0..\..\PCbuild\get_externals.bat" %* |
|||
@ -1,2 +1,2 @@ |
|||
@echo Please use PCbuild\get_externals.bat instead. |
|||
@"%~dp0..\..\PCbuild\get_externals.bat" %* |
|||
@echo Please use PCbuild\get_externals.bat instead. |
|||
@"%~dp0..\..\PCbuild\get_externals.bat" %* |
|||
@ -1,7 +1,7 @@ |
|||
@rem Used by the buildbot "test" step. |
|||
|
|||
setlocal |
|||
rem The following line should be removed before #20035 is closed |
|||
set TCL_LIBRARY=%~dp0..\..\externals\tcltk64\lib\tcl8.6 |
|||
|
|||
call "%~dp0..\..\PCbuild\rt.bat" -d -q -x64 -uall -rwW -n --timeout=3600 %* |
|||
@rem Used by the buildbot "test" step. |
|||
|
|||
setlocal |
|||
rem The following line should be removed before #20035 is closed |
|||
set TCL_LIBRARY=%~dp0..\..\externals\tcltk64\lib\tcl8.6 |
|||
|
|||
call "%~dp0..\..\PCbuild\rt.bat" -d -q -x64 -uall -rwW -n --timeout=3600 %* |
|||
@ -1,7 +1,7 @@ |
|||
@rem Used by the buildbot "test" step. |
|||
|
|||
setlocal |
|||
rem The following line should be removed before #20035 is closed |
|||
set TCL_LIBRARY=%~dp0..\..\externals\tcltk\lib\tcl8.6 |
|||
|
|||
call "%~dp0..\..\PCbuild\rt.bat" -d -q -uall -rwW -n --timeout=3600 %* |
|||
@rem Used by the buildbot "test" step. |
|||
|
|||
setlocal |
|||
rem The following line should be removed before #20035 is closed |
|||
set TCL_LIBRARY=%~dp0..\..\externals\tcltk\lib\tcl8.6 |
|||
|
|||
call "%~dp0..\..\PCbuild\rt.bat" -d -q -uall -rwW -n --timeout=3600 %* |
|||
@ -1,46 +1,46 @@ |
|||
@echo off |
|||
setlocal |
|||
set D=%~dp0 |
|||
set PCBUILD=%D%..\..\PCBuild\ |
|||
|
|||
set BUILDX86= |
|||
set BUILDX64= |
|||
set BUILDDOC= |
|||
|
|||
:CheckOpts |
|||
if '%1'=='-x86' (set BUILDX86=1) && shift && goto CheckOpts |
|||
if '%1'=='-x64' (set BUILDX64=1) && shift && goto CheckOpts |
|||
if '%1'=='--doc' (set BUILDDOC=1) && shift && goto CheckOpts |
|||
|
|||
if not defined BUILDX86 if not defined BUILDX64 (set BUILDX86=1) && (set BUILDX64=1) |
|||
|
|||
call "%PCBUILD%env.bat" x86 |
|||
|
|||
if defined BUILDX86 ( |
|||
call "%PCBUILD%build.bat" -d |
|||
if errorlevel 1 goto :eof |
|||
call "%PCBUILD%build.bat" |
|||
if errorlevel 1 goto :eof |
|||
) |
|||
if defined BUILDX64 ( |
|||
call "%PCBUILD%build.bat" -p x64 -d |
|||
if errorlevel 1 goto :eof |
|||
call "%PCBUILD%build.bat" -p x64 |
|||
if errorlevel 1 goto :eof |
|||
) |
|||
|
|||
if defined BUILDDOC ( |
|||
call "%PCBUILD%..\Doc\make.bat" htmlhelp |
|||
if errorlevel 1 goto :eof |
|||
) |
|||
|
|||
if defined BUILDX86 ( |
|||
"%PCBUILD%win32\python.exe" "%D%get_wix.py" |
|||
msbuild "%D%bundle\snapshot.wixproj" |
|||
if errorlevel 1 goto :eof |
|||
) |
|||
if defined BUILDX64 ( |
|||
"%PCBUILD%amd64\python.exe" "%D%get_wix.py" |
|||
msbuild "%D%bundle\snapshot.wixproj" /p:Platform=x64 |
|||
if errorlevel 1 goto :eof |
|||
) |
|||
@echo off |
|||
setlocal |
|||
set D=%~dp0 |
|||
set PCBUILD=%D%..\..\PCBuild\ |
|||
|
|||
set BUILDX86= |
|||
set BUILDX64= |
|||
set BUILDDOC= |
|||
|
|||
:CheckOpts |
|||
if '%1'=='-x86' (set BUILDX86=1) && shift && goto CheckOpts |
|||
if '%1'=='-x64' (set BUILDX64=1) && shift && goto CheckOpts |
|||
if '%1'=='--doc' (set BUILDDOC=1) && shift && goto CheckOpts |
|||
|
|||
if not defined BUILDX86 if not defined BUILDX64 (set BUILDX86=1) && (set BUILDX64=1) |
|||
|
|||
call "%PCBUILD%env.bat" x86 |
|||
|
|||
if defined BUILDX86 ( |
|||
call "%PCBUILD%build.bat" -d |
|||
if errorlevel 1 goto :eof |
|||
call "%PCBUILD%build.bat" |
|||
if errorlevel 1 goto :eof |
|||
) |
|||
if defined BUILDX64 ( |
|||
call "%PCBUILD%build.bat" -p x64 -d |
|||
if errorlevel 1 goto :eof |
|||
call "%PCBUILD%build.bat" -p x64 |
|||
if errorlevel 1 goto :eof |
|||
) |
|||
|
|||
if defined BUILDDOC ( |
|||
call "%PCBUILD%..\Doc\make.bat" htmlhelp |
|||
if errorlevel 1 goto :eof |
|||
) |
|||
|
|||
if defined BUILDX86 ( |
|||
"%PCBUILD%win32\python.exe" "%D%get_wix.py" |
|||
msbuild "%D%bundle\snapshot.wixproj" |
|||
if errorlevel 1 goto :eof |
|||
) |
|||
if defined BUILDX64 ( |
|||
"%PCBUILD%amd64\python.exe" "%D%get_wix.py" |
|||
msbuild "%D%bundle\snapshot.wixproj" /p:Platform=x64 |
|||
if errorlevel 1 goto :eof |
|||
) |
|||
@ -1,164 +1,164 @@ |
|||
@setlocal |
|||
@echo off |
|||
|
|||
rem This script is intended for building official releases of Python. |
|||
rem To use it to build alternative releases, you should clone this file |
|||
rem and modify the following three URIs. |
|||
rem |
|||
rem The first two will ensure that your release can be installed |
|||
rem alongside an official Python release, while the second specifies |
|||
rem the URL that will be used to download installation files. The |
|||
rem files available from this URL *will* conflict with your installer. |
|||
rem Trust me, you don't want them, even if it seems like a good idea. |
|||
|
|||
set RELEASE_URI_X86=http://www.python.org/win32 |
|||
set RELEASE_URI_X64=http://www.python.org/amd64 |
|||
set DOWNLOAD_URL_BASE=https://www.python.org/ftp/python |
|||
set DOWNLOAD_URL= |
|||
|
|||
set D=%~dp0 |
|||
set PCBUILD=%D%..\..\PCBuild\ |
|||
|
|||
set BUILDX86= |
|||
set BUILDX64= |
|||
set TARGET=Rebuild |
|||
set TESTTARGETDIR= |
|||
|
|||
|
|||
:CheckOpts |
|||
if "%1" EQU "-h" goto Help |
|||
if "%1" EQU "-c" (set CERTNAME=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "--certificate" (set CERTNAME=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "-o" (set OUTDIR=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "--out" (set OUTDIR=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "-D" (set SKIPDOC=1) && shift && goto CheckOpts |
|||
if "%1" EQU "--skip-doc" (set SKIPDOC=1) && shift && goto CheckOpts |
|||
if "%1" EQU "-B" (set SKIPBUILD=1) && shift && goto CheckOpts |
|||
if "%1" EQU "--skip-build" (set SKIPBUILD=1) && shift && goto CheckOpts |
|||
if "%1" EQU "--download" (set DOWNLOAD_URL=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "--test" (set TESTTARGETDIR=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "-b" (set TARGET=Build) && shift && goto CheckOpts |
|||
if "%1" EQU "--build" (set TARGET=Build) && shift && goto CheckOpts |
|||
if "%1" EQU "-x86" (set BUILDX86=1) && shift && goto CheckOpts |
|||
if "%1" EQU "-x64" (set BUILDX64=1) && shift && goto CheckOpts |
|||
|
|||
if not defined BUILDX86 if not defined BUILDX64 (set BUILDX86=1) && (set BUILDX64=1) |
|||
|
|||
:builddoc |
|||
if "%SKIPBUILD%" EQU "1" goto skipdoc |
|||
if "%SKIPDOC%" EQU "1" goto skipdoc |
|||
|
|||
if not defined PYTHON where py -q || echo Cannot find py on path and PYTHON is not set. && exit /B 1 |
|||
if not defined SPHINXBUILD where sphinx-build -q || echo Cannot find sphinx-build on path and SPHINXBUILD is not set. && exit /B 1 |
|||
call "%D%..\..\doc\make.bat" htmlhelp |
|||
if errorlevel 1 goto :eof |
|||
:skipdoc |
|||
|
|||
where hg /q || echo Cannot find Mercurial on PATH && exit /B 1 |
|||
|
|||
where dlltool /q && goto skipdlltoolsearch |
|||
set _DLLTOOL_PATH= |
|||
where /R "%D%..\..\externals" dlltool > "%TEMP%\dlltool.loc" 2> nul && set /P _DLLTOOL_PATH= < "%TEMP%\dlltool.loc" & del "%TEMP%\dlltool.loc" |
|||
if not exist "%_DLLTOOL_PATH%" echo Cannot find binutils on PATH or in external && exit /B 1 |
|||
for %%f in (%_DLLTOOL_PATH%) do set PATH=%PATH%;%%~dpf |
|||
set _DLLTOOL_PATH= |
|||
:skipdlltoolsearch |
|||
|
|||
if defined BUILDX86 ( |
|||
call :build x86 |
|||
if errorlevel 1 exit /B |
|||
) |
|||
|
|||
if defined BUILDX64 ( |
|||
call :build x64 |
|||
if errorlevel 1 exit /B |
|||
) |
|||
|
|||
if defined TESTTARGETDIR ( |
|||
call "%D%testrelease.bat" -t "%TESTTARGETDIR%" |
|||
) |
|||
|
|||
exit /B 0 |
|||
|
|||
:build |
|||
@setlocal |
|||
@echo off |
|||
|
|||
if "%1" EQU "x86" ( |
|||
call "%PCBUILD%env.bat" x86 |
|||
set BUILD=%PCBUILD%win32\ |
|||
set BUILD_PLAT=Win32 |
|||
set OUTDIR_PLAT=win32 |
|||
set OBJDIR_PLAT=x86 |
|||
set RELEASE_URI=%RELEASE_URI_X86% |
|||
) ELSE ( |
|||
call "%PCBUILD%env.bat" x86_amd64 |
|||
set BUILD=%PCBUILD%amd64\ |
|||
set BUILD_PLAT=x64 |
|||
set OUTDIR_PLAT=amd64 |
|||
set OBJDIR_PLAT=x64 |
|||
set RELEASE_URI=%RELEASE_URI_X64% |
|||
) |
|||
|
|||
if exist "%BUILD%en-us" ( |
|||
echo Deleting %BUILD%en-us |
|||
rmdir /q/s "%BUILD%en-us" |
|||
if errorlevel 1 exit /B |
|||
) |
|||
|
|||
if exist "%D%obj\Release_%OBJDIR_PLAT%" ( |
|||
echo Deleting "%D%obj\Release_%OBJDIR_PLAT%" |
|||
rmdir /q/s "%D%obj\Release_%OBJDIR_PLAT%" |
|||
if errorlevel 1 exit /B |
|||
) |
|||
|
|||
if not "%CERTNAME%" EQU "" ( |
|||
set CERTOPTS="/p:SigningCertificate=%CERTNAME%" |
|||
) else ( |
|||
set CERTOPTS= |
|||
) |
|||
|
|||
if not "%SKIPBUILD%" EQU "1" ( |
|||
call "%PCBUILD%build.bat" -e -p %BUILD_PLAT% -d -t %TARGET% %CERTOPTS% |
|||
if errorlevel 1 exit /B |
|||
call "%PCBUILD%build.bat" -p %BUILD_PLAT% -t %TARGET% %CERTOPTS% |
|||
if errorlevel 1 exit /B |
|||
@rem build.bat turns echo back on, so we disable it again |
|||
@echo off |
|||
) |
|||
|
|||
"%BUILD%python.exe" "%D%get_wix.py" |
|||
|
|||
set BUILDOPTS=/p:Platform=%1 /p:BuildForRelease=true /p:DownloadUrl=%DOWNLOAD_URL% /p:DownloadUrlBase=%DOWNLOAD_URL_BASE% /p:ReleaseUri=%RELEASE_URI% |
|||
msbuild "%D%bundle\releaselocal.wixproj" /t:Rebuild %BUILDOPTS% %CERTOPTS% /p:RebuildAll=true |
|||
if errorlevel 1 exit /B |
|||
msbuild "%D%bundle\releaseweb.wixproj" /t:Rebuild %BUILDOPTS% %CERTOPTS% /p:RebuildAll=false |
|||
if errorlevel 1 exit /B |
|||
|
|||
if not "%OUTDIR%" EQU "" ( |
|||
mkdir "%OUTDIR%\%OUTDIR_PLAT%" |
|||
copy /Y "%BUILD%en-us\*.cab" "%OUTDIR%\%OUTDIR_PLAT%" |
|||
copy /Y "%BUILD%en-us\*.exe" "%OUTDIR%\%OUTDIR_PLAT%" |
|||
copy /Y "%BUILD%en-us\*.msi" "%OUTDIR%\%OUTDIR_PLAT%" |
|||
copy /Y "%BUILD%en-us\*.msu" "%OUTDIR%\%OUTDIR_PLAT%" |
|||
) |
|||
|
|||
exit /B 0 |
|||
|
|||
:Help |
|||
echo buildrelease.bat [--out DIR] [-x86] [-x64] [--certificate CERTNAME] [--build] [--skip-build] |
|||
echo [--skip-doc] [--download DOWNLOAD URL] [--test TARGETDIR] [-h] |
|||
echo. |
|||
echo --out (-o) Specify an additional output directory for installers |
|||
echo -x86 Build x86 installers |
|||
echo -x64 Build x64 installers |
|||
echo --build (-b) Incrementally build Python rather than rebuilding |
|||
echo --skip-build (-B) Do not build Python (just do the installers) |
|||
echo --skip-doc (-D) Do not build documentation |
|||
echo --download Specify the full download URL for MSIs (should include {2}) |
|||
echo --test Specify the test directory to run the installer tests |
|||
echo -h Display this help information |
|||
echo. |
|||
echo If no architecture is specified, all architectures will be built. |
|||
echo If --test is not specified, the installer tests are not run. |
|||
@setlocal |
|||
@echo off |
|||
|
|||
rem This script is intended for building official releases of Python. |
|||
rem To use it to build alternative releases, you should clone this file |
|||
rem and modify the following three URIs. |
|||
rem |
|||
rem The first two will ensure that your release can be installed |
|||
rem alongside an official Python release, while the second specifies |
|||
rem the URL that will be used to download installation files. The |
|||
rem files available from this URL *will* conflict with your installer. |
|||
rem Trust me, you don't want them, even if it seems like a good idea. |
|||
|
|||
set RELEASE_URI_X86=http://www.python.org/win32 |
|||
set RELEASE_URI_X64=http://www.python.org/amd64 |
|||
set DOWNLOAD_URL_BASE=https://www.python.org/ftp/python |
|||
set DOWNLOAD_URL= |
|||
|
|||
set D=%~dp0 |
|||
set PCBUILD=%D%..\..\PCBuild\ |
|||
|
|||
set BUILDX86= |
|||
set BUILDX64= |
|||
set TARGET=Rebuild |
|||
set TESTTARGETDIR= |
|||
|
|||
|
|||
:CheckOpts |
|||
if "%1" EQU "-h" goto Help |
|||
if "%1" EQU "-c" (set CERTNAME=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "--certificate" (set CERTNAME=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "-o" (set OUTDIR=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "--out" (set OUTDIR=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "-D" (set SKIPDOC=1) && shift && goto CheckOpts |
|||
if "%1" EQU "--skip-doc" (set SKIPDOC=1) && shift && goto CheckOpts |
|||
if "%1" EQU "-B" (set SKIPBUILD=1) && shift && goto CheckOpts |
|||
if "%1" EQU "--skip-build" (set SKIPBUILD=1) && shift && goto CheckOpts |
|||
if "%1" EQU "--download" (set DOWNLOAD_URL=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "--test" (set TESTTARGETDIR=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "-b" (set TARGET=Build) && shift && goto CheckOpts |
|||
if "%1" EQU "--build" (set TARGET=Build) && shift && goto CheckOpts |
|||
if "%1" EQU "-x86" (set BUILDX86=1) && shift && goto CheckOpts |
|||
if "%1" EQU "-x64" (set BUILDX64=1) && shift && goto CheckOpts |
|||
|
|||
if not defined BUILDX86 if not defined BUILDX64 (set BUILDX86=1) && (set BUILDX64=1) |
|||
|
|||
:builddoc |
|||
if "%SKIPBUILD%" EQU "1" goto skipdoc |
|||
if "%SKIPDOC%" EQU "1" goto skipdoc |
|||
|
|||
if not defined PYTHON where py -q || echo Cannot find py on path and PYTHON is not set. && exit /B 1 |
|||
if not defined SPHINXBUILD where sphinx-build -q || echo Cannot find sphinx-build on path and SPHINXBUILD is not set. && exit /B 1 |
|||
call "%D%..\..\doc\make.bat" htmlhelp |
|||
if errorlevel 1 goto :eof |
|||
:skipdoc |
|||
|
|||
where hg /q || echo Cannot find Mercurial on PATH && exit /B 1 |
|||
|
|||
where dlltool /q && goto skipdlltoolsearch |
|||
set _DLLTOOL_PATH= |
|||
where /R "%D%..\..\externals" dlltool > "%TEMP%\dlltool.loc" 2> nul && set /P _DLLTOOL_PATH= < "%TEMP%\dlltool.loc" & del "%TEMP%\dlltool.loc" |
|||
if not exist "%_DLLTOOL_PATH%" echo Cannot find binutils on PATH or in external && exit /B 1 |
|||
for %%f in (%_DLLTOOL_PATH%) do set PATH=%PATH%;%%~dpf |
|||
set _DLLTOOL_PATH= |
|||
:skipdlltoolsearch |
|||
|
|||
if defined BUILDX86 ( |
|||
call :build x86 |
|||
if errorlevel 1 exit /B |
|||
) |
|||
|
|||
if defined BUILDX64 ( |
|||
call :build x64 |
|||
if errorlevel 1 exit /B |
|||
) |
|||
|
|||
if defined TESTTARGETDIR ( |
|||
call "%D%testrelease.bat" -t "%TESTTARGETDIR%" |
|||
) |
|||
|
|||
exit /B 0 |
|||
|
|||
:build |
|||
@setlocal |
|||
@echo off |
|||
|
|||
if "%1" EQU "x86" ( |
|||
call "%PCBUILD%env.bat" x86 |
|||
set BUILD=%PCBUILD%win32\ |
|||
set BUILD_PLAT=Win32 |
|||
set OUTDIR_PLAT=win32 |
|||
set OBJDIR_PLAT=x86 |
|||
set RELEASE_URI=%RELEASE_URI_X86% |
|||
) ELSE ( |
|||
call "%PCBUILD%env.bat" x86_amd64 |
|||
set BUILD=%PCBUILD%amd64\ |
|||
set BUILD_PLAT=x64 |
|||
set OUTDIR_PLAT=amd64 |
|||
set OBJDIR_PLAT=x64 |
|||
set RELEASE_URI=%RELEASE_URI_X64% |
|||
) |
|||
|
|||
if exist "%BUILD%en-us" ( |
|||
echo Deleting %BUILD%en-us |
|||
rmdir /q/s "%BUILD%en-us" |
|||
if errorlevel 1 exit /B |
|||
) |
|||
|
|||
if exist "%D%obj\Release_%OBJDIR_PLAT%" ( |
|||
echo Deleting "%D%obj\Release_%OBJDIR_PLAT%" |
|||
rmdir /q/s "%D%obj\Release_%OBJDIR_PLAT%" |
|||
if errorlevel 1 exit /B |
|||
) |
|||
|
|||
if not "%CERTNAME%" EQU "" ( |
|||
set CERTOPTS="/p:SigningCertificate=%CERTNAME%" |
|||
) else ( |
|||
set CERTOPTS= |
|||
) |
|||
|
|||
if not "%SKIPBUILD%" EQU "1" ( |
|||
call "%PCBUILD%build.bat" -e -p %BUILD_PLAT% -d -t %TARGET% %CERTOPTS% |
|||
if errorlevel 1 exit /B |
|||
call "%PCBUILD%build.bat" -p %BUILD_PLAT% -t %TARGET% %CERTOPTS% |
|||
if errorlevel 1 exit /B |
|||
@rem build.bat turns echo back on, so we disable it again |
|||
@echo off |
|||
) |
|||
|
|||
"%BUILD%python.exe" "%D%get_wix.py" |
|||
|
|||
set BUILDOPTS=/p:Platform=%1 /p:BuildForRelease=true /p:DownloadUrl=%DOWNLOAD_URL% /p:DownloadUrlBase=%DOWNLOAD_URL_BASE% /p:ReleaseUri=%RELEASE_URI% |
|||
msbuild "%D%bundle\releaselocal.wixproj" /t:Rebuild %BUILDOPTS% %CERTOPTS% /p:RebuildAll=true |
|||
if errorlevel 1 exit /B |
|||
msbuild "%D%bundle\releaseweb.wixproj" /t:Rebuild %BUILDOPTS% %CERTOPTS% /p:RebuildAll=false |
|||
if errorlevel 1 exit /B |
|||
|
|||
if not "%OUTDIR%" EQU "" ( |
|||
mkdir "%OUTDIR%\%OUTDIR_PLAT%" |
|||
copy /Y "%BUILD%en-us\*.cab" "%OUTDIR%\%OUTDIR_PLAT%" |
|||
copy /Y "%BUILD%en-us\*.exe" "%OUTDIR%\%OUTDIR_PLAT%" |
|||
copy /Y "%BUILD%en-us\*.msi" "%OUTDIR%\%OUTDIR_PLAT%" |
|||
copy /Y "%BUILD%en-us\*.msu" "%OUTDIR%\%OUTDIR_PLAT%" |
|||
) |
|||
|
|||
exit /B 0 |
|||
|
|||
:Help |
|||
echo buildrelease.bat [--out DIR] [-x86] [-x64] [--certificate CERTNAME] [--build] [--skip-build] |
|||
echo [--skip-doc] [--download DOWNLOAD URL] [--test TARGETDIR] [-h] |
|||
echo. |
|||
echo --out (-o) Specify an additional output directory for installers |
|||
echo -x86 Build x86 installers |
|||
echo -x64 Build x64 installers |
|||
echo --build (-b) Incrementally build Python rather than rebuilding |
|||
echo --skip-build (-B) Do not build Python (just do the installers) |
|||
echo --skip-doc (-D) Do not build documentation |
|||
echo --download Specify the full download URL for MSIs (should include {2}) |
|||
echo --test Specify the test directory to run the installer tests |
|||
echo -h Display this help information |
|||
echo. |
|||
echo If no architecture is specified, all architectures will be built. |
|||
echo If --test is not specified, the installer tests are not run. |
|||
echo. |
|||
@ -1,114 +1,114 @@ |
|||
@setlocal |
|||
@echo off |
|||
|
|||
set D=%~dp0 |
|||
set PCBUILD=%D%..\..\PCBuild\ |
|||
|
|||
set TARGETDIR=%TEMP% |
|||
set TESTX86= |
|||
set TESTX64= |
|||
set TESTALLUSER= |
|||
set TESTPERUSER= |
|||
|
|||
:CheckOpts |
|||
if "%1" EQU "-h" goto Help |
|||
if "%1" EQU "-x86" (set TESTX86=1) && shift && goto CheckOpts |
|||
if "%1" EQU "-x64" (set TESTX64=1) && shift && goto CheckOpts |
|||
if "%1" EQU "-t" (set TARGETDIR=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "--target" (set TARGETDIR=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "-a" (set TESTALLUSER=1) && shift && goto CheckOpts |
|||
if "%1" EQU "--alluser" (set TESTALLUSER=1) && shift && goto CheckOpts |
|||
if "%1" EQU "-p" (set TESTPERUSER=1) && shift && goto CheckOpts |
|||
if "%1" EQU "--peruser" (set TESTPERUSER=1) && shift && goto CheckOpts |
|||
|
|||
if not defined TESTX86 if not defined TESTX64 (set TESTX86=1) && (set TESTX64=1) |
|||
if not defined TESTALLUSER if not defined TESTPERUSER (set TESTALLUSER=1) && (set TESTPERUSER=1) |
|||
|
|||
|
|||
if defined TESTX86 ( |
|||
for %%f in ("%PCBUILD%win32\en-us\*.exe") do ( |
|||
if defined TESTALLUSER call :test "%%~ff" "%TARGETDIR%\%%~nf-alluser" "InstallAllUsers=1 CompileAll=1" |
|||
if errorlevel 1 exit /B |
|||
if defined TESTPERUSER call :test "%%~ff" "%TARGETDIR%\%%~nf-peruser" "InstallAllUsers=0 CompileAll=0" |
|||
if errorlevel 1 exit /B |
|||
) |
|||
) |
|||
|
|||
if defined TESTX64 ( |
|||
for %%f in ("%PCBUILD%amd64\en-us\*.exe") do ( |
|||
if defined TESTALLUSER call :test "%%~ff" "%TARGETDIR%\%%~nf-alluser" "InstallAllUsers=1 CompileAll=1" |
|||
if errorlevel 1 exit /B |
|||
if defined TESTPERUSER call :test "%%~ff" "%TARGETDIR%\%%~nf-peruser" "InstallAllUsers=0 CompileAll=0" |
|||
if errorlevel 1 exit /B |
|||
) |
|||
) |
|||
|
|||
exit /B 0 |
|||
|
|||
:test |
|||
@setlocal |
|||
@echo on |
|||
|
|||
@if not exist "%~1" exit /B 1 |
|||
|
|||
@set EXITCODE=0 |
|||
@echo Installing %1 into %2 |
|||
"%~1" /passive /log "%~2\install\log.txt" TargetDir="%~2\Python" Include_debug=1 Include_symbols=1 %~3 |
|||
|
|||
@if not errorlevel 1 ( |
|||
@echo Printing version |
|||
"%~2\Python\python.exe" -c "import sys; print(sys.version)" > "%~2\version.txt" 2>&1 |
|||
) |
|||
|
|||
@if not errorlevel 1 ( |
|||
@echo Capturing Start Menu |
|||
@dir /s/b "%PROGRAMDATA%\Microsoft\Windows\Start Menu\Programs" | findstr /ic:"python" > "%~2\startmenu.txt" 2>&1 |
|||
@dir /s/b "%APPDATA%\Microsoft\Windows\Start Menu\Programs" | findstr /ic:"python" >> "%~2\startmenu.txt" 2>&1 |
|||
|
|||
@echo Capturing registry |
|||
@for /F "usebackq" %%f in (`reg query HKCR /s /f python /k`) do @( |
|||
echo %%f >> "%~2\hkcr.txt" |
|||
reg query "%%f" /s >> "%~2\hkcr.txt" 2>&1 |
|||
) |
|||
@reg query HKCU\Software\Python /s > "%~2\hkcu.txt" 2>&1 |
|||
@reg query HKLM\Software\Python /reg:32 /s > "%~2\hklm.txt" 2>&1 |
|||
@reg query HKLM\Software\Python /reg:64 /s >> "%~2\hklm.txt" 2>&1 |
|||
cmd /k exit 0 |
|||
) |
|||
|
|||
@if not errorlevel 1 ( |
|||
@echo Installing package |
|||
"%~2\Python\python.exe" -m pip install "azure<0.10" > "%~2\pip.txt" 2>&1 |
|||
@if not errorlevel 1 ( |
|||
"%~2\Python\python.exe" -m pip uninstall -y azure python-dateutil six >> "%~2\pip.txt" 2>&1 |
|||
) |
|||
) |
|||
@if not errorlevel 1 ( |
|||
@echo Testing Tcl/tk |
|||
@set TCL_LIBRARY=%~2\Python\tcl\tcl8.6 |
|||
"%~2\Python\python.exe" -m test -uall -v test_ttk_guionly test_tk test_idle > "%~2\tcltk.txt" 2>&1 |
|||
@set TCL_LIBRARY= |
|||
) |
|||
|
|||
@set EXITCODE=%ERRORLEVEL% |
|||
|
|||
@echo Result was %EXITCODE% |
|||
@echo Removing %1 |
|||
"%~1" /passive /uninstall /log "%~2\uninstall\log.txt" |
|||
|
|||
@echo off |
|||
exit /B %EXITCODE% |
|||
|
|||
:Help |
|||
echo testrelease.bat [--target TARGET] [-x86] [-x64] [--alluser] [--peruser] [-h] |
|||
echo. |
|||
echo --target (-t) Specify the target directory for installs and logs |
|||
echo -x86 Run tests for x86 installers |
|||
echo -x64 Run tests for x64 installers |
|||
echo --alluser (-a) Run tests for all-user installs (requires Administrator) |
|||
echo --peruser (-p) Run tests for per-user installs |
|||
echo -h Display this help information |
|||
echo. |
|||
echo If no test architecture is specified, all architectures will be tested. |
|||
echo If no install type is selected, all install types will be tested. |
|||
echo. |
|||
@setlocal |
|||
@echo off |
|||
|
|||
set D=%~dp0 |
|||
set PCBUILD=%D%..\..\PCBuild\ |
|||
|
|||
set TARGETDIR=%TEMP% |
|||
set TESTX86= |
|||
set TESTX64= |
|||
set TESTALLUSER= |
|||
set TESTPERUSER= |
|||
|
|||
:CheckOpts |
|||
if "%1" EQU "-h" goto Help |
|||
if "%1" EQU "-x86" (set TESTX86=1) && shift && goto CheckOpts |
|||
if "%1" EQU "-x64" (set TESTX64=1) && shift && goto CheckOpts |
|||
if "%1" EQU "-t" (set TARGETDIR=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "--target" (set TARGETDIR=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "-a" (set TESTALLUSER=1) && shift && goto CheckOpts |
|||
if "%1" EQU "--alluser" (set TESTALLUSER=1) && shift && goto CheckOpts |
|||
if "%1" EQU "-p" (set TESTPERUSER=1) && shift && goto CheckOpts |
|||
if "%1" EQU "--peruser" (set TESTPERUSER=1) && shift && goto CheckOpts |
|||
|
|||
if not defined TESTX86 if not defined TESTX64 (set TESTX86=1) && (set TESTX64=1) |
|||
if not defined TESTALLUSER if not defined TESTPERUSER (set TESTALLUSER=1) && (set TESTPERUSER=1) |
|||
|
|||
|
|||
if defined TESTX86 ( |
|||
for %%f in ("%PCBUILD%win32\en-us\*.exe") do ( |
|||
if defined TESTALLUSER call :test "%%~ff" "%TARGETDIR%\%%~nf-alluser" "InstallAllUsers=1 CompileAll=1" |
|||
if errorlevel 1 exit /B |
|||
if defined TESTPERUSER call :test "%%~ff" "%TARGETDIR%\%%~nf-peruser" "InstallAllUsers=0 CompileAll=0" |
|||
if errorlevel 1 exit /B |
|||
) |
|||
) |
|||
|
|||
if defined TESTX64 ( |
|||
for %%f in ("%PCBUILD%amd64\en-us\*.exe") do ( |
|||
if defined TESTALLUSER call :test "%%~ff" "%TARGETDIR%\%%~nf-alluser" "InstallAllUsers=1 CompileAll=1" |
|||
if errorlevel 1 exit /B |
|||
if defined TESTPERUSER call :test "%%~ff" "%TARGETDIR%\%%~nf-peruser" "InstallAllUsers=0 CompileAll=0" |
|||
if errorlevel 1 exit /B |
|||
) |
|||
) |
|||
|
|||
exit /B 0 |
|||
|
|||
:test |
|||
@setlocal |
|||
@echo on |
|||
|
|||
@if not exist "%~1" exit /B 1 |
|||
|
|||
@set EXITCODE=0 |
|||
@echo Installing %1 into %2 |
|||
"%~1" /passive /log "%~2\install\log.txt" TargetDir="%~2\Python" Include_debug=1 Include_symbols=1 %~3 |
|||
|
|||
@if not errorlevel 1 ( |
|||
@echo Printing version |
|||
"%~2\Python\python.exe" -c "import sys; print(sys.version)" > "%~2\version.txt" 2>&1 |
|||
) |
|||
|
|||
@if not errorlevel 1 ( |
|||
@echo Capturing Start Menu |
|||
@dir /s/b "%PROGRAMDATA%\Microsoft\Windows\Start Menu\Programs" | findstr /ic:"python" > "%~2\startmenu.txt" 2>&1 |
|||
@dir /s/b "%APPDATA%\Microsoft\Windows\Start Menu\Programs" | findstr /ic:"python" >> "%~2\startmenu.txt" 2>&1 |
|||
|
|||
@echo Capturing registry |
|||
@for /F "usebackq" %%f in (`reg query HKCR /s /f python /k`) do @( |
|||
echo %%f >> "%~2\hkcr.txt" |
|||
reg query "%%f" /s >> "%~2\hkcr.txt" 2>&1 |
|||
) |
|||
@reg query HKCU\Software\Python /s > "%~2\hkcu.txt" 2>&1 |
|||
@reg query HKLM\Software\Python /reg:32 /s > "%~2\hklm.txt" 2>&1 |
|||
@reg query HKLM\Software\Python /reg:64 /s >> "%~2\hklm.txt" 2>&1 |
|||
cmd /k exit 0 |
|||
) |
|||
|
|||
@if not errorlevel 1 ( |
|||
@echo Installing package |
|||
"%~2\Python\python.exe" -m pip install "azure<0.10" > "%~2\pip.txt" 2>&1 |
|||
@if not errorlevel 1 ( |
|||
"%~2\Python\python.exe" -m pip uninstall -y azure python-dateutil six >> "%~2\pip.txt" 2>&1 |
|||
) |
|||
) |
|||
@if not errorlevel 1 ( |
|||
@echo Testing Tcl/tk |
|||
@set TCL_LIBRARY=%~2\Python\tcl\tcl8.6 |
|||
"%~2\Python\python.exe" -m test -uall -v test_ttk_guionly test_tk test_idle > "%~2\tcltk.txt" 2>&1 |
|||
@set TCL_LIBRARY= |
|||
) |
|||
|
|||
@set EXITCODE=%ERRORLEVEL% |
|||
|
|||
@echo Result was %EXITCODE% |
|||
@echo Removing %1 |
|||
"%~1" /passive /uninstall /log "%~2\uninstall\log.txt" |
|||
|
|||
@echo off |
|||
exit /B %EXITCODE% |
|||
|
|||
:Help |
|||
echo testrelease.bat [--target TARGET] [-x86] [-x64] [--alluser] [--peruser] [-h] |
|||
echo. |
|||
echo --target (-t) Specify the target directory for installs and logs |
|||
echo -x86 Run tests for x86 installers |
|||
echo -x64 Run tests for x64 installers |
|||
echo --alluser (-a) Run tests for all-user installs (requires Administrator) |
|||
echo --peruser (-p) Run tests for per-user installs |
|||
echo -h Display this help information |
|||
echo. |
|||
echo If no test architecture is specified, all architectures will be tested. |
|||
echo If no install type is selected, all install types will be tested. |
|||
echo. |
|||
@ -1,56 +1,56 @@ |
|||
@setlocal |
|||
@echo off |
|||
|
|||
set D=%~dp0 |
|||
set PCBUILD=%D%..\..\PCBuild\ |
|||
|
|||
set HOST= |
|||
set USER= |
|||
set TARGET= |
|||
set DRYRUN=false |
|||
|
|||
:CheckOpts |
|||
if "%1" EQU "-h" goto Help |
|||
if "%1" EQU "-o" (set HOST=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "--host" (set HOST=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "-u" (set USER=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "--user" (set USER=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "-t" (set TARGET=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "--target" (set TARGET=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "--dry-run" (set DRYRUN=true) && shift && goto CheckOpts |
|||
|
|||
if not defined PLINK where plink > "%TEMP%\plink.loc" 2> nul && set /P PLINK= < "%TEMP%\plink.loc" & del "%TEMP%\plink.loc" |
|||
if not defined PLINK where /R "%ProgramFiles(x86)%\PuTTY" plink > "%TEMP%\plink.loc" 2> nul && set /P PLINK= < "%TEMP%\plink.loc" & del "%TEMP%\plink.loc" |
|||
if not defined PLINK where /R "%ProgramFiles(x86)%" plink > "%TEMP%\plink.loc" 2> nul && set /P PLINK= < "%TEMP%\plink.loc" & del "%TEMP%\plink.loc" |
|||
if not defined PLINK echo Cannot locate plink.exe & exit /B 1 |
|||
echo Found plink.exe at %PLINK% |
|||
|
|||
if not defined PSCP where pscp > "%TEMP%\pscp.loc" 2> nul && set /P pscp= < "%TEMP%\pscp.loc" & del "%TEMP%\pscp.loc" |
|||
if not defined PSCP where /R "%ProgramFiles(x86)%\PuTTY" pscp > "%TEMP%\pscp.loc" 2> nul && set /P pscp= < "%TEMP%\pscp.loc" & del "%TEMP%\pscp.loc" |
|||
if not defined PSCP where /R "%ProgramFiles(x86)%" pscp > "%TEMP%\pscp.loc" 2> nul && set /P pscp= < "%TEMP%\pscp.loc" & del "%TEMP%\pscp.loc" |
|||
if not defined PSCP echo Cannot locate pscp.exe & exit /B 1 |
|||
echo Found pscp.exe at %PSCP% |
|||
|
|||
if not defined GPG where gpg2 > "%TEMP%\gpg.loc" 2> nul && set /P GPG= < "%TEMP%\gpg.loc" & del "%TEMP%\gpg.loc" |
|||
if not defined GPG where /R "%PCBUILD%..\externals" gpg2 > "%TEMP%\gpg.loc" 2> nul && set /P GPG= < "%TEMP%\gpg.loc" & del "%TEMP%\gpg.loc" |
|||
if not defined GPG echo Cannot locate gpg2.exe. Signatures will not be uploaded & pause |
|||
echo Found gpg2.exe at %GPG% |
|||
|
|||
call "%PCBUILD%env.bat" > nul 2> nul |
|||
pushd "%D%" |
|||
msbuild /v:m /nologo uploadrelease.proj /t:Upload /p:Platform=x86 |
|||
msbuild /v:m /nologo uploadrelease.proj /t:Upload /p:Platform=x64 /p:IncludeDoc=false |
|||
msbuild /v:m /nologo uploadrelease.proj /t:ShowHashes /p:Platform=x86 |
|||
msbuild /v:m /nologo uploadrelease.proj /t:ShowHashes /p:Platform=x64 /p:IncludeDoc=false |
|||
popd |
|||
exit /B 0 |
|||
|
|||
:Help |
|||
echo uploadrelease.bat --host HOST --user USERNAME [--target TARGET] [--dry-run] [-h] |
|||
echo. |
|||
echo --host (-o) Specify the upload host (required) |
|||
echo --user (-u) Specify the user on the host (required) |
|||
echo --target (-t) Specify the target directory on the host |
|||
echo --dry-run Display commands and filenames without executing them |
|||
echo -h Display this help information |
|||
echo. |
|||
@setlocal |
|||
@echo off |
|||
|
|||
set D=%~dp0 |
|||
set PCBUILD=%D%..\..\PCBuild\ |
|||
|
|||
set HOST= |
|||
set USER= |
|||
set TARGET= |
|||
set DRYRUN=false |
|||
|
|||
:CheckOpts |
|||
if "%1" EQU "-h" goto Help |
|||
if "%1" EQU "-o" (set HOST=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "--host" (set HOST=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "-u" (set USER=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "--user" (set USER=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "-t" (set TARGET=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "--target" (set TARGET=%~2) && shift && shift && goto CheckOpts |
|||
if "%1" EQU "--dry-run" (set DRYRUN=true) && shift && goto CheckOpts |
|||
|
|||
if not defined PLINK where plink > "%TEMP%\plink.loc" 2> nul && set /P PLINK= < "%TEMP%\plink.loc" & del "%TEMP%\plink.loc" |
|||
if not defined PLINK where /R "%ProgramFiles(x86)%\PuTTY" plink > "%TEMP%\plink.loc" 2> nul && set /P PLINK= < "%TEMP%\plink.loc" & del "%TEMP%\plink.loc" |
|||
if not defined PLINK where /R "%ProgramFiles(x86)%" plink > "%TEMP%\plink.loc" 2> nul && set /P PLINK= < "%TEMP%\plink.loc" & del "%TEMP%\plink.loc" |
|||
if not defined PLINK echo Cannot locate plink.exe & exit /B 1 |
|||
echo Found plink.exe at %PLINK% |
|||
|
|||
if not defined PSCP where pscp > "%TEMP%\pscp.loc" 2> nul && set /P pscp= < "%TEMP%\pscp.loc" & del "%TEMP%\pscp.loc" |
|||
if not defined PSCP where /R "%ProgramFiles(x86)%\PuTTY" pscp > "%TEMP%\pscp.loc" 2> nul && set /P pscp= < "%TEMP%\pscp.loc" & del "%TEMP%\pscp.loc" |
|||
if not defined PSCP where /R "%ProgramFiles(x86)%" pscp > "%TEMP%\pscp.loc" 2> nul && set /P pscp= < "%TEMP%\pscp.loc" & del "%TEMP%\pscp.loc" |
|||
if not defined PSCP echo Cannot locate pscp.exe & exit /B 1 |
|||
echo Found pscp.exe at %PSCP% |
|||
|
|||
if not defined GPG where gpg2 > "%TEMP%\gpg.loc" 2> nul && set /P GPG= < "%TEMP%\gpg.loc" & del "%TEMP%\gpg.loc" |
|||
if not defined GPG where /R "%PCBUILD%..\externals" gpg2 > "%TEMP%\gpg.loc" 2> nul && set /P GPG= < "%TEMP%\gpg.loc" & del "%TEMP%\gpg.loc" |
|||
if not defined GPG echo Cannot locate gpg2.exe. Signatures will not be uploaded & pause |
|||
echo Found gpg2.exe at %GPG% |
|||
|
|||
call "%PCBUILD%env.bat" > nul 2> nul |
|||
pushd "%D%" |
|||
msbuild /v:m /nologo uploadrelease.proj /t:Upload /p:Platform=x86 |
|||
msbuild /v:m /nologo uploadrelease.proj /t:Upload /p:Platform=x64 /p:IncludeDoc=false |
|||
msbuild /v:m /nologo uploadrelease.proj /t:ShowHashes /p:Platform=x86 |
|||
msbuild /v:m /nologo uploadrelease.proj /t:ShowHashes /p:Platform=x64 /p:IncludeDoc=false |
|||
popd |
|||
exit /B 0 |
|||
|
|||
:Help |
|||
echo uploadrelease.bat --host HOST --user USERNAME [--target TARGET] [--dry-run] [-h] |
|||
echo. |
|||
echo --host (-o) Specify the upload host (required) |
|||
echo --user (-u) Specify the user on the host (required) |
|||
echo --target (-t) Specify the target directory on the host |
|||
echo --dry-run Display commands and filenames without executing them |
|||
echo -h Display this help information |
|||
echo. |
|||
@ -1,7 +1,7 @@ |
|||
@rem Recreate some python charmap codecs from the Windows function |
|||
@rem MultiByteToWideChar. |
|||
|
|||
@cd /d %~dp0 |
|||
@mkdir build |
|||
@rem Arabic DOS code page |
|||
c:\python30\python genwincodec.py 720 > build/cp720.py |
|||
@rem Recreate some python charmap codecs from the Windows function |
|||
@rem MultiByteToWideChar. |
|||
|
|||
@cd /d %~dp0 |
|||
@mkdir build |
|||
@rem Arabic DOS code page |
|||
c:\python30\python genwincodec.py 720 > build/cp720.py |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue