changeset: 96573:e6a95bda2943 branch: 3.5 parent: 96569:0fa48f581fe3 parent: 96572:a6ceb631c747 user: Zachary Ware date: Wed Jun 10 00:43:20 2015 -0500 files: PCbuild/build.bat PCbuild/env.bat PCbuild/get_externals.bat PCbuild/rt.bat Tools/buildbot/build-amd64.bat Tools/buildbot/build.bat Tools/buildbot/clean-amd64.bat Tools/buildbot/clean.bat Tools/buildbot/external-amd64.bat Tools/buildbot/external.bat Tools/buildbot/test-amd64.bat Tools/buildbot/test.bat description: Merge forward extras beyond #21907 backport. diff -r 0fa48f581fe3 -r e6a95bda2943 PCbuild/build.bat --- a/PCbuild/build.bat Tue Jun 09 14:22:44 2015 -0400 +++ b/PCbuild/build.bat Wed Jun 10 00:43:20 2015 -0500 @@ -9,8 +9,10 @@ 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 Enable parallel build (enabled by default) rem -M Disable parallel build rem -v Increased output messages +rem -k Attempt to kill any running Pythons before building (usually unnecessary) setlocal set platf=Win32 @@ -20,6 +22,7 @@ set dir=%~dp0 set parallel=/m set verbose=/nologo /v:m +set kill= :CheckOpts if '%1'=='-c' (set conf=%2) & shift & shift & goto CheckOpts @@ -28,14 +31,20 @@ 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=/m) & shift & goto CheckOpts if '%1'=='-M' (set parallel=) & shift & goto CheckOpts if '%1'=='-v' (set verbose=/v:n) & shift & goto CheckOpts +if '%1'=='-k' (set kill=true) & shift & goto CheckOpts if '%platf%'=='x64' (set vs_platf=x86_amd64) rem Setup the environment call "%dir%env.bat" %vs_platf% >nul +if '%kill%'=='true' ( + msbuild /v:m /nologo /target:KillPython "%pcbuild%\pythoncore.vcxproj" /p:Configuration=%conf% /p:Platform=%platf% /p:KillPython=true +) + 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" diff -r 0fa48f581fe3 -r e6a95bda2943 Tools/buildbot/build.bat --- a/Tools/buildbot/build.bat Tue Jun 09 14:22:44 2015 -0400 +++ b/Tools/buildbot/build.bat Wed Jun 10 00:43:20 2015 -0500 @@ -1,10 +1,7 @@ @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" +call "%~dp0clean.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): @@ -17,4 +14,4 @@ @rem 4) re-comment, commit and push again @rem Do the build -call "%~dp0..\..\PCbuild\build.bat" -e -d -v %* +call "%~dp0..\..\PCbuild\build.bat" -e -d -k -v %* diff -r 0fa48f581fe3 -r e6a95bda2943 Tools/buildbot/clean-amd64.bat --- a/Tools/buildbot/clean-amd64.bat Tue Jun 09 14:22:44 2015 -0400 +++ b/Tools/buildbot/clean-amd64.bat Wed Jun 10 00:43:20 2015 -0500 @@ -1,2 +1,2 @@ @rem Used by the buildbot "clean" step. -@call "%~dp0clean.bat" x64 +call "%~dp0clean.bat" -p x64 %* diff -r 0fa48f581fe3 -r e6a95bda2943 Tools/buildbot/clean.bat --- a/Tools/buildbot/clean.bat Tue Jun 09 14:22:44 2015 -0400 +++ b/Tools/buildbot/clean.bat Wed Jun 10 00:43:20 2015 -0500 @@ -5,25 +5,12 @@ 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 build +call "%pcbuild%\build.bat" -t Clean -k %* +call "%pcbuild%\build.bat" -t Clean -k -d %* 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% diff -r 0fa48f581fe3 -r e6a95bda2943 Tools/buildbot/test-amd64.bat --- a/Tools/buildbot/test-amd64.bat Tue Jun 09 14:22:44 2015 -0400 +++ b/Tools/buildbot/test-amd64.bat Wed Jun 10 00:43:20 2015 -0500 @@ -1,5 +1,2 @@ @rem Used by the buildbot "test" step. - -setlocal - -call "%~dp0..\..\PCbuild\rt.bat" -d -q -x64 -uall -rwW -n --timeout=3600 %* +call "%~dp0test.bat" -x64 %* diff -r 0fa48f581fe3 -r e6a95bda2943 Tools/buildbot/test.bat --- a/Tools/buildbot/test.bat Tue Jun 09 14:22:44 2015 -0400 +++ b/Tools/buildbot/test.bat Wed Jun 10 00:43:20 2015 -0500 @@ -1,5 +1,15 @@ @rem Used by the buildbot "test" step. +@setlocal + +@set here=%~dp0 +@set rt_opts=-q -d -setlocal +:CheckOpts +@if '%1'=='-x64' (set rt_opts=%rt_opts% %1) & shift & goto CheckOpts +@if '%1'=='-d' (set rt_opts=%rt_opts% %1) & shift & goto CheckOpts +@if '%1'=='-O' (set rt_opts=%rt_opts% %1) & shift & goto CheckOpts +@if '%1'=='-q' (set rt_opts=%rt_opts% %1) & shift & goto CheckOpts +@if '%1'=='+d' (set rt_opts=%rt_opts:-d=%) & shift & goto CheckOpts +@if '%1'=='+q' (set rt_opts=%rt_opts:-q=%) & shift & goto CheckOpts -call "%~dp0..\..\PCbuild\rt.bat" -d -q -uall -rwW -n --timeout=3600 %* +call "%here%..\..\PCbuild\rt.bat" %rt_opts% -uall -rwW -n --timeout=3600 %1 %2 %3 %4 %5 %6 %7 %8 %9