diff options
Diffstat (limited to 'PCbuild/build_pgo.bat')
-rw-r--r-- | PCbuild/build_pgo.bat | 35 |
1 files changed, 21 insertions, 14 deletions
diff --git a/PCbuild/build_pgo.bat b/PCbuild/build_pgo.bat index 6ead19a..f513583 100644 --- a/PCbuild/build_pgo.bat +++ b/PCbuild/build_pgo.bat @@ -7,14 +7,15 @@ rem building the PGUpdate configuration while developing. setlocal set platf=Win32 +set dir=%~dp0 rem use the performance testsuite. This is quick and simple -set job1=%~dp0..\tools\pybench\pybench.py -n 1 -C 1 --with-gc -set path1=%~dp0..\tools\pybench +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=%~dp0..\lib\test\regrtest.py -set path2=%~dp0..\lib +set job2="%dir%..\lib\test\regrtest.py" +set path2="%dir%..\lib" set job=%job1% set clrpath=%path1% @@ -23,19 +24,25 @@ set clrpath=%path1% if "%1"=="-p" (set platf=%2) & shift & shift & goto CheckOpts if "%1"=="-2" (set job=%job2%) & (set clrpath=%path2%) & shift & goto CheckOpts -set PGI=%platf%-pgi -set PGO=%platf%-pgo +set PGI=%dir%%platf%-pgi +set PGO=%dir%%platf%-pgo + +rem We cannot cross compile PGO builds, as the optimization needs to be run natively +set vs_platf=x86 +if "%platf%"=="x64" (set vs_platf=amd64) +rem Setup the environment +call "%VS100COMNTOOLS%..\..\VC\vcvarsall.bat" %vs_platf% -@echo on rem build the instrumented version -call build -p %platf% -c PGInstrument +msbuild "%dir%pcbuild.sln" /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 -%PGI%\python.exe rmpyc.py "%clrpath%" -del %PGI%\*.pgc -%PGI%\python.exe "%job%" +"%PGI%\python.exe" "%dir%rmpyc.py" %clrpath% +del "%PGI%\*.pgc" +"%PGI%\python.exe" %job% -rem finally build the optimized version -if exist %PGO% del /s /q %PGO% -call build -p %platf% -c PGUpdate +rem clean +if exist "%PGO%" del /s /q "%PGO%" +rem build optimized version +msbuild "%dir%pcbuild.sln" /t:Build /p:Configuration=PGUpdate /p:Platform=%platf% %1 %2 %3 %4 %5 %6 %7 %8 %9 |