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 is passed to regrtest.py. For example,
+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
setlocal
-set prefix=.\
+set pcbuild=%~dp0
+set prefix=%pcbuild%
set suffix=
set qmode=
set dashO=
-set tcltk=tcltk
: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=amd64) & (set tcltk=tcltk64) & shift & goto CheckOpts
+if "%1"=="-x64" (set prefix=%pcbuild%amd64\) & shift & goto CheckOpts
-PATH %PATH%;%~dp0..\..\%tcltk%\bin
-set exe=%prefix%\python%suffix%
-set cmd=%exe% %dashO% -Wd -E -bb ../lib/test/regrtest.py %1 %2 %3 %4 %5 %6 %7 %8 %9
+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% rmpyc.py
+"%exe%" "%pcbuild%rmpyc.py"
echo on
%cmd%
@rem Used by the buildbot "clean" step.
-call "%~dp0clean.bat"
+@call "%~dp0clean.bat" x64
"%pcbuild%\%%k"
)
)
+if "%1" == "x64" (
+ set vcvars_target=x86_amd64
+ set platform_target=x64
+) else (
+ set vcvars_target=x86
+ set platform_target=x86
+)
+call "%VS100COMNTOOLS%\..\..\VC\vcvarsall.bat" %vcvars_target%
+echo Deleting .pyc/.pyo files ...
+del /s "%root%\Lib\*.pyc" "%root%\Lib\*.pyo"
+echo Deleting test leftovers ...
+rmdir /s /q "%root%\build"
-echo Purging all non-tracked files with `hg purge`
-echo on
-hg -R "%root%" --config extensions.purge= purge --all -X "%root%\Lib\test\data"
-
-@rem Clean is best effort, so we "always succeed"
-@exit /b 0
+msbuild /target:clean "%pcbuild%\pcbuild.sln" /p:Configuration=Release /p:PlatformTarget=%platform_target%
+msbuild /target:clean "%pcbuild%\pcbuild.sln" /p:Configuration=Debug /p:PlatformTarget=%platform_target%
@rem Used by the buildbot "test" step.
+setlocal
rem The following line should be removed before #20035 is closed
set TCL_LIBRARY=%~dp0..\..\..\tcltk64\lib\tcl8.6
-"%~dp0..\..\PCbuild\amd64\python_d.exe" "%~dp0..\scripts\run_tests.py" -j 1 -u all -W --timeout=3600 %*
+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..\..\..\tcltk\lib\tcl8.6
-ver | findstr "Version 6." >nul
-if %ERRORLEVEL% == 1 goto xp
-
-"%~dp0..\..\PCbuild\python_d.exe" "%~dp0..\scripts\run_tests.py" -j 1 -u all -W --timeout=3600 %*
-goto done
-
-:xp
-cd PCbuild
-call rt.bat -d -q -uall -rwW -n --timeout=3600 %1 %2 %3 %4 %5 %6 %7 %8 %9
-
-:done
+call "%~dp0..\..\PCbuild\rt.bat" -d -q -uall -rwW -n --timeout=3600 %*