diff --git a/PCbuild9/_bsddb.vcproj b/PCbuild9/_bsddb.vcproj
index c2e1ffd609b..c613fd644c3 100644
--- a/PCbuild9/_bsddb.vcproj
+++ b/PCbuild9/_bsddb.vcproj
@@ -297,6 +297,298 @@
Name="VCPostBuildEventTool"
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PCbuild9/_ctypes.vcproj b/PCbuild9/_ctypes.vcproj
index 8eb5d69af7b..a6f0f0bfef1 100644
--- a/PCbuild9/_ctypes.vcproj
+++ b/PCbuild9/_ctypes.vcproj
@@ -289,6 +289,286 @@
Name="VCPostBuildEventTool"
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -375,6 +655,22 @@
Name="VCCLCompilerTool"
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PCbuild9/_ctypes_test.vcproj b/PCbuild9/_ctypes_test.vcproj
index b9cdfb0f42c..0805ebdac9d 100644
--- a/PCbuild9/_ctypes_test.vcproj
+++ b/PCbuild9/_ctypes_test.vcproj
@@ -281,6 +281,282 @@
Name="VCPostBuildEventTool"
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PCbuild9/_elementtree.vcproj b/PCbuild9/_elementtree.vcproj
index b7841ba2914..563554aa6a1 100644
--- a/PCbuild9/_elementtree.vcproj
+++ b/PCbuild9/_elementtree.vcproj
@@ -297,6 +297,298 @@
Name="VCPostBuildEventTool"
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PCbuild9/_msi.vcproj b/PCbuild9/_msi.vcproj
index 61267c4949e..bc2f68d8809 100644
--- a/PCbuild9/_msi.vcproj
+++ b/PCbuild9/_msi.vcproj
@@ -289,6 +289,290 @@
Name="VCPostBuildEventTool"
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PCbuild9/_socket.vcproj b/PCbuild9/_socket.vcproj
index 41f4499b352..afdc1a1f5b8 100644
--- a/PCbuild9/_socket.vcproj
+++ b/PCbuild9/_socket.vcproj
@@ -289,6 +289,290 @@
Name="VCPostBuildEventTool"
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PCbuild9/_sqlite3.vcproj b/PCbuild9/_sqlite3.vcproj
index 4030e95508d..e0852140792 100644
--- a/PCbuild9/_sqlite3.vcproj
+++ b/PCbuild9/_sqlite3.vcproj
@@ -54,7 +54,7 @@
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PCbuild9/_ssl.vcproj b/PCbuild9/_ssl.vcproj
index 6bb9531c56d..ef215977606 100644
--- a/PCbuild9/_ssl.vcproj
+++ b/PCbuild9/_ssl.vcproj
@@ -161,7 +161,7 @@
>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PCbuild9/_testcapi.vcproj b/PCbuild9/_testcapi.vcproj
index a169bd814d3..79e727a5023 100644
--- a/PCbuild9/_testcapi.vcproj
+++ b/PCbuild9/_testcapi.vcproj
@@ -285,6 +285,286 @@
Name="VCPostBuildEventTool"
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PCbuild9/_tkinter.vcproj b/PCbuild9/_tkinter.vcproj
index 96c36701b01..18592da1d18 100644
--- a/PCbuild9/_tkinter.vcproj
+++ b/PCbuild9/_tkinter.vcproj
@@ -293,6 +293,294 @@
Name="VCPostBuildEventTool"
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PCbuild9/build.bat b/PCbuild9/build.bat
new file mode 100644
index 00000000000..9bc818676fe
--- /dev/null
+++ b/PCbuild9/build.bat
@@ -0,0 +1,17 @@
+@echo off
+rem A batch program to build or rebuild a particular configuration.
+rem just for convenience.
+
+setlocal
+set platf=Win32
+set conf=Release
+set build=/build
+
+: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 build=/rebuild) & shift & goto CheckOpts
+
+set cmd=devenv pcbuild.sln %build% "%conf%|%platf%"
+echo %cmd%
+%cmd%
diff --git a/PCbuild9/build_pgo.bat b/PCbuild9/build_pgo.bat
new file mode 100644
index 00000000000..22de99753e6
--- /dev/null
+++ b/PCbuild9/build_pgo.bat
@@ -0,0 +1,40 @@
+@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
+
+rem use the performance testsuite. This is quick and simple
+set job1=..\tools\pybench\pybench.py -n 1 -C 1 --with-gc
+set path1=..\tools\pybench
+
+rem or the whole testsuite for more thorough testing
+set job2=..\lib\test\regrtest.py
+set path2=..\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
+
+set folder=%platf%-pgo
+
+
+@echo on
+rem build the instrumented version
+call build -r -p %platf% -c PGInstrument
+
+rem remove .pyc files, .pgc files and execute the job
+%folder%\python.exe rmpyc.py %clrpath%
+del %folder%\*.pgc
+%folder%\python.exe %job%
+
+rem finally build the optimized version
+call build -r -p %platf% -c PGUpdate
+
diff --git a/PCbuild9/bz2.vcproj b/PCbuild9/bz2.vcproj
index f458ab8900e..6c97d236acd 100644
--- a/PCbuild9/bz2.vcproj
+++ b/PCbuild9/bz2.vcproj
@@ -54,11 +54,11 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PCbuild9/make_buildinfo.vcproj b/PCbuild9/make_buildinfo.vcproj
index 6a6ff175709..4fb5d77669e 100644
--- a/PCbuild9/make_buildinfo.vcproj
+++ b/PCbuild9/make_buildinfo.vcproj
@@ -89,6 +89,64 @@
Name="VCPostBuildEventTool"
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PCbuild9/make_versioninfo.vcproj b/PCbuild9/make_versioninfo.vcproj
index 5199d847ba1..88ecc201c7c 100644
--- a/PCbuild9/make_versioninfo.vcproj
+++ b/PCbuild9/make_versioninfo.vcproj
@@ -100,6 +100,8 @@
+
+
+
+
diff --git a/PCbuild9/pgupdate.vsprops b/PCbuild9/pgupdate.vsprops
new file mode 100644
index 00000000000..826242df684
--- /dev/null
+++ b/PCbuild9/pgupdate.vsprops
@@ -0,0 +1,12 @@
+
+
+
+
diff --git a/PCbuild9/pyexpat.vcproj b/PCbuild9/pyexpat.vcproj
index 788a9ee5c96..5693c1cf865 100644
--- a/PCbuild9/pyexpat.vcproj
+++ b/PCbuild9/pyexpat.vcproj
@@ -289,6 +289,290 @@
Name="VCPostBuildEventTool"
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PCbuild9/python.vcproj b/PCbuild9/python.vcproj
index 7982859e987..0d69dcf9d89 100644
--- a/PCbuild9/python.vcproj
+++ b/PCbuild9/python.vcproj
@@ -325,6 +325,322 @@
Name="VCPostBuildEventTool"
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PCbuild9/pythoncore.vcproj b/PCbuild9/pythoncore.vcproj
index 9da012a5c03..7fd63787eae 100644
--- a/PCbuild9/pythoncore.vcproj
+++ b/PCbuild9/pythoncore.vcproj
@@ -60,7 +60,7 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PCbuild9/pythonw.vcproj b/PCbuild9/pythonw.vcproj
index e32b42d0dbe..c8c5573ba48 100644
--- a/PCbuild9/pythonw.vcproj
+++ b/PCbuild9/pythonw.vcproj
@@ -315,6 +315,316 @@
Name="VCPostBuildEventTool"
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PCbuild9/select.vcproj b/PCbuild9/select.vcproj
index ba7e88e5468..7dc024acef1 100644
--- a/PCbuild9/select.vcproj
+++ b/PCbuild9/select.vcproj
@@ -293,6 +293,294 @@
Name="VCPostBuildEventTool"
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PCbuild9/unicodedata.vcproj b/PCbuild9/unicodedata.vcproj
index a61767296c2..817cd8db081 100644
--- a/PCbuild9/unicodedata.vcproj
+++ b/PCbuild9/unicodedata.vcproj
@@ -285,6 +285,286 @@
Name="VCPostBuildEventTool"
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PCbuild9/w9xpopen.vcproj b/PCbuild9/w9xpopen.vcproj
index 6b6bafb9f7e..837e3a513d8 100644
--- a/PCbuild9/w9xpopen.vcproj
+++ b/PCbuild9/w9xpopen.vcproj
@@ -298,6 +298,294 @@
Name="VCPostBuildEventTool"
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PCbuild9/winsound.vcproj b/PCbuild9/winsound.vcproj
index 9bb0f54402e..df9310ce263 100644
--- a/PCbuild9/winsound.vcproj
+++ b/PCbuild9/winsound.vcproj
@@ -285,6 +285,286 @@
Name="VCPostBuildEventTool"
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+