From 4734372aa0c7ae481bb6b9de0b5c3f9323c670fd Mon Sep 17 00:00:00 2001 From: Zachary Ware Date: Thu, 16 Jul 2015 00:24:48 -0500 Subject: [PATCH] Close #24508: Backport the 3.5 MSBuild project files. The old project files move to PC/VS9.0 and remain supported. VS2008 is still required to build 2.7; VS2010 (or later, plus Windows SDK 7.1) is *also* required to use the new project files. --- .hgeol | 1 + .hgignore | 34 +- Lib/distutils/command/build_ext.py | 10 +- Lib/lib-tk/FixTk.py | 5 +- Lib/test/regrtest.py | 9 + Lib/test/test_tcl.py | 4 +- Misc/NEWS | 4 + {PCbuild => PC/VS9.0}/_bsddb.vcproj | 4 +- {PCbuild => PC/VS9.0}/_ctypes.vcproj | 48 +- {PCbuild => PC/VS9.0}/_ctypes_test.vcproj | 4 +- {PCbuild => PC/VS9.0}/_elementtree.vcproj | 54 +- {PCbuild => PC/VS9.0}/_hashlib.vcproj | 2 +- {PCbuild => PC/VS9.0}/_msi.vcproj | 2 +- {PCbuild => PC/VS9.0}/_multiprocessing.vcproj | 14 +- {PCbuild => PC/VS9.0}/_socket.vcproj | 4 +- {PCbuild => PC/VS9.0}/_sqlite3.vcproj | 38 +- {PCbuild => PC/VS9.0}/_ssl.vcproj | 2 +- {PCbuild => PC/VS9.0}/_testcapi.vcproj | 2 +- {PCbuild => PC/VS9.0}/_tkinter.vcproj | 4 +- {PCbuild => PC/VS9.0}/bdist_wininst.vcproj | 44 +- PC/VS9.0/build.bat | 107 ++ PC/VS9.0/build_env.bat | 1 + PC/VS9.0/build_pgo.bat | 41 + {PCbuild => PC/VS9.0}/build_ssl.bat | 0 {PCbuild => PC/VS9.0}/build_ssl.py | 2 +- {PCbuild => PC/VS9.0}/build_tkinter.py | 0 {PCbuild => PC/VS9.0}/bz2.vcproj | 2 +- {PCbuild => PC/VS9.0}/debug.vsprops | 0 PC/VS9.0/env.bat | 4 + PC/VS9.0/field3.py | 35 + PC/VS9.0/idle.bat | 15 + PC/VS9.0/installer.bmp | Bin 0 -> 58806 bytes {PCbuild => PC/VS9.0}/kill_python.c | 0 {PCbuild => PC/VS9.0}/kill_python.vcproj | 0 {PCbuild => PC/VS9.0}/make_buildinfo.c | 6 +- {PCbuild => PC/VS9.0}/make_buildinfo.vcproj | 0 {PCbuild => PC/VS9.0}/make_versioninfo.vcproj | 26 +- PC/VS9.0/pcbuild.sln | 559 ++++++++++ {PCbuild => PC/VS9.0}/pginstrument.vsprops | 0 {PCbuild => PC/VS9.0}/pgupdate.vsprops | 0 {PCbuild => PC/VS9.0}/pyd.vsprops | 0 {PCbuild => PC/VS9.0}/pyd_d.vsprops | 0 {PCbuild => PC/VS9.0}/pyexpat.vcproj | 28 +- {PCbuild => PC/VS9.0}/pyproject.vsprops | 6 +- {PCbuild => PC/VS9.0}/python.vcproj | 10 +- {PCbuild => PC/VS9.0}/pythoncore.vcproj | 640 ++++++------ {PCbuild => PC/VS9.0}/pythonw.vcproj | 4 +- PC/VS9.0/readme.txt | 260 +++++ {PCbuild => PC/VS9.0}/release.vsprops | 0 PC/VS9.0/rmpyc.py | 25 + PC/VS9.0/rt.bat | 60 ++ {PCbuild => PC/VS9.0}/select.vcproj | 2 +- {PCbuild => PC/VS9.0}/sqlite3.vcproj | 0 {PCbuild => PC/VS9.0}/sqlite3.vsprops | 0 {PCbuild => PC/VS9.0}/unicodedata.vcproj | 6 +- {PCbuild => PC/VS9.0}/vs9to8.py | 0 {PCbuild => PC/VS9.0}/w9xpopen.vcproj | 2 +- {PCbuild => PC/VS9.0}/winsound.vcproj | 2 +- {PCbuild => PC/VS9.0}/x64.vsprops | 0 PC/bdist_wininst/bdist_wininst.vcxproj | 103 ++ .../bdist_wininst.vcxproj.filters | 61 ++ PCbuild/_bsddb.vcxproj | 314 ++++++ PCbuild/_bsddb.vcxproj.filters | 702 +++++++++++++ PCbuild/_ctypes.vcxproj | 107 ++ PCbuild/_ctypes.vcxproj.filters | 65 ++ PCbuild/_ctypes_test.vcxproj | 77 ++ PCbuild/_ctypes_test.vcxproj.filters | 21 + PCbuild/_elementtree.vcxproj | 103 ++ PCbuild/_elementtree.vcxproj.filters | 72 ++ PCbuild/_hashlib.vcxproj | 90 ++ PCbuild/_hashlib.vcxproj.filters | 13 + PCbuild/_msi.vcxproj | 80 ++ PCbuild/_msi.vcxproj.filters | 13 + PCbuild/_multiprocessing.vcxproj | 88 ++ PCbuild/_multiprocessing.vcxproj.filters | 36 + PCbuild/_socket.vcxproj | 83 ++ PCbuild/_socket.vcxproj.filters | 21 + PCbuild/_sqlite3.vcxproj | 107 ++ PCbuild/_sqlite3.vcxproj.filters | 72 ++ PCbuild/_ssl.vcxproj | 94 ++ PCbuild/_ssl.vcxproj.filters | 13 + PCbuild/_testcapi.vcxproj | 80 ++ PCbuild/_testcapi.vcxproj.filters | 13 + PCbuild/_tkinter.vcxproj | 90 ++ PCbuild/_tkinter.vcxproj.filters | 16 + PCbuild/build.bat | 93 +- PCbuild/build_pgo.bat | 37 +- PCbuild/bz2.vcxproj | 96 ++ PCbuild/bz2.vcxproj.filters | 48 + PCbuild/clean.bat | 5 + PCbuild/env.bat | 17 +- PCbuild/get_externals.bat | 3 + PCbuild/libeay.vcxproj | 907 +++++++++++++++++ PCbuild/openssl.props | 75 ++ PCbuild/pcbuild.proj | 77 ++ PCbuild/pcbuild.sln | 291 +++--- PCbuild/pyexpat.vcxproj | 84 ++ PCbuild/pyexpat.vcxproj.filters | 33 + PCbuild/pyproject.props | 159 +++ PCbuild/python.props | 112 ++ PCbuild/python.vcxproj | 106 ++ PCbuild/python.vcxproj.filters | 26 + PCbuild/pythoncore.vcxproj | 408 ++++++++ PCbuild/pythoncore.vcxproj.filters | 953 ++++++++++++++++++ PCbuild/pythonw.vcxproj | 80 ++ PCbuild/pythonw.vcxproj.filters | 21 + PCbuild/readme.txt | 34 +- PCbuild/rt.bat | 10 +- PCbuild/select.vcxproj | 79 ++ PCbuild/select.vcxproj.filters | 13 + PCbuild/sqlite3.vcxproj | 77 ++ PCbuild/sqlite3.vcxproj.filters | 24 + PCbuild/ssleay.vcxproj | 119 +++ PCbuild/tcl.vcxproj | 90 ++ PCbuild/tcltk.props | 43 + PCbuild/tix.vcxproj | 94 ++ PCbuild/tk.vcxproj | 95 ++ PCbuild/unicodedata.vcxproj | 83 ++ PCbuild/unicodedata.vcxproj.filters | 24 + PCbuild/w9xpopen.vcxproj | 77 ++ PCbuild/w9xpopen.vcxproj.filters | 13 + PCbuild/winsound.vcxproj | 79 ++ PCbuild/winsound.vcxproj.filters | 14 + Tools/buildbot/build.bat | 2 +- 124 files changed, 8507 insertions(+), 760 deletions(-) rename {PCbuild => PC/VS9.0}/_bsddb.vcproj (94%) rename {PCbuild => PC/VS9.0}/_ctypes.vcproj (84%) rename {PCbuild => PC/VS9.0}/_ctypes_test.vcproj (92%) rename {PCbuild => PC/VS9.0}/_elementtree.vcproj (83%) rename {PCbuild => PC/VS9.0}/_hashlib.vcproj (94%) rename {PCbuild => PC/VS9.0}/_msi.vcproj (94%) rename {PCbuild => PC/VS9.0}/_multiprocessing.vcproj (89%) rename {PCbuild => PC/VS9.0}/_socket.vcproj (93%) rename {PCbuild => PC/VS9.0}/_sqlite3.vcproj (86%) rename {PCbuild => PC/VS9.0}/_ssl.vcproj (94%) rename {PCbuild => PC/VS9.0}/_testcapi.vcproj (93%) rename {PCbuild => PC/VS9.0}/_tkinter.vcproj (93%) rename {PCbuild => PC/VS9.0}/bdist_wininst.vcproj (74%) create mode 100644 PC/VS9.0/build.bat create mode 100644 PC/VS9.0/build_env.bat create mode 100644 PC/VS9.0/build_pgo.bat rename {PCbuild => PC/VS9.0}/build_ssl.bat (100%) rename {PCbuild => PC/VS9.0}/build_ssl.py (99%) rename {PCbuild => PC/VS9.0}/build_tkinter.py (100%) rename {PCbuild => PC/VS9.0}/bz2.vcproj (94%) rename {PCbuild => PC/VS9.0}/debug.vsprops (100%) create mode 100644 PC/VS9.0/env.bat create mode 100644 PC/VS9.0/field3.py create mode 100644 PC/VS9.0/idle.bat create mode 100644 PC/VS9.0/installer.bmp rename {PCbuild => PC/VS9.0}/kill_python.c (100%) rename {PCbuild => PC/VS9.0}/kill_python.vcproj (100%) rename {PCbuild => PC/VS9.0}/make_buildinfo.c (92%) rename {PCbuild => PC/VS9.0}/make_buildinfo.vcproj (100%) rename {PCbuild => PC/VS9.0}/make_versioninfo.vcproj (87%) create mode 100644 PC/VS9.0/pcbuild.sln rename {PCbuild => PC/VS9.0}/pginstrument.vsprops (100%) rename {PCbuild => PC/VS9.0}/pgupdate.vsprops (100%) rename {PCbuild => PC/VS9.0}/pyd.vsprops (100%) rename {PCbuild => PC/VS9.0}/pyd_d.vsprops (100%) rename {PCbuild => PC/VS9.0}/pyexpat.vcproj (88%) rename {PCbuild => PC/VS9.0}/pyproject.vsprops (90%) rename {PCbuild => PC/VS9.0}/python.vcproj (93%) rename {PCbuild => PC/VS9.0}/pythoncore.vcproj (56%) rename {PCbuild => PC/VS9.0}/pythonw.vcproj (94%) create mode 100644 PC/VS9.0/readme.txt rename {PCbuild => PC/VS9.0}/release.vsprops (100%) create mode 100644 PC/VS9.0/rmpyc.py create mode 100644 PC/VS9.0/rt.bat rename {PCbuild => PC/VS9.0}/select.vcproj (94%) rename {PCbuild => PC/VS9.0}/sqlite3.vcproj (100%) rename {PCbuild => PC/VS9.0}/sqlite3.vsprops (100%) rename {PCbuild => PC/VS9.0}/unicodedata.vcproj (92%) rename {PCbuild => PC/VS9.0}/vs9to8.py (100%) rename {PCbuild => PC/VS9.0}/w9xpopen.vcproj (94%) rename {PCbuild => PC/VS9.0}/winsound.vcproj (93%) rename {PCbuild => PC/VS9.0}/x64.vsprops (100%) create mode 100644 PC/bdist_wininst/bdist_wininst.vcxproj create mode 100644 PC/bdist_wininst/bdist_wininst.vcxproj.filters create mode 100644 PCbuild/_bsddb.vcxproj create mode 100644 PCbuild/_bsddb.vcxproj.filters create mode 100644 PCbuild/_ctypes.vcxproj create mode 100644 PCbuild/_ctypes.vcxproj.filters create mode 100644 PCbuild/_ctypes_test.vcxproj create mode 100644 PCbuild/_ctypes_test.vcxproj.filters create mode 100644 PCbuild/_elementtree.vcxproj create mode 100644 PCbuild/_elementtree.vcxproj.filters create mode 100644 PCbuild/_hashlib.vcxproj create mode 100644 PCbuild/_hashlib.vcxproj.filters create mode 100644 PCbuild/_msi.vcxproj create mode 100644 PCbuild/_msi.vcxproj.filters create mode 100644 PCbuild/_multiprocessing.vcxproj create mode 100644 PCbuild/_multiprocessing.vcxproj.filters create mode 100644 PCbuild/_socket.vcxproj create mode 100644 PCbuild/_socket.vcxproj.filters create mode 100644 PCbuild/_sqlite3.vcxproj create mode 100644 PCbuild/_sqlite3.vcxproj.filters create mode 100644 PCbuild/_ssl.vcxproj create mode 100644 PCbuild/_ssl.vcxproj.filters create mode 100644 PCbuild/_testcapi.vcxproj create mode 100644 PCbuild/_testcapi.vcxproj.filters create mode 100644 PCbuild/_tkinter.vcxproj create mode 100644 PCbuild/_tkinter.vcxproj.filters create mode 100644 PCbuild/bz2.vcxproj create mode 100644 PCbuild/bz2.vcxproj.filters create mode 100644 PCbuild/clean.bat create mode 100644 PCbuild/libeay.vcxproj create mode 100644 PCbuild/openssl.props create mode 100644 PCbuild/pcbuild.proj create mode 100644 PCbuild/pyexpat.vcxproj create mode 100644 PCbuild/pyexpat.vcxproj.filters create mode 100644 PCbuild/pyproject.props create mode 100644 PCbuild/python.props create mode 100644 PCbuild/python.vcxproj create mode 100644 PCbuild/python.vcxproj.filters create mode 100644 PCbuild/pythoncore.vcxproj create mode 100644 PCbuild/pythoncore.vcxproj.filters create mode 100644 PCbuild/pythonw.vcxproj create mode 100644 PCbuild/pythonw.vcxproj.filters create mode 100644 PCbuild/select.vcxproj create mode 100644 PCbuild/select.vcxproj.filters create mode 100644 PCbuild/sqlite3.vcxproj create mode 100644 PCbuild/sqlite3.vcxproj.filters create mode 100644 PCbuild/ssleay.vcxproj create mode 100644 PCbuild/tcl.vcxproj create mode 100644 PCbuild/tcltk.props create mode 100644 PCbuild/tix.vcxproj create mode 100644 PCbuild/tk.vcxproj create mode 100644 PCbuild/unicodedata.vcxproj create mode 100644 PCbuild/unicodedata.vcxproj.filters create mode 100644 PCbuild/w9xpopen.vcxproj create mode 100644 PCbuild/w9xpopen.vcxproj.filters create mode 100644 PCbuild/winsound.vcxproj create mode 100644 PCbuild/winsound.vcxproj.filters diff --git a/.hgeol b/.hgeol index a7395bf04b4..1688634699b 100644 --- a/.hgeol +++ b/.hgeol @@ -40,6 +40,7 @@ Lib/test/sndhdrdata/sndhdr.* = BIN # The Windows readme is likely to be read in Notepad, so make it readable PCbuild/readme.txt = CRLF +PC/VS9.0/readme.txt = CRLF # All other files (which presumably are human-editable) are "native". # This must be the last rule! diff --git a/.hgignore b/.hgignore index ed5be73cfea..6fa534ff522 100644 --- a/.hgignore +++ b/.hgignore @@ -17,6 +17,7 @@ db_home platform$ pyconfig.h$ python$ +python.bat$ python.exe$ reflog.txt$ tags$ @@ -44,21 +45,38 @@ libpython*.so* *.pyd *.cover *~ +Lib/distutils/command/*.pdb Lib/lib2to3/*.pickle Lib/test/data/* Misc/*.wpu PC/python_nt*.h PC/pythonnt_rc*.h -PC/*.obj -PCbuild/*.exe +PC/*/*.exe +PC/*/*.exp +PC/*/*.lib +PC/*/*.bsc +PC/*/*.dll +PC/*/*.pdb +PC/*/*.user +PC/*/*.ncb +PC/*/*.suo +PC/*/Win32-temp-* +PC/*/x64-temp-* +PC/*/amd64 +PCbuild/*.user +PCbuild/*.suo +PCbuild/*.*sdf +PCbuild/*-pgi +PCbuild/*-pgo +PCbuild/.vs PCbuild/*.dll -PCbuild/*.pdb -PCbuild/*.lib PCbuild/*.exp -PCbuild/*.o -PCbuild/*.ncb -PCbuild/*.bsc -PCbuild/Win32-temp-* +PCbuild/*.exe +PCbuild/*.ilk +PCbuild/*.lib +PCbuild/*.pdb +PCbuild/amd64 +PCbuild/obj .coverage coverage/ externals/ diff --git a/Lib/distutils/command/build_ext.py b/Lib/distutils/command/build_ext.py index 2ab73aad0cc..3a49454a4a4 100644 --- a/Lib/distutils/command/build_ext.py +++ b/Lib/distutils/command/build_ext.py @@ -199,10 +199,12 @@ class build_ext (Command): else: # win-amd64 or win-ia64 suffix = self.plat_name[4:] - new_lib = os.path.join(sys.exec_prefix, 'PCbuild') - if suffix: - new_lib = os.path.join(new_lib, suffix) - self.library_dirs.append(new_lib) + # We could have been built in one of two places; add both + for d in ('PCbuild',), ('PC', 'VS9.0'): + new_lib = os.path.join(sys.exec_prefix, *d) + if suffix: + new_lib = os.path.join(new_lib, suffix) + self.library_dirs.append(new_lib) elif MSVC_VERSION == 8: self.library_dirs.append(os.path.join(sys.exec_prefix, diff --git a/Lib/lib-tk/FixTk.py b/Lib/lib-tk/FixTk.py index 953dcd55583..8af27b58268 100644 --- a/Lib/lib-tk/FixTk.py +++ b/Lib/lib-tk/FixTk.py @@ -49,7 +49,10 @@ else: prefix = os.path.join(sys.prefix,"tcl") if not os.path.exists(prefix): # devdir/externals/tcltk/lib - prefix = os.path.join(sys.prefix, "externals", "tcltk", "lib") + tcltk = 'tcltk' + if sys.maxsize > 2**31 - 1: + tcltk = 'tcltk64' + prefix = os.path.join(sys.prefix, "externals", tcltk, "lib") prefix = os.path.abspath(prefix) # if this does not exist, no further search is needed if os.path.exists(prefix): diff --git a/Lib/test/regrtest.py b/Lib/test/regrtest.py index c590331806b..2458a3d1a0c 100755 --- a/Lib/test/regrtest.py +++ b/Lib/test/regrtest.py @@ -203,6 +203,15 @@ if sys.platform == 'darwin': newsoft = min(hard, max(soft, 1024*2048)) resource.setrlimit(resource.RLIMIT_STACK, (newsoft, hard)) +# Windows, Tkinter, and resetting the environment after each test don't +# mix well. To alleviate test failures due to Tcl/Tk not being able to +# find its library, get the necessary environment massage done once early. +if sys.platform == 'win32': + try: + import FixTk + except Exception: + pass + # Test result constants. PASSED = 1 FAILED = 0 diff --git a/Lib/test/test_tcl.py b/Lib/test/test_tcl.py index 9c9afde3c2a..4c2e8d5200c 100644 --- a/Lib/test/test_tcl.py +++ b/Lib/test/test_tcl.py @@ -8,9 +8,7 @@ from subprocess import Popen, PIPE # Skip this test if the _tkinter module wasn't built. _tkinter = test_support.import_module('_tkinter') -# Make sure tkinter._fix runs to set up the environment -tkinter = test_support.import_fresh_module('Tkinter') - +import Tkinter as tkinter from Tkinter import Tcl from _tkinter import TclError diff --git a/Misc/NEWS b/Misc/NEWS index 9d9a7de8f7e..893f62c88ea 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -103,6 +103,10 @@ Library Build ----- +- Issue #24508: Backported the MSBuild project files from Python 3.5. The + backported files replace the old project files in PCbuild; the old files moved + to PC/VS9.0 and remain supported. + - Issue #24432: Update Windows builds and OS X 10.5 installer to use OpenSSL 1.0.2c. diff --git a/PCbuild/_bsddb.vcproj b/PC/VS9.0/_bsddb.vcproj similarity index 94% rename from PCbuild/_bsddb.vcproj rename to PC/VS9.0/_bsddb.vcproj index d9886c6d02a..2b926aaf1f7 100644 --- a/PCbuild/_bsddb.vcproj +++ b/PC/VS9.0/_bsddb.vcproj @@ -537,7 +537,7 @@ Name="Header Files" > @@ -545,7 +545,7 @@ Name="Source Files" > diff --git a/PCbuild/_ctypes.vcproj b/PC/VS9.0/_ctypes.vcproj similarity index 84% rename from PCbuild/_ctypes.vcproj rename to PC/VS9.0/_ctypes.vcproj index 1eb8b579a4f..8e5cba14fc8 100644 --- a/PCbuild/_ctypes.vcproj +++ b/PC/VS9.0/_ctypes.vcproj @@ -42,7 +42,7 @@ /> @@ -559,39 +559,39 @@ Name="Source Files" > @@ -511,7 +511,7 @@ Name="Source Files" > diff --git a/PCbuild/_elementtree.vcproj b/PC/VS9.0/_elementtree.vcproj similarity index 83% rename from PCbuild/_elementtree.vcproj rename to PC/VS9.0/_elementtree.vcproj index 3e9631f4ed1..7414997f7dd 100644 --- a/PCbuild/_elementtree.vcproj +++ b/PC/VS9.0/_elementtree.vcproj @@ -42,7 +42,7 @@ /> @@ -591,19 +591,19 @@ Name="Source Files" > diff --git a/PCbuild/_hashlib.vcproj b/PC/VS9.0/_hashlib.vcproj similarity index 94% rename from PCbuild/_hashlib.vcproj rename to PC/VS9.0/_hashlib.vcproj index 50d40d1fcd2..9b63563671d 100644 --- a/PCbuild/_hashlib.vcproj +++ b/PC/VS9.0/_hashlib.vcproj @@ -535,7 +535,7 @@ Name="Source Files" > diff --git a/PCbuild/_msi.vcproj b/PC/VS9.0/_msi.vcproj similarity index 94% rename from PCbuild/_msi.vcproj rename to PC/VS9.0/_msi.vcproj index 084efdf749b..d84049d0adc 100644 --- a/PCbuild/_msi.vcproj +++ b/PC/VS9.0/_msi.vcproj @@ -519,7 +519,7 @@ Name="Source Files" > diff --git a/PCbuild/_multiprocessing.vcproj b/PC/VS9.0/_multiprocessing.vcproj similarity index 89% rename from PCbuild/_multiprocessing.vcproj rename to PC/VS9.0/_multiprocessing.vcproj index 5d6337d4699..4e6ff096fa9 100644 --- a/PCbuild/_multiprocessing.vcproj +++ b/PC/VS9.0/_multiprocessing.vcproj @@ -519,11 +519,11 @@ Name="Header Files" > @@ -531,23 +531,23 @@ Name="Source Files" > diff --git a/PCbuild/_socket.vcproj b/PC/VS9.0/_socket.vcproj similarity index 93% rename from PCbuild/_socket.vcproj rename to PC/VS9.0/_socket.vcproj index ee72c1016e3..80f0781c4ad 100644 --- a/PCbuild/_socket.vcproj +++ b/PC/VS9.0/_socket.vcproj @@ -519,7 +519,7 @@ Name="Header Files" > @@ -527,7 +527,7 @@ Name="Source Files" > diff --git a/PCbuild/_sqlite3.vcproj b/PC/VS9.0/_sqlite3.vcproj similarity index 86% rename from PCbuild/_sqlite3.vcproj rename to PC/VS9.0/_sqlite3.vcproj index b31f9b68dde..f7100f1c5fd 100644 --- a/PCbuild/_sqlite3.vcproj +++ b/PC/VS9.0/_sqlite3.vcproj @@ -527,43 +527,43 @@ Name="Header Files" > @@ -571,39 +571,39 @@ Name="Source Files" > diff --git a/PCbuild/_ssl.vcproj b/PC/VS9.0/_ssl.vcproj similarity index 94% rename from PCbuild/_ssl.vcproj rename to PC/VS9.0/_ssl.vcproj index c24dd8bd8b9..0f91cc79ab0 100644 --- a/PCbuild/_ssl.vcproj +++ b/PC/VS9.0/_ssl.vcproj @@ -535,7 +535,7 @@ Name="Source Files" > diff --git a/PCbuild/_testcapi.vcproj b/PC/VS9.0/_testcapi.vcproj similarity index 93% rename from PCbuild/_testcapi.vcproj rename to PC/VS9.0/_testcapi.vcproj index 55f243f14b3..e814fd47d30 100644 --- a/PCbuild/_testcapi.vcproj +++ b/PC/VS9.0/_testcapi.vcproj @@ -511,7 +511,7 @@ Name="Source Files" > diff --git a/PCbuild/_tkinter.vcproj b/PC/VS9.0/_tkinter.vcproj similarity index 93% rename from PCbuild/_tkinter.vcproj rename to PC/VS9.0/_tkinter.vcproj index 1c5f0cbedda..a049b9b2a4a 100644 --- a/PCbuild/_tkinter.vcproj +++ b/PC/VS9.0/_tkinter.vcproj @@ -527,11 +527,11 @@ Name="Source Files" > diff --git a/PCbuild/bdist_wininst.vcproj b/PC/VS9.0/bdist_wininst.vcproj similarity index 74% rename from PCbuild/bdist_wininst.vcproj rename to PC/VS9.0/bdist_wininst.vcproj index 68b3931103b..b8cc7ad6a87 100644 --- a/PCbuild/bdist_wininst.vcproj +++ b/PC/VS9.0/bdist_wininst.vcproj @@ -20,7 +20,7 @@ @@ -247,7 +247,7 @@ Filter="h;hpp;hxx;hm;inl" > @@ -256,11 +256,11 @@ Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe" > diff --git a/PC/VS9.0/build.bat b/PC/VS9.0/build.bat new file mode 100644 index 00000000000..0fed5171a5e --- /dev/null +++ b/PC/VS9.0/build.bat @@ -0,0 +1,107 @@ +@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, or Clean) +rem -d Set the configuration to Debug +rem -e Pull in external libraries using get_externals.bat +rem -k Attempt to kill any running Pythons before building + +setlocal +set platf=Win32 +set vs_platf=x86 +set conf=Release +set target= +set dir=%~dp0 +set kill= +set build_tkinter= + +: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' ( + if '%2'=='Clean' (set target=/clean) & shift & shift & goto CheckOpts + if '%2'=='Rebuild' (set target=/rebuild) & shift & shift & goto CheckOpts + if '%2'=='Build' (set target=) & shift & shift & goto CheckOpts + echo.Unknown target: %2 & goto :eof +) +if '%1'=='-d' (set conf=Debug) & shift & goto CheckOpts +if '%1'=='-e' call "%dir%..\..\PCbuild\get_externals.bat" & (set build_tkinter=true) & shift & goto CheckOpts +if '%1'=='-k' (set kill=true) & shift & goto CheckOpts + +if '%conf%'=='Debug' (set dbg_ext=_d) else (set dbg_ext=) +if '%platf%'=='x64' ( + set vs_platf=x86_amd64 + set builddir=%dir%amd64\ +) else ( + set builddir=%dir% +) +rem Can't use builddir until we're in a new command... +if '%platf%'=='x64' ( + rem Needed for buliding OpenSSL + set HOST_PYTHON=%builddir%python%dbg_ext%.exe +) + +rem Setup the environment +call "%dir%env.bat" %vs_platf% + +if '%kill%'=='true' ( + vcbuild "%dir%kill_python.vcproj" "%conf%|%platf%" && "%builddir%kill_python%dbg_ext%.exe" +) + +set externals_dir=%dir%..\..\externals +if '%build_tkinter%'=='true' ( + if '%platf%'=='x64' ( + set tcltkdir=%externals_dir%\tcltk64 + set machine=AMD64 + ) else ( + set tcltkdir=%externals_dir%\tcltk + set machine=IX86 + ) + if '%conf%'=='Debug' ( + set tcl_dbg_ext=g + set debug_flag=1 + ) else ( + set tcl_dbg_ext= + set debug_flag=0 + ) + set tcldir=%externals_dir%\tcl-8.5.15.0 + set tkdir=%externals_dir%\tk-8.5.15.0 + set tixdir=%externals_dir%\tix-8.4.3.5 +) +if '%build_tkinter%'=='true' ( + if not exist "%tcltkdir%\bin\tcl85%tcl_dbg_ext%.dll" ( + @rem all and install need to be separate invocations, otherwise nmakehlp is not found on install + pushd "%tcldir%\win" + nmake -f makefile.vc MACHINE=%machine% DEBUG=%debug_flag% INSTALLDIR="%tcltkdir%" clean all + nmake -f makefile.vc MACHINE=%machine% DEBUG=%debug_flag% INSTALLDIR="%tcltkdir%" install + popd + ) + + if not exist "%tcltkdir%\bin\tk85%tcl_dbg_ext%.dll" ( + pushd "%tkdir%\win" + nmake -f makefile.vc MACHINE=%machine% DEBUG=%debug_flag% INSTALLDIR="%tcltkdir%" TCLDIR="%tcldir%" clean + nmake -f makefile.vc MACHINE=%machine% DEBUG=%debug_flag% INSTALLDIR="%tcltkdir%" TCLDIR="%tcldir%" all + nmake -f makefile.vc MACHINE=%machine% DEBUG=%debug_flag% INSTALLDIR="%tcltkdir%" TCLDIR="%tcldir%" install + popd + ) + + if not exist "%tcltkdir%\lib\tix8.4.3\tix84%tcl_dbg_ext%.dll" ( + pushd "%tixdir%\win" + nmake -f python.mak DEBUG=%debug_flag% MACHINE=%machine% TCL_DIR="%tcldir%" TK_DIR="%tkdir%" INSTALL_DIR="%tcltkdir%" clean + nmake -f python.mak DEBUG=%debug_flag% MACHINE=%machine% TCL_DIR="%tcldir%" TK_DIR="%tkdir%" INSTALL_DIR="%tcltkdir%" all + nmake -f python.mak DEBUG=%debug_flag% MACHINE=%machine% TCL_DIR="%tcldir%" TK_DIR="%tkdir%" INSTALL_DIR="%tcltkdir%" install + popd + ) +) + +rem Call on VCBuild 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 +vcbuild "%dir%pcbuild.sln" %target% "%conf%|%platf%" %1 %2 %3 %4 %5 %6 %7 %8 %9 diff --git a/PC/VS9.0/build_env.bat b/PC/VS9.0/build_env.bat new file mode 100644 index 00000000000..01024cff215 --- /dev/null +++ b/PC/VS9.0/build_env.bat @@ -0,0 +1 @@ +@%comspec% /k env.bat %* diff --git a/PC/VS9.0/build_pgo.bat b/PC/VS9.0/build_pgo.bat new file mode 100644 index 00000000000..d28a7673002 --- /dev/null +++ b/PC/VS9.0/build_pgo.bat @@ -0,0 +1,41 @@ +@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 PGI=%platf%-pgi +set PGO=%platf%-pgo + +@echo on +rem build the instrumented version +call build -p %platf% -c PGInstrument + +rem remove .pyc files, .pgc files and execute the job +%PGI%\python.exe 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 + diff --git a/PCbuild/build_ssl.bat b/PC/VS9.0/build_ssl.bat similarity index 100% rename from PCbuild/build_ssl.bat rename to PC/VS9.0/build_ssl.bat diff --git a/PCbuild/build_ssl.py b/PC/VS9.0/build_ssl.py similarity index 99% rename from PCbuild/build_ssl.py rename to PC/VS9.0/build_ssl.py index bda9c818e0f..95e0e7854ed 100644 --- a/PCbuild/build_ssl.py +++ b/PC/VS9.0/build_ssl.py @@ -70,7 +70,7 @@ def get_ssl_dir(): propfile = (os.path.join(os.path.dirname(__file__), 'pyproject.vsprops')) with open(propfile) as f: m = re.search('openssl-([^"]+)"', f.read()) - return "..\externals\openssl-"+m.group(1) + return "..\..\externals\openssl-"+m.group(1) def create_makefile64(makefile, m32): diff --git a/PCbuild/build_tkinter.py b/PC/VS9.0/build_tkinter.py similarity index 100% rename from PCbuild/build_tkinter.py rename to PC/VS9.0/build_tkinter.py diff --git a/PCbuild/bz2.vcproj b/PC/VS9.0/bz2.vcproj similarity index 94% rename from PCbuild/bz2.vcproj rename to PC/VS9.0/bz2.vcproj index 088fb467d97..559364119b8 100644 --- a/PCbuild/bz2.vcproj +++ b/PC/VS9.0/bz2.vcproj @@ -527,7 +527,7 @@ Name="Source Files" > diff --git a/PCbuild/debug.vsprops b/PC/VS9.0/debug.vsprops similarity index 100% rename from PCbuild/debug.vsprops rename to PC/VS9.0/debug.vsprops diff --git a/PC/VS9.0/env.bat b/PC/VS9.0/env.bat new file mode 100644 index 00000000000..57fc116c31c --- /dev/null +++ b/PC/VS9.0/env.bat @@ -0,0 +1,4 @@ +@echo off +echo Build environments: x86, ia64, amd64, x86_amd64, x86_ia64 +echo. +call "%VS90COMNTOOLS%..\..\VC\vcvarsall.bat" %* diff --git a/PC/VS9.0/field3.py b/PC/VS9.0/field3.py new file mode 100644 index 00000000000..edcbe36ae08 --- /dev/null +++ b/PC/VS9.0/field3.py @@ -0,0 +1,35 @@ +# An absurd workaround for the lack of arithmetic in MS's resource compiler. +# After building Python, run this, then paste the output into the appropriate +# part of PC\python_nt.rc. +# Example output: +# +# * For 2.3a0, +# * PY_MICRO_VERSION = 0 +# * PY_RELEASE_LEVEL = 'alpha' = 0xA +# * PY_RELEASE_SERIAL = 1 +# * +# * and 0*1000 + 10*10 + 1 = 101. +# */ +# #define FIELD3 101 + +import sys + +major, minor, micro, level, serial = sys.version_info +levelnum = {'alpha': 0xA, + 'beta': 0xB, + 'candidate': 0xC, + 'final': 0xF, + }[level] +string = sys.version.split()[0] # like '2.3a0' + +print(" * For %s," % string) +print(" * PY_MICRO_VERSION = %d" % micro) +print(" * PY_RELEASE_LEVEL = %r = %s" % (level, hex(levelnum))) +print(" * PY_RELEASE_SERIAL = %d" % serial) +print(" *") + +field3 = micro * 1000 + levelnum * 10 + serial + +print(" * and %d*1000 + %d*10 + %d = %d" % (micro, levelnum, serial, field3)) +print(" */") +print("#define FIELD3", field3) diff --git a/PC/VS9.0/idle.bat b/PC/VS9.0/idle.bat new file mode 100644 index 00000000000..5ab15f5164c --- /dev/null +++ b/PC/VS9.0/idle.bat @@ -0,0 +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=python +PATH %PATH%;..\..\tcltk\bin + +if "%1"=="-d" (set exe=python_d) & shift + +set cmd=%exe% ../Lib/idlelib/idle.py %1 %2 %3 %4 %5 %6 %7 %8 %9 + +echo on +%cmd% diff --git a/PC/VS9.0/installer.bmp b/PC/VS9.0/installer.bmp new file mode 100644 index 0000000000000000000000000000000000000000..1875e194ba2720cf25541c20e0459f16f3f96d72 GIT binary patch literal 58806 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 @@ -314,7 +314,7 @@ Name="Source Files" > diff --git a/PC/VS9.0/pcbuild.sln b/PC/VS9.0/pcbuild.sln new file mode 100644 index 00000000000..725c6ea7bf3 --- /dev/null +++ b/PC/VS9.0/pcbuild.sln @@ -0,0 +1,559 @@ +Microsoft Visual Studio Solution File, Format Version 10.00 +# Visual Studio 2008 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python", "python.vcproj", "{B11D750F-CD1F-4A96-85CE-E69A5C5259F9}" + ProjectSection(ProjectDependencies) = postProject + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058} = {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_versioninfo", "make_versioninfo.vcproj", "{F0E0541E-F17D-430B-97C4-93ADF0DD284E}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pythoncore", "pythoncore.vcproj", "{CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}" + ProjectSection(ProjectDependencies) = postProject + {F0E0541E-F17D-430B-97C4-93ADF0DD284E} = {F0E0541E-F17D-430B-97C4-93ADF0DD284E} + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} = {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} + {C73F0EC1-358B-4177-940F-0846AC8B04CD} = {C73F0EC1-358B-4177-940F-0846AC8B04CD} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pythonw", "pythonw.vcproj", "{F4229CC3-873C-49AE-9729-DD308ED4CD4A}" + ProjectSection(ProjectDependencies) = postProject + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "w9xpopen", "w9xpopen.vcproj", "{E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}" + ProjectSection(ProjectDependencies) = postProject + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} = {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_buildinfo", "make_buildinfo.vcproj", "{C73F0EC1-358B-4177-940F-0846AC8B04CD}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{553EC33E-9816-4996-A660-5D6186A0B0B3}" + ProjectSection(SolutionItems) = preProject + ..\Modules\getbuildinfo.c = ..\Modules\getbuildinfo.c + readme.txt = readme.txt + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "winsound", "winsound.vcproj", "{28B5D777-DDF2-4B6B-B34F-31D938813856}" + ProjectSection(ProjectDependencies) = postProject + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_bsddb", "_bsddb.vcproj", "{B4D38F3F-68FB-42EC-A45D-E00657BB3627}" + ProjectSection(ProjectDependencies) = postProject + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} = {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_ctypes", "_ctypes.vcproj", "{0E9791DB-593A-465F-98BC-681011311618}" + ProjectSection(ProjectDependencies) = postProject + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_ctypes_test", "_ctypes_test.vcproj", "{9EC7190A-249F-4180-A900-548FDCF3055F}" + ProjectSection(ProjectDependencies) = postProject + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_elementtree", "_elementtree.vcproj", "{17E1E049-C309-4D79-843F-AE483C264AEA}" + ProjectSection(ProjectDependencies) = postProject + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_msi", "_msi.vcproj", "{31FFC478-7B4A-43E8-9954-8D03E2187E9C}" + ProjectSection(ProjectDependencies) = postProject + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_socket", "_socket.vcproj", "{86937F53-C189-40EF-8CE8-8759D8E7D480}" + ProjectSection(ProjectDependencies) = postProject + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_sqlite3", "_sqlite3.vcproj", "{13CECB97-4119-4316-9D42-8534019A5A44}" + ProjectSection(ProjectDependencies) = postProject + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + {A1A295E5-463C-437F-81CA-1F32367685DA} = {A1A295E5-463C-437F-81CA-1F32367685DA} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_ssl", "_ssl.vcproj", "{C6E20F84-3247-4AD6-B051-B073268F73BA}" + ProjectSection(ProjectDependencies) = postProject + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9} = {B11D750F-CD1F-4A96-85CE-E69A5C5259F9} + {86937F53-C189-40EF-8CE8-8759D8E7D480} = {86937F53-C189-40EF-8CE8-8759D8E7D480} + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_testcapi", "_testcapi.vcproj", "{6901D91C-6E48-4BB7-9FEC-700C8131DF1D}" + ProjectSection(ProjectDependencies) = postProject + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_tkinter", "_tkinter.vcproj", "{4946ECAC-2E69-4BF8-A90A-F5136F5094DF}" + ProjectSection(ProjectDependencies) = postProject + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bz2", "bz2.vcproj", "{73FCD2BD-F133-46B7-8EC1-144CD82A59D5}" + ProjectSection(ProjectDependencies) = postProject + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "select", "select.vcproj", "{18CAE28C-B454-46C1-87A0-493D91D97F03}" + ProjectSection(ProjectDependencies) = postProject + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unicodedata", "unicodedata.vcproj", "{ECC7CEAC-A5E5-458E-BB9E-2413CC847881}" + ProjectSection(ProjectDependencies) = postProject + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pyexpat", "pyexpat.vcproj", "{D06B6426-4762-44CC-8BAD-D79052507F2F}" + ProjectSection(ProjectDependencies) = postProject + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bdist_wininst", "bdist_wininst.vcproj", "{EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_hashlib", "_hashlib.vcproj", "{447F05A8-F581-4CAC-A466-5AC7936E207E}" + ProjectSection(ProjectDependencies) = postProject + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9} = {B11D750F-CD1F-4A96-85CE-E69A5C5259F9} + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sqlite3", "sqlite3.vcproj", "{A1A295E5-463C-437F-81CA-1F32367685DA}" + ProjectSection(ProjectDependencies) = postProject + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} = {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_multiprocessing", "_multiprocessing.vcproj", "{9E48B300-37D1-11DD-8C41-005056C00008}" + ProjectSection(ProjectDependencies) = postProject + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "kill_python", "kill_python.vcproj", "{6DE10744-E396-40A5-B4E2-1B69AA7C8D31}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Debug|x64 = Debug|x64 + PGInstrument|Win32 = PGInstrument|Win32 + PGInstrument|x64 = PGInstrument|x64 + PGUpdate|Win32 = PGUpdate|Win32 + PGUpdate|x64 = PGUpdate|x64 + Release|Win32 = Release|Win32 + Release|x64 = Release|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.Debug|Win32.ActiveCfg = Debug|Win32 + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.Debug|Win32.Build.0 = Debug|Win32 + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.Debug|x64.ActiveCfg = Debug|x64 + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.Debug|x64.Build.0 = Debug|x64 + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.Release|Win32.ActiveCfg = Release|Win32 + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.Release|Win32.Build.0 = Release|Win32 + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.Release|x64.ActiveCfg = Release|x64 + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.Release|x64.Build.0 = Release|x64 + {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Debug|Win32.ActiveCfg = Debug|Win32 + {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Debug|Win32.Build.0 = Debug|Win32 + {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Debug|x64.ActiveCfg = Debug|Win32 + {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Debug|x64.Build.0 = Debug|Win32 + {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGInstrument|Win32.Build.0 = Release|Win32 + {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGInstrument|x64.ActiveCfg = Release|Win32 + {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGInstrument|x64.Build.0 = Release|Win32 + {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGUpdate|Win32.Build.0 = Release|Win32 + {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGUpdate|x64.ActiveCfg = Release|Win32 + {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGUpdate|x64.Build.0 = Release|Win32 + {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Release|Win32.ActiveCfg = Release|Win32 + {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Release|Win32.Build.0 = Release|Win32 + {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Release|x64.ActiveCfg = Release|Win32 + {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Release|x64.Build.0 = Release|Win32 + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.Debug|Win32.ActiveCfg = Debug|Win32 + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.Debug|Win32.Build.0 = Debug|Win32 + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.Debug|x64.ActiveCfg = Debug|x64 + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.Debug|x64.Build.0 = Debug|x64 + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.Release|Win32.ActiveCfg = Release|Win32 + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.Release|Win32.Build.0 = Release|Win32 + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.Release|x64.ActiveCfg = Release|x64 + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.Release|x64.Build.0 = Release|x64 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.Debug|Win32.ActiveCfg = Debug|Win32 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.Debug|Win32.Build.0 = Debug|Win32 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.Debug|x64.ActiveCfg = Debug|x64 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.Debug|x64.Build.0 = Debug|x64 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.Release|Win32.ActiveCfg = Release|Win32 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.Release|Win32.Build.0 = Release|Win32 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.Release|x64.ActiveCfg = Release|x64 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.Release|x64.Build.0 = Release|x64 + {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}.Debug|Win32.ActiveCfg = Debug|Win32 + {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}.Debug|Win32.Build.0 = Debug|Win32 + {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}.Debug|x64.ActiveCfg = Debug|x64 + {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}.Debug|x64.Build.0 = Debug|x64 + {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}.Release|Win32.ActiveCfg = Release|Win32 + {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}.Release|Win32.Build.0 = Release|Win32 + {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}.Release|x64.ActiveCfg = Release|x64 + {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}.Release|x64.Build.0 = Release|x64 + {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Debug|Win32.ActiveCfg = Release|Win32 + {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Debug|Win32.Build.0 = Release|Win32 + {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Debug|x64.ActiveCfg = Release|Win32 + {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Debug|x64.Build.0 = Release|Win32 + {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGInstrument|Win32.Build.0 = Release|Win32 + {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGInstrument|x64.ActiveCfg = Release|Win32 + {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGInstrument|x64.Build.0 = Release|Win32 + {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGUpdate|Win32.Build.0 = Release|Win32 + {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGUpdate|x64.ActiveCfg = Release|Win32 + {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGUpdate|x64.Build.0 = Release|Win32 + {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Release|Win32.ActiveCfg = Release|Win32 + {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Release|Win32.Build.0 = Release|Win32 + {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Release|x64.ActiveCfg = Release|Win32 + {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Release|x64.Build.0 = Release|Win32 + {28B5D777-DDF2-4B6B-B34F-31D938813856}.Debug|Win32.ActiveCfg = Debug|Win32 + {28B5D777-DDF2-4B6B-B34F-31D938813856}.Debug|Win32.Build.0 = Debug|Win32 + {28B5D777-DDF2-4B6B-B34F-31D938813856}.Debug|x64.ActiveCfg = Debug|x64 + {28B5D777-DDF2-4B6B-B34F-31D938813856}.Debug|x64.Build.0 = Debug|x64 + {28B5D777-DDF2-4B6B-B34F-31D938813856}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {28B5D777-DDF2-4B6B-B34F-31D938813856}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {28B5D777-DDF2-4B6B-B34F-31D938813856}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {28B5D777-DDF2-4B6B-B34F-31D938813856}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {28B5D777-DDF2-4B6B-B34F-31D938813856}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {28B5D777-DDF2-4B6B-B34F-31D938813856}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {28B5D777-DDF2-4B6B-B34F-31D938813856}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {28B5D777-DDF2-4B6B-B34F-31D938813856}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {28B5D777-DDF2-4B6B-B34F-31D938813856}.Release|Win32.ActiveCfg = Release|Win32 + {28B5D777-DDF2-4B6B-B34F-31D938813856}.Release|Win32.Build.0 = Release|Win32 + {28B5D777-DDF2-4B6B-B34F-31D938813856}.Release|x64.ActiveCfg = Release|x64 + {28B5D777-DDF2-4B6B-B34F-31D938813856}.Release|x64.Build.0 = Release|x64 + {B4D38F3F-68FB-42EC-A45D-E00657BB3627}.Debug|Win32.ActiveCfg = Debug|Win32 + {B4D38F3F-68FB-42EC-A45D-E00657BB3627}.Debug|Win32.Build.0 = Debug|Win32 + {B4D38F3F-68FB-42EC-A45D-E00657BB3627}.Debug|x64.ActiveCfg = Debug|x64 + {B4D38F3F-68FB-42EC-A45D-E00657BB3627}.Debug|x64.Build.0 = Debug|x64 + {B4D38F3F-68FB-42EC-A45D-E00657BB3627}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {B4D38F3F-68FB-42EC-A45D-E00657BB3627}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {B4D38F3F-68FB-42EC-A45D-E00657BB3627}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {B4D38F3F-68FB-42EC-A45D-E00657BB3627}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {B4D38F3F-68FB-42EC-A45D-E00657BB3627}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {B4D38F3F-68FB-42EC-A45D-E00657BB3627}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {B4D38F3F-68FB-42EC-A45D-E00657BB3627}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {B4D38F3F-68FB-42EC-A45D-E00657BB3627}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {B4D38F3F-68FB-42EC-A45D-E00657BB3627}.Release|Win32.ActiveCfg = Release|Win32 + {B4D38F3F-68FB-42EC-A45D-E00657BB3627}.Release|Win32.Build.0 = Release|Win32 + {B4D38F3F-68FB-42EC-A45D-E00657BB3627}.Release|x64.ActiveCfg = Release|x64 + {B4D38F3F-68FB-42EC-A45D-E00657BB3627}.Release|x64.Build.0 = Release|x64 + {0E9791DB-593A-465F-98BC-681011311618}.Debug|Win32.ActiveCfg = Debug|Win32 + {0E9791DB-593A-465F-98BC-681011311618}.Debug|Win32.Build.0 = Debug|Win32 + {0E9791DB-593A-465F-98BC-681011311618}.Debug|x64.ActiveCfg = Debug|x64 + {0E9791DB-593A-465F-98BC-681011311618}.Debug|x64.Build.0 = Debug|x64 + {0E9791DB-593A-465F-98BC-681011311618}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {0E9791DB-593A-465F-98BC-681011311618}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {0E9791DB-593A-465F-98BC-681011311618}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {0E9791DB-593A-465F-98BC-681011311618}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {0E9791DB-593A-465F-98BC-681011311618}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {0E9791DB-593A-465F-98BC-681011311618}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {0E9791DB-593A-465F-98BC-681011311618}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {0E9791DB-593A-465F-98BC-681011311618}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {0E9791DB-593A-465F-98BC-681011311618}.Release|Win32.ActiveCfg = Release|Win32 + {0E9791DB-593A-465F-98BC-681011311618}.Release|Win32.Build.0 = Release|Win32 + {0E9791DB-593A-465F-98BC-681011311618}.Release|x64.ActiveCfg = Release|x64 + {0E9791DB-593A-465F-98BC-681011311618}.Release|x64.Build.0 = Release|x64 + {9EC7190A-249F-4180-A900-548FDCF3055F}.Debug|Win32.ActiveCfg = Debug|Win32 + {9EC7190A-249F-4180-A900-548FDCF3055F}.Debug|Win32.Build.0 = Debug|Win32 + {9EC7190A-249F-4180-A900-548FDCF3055F}.Debug|x64.ActiveCfg = Debug|x64 + {9EC7190A-249F-4180-A900-548FDCF3055F}.Debug|x64.Build.0 = Debug|x64 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {9EC7190A-249F-4180-A900-548FDCF3055F}.Release|Win32.ActiveCfg = Release|Win32 + {9EC7190A-249F-4180-A900-548FDCF3055F}.Release|Win32.Build.0 = Release|Win32 + {9EC7190A-249F-4180-A900-548FDCF3055F}.Release|x64.ActiveCfg = Release|x64 + {9EC7190A-249F-4180-A900-548FDCF3055F}.Release|x64.Build.0 = Release|x64 + {17E1E049-C309-4D79-843F-AE483C264AEA}.Debug|Win32.ActiveCfg = Debug|Win32 + {17E1E049-C309-4D79-843F-AE483C264AEA}.Debug|Win32.Build.0 = Debug|Win32 + {17E1E049-C309-4D79-843F-AE483C264AEA}.Debug|x64.ActiveCfg = Debug|x64 + {17E1E049-C309-4D79-843F-AE483C264AEA}.Debug|x64.Build.0 = Debug|x64 + {17E1E049-C309-4D79-843F-AE483C264AEA}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {17E1E049-C309-4D79-843F-AE483C264AEA}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {17E1E049-C309-4D79-843F-AE483C264AEA}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {17E1E049-C309-4D79-843F-AE483C264AEA}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {17E1E049-C309-4D79-843F-AE483C264AEA}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {17E1E049-C309-4D79-843F-AE483C264AEA}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {17E1E049-C309-4D79-843F-AE483C264AEA}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {17E1E049-C309-4D79-843F-AE483C264AEA}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {17E1E049-C309-4D79-843F-AE483C264AEA}.Release|Win32.ActiveCfg = Release|Win32 + {17E1E049-C309-4D79-843F-AE483C264AEA}.Release|Win32.Build.0 = Release|Win32 + {17E1E049-C309-4D79-843F-AE483C264AEA}.Release|x64.ActiveCfg = Release|x64 + {17E1E049-C309-4D79-843F-AE483C264AEA}.Release|x64.Build.0 = Release|x64 + {31FFC478-7B4A-43E8-9954-8D03E2187E9C}.Debug|Win32.ActiveCfg = Debug|Win32 + {31FFC478-7B4A-43E8-9954-8D03E2187E9C}.Debug|Win32.Build.0 = Debug|Win32 + {31FFC478-7B4A-43E8-9954-8D03E2187E9C}.Debug|x64.ActiveCfg = Debug|x64 + {31FFC478-7B4A-43E8-9954-8D03E2187E9C}.Debug|x64.Build.0 = Debug|x64 + {31FFC478-7B4A-43E8-9954-8D03E2187E9C}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {31FFC478-7B4A-43E8-9954-8D03E2187E9C}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {31FFC478-7B4A-43E8-9954-8D03E2187E9C}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {31FFC478-7B4A-43E8-9954-8D03E2187E9C}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {31FFC478-7B4A-43E8-9954-8D03E2187E9C}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {31FFC478-7B4A-43E8-9954-8D03E2187E9C}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {31FFC478-7B4A-43E8-9954-8D03E2187E9C}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {31FFC478-7B4A-43E8-9954-8D03E2187E9C}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {31FFC478-7B4A-43E8-9954-8D03E2187E9C}.Release|Win32.ActiveCfg = Release|Win32 + {31FFC478-7B4A-43E8-9954-8D03E2187E9C}.Release|Win32.Build.0 = Release|Win32 + {31FFC478-7B4A-43E8-9954-8D03E2187E9C}.Release|x64.ActiveCfg = Release|x64 + {31FFC478-7B4A-43E8-9954-8D03E2187E9C}.Release|x64.Build.0 = Release|x64 + {86937F53-C189-40EF-8CE8-8759D8E7D480}.Debug|Win32.ActiveCfg = Debug|Win32 + {86937F53-C189-40EF-8CE8-8759D8E7D480}.Debug|Win32.Build.0 = Debug|Win32 + {86937F53-C189-40EF-8CE8-8759D8E7D480}.Debug|x64.ActiveCfg = Debug|x64 + {86937F53-C189-40EF-8CE8-8759D8E7D480}.Debug|x64.Build.0 = Debug|x64 + {86937F53-C189-40EF-8CE8-8759D8E7D480}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {86937F53-C189-40EF-8CE8-8759D8E7D480}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {86937F53-C189-40EF-8CE8-8759D8E7D480}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {86937F53-C189-40EF-8CE8-8759D8E7D480}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {86937F53-C189-40EF-8CE8-8759D8E7D480}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {86937F53-C189-40EF-8CE8-8759D8E7D480}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {86937F53-C189-40EF-8CE8-8759D8E7D480}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {86937F53-C189-40EF-8CE8-8759D8E7D480}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {86937F53-C189-40EF-8CE8-8759D8E7D480}.Release|Win32.ActiveCfg = Release|Win32 + {86937F53-C189-40EF-8CE8-8759D8E7D480}.Release|Win32.Build.0 = Release|Win32 + {86937F53-C189-40EF-8CE8-8759D8E7D480}.Release|x64.ActiveCfg = Release|x64 + {86937F53-C189-40EF-8CE8-8759D8E7D480}.Release|x64.Build.0 = Release|x64 + {13CECB97-4119-4316-9D42-8534019A5A44}.Debug|Win32.ActiveCfg = Debug|Win32 + {13CECB97-4119-4316-9D42-8534019A5A44}.Debug|Win32.Build.0 = Debug|Win32 + {13CECB97-4119-4316-9D42-8534019A5A44}.Debug|x64.ActiveCfg = Debug|x64 + {13CECB97-4119-4316-9D42-8534019A5A44}.Debug|x64.Build.0 = Debug|x64 + {13CECB97-4119-4316-9D42-8534019A5A44}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {13CECB97-4119-4316-9D42-8534019A5A44}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {13CECB97-4119-4316-9D42-8534019A5A44}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {13CECB97-4119-4316-9D42-8534019A5A44}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {13CECB97-4119-4316-9D42-8534019A5A44}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {13CECB97-4119-4316-9D42-8534019A5A44}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {13CECB97-4119-4316-9D42-8534019A5A44}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {13CECB97-4119-4316-9D42-8534019A5A44}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {13CECB97-4119-4316-9D42-8534019A5A44}.Release|Win32.ActiveCfg = Release|Win32 + {13CECB97-4119-4316-9D42-8534019A5A44}.Release|Win32.Build.0 = Release|Win32 + {13CECB97-4119-4316-9D42-8534019A5A44}.Release|x64.ActiveCfg = Release|x64 + {13CECB97-4119-4316-9D42-8534019A5A44}.Release|x64.Build.0 = Release|x64 + {C6E20F84-3247-4AD6-B051-B073268F73BA}.Debug|Win32.ActiveCfg = Debug|Win32 + {C6E20F84-3247-4AD6-B051-B073268F73BA}.Debug|Win32.Build.0 = Debug|Win32 + {C6E20F84-3247-4AD6-B051-B073268F73BA}.Debug|x64.ActiveCfg = Debug|x64 + {C6E20F84-3247-4AD6-B051-B073268F73BA}.Debug|x64.Build.0 = Debug|x64 + {C6E20F84-3247-4AD6-B051-B073268F73BA}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {C6E20F84-3247-4AD6-B051-B073268F73BA}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {C6E20F84-3247-4AD6-B051-B073268F73BA}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {C6E20F84-3247-4AD6-B051-B073268F73BA}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {C6E20F84-3247-4AD6-B051-B073268F73BA}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {C6E20F84-3247-4AD6-B051-B073268F73BA}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {C6E20F84-3247-4AD6-B051-B073268F73BA}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {C6E20F84-3247-4AD6-B051-B073268F73BA}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {C6E20F84-3247-4AD6-B051-B073268F73BA}.Release|Win32.ActiveCfg = Release|Win32 + {C6E20F84-3247-4AD6-B051-B073268F73BA}.Release|Win32.Build.0 = Release|Win32 + {C6E20F84-3247-4AD6-B051-B073268F73BA}.Release|x64.ActiveCfg = Release|x64 + {C6E20F84-3247-4AD6-B051-B073268F73BA}.Release|x64.Build.0 = Release|x64 + {6901D91C-6E48-4BB7-9FEC-700C8131DF1D}.Debug|Win32.ActiveCfg = Debug|Win32 + {6901D91C-6E48-4BB7-9FEC-700C8131DF1D}.Debug|Win32.Build.0 = Debug|Win32 + {6901D91C-6E48-4BB7-9FEC-700C8131DF1D}.Debug|x64.ActiveCfg = Debug|x64 + {6901D91C-6E48-4BB7-9FEC-700C8131DF1D}.Debug|x64.Build.0 = Debug|x64 + {6901D91C-6E48-4BB7-9FEC-700C8131DF1D}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {6901D91C-6E48-4BB7-9FEC-700C8131DF1D}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {6901D91C-6E48-4BB7-9FEC-700C8131DF1D}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {6901D91C-6E48-4BB7-9FEC-700C8131DF1D}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {6901D91C-6E48-4BB7-9FEC-700C8131DF1D}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {6901D91C-6E48-4BB7-9FEC-700C8131DF1D}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {6901D91C-6E48-4BB7-9FEC-700C8131DF1D}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {6901D91C-6E48-4BB7-9FEC-700C8131DF1D}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {6901D91C-6E48-4BB7-9FEC-700C8131DF1D}.Release|Win32.ActiveCfg = Release|Win32 + {6901D91C-6E48-4BB7-9FEC-700C8131DF1D}.Release|Win32.Build.0 = Release|Win32 + {6901D91C-6E48-4BB7-9FEC-700C8131DF1D}.Release|x64.ActiveCfg = Release|x64 + {6901D91C-6E48-4BB7-9FEC-700C8131DF1D}.Release|x64.Build.0 = Release|x64 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.Debug|Win32.ActiveCfg = Debug|Win32 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.Debug|Win32.Build.0 = Debug|Win32 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.Debug|x64.ActiveCfg = Debug|x64 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.Debug|x64.Build.0 = Debug|x64 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.Release|Win32.ActiveCfg = Release|Win32 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.Release|Win32.Build.0 = Release|Win32 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.Release|x64.ActiveCfg = Release|x64 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.Release|x64.Build.0 = Release|x64 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.Debug|Win32.ActiveCfg = Debug|Win32 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.Debug|Win32.Build.0 = Debug|Win32 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.Debug|x64.ActiveCfg = Debug|x64 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.Debug|x64.Build.0 = Debug|x64 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.Release|Win32.ActiveCfg = Release|Win32 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.Release|Win32.Build.0 = Release|Win32 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.Release|x64.ActiveCfg = Release|x64 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.Release|x64.Build.0 = Release|x64 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.Debug|Win32.ActiveCfg = Debug|Win32 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.Debug|Win32.Build.0 = Debug|Win32 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.Debug|x64.ActiveCfg = Debug|x64 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.Debug|x64.Build.0 = Debug|x64 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.Release|Win32.ActiveCfg = Release|Win32 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.Release|Win32.Build.0 = Release|Win32 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.Release|x64.ActiveCfg = Release|x64 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.Release|x64.Build.0 = Release|x64 + {ECC7CEAC-A5E5-458E-BB9E-2413CC847881}.Debug|Win32.ActiveCfg = Debug|Win32 + {ECC7CEAC-A5E5-458E-BB9E-2413CC847881}.Debug|Win32.Build.0 = Debug|Win32 + {ECC7CEAC-A5E5-458E-BB9E-2413CC847881}.Debug|x64.ActiveCfg = Debug|x64 + {ECC7CEAC-A5E5-458E-BB9E-2413CC847881}.Debug|x64.Build.0 = Debug|x64 + {ECC7CEAC-A5E5-458E-BB9E-2413CC847881}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {ECC7CEAC-A5E5-458E-BB9E-2413CC847881}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {ECC7CEAC-A5E5-458E-BB9E-2413CC847881}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {ECC7CEAC-A5E5-458E-BB9E-2413CC847881}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {ECC7CEAC-A5E5-458E-BB9E-2413CC847881}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {ECC7CEAC-A5E5-458E-BB9E-2413CC847881}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {ECC7CEAC-A5E5-458E-BB9E-2413CC847881}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {ECC7CEAC-A5E5-458E-BB9E-2413CC847881}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {ECC7CEAC-A5E5-458E-BB9E-2413CC847881}.Release|Win32.ActiveCfg = Release|Win32 + {ECC7CEAC-A5E5-458E-BB9E-2413CC847881}.Release|Win32.Build.0 = Release|Win32 + {ECC7CEAC-A5E5-458E-BB9E-2413CC847881}.Release|x64.ActiveCfg = Release|x64 + {ECC7CEAC-A5E5-458E-BB9E-2413CC847881}.Release|x64.Build.0 = Release|x64 + {D06B6426-4762-44CC-8BAD-D79052507F2F}.Debug|Win32.ActiveCfg = Debug|Win32 + {D06B6426-4762-44CC-8BAD-D79052507F2F}.Debug|Win32.Build.0 = Debug|Win32 + {D06B6426-4762-44CC-8BAD-D79052507F2F}.Debug|x64.ActiveCfg = Debug|x64 + {D06B6426-4762-44CC-8BAD-D79052507F2F}.Debug|x64.Build.0 = Debug|x64 + {D06B6426-4762-44CC-8BAD-D79052507F2F}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {D06B6426-4762-44CC-8BAD-D79052507F2F}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {D06B6426-4762-44CC-8BAD-D79052507F2F}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {D06B6426-4762-44CC-8BAD-D79052507F2F}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {D06B6426-4762-44CC-8BAD-D79052507F2F}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {D06B6426-4762-44CC-8BAD-D79052507F2F}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {D06B6426-4762-44CC-8BAD-D79052507F2F}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {D06B6426-4762-44CC-8BAD-D79052507F2F}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {D06B6426-4762-44CC-8BAD-D79052507F2F}.Release|Win32.ActiveCfg = Release|Win32 + {D06B6426-4762-44CC-8BAD-D79052507F2F}.Release|Win32.Build.0 = Release|Win32 + {D06B6426-4762-44CC-8BAD-D79052507F2F}.Release|x64.ActiveCfg = Release|x64 + {D06B6426-4762-44CC-8BAD-D79052507F2F}.Release|x64.Build.0 = Release|x64 + {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.Debug|Win32.ActiveCfg = Release|Win32 + {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.Debug|x64.ActiveCfg = Release|x64 + {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.PGInstrument|x64.ActiveCfg = Release|x64 + {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.PGUpdate|x64.ActiveCfg = Release|x64 + {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.Release|Win32.ActiveCfg = Release|Win32 + {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.Release|x64.ActiveCfg = Release|x64 + {447F05A8-F581-4CAC-A466-5AC7936E207E}.Debug|Win32.ActiveCfg = Debug|Win32 + {447F05A8-F581-4CAC-A466-5AC7936E207E}.Debug|Win32.Build.0 = Debug|Win32 + {447F05A8-F581-4CAC-A466-5AC7936E207E}.Debug|x64.ActiveCfg = Debug|x64 + {447F05A8-F581-4CAC-A466-5AC7936E207E}.Debug|x64.Build.0 = Debug|x64 + {447F05A8-F581-4CAC-A466-5AC7936E207E}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {447F05A8-F581-4CAC-A466-5AC7936E207E}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {447F05A8-F581-4CAC-A466-5AC7936E207E}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {447F05A8-F581-4CAC-A466-5AC7936E207E}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {447F05A8-F581-4CAC-A466-5AC7936E207E}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {447F05A8-F581-4CAC-A466-5AC7936E207E}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {447F05A8-F581-4CAC-A466-5AC7936E207E}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {447F05A8-F581-4CAC-A466-5AC7936E207E}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {447F05A8-F581-4CAC-A466-5AC7936E207E}.Release|Win32.ActiveCfg = Release|Win32 + {447F05A8-F581-4CAC-A466-5AC7936E207E}.Release|Win32.Build.0 = Release|Win32 + {447F05A8-F581-4CAC-A466-5AC7936E207E}.Release|x64.ActiveCfg = Release|x64 + {447F05A8-F581-4CAC-A466-5AC7936E207E}.Release|x64.Build.0 = Release|x64 + {A1A295E5-463C-437F-81CA-1F32367685DA}.Debug|Win32.ActiveCfg = Debug|Win32 + {A1A295E5-463C-437F-81CA-1F32367685DA}.Debug|Win32.Build.0 = Debug|Win32 + {A1A295E5-463C-437F-81CA-1F32367685DA}.Debug|x64.ActiveCfg = Debug|x64 + {A1A295E5-463C-437F-81CA-1F32367685DA}.Debug|x64.Build.0 = Debug|x64 + {A1A295E5-463C-437F-81CA-1F32367685DA}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {A1A295E5-463C-437F-81CA-1F32367685DA}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {A1A295E5-463C-437F-81CA-1F32367685DA}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {A1A295E5-463C-437F-81CA-1F32367685DA}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {A1A295E5-463C-437F-81CA-1F32367685DA}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {A1A295E5-463C-437F-81CA-1F32367685DA}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {A1A295E5-463C-437F-81CA-1F32367685DA}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {A1A295E5-463C-437F-81CA-1F32367685DA}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {A1A295E5-463C-437F-81CA-1F32367685DA}.Release|Win32.ActiveCfg = Release|Win32 + {A1A295E5-463C-437F-81CA-1F32367685DA}.Release|Win32.Build.0 = Release|Win32 + {A1A295E5-463C-437F-81CA-1F32367685DA}.Release|x64.ActiveCfg = Release|x64 + {A1A295E5-463C-437F-81CA-1F32367685DA}.Release|x64.Build.0 = Release|x64 + {9E48B300-37D1-11DD-8C41-005056C00008}.Debug|Win32.ActiveCfg = Debug|Win32 + {9E48B300-37D1-11DD-8C41-005056C00008}.Debug|Win32.Build.0 = Debug|Win32 + {9E48B300-37D1-11DD-8C41-005056C00008}.Debug|x64.ActiveCfg = Debug|x64 + {9E48B300-37D1-11DD-8C41-005056C00008}.Debug|x64.Build.0 = Debug|x64 + {9E48B300-37D1-11DD-8C41-005056C00008}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {9E48B300-37D1-11DD-8C41-005056C00008}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {9E48B300-37D1-11DD-8C41-005056C00008}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {9E48B300-37D1-11DD-8C41-005056C00008}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {9E48B300-37D1-11DD-8C41-005056C00008}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {9E48B300-37D1-11DD-8C41-005056C00008}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {9E48B300-37D1-11DD-8C41-005056C00008}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {9E48B300-37D1-11DD-8C41-005056C00008}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {9E48B300-37D1-11DD-8C41-005056C00008}.Release|Win32.ActiveCfg = Release|Win32 + {9E48B300-37D1-11DD-8C41-005056C00008}.Release|Win32.Build.0 = Release|Win32 + {9E48B300-37D1-11DD-8C41-005056C00008}.Release|x64.ActiveCfg = Release|x64 + {9E48B300-37D1-11DD-8C41-005056C00008}.Release|x64.Build.0 = Release|x64 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Debug|Win32.ActiveCfg = Debug|Win32 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Debug|Win32.Build.0 = Debug|Win32 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Debug|x64.ActiveCfg = Debug|x64 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Debug|x64.Build.0 = Debug|x64 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGInstrument|Win32.Build.0 = Release|Win32 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGInstrument|x64.ActiveCfg = Release|x64 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGInstrument|x64.Build.0 = Release|x64 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGUpdate|Win32.Build.0 = Release|Win32 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGUpdate|x64.ActiveCfg = Release|x64 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGUpdate|x64.Build.0 = Release|x64 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Release|Win32.ActiveCfg = Release|Win32 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Release|Win32.Build.0 = Release|Win32 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Release|x64.ActiveCfg = Release|x64 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Release|x64.Build.0 = Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/PCbuild/pginstrument.vsprops b/PC/VS9.0/pginstrument.vsprops similarity index 100% rename from PCbuild/pginstrument.vsprops rename to PC/VS9.0/pginstrument.vsprops diff --git a/PCbuild/pgupdate.vsprops b/PC/VS9.0/pgupdate.vsprops similarity index 100% rename from PCbuild/pgupdate.vsprops rename to PC/VS9.0/pgupdate.vsprops diff --git a/PCbuild/pyd.vsprops b/PC/VS9.0/pyd.vsprops similarity index 100% rename from PCbuild/pyd.vsprops rename to PC/VS9.0/pyd.vsprops diff --git a/PCbuild/pyd_d.vsprops b/PC/VS9.0/pyd_d.vsprops similarity index 100% rename from PCbuild/pyd_d.vsprops rename to PC/VS9.0/pyd_d.vsprops diff --git a/PCbuild/pyexpat.vcproj b/PC/VS9.0/pyexpat.vcproj similarity index 88% rename from PCbuild/pyexpat.vcproj rename to PC/VS9.0/pyexpat.vcproj index 5a20a51f75e..c61696745ed 100644 --- a/PCbuild/pyexpat.vcproj +++ b/PC/VS9.0/pyexpat.vcproj @@ -42,7 +42,7 @@ /> @@ -531,19 +531,19 @@ Name="Source Files" > diff --git a/PCbuild/pyproject.vsprops b/PC/VS9.0/pyproject.vsprops similarity index 90% rename from PCbuild/pyproject.vsprops rename to PC/VS9.0/pyproject.vsprops index d704e0b1559..a52e06319e7 100644 --- a/PCbuild/pyproject.vsprops +++ b/PC/VS9.0/pyproject.vsprops @@ -11,7 +11,7 @@ Optimization="2" InlineFunctionExpansion="1" EnableIntrinsicFunctions="true" - AdditionalIncludeDirectories="..\Include; ..\PC" + AdditionalIncludeDirectories="..\..\Include; ..\..\PC" PreprocessorDefinitions="_WIN32" StringPooling="true" ExceptionHandling="0" @@ -34,7 +34,7 @@ /> @@ -627,7 +627,7 @@ Name="Source Files" > diff --git a/PCbuild/pythoncore.vcproj b/PC/VS9.0/pythoncore.vcproj similarity index 56% rename from PCbuild/pythoncore.vcproj rename to PC/VS9.0/pythoncore.vcproj index 5266d22875e..e6f02db7c40 100644 --- a/PCbuild/pythoncore.vcproj +++ b/PC/VS9.0/pythoncore.vcproj @@ -43,7 +43,7 @@ @@ -54,7 +54,7 @@ Name="VCResourceCompilerTool" PreprocessorDefinitions="NDEBUG" Culture="1033" - AdditionalIncludeDirectories="..\Include" + AdditionalIncludeDirectories="..\..\Include" /> @@ -129,7 +129,7 @@ Name="VCResourceCompilerTool" PreprocessorDefinitions="NDEBUG" Culture="1033" - AdditionalIncludeDirectories="..\Include" + AdditionalIncludeDirectories="..\..\Include" /> @@ -207,7 +207,7 @@ Name="VCResourceCompilerTool" PreprocessorDefinitions="_DEBUG" Culture="1033" - AdditionalIncludeDirectories="..\Include" + AdditionalIncludeDirectories="..\..\Include" /> @@ -285,7 +285,7 @@ Name="VCResourceCompilerTool" PreprocessorDefinitions="_DEBUG" Culture="1033" - AdditionalIncludeDirectories="..\Include" + AdditionalIncludeDirectories="..\..\Include" /> @@ -359,7 +359,7 @@ Name="VCResourceCompilerTool" PreprocessorDefinitions="NDEBUG" Culture="1033" - AdditionalIncludeDirectories="..\Include" + AdditionalIncludeDirectories="..\..\Include" /> @@ -434,7 +434,7 @@ Name="VCResourceCompilerTool" PreprocessorDefinitions="NDEBUG" Culture="1033" - AdditionalIncludeDirectories="..\Include" + AdditionalIncludeDirectories="..\..\Include" /> @@ -509,7 +509,7 @@ Name="VCResourceCompilerTool" PreprocessorDefinitions="NDEBUG" Culture="1033" - AdditionalIncludeDirectories="..\Include" + AdditionalIncludeDirectories="..\..\Include" /> @@ -584,7 +584,7 @@ Name="VCResourceCompilerTool" PreprocessorDefinitions="NDEBUG" Culture="1033" - AdditionalIncludeDirectories="..\Include" + AdditionalIncludeDirectories="..\..\Include" /> @@ -991,310 +991,310 @@ Name="Modules" > @@ -1302,71 +1302,71 @@ Name="cjkcodecs" > @@ -1374,35 +1374,35 @@ Name="_io" > @@ -1411,183 +1411,183 @@ Name="Objects" > @@ -1595,59 +1595,59 @@ Name="Parser" > @@ -1655,39 +1655,39 @@ Name="PC" > @@ -1695,183 +1695,183 @@ Name="Python" > @@ -1879,7 +1879,7 @@ Name="Resource Files" > diff --git a/PCbuild/pythonw.vcproj b/PC/VS9.0/pythonw.vcproj similarity index 94% rename from PCbuild/pythonw.vcproj rename to PC/VS9.0/pythonw.vcproj index 7ae562a4d69..f7cc8329949 100644 --- a/PCbuild/pythonw.vcproj +++ b/PC/VS9.0/pythonw.vcproj @@ -600,7 +600,7 @@ Name="Resource Files" > @@ -608,7 +608,7 @@ Name="Source Files" > diff --git a/PC/VS9.0/readme.txt b/PC/VS9.0/readme.txt new file mode 100644 index 00000000000..74820fb6052 --- /dev/null +++ b/PC/VS9.0/readme.txt @@ -0,0 +1,260 @@ +Building Python using VC++ 9.0 +------------------------------ + +This directory is used to build Python for Win32 and x64 platforms, e.g. +Windows 2000, XP, Vista and Windows Server 2008. In order to build 32-bit +debug and release executables, Microsoft Visual C++ 2008 Express Edition is +required at the very least. In order to build 64-bit debug and release +executables, Visual Studio 2008 Standard Edition is required at the very +least. In order to build all of the above, as well as generate release builds +that make use of Profile Guided Optimisation (PG0), Visual Studio 2008 +Professional Edition is required at the very least. The official Python +releases are built with this version of Visual Studio. + +For other Windows platforms and compilers, see PC/readme.txt. + +All you need to do is open the workspace "pcbuild.sln" in Visual Studio, +select the desired combination of configuration and platform and eventually +build the solution. Unless you are going to debug a problem in the core or +you are going to create an optimized build you want to select "Release" as +configuration. + +The PCbuild directory is compatible with all versions of Visual Studio from +VS C++ Express Edition over the standard edition up to the professional +edition. However the express edition does not support features like solution +folders or profile guided optimization (PGO). The missing bits and pieces +won't stop you from building Python. + +The solution is configured to build the projects in the correct order. "Build +Solution" or F7 takes care of dependencies except for x64 builds. To make +cross compiling x64 builds on a 32bit OS possible the x64 builds require a +32bit version of Python. + +NOTE: + You probably don't want to build most of the other subprojects, unless + you're building an entire Python distribution from scratch, or + specifically making changes to the subsystems they implement, or are + running a Python core buildbot test slave; see SUBPROJECTS below) + +When using the Debug setting, the output files have a _d added to +their name: python27_d.dll, python_d.exe, parser_d.pyd, and so on. Both +the build and rt batch files accept a -d option for debug builds. + +The 32bit builds end up in the solution folder PCbuild while the x64 builds +land in the amd64 subfolder. The PGI and PGO builds for profile guided +optimization end up in their own folders, too. + +Legacy support +-------------- + +You can find build directories for older versions of Visual Studio and +Visual C++ in the PC directory. The legacy build directories are no longer +actively maintained and may not work out of the box. + +PC/VC6/ + Visual C++ 6.0 +PC/VS7.1/ + Visual Studio 2003 (7.1) +PC/VS8.0/ + Visual Studio 2005 (8.0) + + +C RUNTIME +--------- + +Visual Studio 2008 uses version 9 of the C runtime (MSVCRT9). The executables +are linked to a CRT "side by side" assembly which must be present on the target +machine. This is available under the VC/Redist folder of your visual studio +distribution. On XP and later operating systems that support +side-by-side assemblies it is not enough to have the msvcrt90.dll present, +it has to be there as a whole assembly, that is, a folder with the .dll +and a .manifest. Also, a check is made for the correct version. +Therefore, one should distribute this assembly with the dlls, and keep +it in the same directory. For compatibility with older systems, one should +also set the PATH to this directory so that the dll can be found. +For more info, see the Readme in the VC/Redist folder. + +SUBPROJECTS +----------- +These subprojects should build out of the box. Subprojects other than the +main ones (pythoncore, python, pythonw) generally build a DLL (renamed to +.pyd) from a specific module so that users don't have to load the code +supporting that module unless they import the module. + +pythoncore + .dll and .lib +python + .exe +pythonw + pythonw.exe, a variant of python.exe that doesn't pop up a DOS box +_socket + socketmodule.c +_testcapi + tests of the Python C API, run via Lib/test/test_capi.py, and + implemented by module Modules/_testcapimodule.c +pyexpat + Python wrapper for accelerated XML parsing, which incorporates stable + code from the Expat project: http://sourceforge.net/projects/expat/ +select + selectmodule.c +unicodedata + large tables of Unicode data +winsound + play sounds (typically .wav files) under Windows + +Python-controlled subprojects that wrap external projects: +_bsddb + Wraps Berkeley DB 4.7.25, which is currently built by _bsddb.vcproj. + project. +_sqlite3 + Wraps SQLite 3.6.21, which is currently built by sqlite3.vcproj. +_tkinter + Wraps the Tk windowing system. Unlike _bsddb and _sqlite3, there's no + corresponding tcltk.vcproj-type project that builds Tcl/Tk from vcproj's + within our pcbuild.sln, which means this module expects to find a + pre-built Tcl/Tk in either ..\externals\tcltk for 32-bit or + ..\externals\tcltk64 for 64-bit (relative to this directory). See below + for instructions to build Tcl/Tk. +bz2 + Python wrapper for the libbz2 compression library. Homepage + http://sources.redhat.com/bzip2/ + Download the source from the python.org copy into the dist + directory: + + svn export http://svn.python.org/projects/external/bzip2-1.0.6 + + ** NOTE: if you use the PCbuild\get_externals.bat approach for + obtaining external sources then you don't need to manually get the source + above via subversion. ** + +_ssl + Python wrapper for the secure sockets library. + + Get the source code through + + svn export http://svn.python.org/projects/external/openssl-1.0.2c + + ** NOTE: if you use the PCbuild\get_externals.bat approach for + obtaining external sources then you don't need to manually get the source + above via subversion. ** + + The NASM assembler is required to build OpenSSL. If you use the + PCbuild\get_externals.bat script to get external library sources, it also + downloads a version of NASM, which the ssl build script will add to PATH. + Otherwise, you can download the NASM installer from + http://www.nasm.us/ + and add NASM to your PATH. + + You can also install ActivePerl from + http://www.activestate.com/activeperl/ + if you like to use the official sources instead of the files from + python's subversion repository. The svn version contains pre-build + makefiles and assembly files. + + The build process makes sure that no patented algorithms are included. + For now RC5, MDC2 and IDEA are excluded from the build. You may have + to manually remove $(OBJ_D)\i_*.obj from ms\nt.mak if the build process + complains about missing files or forbidden IDEA. Again the files provided + in the subversion repository are already fixed. + + The MSVC project simply invokes PCBuild/build_ssl.py to perform + the build. This Python script locates and builds your OpenSSL + installation, then invokes a simple makefile to build the final .pyd. + + build_ssl.py attempts to catch the most common errors (such as not + being able to find OpenSSL sources, or not being able to find a Perl + that works with OpenSSL) and give a reasonable error message. + If you have a problem that doesn't seem to be handled correctly + (eg, you know you have ActivePerl but we can't find it), please take + a peek at build_ssl.py and suggest patches. Note that build_ssl.py + should be able to be run directly from the command-line. + + build_ssl.py/MSVC isn't clever enough to clean OpenSSL - you must do + this by hand. + +The subprojects above wrap external projects Python doesn't control, and as +such, a little more work is required in order to download the relevant source +files for each project before they can be built. The easiest way to do this +is to use the `build.bat` script in this directory to build Python, and pass +the '-e' switch to tell it to use get_externals.bat to fetch external sources +and build Tcl/Tk and Tix. To use get_externals.bat, you'll need to have +Subversion installed and svn.exe on your PATH. The script will fetch external +library sources from http://svn.python.org/external and place them in +..\externals (relative to this directory). + +Building for Itanium +-------------------- + +Official support for Itanium builds have been dropped from the build. Please +contact us and provide patches if you are interested in Itanium builds. + +Building for AMD64 +------------------ + +The build process for AMD64 / x64 is very similar to standard builds. You just +have to set x64 as platform. In addition, the HOST_PYTHON environment variable +must point to a Python interpreter (at least 2.4), to support cross-compilation. + +Building Python Using the free MS Toolkit Compiler +-------------------------------------------------- + +Microsoft has withdrawn the free MS Toolkit Compiler, so this can no longer +be considered a supported option. Instead you can use the free VS C++ Express +Edition. + +Profile Guided Optimization +--------------------------- + +The solution has two configurations for PGO. The PGInstrument +configuration must be build first. The PGInstrument binaries are +linked against a profiling library and contain extra debug +information. The PGUpdate configuration takes the profiling data and +generates optimized binaries. + +The build_pgo.bat script automates the creation of optimized binaries. It +creates the PGI files, runs the unit test suite or PyBench with the PGI +python and finally creates the optimized files. + +http://msdn.microsoft.com/en-us/library/e7k32f4k(VS.90).aspx + +Static library +-------------- + +The solution has no configuration for static libraries. However it is easy +it build a static library instead of a DLL. You simply have to set the +"Configuration Type" to "Static Library (.lib)" and alter the preprocessor +macro "Py_ENABLE_SHARED" to "Py_NO_ENABLE_SHARED". You may also have to +change the "Runtime Library" from "Multi-threaded DLL (/MD)" to +"Multi-threaded (/MT)". + +Visual Studio properties +------------------------ + +The PCbuild solution makes heavy use of Visual Studio property files +(*.vsprops). The properties can be viewed and altered in the Property +Manager (View -> Other Windows -> Property Manager). + + * debug (debug macro: _DEBUG) + * pginstrument (PGO) + * pgupdate (PGO) + +-- pginstrument + * pyd (python extension, release build) + +-- release + +-- pyproject + * pyd_d (python extension, debug build) + +-- debug + +-- pyproject + * pyproject (base settings for all projects, user macros like PyDllName) + * release (release macro: NDEBUG) + * x64 (AMD64 / x64 platform specific settings) + +The pyproject propertyfile defines _WIN32 and x64 defines _WIN64 and _M_X64 +although the macros are set by the compiler, too. The GUI doesn't always know +about the macros and confuse the user with false information. + +YOUR OWN EXTENSION DLLs +----------------------- + +If you want to create your own extension module DLL, there's an example +with easy-to-follow instructions in PC/example/; read the file +readme.txt there first. diff --git a/PCbuild/release.vsprops b/PC/VS9.0/release.vsprops similarity index 100% rename from PCbuild/release.vsprops rename to PC/VS9.0/release.vsprops diff --git a/PC/VS9.0/rmpyc.py b/PC/VS9.0/rmpyc.py new file mode 100644 index 00000000000..a1e75bb7ae5 --- /dev/null +++ b/PC/VS9.0/rmpyc.py @@ -0,0 +1,25 @@ +# Remove all the .pyc and .pyo files under ../Lib. + + +def deltree(root): + import os + from os.path import join + + npyc = npyo = 0 + for root, dirs, files in os.walk(root): + for name in files: + delete = False + if name.endswith('.pyc'): + delete = True + npyc += 1 + elif name.endswith('.pyo'): + delete = True + npyo += 1 + + if delete: + os.remove(join(root, name)) + + return npyc, npyo + +npyc, npyo = deltree("../Lib") +print(npyc, ".pyc deleted,", npyo, ".pyo deleted") diff --git a/PC/VS9.0/rt.bat b/PC/VS9.0/rt.bat new file mode 100644 index 00000000000..a63a47bc217 --- /dev/null +++ b/PC/VS9.0/rt.bat @@ -0,0 +1,60 @@ +@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% +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=%prefix%amd64) & (set tcltk=tcltk64) & shift & goto CheckOpts + +PATH %PATH%;%pcbuild%..\..\externals\%tcltk%\bin +set exe="%prefix%\python%suffix%" +set cmd=%exe% %dashO% -Wd -3 -E -tt "%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% diff --git a/PCbuild/select.vcproj b/PC/VS9.0/select.vcproj similarity index 94% rename from PCbuild/select.vcproj rename to PC/VS9.0/select.vcproj index 02e0a2fc40f..f7077c9afb0 100644 --- a/PCbuild/select.vcproj +++ b/PC/VS9.0/select.vcproj @@ -527,7 +527,7 @@ Name="Source Files" > diff --git a/PCbuild/sqlite3.vcproj b/PC/VS9.0/sqlite3.vcproj similarity index 100% rename from PCbuild/sqlite3.vcproj rename to PC/VS9.0/sqlite3.vcproj diff --git a/PCbuild/sqlite3.vsprops b/PC/VS9.0/sqlite3.vsprops similarity index 100% rename from PCbuild/sqlite3.vsprops rename to PC/VS9.0/sqlite3.vsprops diff --git a/PCbuild/unicodedata.vcproj b/PC/VS9.0/unicodedata.vcproj similarity index 92% rename from PCbuild/unicodedata.vcproj rename to PC/VS9.0/unicodedata.vcproj index 59682a1a8d2..515b1c78411 100644 --- a/PCbuild/unicodedata.vcproj +++ b/PC/VS9.0/unicodedata.vcproj @@ -511,11 +511,11 @@ Name="Header Files" > @@ -523,7 +523,7 @@ Name="Source Files" > diff --git a/PCbuild/vs9to8.py b/PC/VS9.0/vs9to8.py similarity index 100% rename from PCbuild/vs9to8.py rename to PC/VS9.0/vs9to8.py diff --git a/PCbuild/w9xpopen.vcproj b/PC/VS9.0/w9xpopen.vcproj similarity index 94% rename from PCbuild/w9xpopen.vcproj rename to PC/VS9.0/w9xpopen.vcproj index 05d8f81f9a5..9c0e75893f0 100644 --- a/PCbuild/w9xpopen.vcproj +++ b/PC/VS9.0/w9xpopen.vcproj @@ -566,7 +566,7 @@ Name="Source Files" > diff --git a/PCbuild/winsound.vcproj b/PC/VS9.0/winsound.vcproj similarity index 93% rename from PCbuild/winsound.vcproj rename to PC/VS9.0/winsound.vcproj index 69470cce723..6564b1e50d0 100644 --- a/PCbuild/winsound.vcproj +++ b/PC/VS9.0/winsound.vcproj @@ -513,7 +513,7 @@ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" > diff --git a/PCbuild/x64.vsprops b/PC/VS9.0/x64.vsprops similarity index 100% rename from PCbuild/x64.vsprops rename to PC/VS9.0/x64.vsprops diff --git a/PC/bdist_wininst/bdist_wininst.vcxproj b/PC/bdist_wininst/bdist_wininst.vcxproj new file mode 100644 index 00000000000..2ab474e4396 --- /dev/null +++ b/PC/bdist_wininst/bdist_wininst.vcxproj @@ -0,0 +1,103 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C} + wininst + ClCompile + false + + + + + Application + false + NotSet + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + $(PySourcePath)lib\distutils\command\ + false + wininst-$(VisualStudioVersion) + $(TargetName)-amd64 + .exe + + + + $(OutDir)wininst.tlb + + + MinSpace + $(PySourcePath)Modules\zlib;%(AdditionalIncludeDirectories) + _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) + + + $(PySourcePath)PC\bdist_wininst;%(AdditionalIncludeDirectories) + + + comctl32.lib;imagehlp.lib;%(AdditionalDependencies) + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/PC/bdist_wininst/bdist_wininst.vcxproj.filters b/PC/bdist_wininst/bdist_wininst.vcxproj.filters new file mode 100644 index 00000000000..b4b6a4d514d --- /dev/null +++ b/PC/bdist_wininst/bdist_wininst.vcxproj.filters @@ -0,0 +1,61 @@ + + + + + {293b1092-03ad-4b7c-acb9-c4ab62e52f55} + cpp;c;cxx;rc;def;r;odl;idl;hpj;bat + + + {0edc0406-282f-4dbc-b60e-a867c34a2a31} + + + {ea0c0f0e-3b73-474e-a999-e9689d032ccc} + h;hpp;hxx;hm;inl + + + {0c77c1cf-3f87-4f87-bd86-b425211c2181} + ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe + + + + + Source Files + + + Source Files + + + Source Files\zlib + + + Source Files\zlib + + + Source Files\zlib + + + Source Files\zlib + + + Source Files\zlib + + + Source Files\zlib + + + + + Header Files + + + + + Resource Files + + + + + Resource Files + + + \ No newline at end of file diff --git a/PCbuild/_bsddb.vcxproj b/PCbuild/_bsddb.vcxproj new file mode 100644 index 00000000000..8ce64b500f1 --- /dev/null +++ b/PCbuild/_bsddb.vcxproj @@ -0,0 +1,314 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {B4D38F3F-68FB-42EC-A45D-E00657BB3627} + _bsddb + Win32Proj + + + + + DynamicLibrary + NotSet + + + + + .pyd + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + + + + $(bsddbDir)\build_windows;$(bsddbDir);%(AdditionalIncludeDirectories) + _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + + + ws2_32.lib;%(AdditionalDependencies) + 0x1e180000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + diff --git a/PCbuild/_bsddb.vcxproj.filters b/PCbuild/_bsddb.vcxproj.filters new file mode 100644 index 00000000000..69fd2af04a1 --- /dev/null +++ b/PCbuild/_bsddb.vcxproj.filters @@ -0,0 +1,702 @@ + + + + + {82655853-5a03-4804-a421-44510138071e} + + + {c52be92f-9033-4a0f-bf55-1b65c7e7b015} + + + {49074366-917a-4969-88c7-0f6ec09c7021} + + + + + Header Files + + + + + Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + Berkeley DB 4.7.25 Source Files + + + diff --git a/PCbuild/_ctypes.vcxproj b/PCbuild/_ctypes.vcxproj new file mode 100644 index 00000000000..5bcf4325d9d --- /dev/null +++ b/PCbuild/_ctypes.vcxproj @@ -0,0 +1,107 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {0E9791DB-593A-465F-98BC-681011311618} + _ctypes + Win32Proj + + + + + DynamicLibrary + NotSet + + + + .pyd + + + + + + + + + + <_ProjectFileVersion>10.0.40219.1 + + + + ..\Modules\_ctypes\libffi_msvc;%(AdditionalIncludeDirectories) + + + 0x1D1A0000 + /EXPORT:DllGetClassObject,PRIVATE /EXPORT:DllCanUnloadNow,PRIVATE %(AdditionalOptions) + + + + + + + + + + + + + + + + + + + + + true + + + + + true + ml64 /nologo /c /Zi /Fo "$(IntDir)win64.obj" "%(FullPath)" + $(IntDir)win64.obj;%(Outputs) + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + + + + + + diff --git a/PCbuild/_ctypes.vcxproj.filters b/PCbuild/_ctypes.vcxproj.filters new file mode 100644 index 00000000000..3dbd4b9ae10 --- /dev/null +++ b/PCbuild/_ctypes.vcxproj.filters @@ -0,0 +1,65 @@ + + + + + {806081ee-2af0-48d0-a83e-ee02a74baa0f} + + + {dbdea1f2-ad8b-44ca-b782-fcf65d91559b} + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + + + Source Files + + + diff --git a/PCbuild/_ctypes_test.vcxproj b/PCbuild/_ctypes_test.vcxproj new file mode 100644 index 00000000000..4a54106f7b0 --- /dev/null +++ b/PCbuild/_ctypes_test.vcxproj @@ -0,0 +1,77 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {9EC7190A-249F-4180-A900-548FDCF3055F} + _ctypes_test + Win32Proj + false + + + + + DynamicLibrary + NotSet + + + + .pyd + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + + + + + + diff --git a/PCbuild/_ctypes_test.vcxproj.filters b/PCbuild/_ctypes_test.vcxproj.filters new file mode 100644 index 00000000000..83d08700d89 --- /dev/null +++ b/PCbuild/_ctypes_test.vcxproj.filters @@ -0,0 +1,21 @@ + + + + + {8fd70119-5481-4e5d-b187-d0b14eb27e38} + + + {38abc486-e143-49dc-8cf0-8aefab0e0d3d} + + + + + Header Files + + + + + Source Files + + + diff --git a/PCbuild/_elementtree.vcxproj b/PCbuild/_elementtree.vcxproj new file mode 100644 index 00000000000..1ce1a0450eb --- /dev/null +++ b/PCbuild/_elementtree.vcxproj @@ -0,0 +1,103 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {17E1E049-C309-4D79-843F-AE483C264AEA} + _elementtree + Win32Proj + + + + + DynamicLibrary + NotSet + + + + .pyd + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + + + + ..\Modules\expat;%(AdditionalIncludeDirectories) + XML_NS;XML_DTD;BYTEORDER=1234;XML_CONTEXT_BYTES=1024;USE_PYEXPAT_CAPI;XML_STATIC;HAVE_MEMMOVE;%(PreprocessorDefinitions) + + + 0x1D100000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + diff --git a/PCbuild/_elementtree.vcxproj.filters b/PCbuild/_elementtree.vcxproj.filters new file mode 100644 index 00000000000..6acdf35846a --- /dev/null +++ b/PCbuild/_elementtree.vcxproj.filters @@ -0,0 +1,72 @@ + + + + + {643d8607-d024-40fe-8583-1823c96430f0} + + + {7b5335ad-059f-486f-85e4-f4757e26a9bf} + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + diff --git a/PCbuild/_hashlib.vcxproj b/PCbuild/_hashlib.vcxproj new file mode 100644 index 00000000000..0f98966a879 --- /dev/null +++ b/PCbuild/_hashlib.vcxproj @@ -0,0 +1,90 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {447F05A8-F581-4CAC-A466-5AC7936E207E} + _hashlib + Win32Proj + + + + + DynamicLibrary + NotSet + + + + .pyd + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + + + + $(opensslDir)include;%(AdditionalIncludeDirectories) + + + ws2_32.lib;$(OutDir)libeay$(PyDebugExt).lib;$(OutDir)ssleay$(PyDebugExt).lib;%(AdditionalDependencies) + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + {10615b24-73bf-4efa-93aa-236916321317} + false + + + {e5b04cc0-eb4c-42ab-b4dc-18ef95f864b0} + false + + + + + + diff --git a/PCbuild/_hashlib.vcxproj.filters b/PCbuild/_hashlib.vcxproj.filters new file mode 100644 index 00000000000..75d38292456 --- /dev/null +++ b/PCbuild/_hashlib.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {cc45963d-bd25-4eb8-bdba-a5507090bca4} + + + + + Source Files + + + diff --git a/PCbuild/_msi.vcxproj b/PCbuild/_msi.vcxproj new file mode 100644 index 00000000000..6c5fa8cf658 --- /dev/null +++ b/PCbuild/_msi.vcxproj @@ -0,0 +1,80 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {31FFC478-7B4A-43E8-9954-8D03E2187E9C} + _msi + Win32Proj + + + + + DynamicLibrary + NotSet + + + + .pyd + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + + + + cabinet.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies) + 0x1D160000 + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + diff --git a/PCbuild/_msi.vcxproj.filters b/PCbuild/_msi.vcxproj.filters new file mode 100644 index 00000000000..1bb4fba9a4f --- /dev/null +++ b/PCbuild/_msi.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {bdef7710-e433-4ac0-84e0-14f34454bd3e} + + + + + Source Files + + + diff --git a/PCbuild/_multiprocessing.vcxproj b/PCbuild/_multiprocessing.vcxproj new file mode 100644 index 00000000000..3a71c17f220 --- /dev/null +++ b/PCbuild/_multiprocessing.vcxproj @@ -0,0 +1,88 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {9E48B300-37D1-11DD-8C41-005056C00008} + _multiprocessing + Win32Proj + + + + + DynamicLibrary + NotSet + + + + .pyd + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + + + + ws2_32.lib;%(AdditionalDependencies) + 0x1e1D0000 + + + + + + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + diff --git a/PCbuild/_multiprocessing.vcxproj.filters b/PCbuild/_multiprocessing.vcxproj.filters new file mode 100644 index 00000000000..df8da3ccf0a --- /dev/null +++ b/PCbuild/_multiprocessing.vcxproj.filters @@ -0,0 +1,36 @@ + + + + + {623c956c-1893-43d9-a7dc-96e4fef20f93} + + + {34615a62-f999-4659-83f5-19d17a644530} + + + + + Header Files + + + Header Files + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + diff --git a/PCbuild/_socket.vcxproj b/PCbuild/_socket.vcxproj new file mode 100644 index 00000000000..453d3f7f433 --- /dev/null +++ b/PCbuild/_socket.vcxproj @@ -0,0 +1,83 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {86937F53-C189-40EF-8CE8-8759D8E7D480} + _socket + Win32Proj + + + + + DynamicLibrary + NotSet + + + + .pyd + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + + + + ws2_32.lib;%(AdditionalDependencies) + 0x1e1D0000 + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + diff --git a/PCbuild/_socket.vcxproj.filters b/PCbuild/_socket.vcxproj.filters new file mode 100644 index 00000000000..f6a8526de15 --- /dev/null +++ b/PCbuild/_socket.vcxproj.filters @@ -0,0 +1,21 @@ + + + + + {1452207f-707c-4e84-b532-307193a0fd85} + + + {1edfe0d0-7b9d-4dc8-a335-b21fef7cc77a} + + + + + Header Files + + + + + Source Files + + + diff --git a/PCbuild/_sqlite3.vcxproj b/PCbuild/_sqlite3.vcxproj new file mode 100644 index 00000000000..a470335001c --- /dev/null +++ b/PCbuild/_sqlite3.vcxproj @@ -0,0 +1,107 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {13CECB97-4119-4316-9D42-8534019A5A44} + _sqlite3 + Win32Proj + + + + + DynamicLibrary + NotSet + + + + .pyd + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + + + + $(sqlite3Dir);%(AdditionalIncludeDirectories) + MODULE_NAME="sqlite3";%(PreprocessorDefinitions) + + + 0x1e180000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + {a1a295e5-463c-437f-81ca-1f32367685da} + false + + + + + + diff --git a/PCbuild/_sqlite3.vcxproj.filters b/PCbuild/_sqlite3.vcxproj.filters new file mode 100644 index 00000000000..ec0585e50dc --- /dev/null +++ b/PCbuild/_sqlite3.vcxproj.filters @@ -0,0 +1,72 @@ + + + + + {dac8ab3b-ce16-4bef-bef9-76463a01f5c4} + + + {814b187d-44ad-4f2b-baa7-18ca8a8a6a77} + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + diff --git a/PCbuild/_ssl.vcxproj b/PCbuild/_ssl.vcxproj new file mode 100644 index 00000000000..fff23c7bc2c --- /dev/null +++ b/PCbuild/_ssl.vcxproj @@ -0,0 +1,94 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {C6E20F84-3247-4AD6-B051-B073268F73BA} + _ssl + Win32Proj + + + + + DynamicLibrary + NotSet + + + + .pyd + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + + + + $(opensslDir)include;%(AdditionalIncludeDirectories) + + + ws2_32.lib;crypt32.lib;$(OutDir)libeay$(PyDebugExt).lib;$(OutDir)ssleay$(PyDebugExt).lib;%(AdditionalDependencies) + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + {e5b04cc0-eb4c-42ab-b4dc-18ef95f864b0} + false + + + {10615b24-73bf-4efa-93aa-236916321317} + false + + + {86937f53-c189-40ef-8ce8-8759d8e7d480} + false + + + + + + diff --git a/PCbuild/_ssl.vcxproj.filters b/PCbuild/_ssl.vcxproj.filters new file mode 100644 index 00000000000..283bb8516a0 --- /dev/null +++ b/PCbuild/_ssl.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {695348f7-e9f6-4fe1-bc03-5f08ffc8095b} + + + + + Source Files + + + diff --git a/PCbuild/_testcapi.vcxproj b/PCbuild/_testcapi.vcxproj new file mode 100644 index 00000000000..77df0cb34df --- /dev/null +++ b/PCbuild/_testcapi.vcxproj @@ -0,0 +1,80 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {6901D91C-6E48-4BB7-9FEC-700C8131DF1D} + _testcapi + Win32Proj + false + + + + + DynamicLibrary + NotSet + + + + .pyd + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + + + + 0x1e1F0000 + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + diff --git a/PCbuild/_testcapi.vcxproj.filters b/PCbuild/_testcapi.vcxproj.filters new file mode 100644 index 00000000000..d234d70941e --- /dev/null +++ b/PCbuild/_testcapi.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {a76a90d8-8e8b-4c36-8f58-8bd46abe9f5e} + + + + + Source Files + + + diff --git a/PCbuild/_tkinter.vcxproj b/PCbuild/_tkinter.vcxproj new file mode 100644 index 00000000000..e0610a2c1d0 --- /dev/null +++ b/PCbuild/_tkinter.vcxproj @@ -0,0 +1,90 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF} + _tkinter + Win32Proj + + + + + DynamicLibrary + NotSet + + + + .pyd + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + + + + $(tcltkDir)include;%(AdditionalIncludeDirectories) + WITH_APPINIT;%(PreprocessorDefinitions) + + + $(tcltkLib);%(AdditionalDependencies) + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + {b5fd6f1d-129e-4bff-9340-03606fac7283} + + + {7e85eccf-a72c-4da4-9e52-884508e80ba1} + + + + + + diff --git a/PCbuild/_tkinter.vcxproj.filters b/PCbuild/_tkinter.vcxproj.filters new file mode 100644 index 00000000000..413adfa8ae7 --- /dev/null +++ b/PCbuild/_tkinter.vcxproj.filters @@ -0,0 +1,16 @@ + + + + + {b9ce64dd-cb95-472d-bbe8-5583b2cd375b} + + + + + Source Files + + + Source Files + + + diff --git a/PCbuild/build.bat b/PCbuild/build.bat index 679aad53b4d..3d3738b6515 100644 --- a/PCbuild/build.bat +++ b/PCbuild/build.bat @@ -6,102 +6,47 @@ 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, or Clean) +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 -k Attempt to kill any running Pythons before building +rem -m Enable parallel build +rem -M Disable parallel build (disabled by default) +rem -v Increased output messages +rem -k Attempt to kill any running Pythons before building (usually unnecessary) setlocal set platf=Win32 set vs_platf=x86 set conf=Release -set target= +set target=Build set dir=%~dp0 +set parallel= +set verbose=/nologo /v:m set kill= -set build_tkinter= :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' ( - if '%2'=='Clean' (set target=/clean) & shift & shift & goto CheckOpts - if '%2'=='Rebuild' (set target=/rebuild) & shift & shift & goto CheckOpts - if '%2'=='Build' (set target=) & shift & shift & goto CheckOpts - echo.Unknown target: %2 & goto :eof -) +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" & (set build_tkinter=true) & 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 '%conf%'=='Debug' (set dbg_ext=_d) else (set dbg_ext=) -if '%platf%'=='x64' ( - set vs_platf=x86_amd64 - set builddir=%dir%amd64\ -) else ( - set builddir=%dir% -) -rem Can't use builddir until we're in a new command... -if '%platf%'=='x64' ( - rem Needed for buliding OpenSSL - set HOST_PYTHON=%builddir%python%dbg_ext%.exe -) +if '%platf%'=='x64' (set vs_platf=x86_amd64) rem Setup the environment -call "%dir%env.bat" %vs_platf% +call "%dir%env.bat" %vs_platf% >nul if '%kill%'=='true' ( - vcbuild "%dir%kill_python.vcproj" "%conf%|%platf%" && "%builddir%kill_python%dbg_ext%.exe" + msbuild /v:m /nologo /target:KillPython "%dir%\pythoncore.vcxproj" /p:Configuration=%conf% /p:Platform=%platf% /p:KillPython=true ) -set externals_dir=%dir%..\externals -if '%build_tkinter%'=='true' ( - if '%platf%'=='x64' ( - set tcltkdir=%externals_dir%\tcltk64 - set machine=AMD64 - ) else ( - set tcltkdir=%externals_dir%\tcltk - set machine=IX86 - ) - if '%conf%'=='Debug' ( - set tcl_dbg_ext=g - set debug_flag=1 - ) else ( - set tcl_dbg_ext= - set debug_flag=0 - ) - set tcldir=%externals_dir%\tcl-8.5.15.0 - set tkdir=%externals_dir%\tk-8.5.15.0 - set tixdir=%externals_dir%\tix-8.4.3.5 -) -if '%build_tkinter%'=='true' ( - if not exist "%tcltkdir%\bin\tcl85%tcl_dbg_ext%.dll" ( - @rem all and install need to be separate invocations, otherwise nmakehlp is not found on install - pushd "%tcldir%\win" - nmake -f makefile.vc MACHINE=%machine% DEBUG=%debug_flag% INSTALLDIR="%tcltkdir%" clean all - nmake -f makefile.vc MACHINE=%machine% DEBUG=%debug_flag% INSTALLDIR="%tcltkdir%" install - popd - ) - - if not exist "%tcltkdir%\bin\tk85%tcl_dbg_ext%.dll" ( - pushd "%tkdir%\win" - nmake -f makefile.vc MACHINE=%machine% DEBUG=%debug_flag% INSTALLDIR="%tcltkdir%" TCLDIR="%tcldir%" clean - nmake -f makefile.vc MACHINE=%machine% DEBUG=%debug_flag% INSTALLDIR="%tcltkdir%" TCLDIR="%tcldir%" all - nmake -f makefile.vc MACHINE=%machine% DEBUG=%debug_flag% INSTALLDIR="%tcltkdir%" TCLDIR="%tcldir%" install - popd - ) - - if not exist "%tcltkdir%\lib\tix8.4.3\tix84%tcl_dbg_ext%.dll" ( - pushd "%tixdir%\win" - nmake -f python.mak DEBUG=%debug_flag% MACHINE=%machine% TCL_DIR="%tcldir%" TK_DIR="%tkdir%" INSTALL_DIR="%tcltkdir%" clean - nmake -f python.mak DEBUG=%debug_flag% MACHINE=%machine% TCL_DIR="%tcldir%" TK_DIR="%tkdir%" INSTALL_DIR="%tcltkdir%" all - nmake -f python.mak DEBUG=%debug_flag% MACHINE=%machine% TCL_DIR="%tcldir%" TK_DIR="%tkdir%" INSTALL_DIR="%tcltkdir%" install - popd - ) -) - -rem Call on VCBuild to do the work, echo the command. +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 -vcbuild "%dir%pcbuild.sln" %target% "%conf%|%platf%" %1 %2 %3 %4 %5 %6 %7 %8 %9 +msbuild "%dir%pcbuild.proj" /t:%target% %parallel% %verbose% /p:Configuration=%conf% /p:Platform=%platf% %1 %2 %3 %4 %5 %6 %7 %8 %9 diff --git a/PCbuild/build_pgo.bat b/PCbuild/build_pgo.bat index d7e4e8bdb7a..79ec2670b04 100644 --- a/PCbuild/build_pgo.bat +++ b/PCbuild/build_pgo.bat @@ -7,14 +7,16 @@ 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=..\tools\pybench\pybench.py -n 1 -C 1 --with-gc -set path1=..\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=..\lib\test\regrtest.py -set path2=..\lib +set job2="%dir%..\lib\test\regrtest.py" +set path2="%dir%..\lib" set job=%job1% set clrpath=%path1% @@ -22,20 +24,25 @@ 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% -set PGI=%platf%-pgi -set PGO=%platf%-pgo -@echo on rem build the instrumented version -call build -p %platf% -c PGInstrument +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 -%PGI%\python.exe 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 +"%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 diff --git a/PCbuild/bz2.vcxproj b/PCbuild/bz2.vcxproj new file mode 100644 index 00000000000..c782e7b4339 --- /dev/null +++ b/PCbuild/bz2.vcxproj @@ -0,0 +1,96 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5} + bz2 + Win32Proj + bz2 + + + + + DynamicLibrary + NotSet + + + + + .pyd + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + + + + $(bz2Dir);%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) + + + 0x1D170000 + + + + + + + + + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + diff --git a/PCbuild/bz2.vcxproj.filters b/PCbuild/bz2.vcxproj.filters new file mode 100644 index 00000000000..13e9aa7bdf9 --- /dev/null +++ b/PCbuild/bz2.vcxproj.filters @@ -0,0 +1,48 @@ + + + + + {f53a859d-dad2-4d5b-ae41-f28d8b571f5a} + + + {7e0bed05-ae33-43b7-8797-656455bbb7f3} + + + {ed574b89-6983-4cdf-9f98-fe7048d9e89c} + + + + + Source Files + + + bzip2 1.0.6 Source Files + + + bzip2 1.0.6 Source Files + + + bzip2 1.0.6 Source Files + + + bzip2 1.0.6 Source Files + + + bzip2 1.0.6 Source Files + + + bzip2 1.0.6 Source Files + + + bzip2 1.0.6 Source Files + + + + + bzip2 1.0.6 Header Files + + + bzip2 1.0.6 Header Files + + + diff --git a/PCbuild/clean.bat b/PCbuild/clean.bat new file mode 100644 index 00000000000..78517d225f9 --- /dev/null +++ b/PCbuild/clean.bat @@ -0,0 +1,5 @@ +@echo off +rem A batch program to clean a particular configuration, +rem just for convenience. + +call %~dp0build.bat -t Clean %* diff --git a/PCbuild/env.bat b/PCbuild/env.bat index 57fc116c31c..ec8a69539f8 100644 --- a/PCbuild/env.bat +++ b/PCbuild/env.bat @@ -1,4 +1,17 @@ @echo off -echo Build environments: x86, ia64, amd64, x86_amd64, x86_ia64 +rem This script adds the latest available tools to the path for the current +rem command window. However, all builds of Python should ignore the version +rem of the tools on PATH and use PlatformToolset instead, which should +rem always be 'v90'. +rem +rem To build Python with a newer toolset, pass "/p:PlatformToolset=v100" (or +rem 'v110', 'v120' or 'v140') to the build script. Note that no toolset +rem other than 'v90' is supported! + +echo Build environments: x86, amd64, x86_amd64 echo. -call "%VS90COMNTOOLS%..\..\VC\vcvarsall.bat" %* +set VSTOOLS=%VS140COMNTOOLS% +if "%VSTOOLS%"=="" set VSTOOLS=%VS120COMNTOOLS% +if "%VSTOOLS%"=="" set VSTOOLS=%VS110COMNTOOLS% +if "%VSTOOLS%"=="" set VSTOOLS=%VS100COMNTOOLS% +call "%VSTOOLS%..\..\VC\vcvarsall.bat" %* diff --git a/PCbuild/get_externals.bat b/PCbuild/get_externals.bat index 3a7ba10efa0..59403eff7c4 100644 --- a/PCbuild/get_externals.bat +++ b/PCbuild/get_externals.bat @@ -51,6 +51,9 @@ if ERRORLEVEL 9009 ( echo.Fetching external libraries... +rem When updating these versions, remember to update the relevant property +rem files in both this dir and PC\VS9.0 + for %%e in ( bzip2-1.0.6 db-4.7.25.0 diff --git a/PCbuild/libeay.vcxproj b/PCbuild/libeay.vcxproj new file mode 100644 index 00000000000..68ef936db88 --- /dev/null +++ b/PCbuild/libeay.vcxproj @@ -0,0 +1,907 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Debug + x64 + + + Release + x64 + + + + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0} + libeay + + + + + + + StaticLibrary + + + + + + + + <_DATEValue>#define DATE "$([System.DateTime]::Now.ToString(`ddd MMM dd HH':'mm':'ss yyyy`))" + <_CFLAGSValue>#define CFLAGS "cl /MD /Ox -W3 -Gs0 -Gy -nologo @(PreprocessorDefinitions->'-D%(Identity)',' ')" + <_PLATFORMValue Condition="$(Platform)=='Win32'">#define PLATFORM "VC-WIN32" + <_PLATFORMValue Condition="$(Platform)=='x64'">#define PLATFORM "VC-WIN64A" + + + + + + + + + + + + $(IntDir);%(AdditionalIncludeDirectories) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PCbuild/openssl.props b/PCbuild/openssl.props new file mode 100644 index 00000000000..54f3596fb00 --- /dev/null +++ b/PCbuild/openssl.props @@ -0,0 +1,75 @@ + + + + + + StaticLibrary + $(opensslDir)tmp\$(ArchName)_$(Configuration)\$(ProjectName)\ + $(opensslDir)tmp\$(ArchName)\$(ProjectName)\ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_PreprocessorDefinitionList>@(PreprocessorDefinitions) + + + + + + 4244;4267 + $(opensslDir);$(opensslDir)include;$(opensslDir)crypto;$(opensslDir)crypto\asn1;$(opensslDir)crypto\evp;$(opensslDir)crypto\modes + $(_PreprocessorDefinitionList);%(PreprocessorDefinitions) + + + + + + nasm.exe -f win32 + nasm.exe -f win64 -DNEAR -Ox -g + + + + + + + + + + + diff --git a/PCbuild/pcbuild.proj b/PCbuild/pcbuild.proj new file mode 100644 index 00000000000..09563974376 --- /dev/null +++ b/PCbuild/pcbuild.proj @@ -0,0 +1,77 @@ + + + + {CC9B93A2-439D-4058-9D29-6DCF43774405} + Win32 + Release + true + true + true + + + + + $(Platform) + $(Configuration) + + Build + Clean + CleanAll + true + + + + + + + false + + + + + + + + + + + + + + false + + + + + + + + + + + + + + + + + + diff --git a/PCbuild/pcbuild.sln b/PCbuild/pcbuild.sln index 725c6ea7bf3..1f7fb77f286 100644 --- a/PCbuild/pcbuild.sln +++ b/PCbuild/pcbuild.sln @@ -1,136 +1,65 @@ -Microsoft Visual Studio Solution File, Format Version 10.00 -# Visual Studio 2008 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python", "python.vcproj", "{B11D750F-CD1F-4A96-85CE-E69A5C5259F9}" - ProjectSection(ProjectDependencies) = postProject - {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} - {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058} = {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_versioninfo", "make_versioninfo.vcproj", "{F0E0541E-F17D-430B-97C4-93ADF0DD284E}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pythoncore", "pythoncore.vcproj", "{CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}" - ProjectSection(ProjectDependencies) = postProject - {F0E0541E-F17D-430B-97C4-93ADF0DD284E} = {F0E0541E-F17D-430B-97C4-93ADF0DD284E} - {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} = {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} - {C73F0EC1-358B-4177-940F-0846AC8B04CD} = {C73F0EC1-358B-4177-940F-0846AC8B04CD} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pythonw", "pythonw.vcproj", "{F4229CC3-873C-49AE-9729-DD308ED4CD4A}" - ProjectSection(ProjectDependencies) = postProject - {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "w9xpopen", "w9xpopen.vcproj", "{E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}" - ProjectSection(ProjectDependencies) = postProject - {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} = {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_buildinfo", "make_buildinfo.vcproj", "{C73F0EC1-358B-4177-940F-0846AC8B04CD}" -EndProject +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2010 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{553EC33E-9816-4996-A660-5D6186A0B0B3}" ProjectSection(SolutionItems) = preProject ..\Modules\getbuildinfo.c = ..\Modules\getbuildinfo.c - readme.txt = readme.txt EndProjectSection EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "winsound", "winsound.vcproj", "{28B5D777-DDF2-4B6B-B34F-31D938813856}" - ProjectSection(ProjectDependencies) = postProject - {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python", "python.vcxproj", "{B11D750F-CD1F-4A96-85CE-E69A5C5259F9}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_bsddb", "_bsddb.vcproj", "{B4D38F3F-68FB-42EC-A45D-E00657BB3627}" - ProjectSection(ProjectDependencies) = postProject - {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} = {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} - {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pythoncore", "pythoncore.vcxproj", "{CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_ctypes", "_ctypes.vcproj", "{0E9791DB-593A-465F-98BC-681011311618}" - ProjectSection(ProjectDependencies) = postProject - {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pythonw", "pythonw.vcxproj", "{F4229CC3-873C-49AE-9729-DD308ED4CD4A}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_ctypes_test", "_ctypes_test.vcproj", "{9EC7190A-249F-4180-A900-548FDCF3055F}" - ProjectSection(ProjectDependencies) = postProject - {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "w9xpopen", "w9xpopen.vcxproj", "{E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_elementtree", "_elementtree.vcproj", "{17E1E049-C309-4D79-843F-AE483C264AEA}" - ProjectSection(ProjectDependencies) = postProject - {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "winsound", "winsound.vcxproj", "{28B5D777-DDF2-4B6B-B34F-31D938813856}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_msi", "_msi.vcproj", "{31FFC478-7B4A-43E8-9954-8D03E2187E9C}" - ProjectSection(ProjectDependencies) = postProject - {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_bsddb", "_bsddb.vcxproj", "{B4D38F3F-68FB-42EC-A45D-E00657BB3627}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_socket", "_socket.vcproj", "{86937F53-C189-40EF-8CE8-8759D8E7D480}" - ProjectSection(ProjectDependencies) = postProject - {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_ctypes", "_ctypes.vcxproj", "{0E9791DB-593A-465F-98BC-681011311618}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_sqlite3", "_sqlite3.vcproj", "{13CECB97-4119-4316-9D42-8534019A5A44}" - ProjectSection(ProjectDependencies) = postProject - {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} - {A1A295E5-463C-437F-81CA-1F32367685DA} = {A1A295E5-463C-437F-81CA-1F32367685DA} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_ctypes_test", "_ctypes_test.vcxproj", "{9EC7190A-249F-4180-A900-548FDCF3055F}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_ssl", "_ssl.vcproj", "{C6E20F84-3247-4AD6-B051-B073268F73BA}" - ProjectSection(ProjectDependencies) = postProject - {B11D750F-CD1F-4A96-85CE-E69A5C5259F9} = {B11D750F-CD1F-4A96-85CE-E69A5C5259F9} - {86937F53-C189-40EF-8CE8-8759D8E7D480} = {86937F53-C189-40EF-8CE8-8759D8E7D480} - {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_elementtree", "_elementtree.vcxproj", "{17E1E049-C309-4D79-843F-AE483C264AEA}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_testcapi", "_testcapi.vcproj", "{6901D91C-6E48-4BB7-9FEC-700C8131DF1D}" - ProjectSection(ProjectDependencies) = postProject - {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_msi", "_msi.vcxproj", "{31FFC478-7B4A-43E8-9954-8D03E2187E9C}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_tkinter", "_tkinter.vcproj", "{4946ECAC-2E69-4BF8-A90A-F5136F5094DF}" - ProjectSection(ProjectDependencies) = postProject - {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_socket", "_socket.vcxproj", "{86937F53-C189-40EF-8CE8-8759D8E7D480}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bz2", "bz2.vcproj", "{73FCD2BD-F133-46B7-8EC1-144CD82A59D5}" - ProjectSection(ProjectDependencies) = postProject - {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_sqlite3", "_sqlite3.vcxproj", "{13CECB97-4119-4316-9D42-8534019A5A44}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "select", "select.vcproj", "{18CAE28C-B454-46C1-87A0-493D91D97F03}" - ProjectSection(ProjectDependencies) = postProject - {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_ssl", "_ssl.vcxproj", "{C6E20F84-3247-4AD6-B051-B073268F73BA}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unicodedata", "unicodedata.vcproj", "{ECC7CEAC-A5E5-458E-BB9E-2413CC847881}" - ProjectSection(ProjectDependencies) = postProject - {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_testcapi", "_testcapi.vcxproj", "{6901D91C-6E48-4BB7-9FEC-700C8131DF1D}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pyexpat", "pyexpat.vcproj", "{D06B6426-4762-44CC-8BAD-D79052507F2F}" - ProjectSection(ProjectDependencies) = postProject - {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_tkinter", "_tkinter.vcxproj", "{4946ECAC-2E69-4BF8-A90A-F5136F5094DF}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bdist_wininst", "bdist_wininst.vcproj", "{EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bz2", "bz2.vcxproj", "{73FCD2BD-F133-46B7-8EC1-144CD82A59D5}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_hashlib", "_hashlib.vcproj", "{447F05A8-F581-4CAC-A466-5AC7936E207E}" - ProjectSection(ProjectDependencies) = postProject - {B11D750F-CD1F-4A96-85CE-E69A5C5259F9} = {B11D750F-CD1F-4A96-85CE-E69A5C5259F9} - {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "select", "select.vcxproj", "{18CAE28C-B454-46C1-87A0-493D91D97F03}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sqlite3", "sqlite3.vcproj", "{A1A295E5-463C-437F-81CA-1F32367685DA}" - ProjectSection(ProjectDependencies) = postProject - {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} = {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unicodedata", "unicodedata.vcxproj", "{ECC7CEAC-A5E5-458E-BB9E-2413CC847881}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_multiprocessing", "_multiprocessing.vcproj", "{9E48B300-37D1-11DD-8C41-005056C00008}" - ProjectSection(ProjectDependencies) = postProject - {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pyexpat", "pyexpat.vcxproj", "{D06B6426-4762-44CC-8BAD-D79052507F2F}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "kill_python", "kill_python.vcproj", "{6DE10744-E396-40A5-B4E2-1B69AA7C8D31}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bdist_wininst", "..\PC\bdist_wininst\bdist_wininst.vcxproj", "{EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_hashlib", "_hashlib.vcxproj", "{447F05A8-F581-4CAC-A466-5AC7936E207E}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sqlite3", "sqlite3.vcxproj", "{A1A295E5-463C-437F-81CA-1F32367685DA}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_multiprocessing", "_multiprocessing.vcxproj", "{9E48B300-37D1-11DD-8C41-005056C00008}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tcl", "tcl.vcxproj", "{B5FD6F1D-129E-4BFF-9340-03606FAC7283}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tix", "tix.vcxproj", "{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tk", "tk.vcxproj", "{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libeay", "libeay.vcxproj", "{E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssleay", "ssleay.vcxproj", "{10615B24-73BF-4EFA-93AA-236916321317}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -160,22 +89,6 @@ Global {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.Release|Win32.Build.0 = Release|Win32 {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.Release|x64.ActiveCfg = Release|x64 {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.Release|x64.Build.0 = Release|x64 - {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Debug|Win32.ActiveCfg = Debug|Win32 - {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Debug|Win32.Build.0 = Debug|Win32 - {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Debug|x64.ActiveCfg = Debug|Win32 - {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Debug|x64.Build.0 = Debug|Win32 - {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGInstrument|Win32.ActiveCfg = Release|Win32 - {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGInstrument|Win32.Build.0 = Release|Win32 - {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGInstrument|x64.ActiveCfg = Release|Win32 - {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGInstrument|x64.Build.0 = Release|Win32 - {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGUpdate|Win32.ActiveCfg = Release|Win32 - {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGUpdate|Win32.Build.0 = Release|Win32 - {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGUpdate|x64.ActiveCfg = Release|Win32 - {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGUpdate|x64.Build.0 = Release|Win32 - {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Release|Win32.ActiveCfg = Release|Win32 - {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Release|Win32.Build.0 = Release|Win32 - {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Release|x64.ActiveCfg = Release|Win32 - {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Release|x64.Build.0 = Release|Win32 {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.Debug|Win32.ActiveCfg = Debug|Win32 {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.Debug|Win32.Build.0 = Debug|Win32 {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.Debug|x64.ActiveCfg = Debug|x64 @@ -196,14 +109,14 @@ Global {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.Debug|Win32.Build.0 = Debug|Win32 {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.Debug|x64.ActiveCfg = Debug|x64 {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.Debug|x64.Build.0 = Debug|x64 - {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 - {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 - {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 - {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGInstrument|x64.Build.0 = PGInstrument|x64 - {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 - {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 - {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 - {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGInstrument|Win32.Build.0 = Release|Win32 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGInstrument|x64.ActiveCfg = Release|x64 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGInstrument|x64.Build.0 = Release|x64 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGUpdate|Win32.Build.0 = Release|Win32 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGUpdate|x64.ActiveCfg = Release|x64 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGUpdate|x64.Build.0 = Release|x64 {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.Release|Win32.ActiveCfg = Release|Win32 {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.Release|Win32.Build.0 = Release|Win32 {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.Release|x64.ActiveCfg = Release|x64 @@ -292,14 +205,14 @@ Global {9EC7190A-249F-4180-A900-548FDCF3055F}.Debug|Win32.Build.0 = Debug|Win32 {9EC7190A-249F-4180-A900-548FDCF3055F}.Debug|x64.ActiveCfg = Debug|x64 {9EC7190A-249F-4180-A900-548FDCF3055F}.Debug|x64.Build.0 = Debug|x64 - {9EC7190A-249F-4180-A900-548FDCF3055F}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 - {9EC7190A-249F-4180-A900-548FDCF3055F}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 - {9EC7190A-249F-4180-A900-548FDCF3055F}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 - {9EC7190A-249F-4180-A900-548FDCF3055F}.PGInstrument|x64.Build.0 = PGInstrument|x64 - {9EC7190A-249F-4180-A900-548FDCF3055F}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 - {9EC7190A-249F-4180-A900-548FDCF3055F}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 - {9EC7190A-249F-4180-A900-548FDCF3055F}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 - {9EC7190A-249F-4180-A900-548FDCF3055F}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGInstrument|Win32.Build.0 = Release|Win32 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGInstrument|x64.ActiveCfg = Release|x64 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGInstrument|x64.Build.0 = Release|x64 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGUpdate|Win32.Build.0 = Release|Win32 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGUpdate|x64.ActiveCfg = Release|x64 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGUpdate|x64.Build.0 = Release|x64 {9EC7190A-249F-4180-A900-548FDCF3055F}.Release|Win32.ActiveCfg = Release|Win32 {9EC7190A-249F-4180-A900-548FDCF3055F}.Release|Win32.Build.0 = Release|Win32 {9EC7190A-249F-4180-A900-548FDCF3055F}.Release|x64.ActiveCfg = Release|x64 @@ -536,22 +449,86 @@ Global {9E48B300-37D1-11DD-8C41-005056C00008}.Release|Win32.Build.0 = Release|Win32 {9E48B300-37D1-11DD-8C41-005056C00008}.Release|x64.ActiveCfg = Release|x64 {9E48B300-37D1-11DD-8C41-005056C00008}.Release|x64.Build.0 = Release|x64 - {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Debug|Win32.ActiveCfg = Debug|Win32 - {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Debug|Win32.Build.0 = Debug|Win32 - {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Debug|x64.ActiveCfg = Debug|x64 - {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Debug|x64.Build.0 = Debug|x64 - {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGInstrument|Win32.ActiveCfg = Release|Win32 - {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGInstrument|Win32.Build.0 = Release|Win32 - {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGInstrument|x64.ActiveCfg = Release|x64 - {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGInstrument|x64.Build.0 = Release|x64 - {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGUpdate|Win32.ActiveCfg = Release|Win32 - {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGUpdate|Win32.Build.0 = Release|Win32 - {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGUpdate|x64.ActiveCfg = Release|x64 - {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGUpdate|x64.Build.0 = Release|x64 - {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Release|Win32.ActiveCfg = Release|Win32 - {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Release|Win32.Build.0 = Release|Win32 - {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Release|x64.ActiveCfg = Release|x64 - {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Release|x64.Build.0 = Release|x64 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Debug|Win32.ActiveCfg = Debug|Win32 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Debug|Win32.Build.0 = Debug|Win32 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Debug|x64.ActiveCfg = Debug|x64 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Debug|x64.Build.0 = Debug|x64 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|Win32.Build.0 = Release|Win32 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|x64.ActiveCfg = Release|x64 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|x64.Build.0 = Release|x64 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|Win32.Build.0 = Release|Win32 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|x64.ActiveCfg = Release|x64 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|x64.Build.0 = Release|x64 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Release|Win32.ActiveCfg = Release|Win32 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Release|Win32.Build.0 = Release|Win32 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Release|x64.ActiveCfg = Release|x64 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Release|x64.Build.0 = Release|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|Win32.ActiveCfg = Debug|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|Win32.Build.0 = Debug|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|x64.ActiveCfg = Debug|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|x64.Build.0 = Debug|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|Win32.Build.0 = Release|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|x64.ActiveCfg = Release|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|x64.Build.0 = Release|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|Win32.Build.0 = Release|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|x64.ActiveCfg = Release|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|x64.Build.0 = Release|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|Win32.ActiveCfg = Release|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|Win32.Build.0 = Release|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|x64.ActiveCfg = Release|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|x64.Build.0 = Release|x64 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Debug|Win32.ActiveCfg = Debug|Win32 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Debug|Win32.Build.0 = Debug|Win32 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Debug|x64.ActiveCfg = Debug|x64 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Debug|x64.Build.0 = Debug|x64 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|Win32.Build.0 = Release|Win32 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|x64.ActiveCfg = Release|x64 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|x64.Build.0 = Release|x64 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|Win32.Build.0 = Release|Win32 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|x64.ActiveCfg = Release|x64 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|x64.Build.0 = Release|x64 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Release|Win32.ActiveCfg = Release|Win32 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Release|Win32.Build.0 = Release|Win32 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Release|x64.ActiveCfg = Release|x64 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Release|x64.Build.0 = Release|x64 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Debug|Win32.ActiveCfg = Debug|Win32 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Debug|Win32.Build.0 = Debug|Win32 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Debug|x64.ActiveCfg = Debug|x64 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Debug|x64.Build.0 = Debug|x64 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGInstrument|Win32.Build.0 = Release|Win32 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGInstrument|x64.ActiveCfg = Release|x64 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGInstrument|x64.Build.0 = Release|x64 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGUpdate|Win32.Build.0 = Release|Win32 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGUpdate|x64.ActiveCfg = Release|x64 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGUpdate|x64.Build.0 = Release|x64 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Release|Win32.ActiveCfg = Release|Win32 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Release|Win32.Build.0 = Release|Win32 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Release|x64.ActiveCfg = Release|x64 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Release|x64.Build.0 = Release|x64 + {10615B24-73BF-4EFA-93AA-236916321317}.Debug|Win32.ActiveCfg = Debug|Win32 + {10615B24-73BF-4EFA-93AA-236916321317}.Debug|Win32.Build.0 = Debug|Win32 + {10615B24-73BF-4EFA-93AA-236916321317}.Debug|x64.ActiveCfg = Debug|x64 + {10615B24-73BF-4EFA-93AA-236916321317}.Debug|x64.Build.0 = Debug|x64 + {10615B24-73BF-4EFA-93AA-236916321317}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {10615B24-73BF-4EFA-93AA-236916321317}.PGInstrument|Win32.Build.0 = Release|Win32 + {10615B24-73BF-4EFA-93AA-236916321317}.PGInstrument|x64.ActiveCfg = Release|x64 + {10615B24-73BF-4EFA-93AA-236916321317}.PGInstrument|x64.Build.0 = Release|x64 + {10615B24-73BF-4EFA-93AA-236916321317}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {10615B24-73BF-4EFA-93AA-236916321317}.PGUpdate|Win32.Build.0 = Release|Win32 + {10615B24-73BF-4EFA-93AA-236916321317}.PGUpdate|x64.ActiveCfg = Release|x64 + {10615B24-73BF-4EFA-93AA-236916321317}.PGUpdate|x64.Build.0 = Release|x64 + {10615B24-73BF-4EFA-93AA-236916321317}.Release|Win32.ActiveCfg = Release|Win32 + {10615B24-73BF-4EFA-93AA-236916321317}.Release|Win32.Build.0 = Release|Win32 + {10615B24-73BF-4EFA-93AA-236916321317}.Release|x64.ActiveCfg = Release|x64 + {10615B24-73BF-4EFA-93AA-236916321317}.Release|x64.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/PCbuild/pyexpat.vcxproj b/PCbuild/pyexpat.vcxproj new file mode 100644 index 00000000000..a319ff9803a --- /dev/null +++ b/PCbuild/pyexpat.vcxproj @@ -0,0 +1,84 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + <_ProjectFileVersion>10.0.30319.1 + {D06B6426-4762-44CC-8BAD-D79052507F2F} + pyexpat + + + + + DynamicLibrary + NotSet + + + + .pyd + + + + + + + + + + + $(PySourcePath)Modules\expat;%(AdditionalIncludeDirectories) + PYEXPAT_EXPORTS;HAVE_EXPAT_H;XML_NS;XML_DTD;BYTEORDER=1234;XML_CONTEXT_BYTES=1024;XML_STATIC;HAVE_MEMMOVE;%(PreprocessorDefinitions) + + + + + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + diff --git a/PCbuild/pyexpat.vcxproj.filters b/PCbuild/pyexpat.vcxproj.filters new file mode 100644 index 00000000000..f8d46026c9c --- /dev/null +++ b/PCbuild/pyexpat.vcxproj.filters @@ -0,0 +1,33 @@ + + + + + {ddae77a6-7ca0-4a1b-b71c-deea5f4025de} + + + {5af9d40c-fc46-4640-ad84-3d1dd34a71d7} + + + + + Header Files + + + Header Files + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + diff --git a/PCbuild/pyproject.props b/PCbuild/pyproject.props new file mode 100644 index 00000000000..cab9830f4b2 --- /dev/null +++ b/PCbuild/pyproject.props @@ -0,0 +1,159 @@ + + + + <_ProjectFileVersion>10.0.30319.1 + 10.0 + $(BuildPath) + $(SolutionDir)obj\$(ArchName)_$(Configuration)\$(ProjectName)\ + $(SolutionDir)obj\$(ArchName)\$(ProjectName)\ + $(ProjectName) + $(TargetName)$(PyDebugExt) + false + false + + true + true + true + true + false + false + + + + <_DebugPreprocessorDefinition>NDEBUG; + <_DebugPreprocessorDefinition Condition="$(Configuration) == 'Debug'">_DEBUG; + <_PlatformPreprocessorDefinition>_WIN32; + <_PlatformPreprocessorDefinition Condition="$(Platform) == 'x64'">_WIN64;_M_X64; + <_PydPreprocessorDefinition Condition="$(TargetExt) == '.pyd'">Py_BUILD_CORE_MODULE; + + + + $(PySourcePath)Include;$(PySourcePath)PC;%(AdditionalIncludeDirectories) + WIN32;$(_PlatformPreprocessorDefinition)$(_DebugPreprocessorDefinition)$(_PydPreprocessorDefinition)%(PreprocessorDefinitions) + + MaxSpeed + true + true + + MultiThreadedDLL + true + Level3 + ProgramDatabase + Default + true + true + + + Disabled + false + MultiThreadedDebugDLL + + + $(OutDir);%(AdditionalLibraryDirectories) + true + $(OutDir)$(TargetName).pdb + Windows + true + true + true + LIBC;%(IgnoreSpecificDefaultLibraries) + MachineX86 + MachineX64 + $(OutDir)$(TargetName).pgd + UseLinkTimeCodeGeneration + PGInstrument + PGUpdate + + + true + true + true + + + $(PySourcePath)PC;$(PySourcePath)Include;%(AdditionalIncludeDirectories) + $(_DebugPreprocessorDefinition)%(PreprocessorDefinitions) + 0x0409 + + + $(_DebugPreprocessorDefinition)%(PreprocessorDefinitions) + true + true + Win32 + X64 + $(OutDir)wininst.tlb + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(registry:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Kits\Installed Roots@KitsRoot81)\bin\x86\signtool.exe + $(registry:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Kits\Installed Roots@KitsRoot)\bin\x86\signtool.exe + $(registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v7.1A@InstallationFolder)\Bin\signtool.exe + <_SignCommand Condition="Exists($(SignToolPath))">"$(SignToolPath)" sign /q /n "$(SigningCertificate)" /t http://timestamp.verisign.com/scripts/timestamp.dll /d "Python $(PythonVersion)" + + + + + + + diff --git a/PCbuild/python.props b/PCbuild/python.props new file mode 100644 index 00000000000..7310d680707 --- /dev/null +++ b/PCbuild/python.props @@ -0,0 +1,112 @@ + + + + Win32 + Release + + v90 + + + amd64 + win32 + $(ArchName)-pgo + + + $([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)\..\)) + $(PySourcePath)\ + + + $(PySourcePath)PCBuild\ + $(BuildPath)\$(ArchName)\ + $(BuildPath)\ + + + $([System.IO.Path]::GetFullPath(`$(PySourcePath)externals\`)) + $(ExternalsDir)sqlite-3.6.21\ + $(ExternalsDir)bzip2-1.0.6\ + $(ExternalsDir)db-4.7.25.0 + $(ExternalsDir)openssl-1.0.2a\ + $(ExternalsDir)\nasm-2.11.06\ + + + _d + + + $(BuildPath)python$(PyDebugExt).exe + + + <_PatchLevelContent>$([System.IO.File]::ReadAllText(`$(PySourcePath)Include\patchlevel.h`)) + $([System.Text.RegularExpressions.Regex]::Match($(_PatchLevelContent), `define\s+PY_MAJOR_VERSION\s+(\d+)`).Groups[1].Value) + $([System.Text.RegularExpressions.Regex]::Match($(_PatchLevelContent), `define\s+PY_MINOR_VERSION\s+(\d+)`).Groups[1].Value) + $([System.Text.RegularExpressions.Regex]::Match($(_PatchLevelContent), `define\s+PY_MICRO_VERSION\s+(\d+)`).Groups[1].Value) + <_ReleaseLevel>$([System.Text.RegularExpressions.Regex]::Match($(_PatchLevelContent), `define\s+PY_RELEASE_LEVEL\s+PY_RELEASE_LEVEL_(\w+)`).Groups[1].Value) + $([System.Text.RegularExpressions.Regex]::Match($(_PatchLevelContent), `define\s+PY_RELEASE_SERIAL\s+(\d+)`).Groups[1].Value) + 15 + 10 + 11 + 12 + a$(ReleaseSerial) + b$(ReleaseSerial) + rc$(ReleaseSerial) + + $(MajorVersionNumber).$(MinorVersionNumber).$(MicroVersionNumber) + $(MajorVersionNumber).$(MinorVersionNumber).$(MicroVersionNumber)$(ReleaseLevelName) + $([msbuild]::BitwiseOr( + $([msbuild]::Multiply($(MajorVersionNumber), 16777216)), + $([msbuild]::BitwiseOr( + $([msbuild]::Multiply($(MinorVersionNumber), 65536)), + $([msbuild]::BitwiseOr( + $([msbuild]::Multiply($(MicroVersionNumber), 256)), + $([msbuild]::BitwiseOr( + $([msbuild]::Multiply($(ReleaseLevelNumber), 16)), + $(ReleaseSerial) + )) + )) + )) + )) + $([msbuild]::Add( + $(ReleaseSerial), + $([msbuild]::Add( + $([msbuild]::Multiply($(ReleaseLevelNumber), 10)), + $([msbuild]::Multiply($(MicroVersionNumber), 1000)) + )) + )) + + + python$(MajorVersionNumber)$(MinorVersionNumber)$(PyDebugExt) + + + .cp$(MajorVersionNumber)$(MinorVersionNumber)-win32 + .cp$(MajorVersionNumber)$(MinorVersionNumber)-win_amd64 + + + $(MajorVersionNumber).$(MinorVersionNumber) + $(SysWinVer)-32 + + + + + + + + + + diff --git a/PCbuild/python.vcxproj b/PCbuild/python.vcxproj new file mode 100644 index 00000000000..a4e90299288 --- /dev/null +++ b/PCbuild/python.vcxproj @@ -0,0 +1,106 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9} + ClCompile + + + + + Application + false + MultiByte + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + + + + _CONSOLE;%(PreprocessorDefinitions) + + + Console + 2000000 + 0x1d000000 + + + + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + {e9e0a1f6-0009-4e8c-b8f8-1b8f5d49a058} + false + + + + + + + + <_Content>@rem This script invokes the most recently built Python with all arguments +@rem passed through to the interpreter. This file is generated by the +@rem build process and any changes *will* be thrown away by the next +@rem rebuild. +@rem This is only meant as a convenience for developing CPython +@rem and using it outside of that context is ill-advised. +@echo Running $(Configuration)^|$(Platform) interpreter... +@"$(OutDir)python$(PyDebugExt).exe" %* + + <_ExistingContent Condition="Exists('$(PySourcePath)python.bat')">$([System.IO.File]::ReadAllText('$(PySourcePath)python.bat')) + + + + diff --git a/PCbuild/python.vcxproj.filters b/PCbuild/python.vcxproj.filters new file mode 100644 index 00000000000..8f9c0582a5b --- /dev/null +++ b/PCbuild/python.vcxproj.filters @@ -0,0 +1,26 @@ + + + + + {2d690795-de83-4a33-8235-3c5dafe45efa} + + + {8b010a19-5b29-45f1-a8a0-f672e2bbb11a} + + + + + Resource Files + + + + + Resource Files + + + + + Source Files + + + diff --git a/PCbuild/pythoncore.vcxproj b/PCbuild/pythoncore.vcxproj new file mode 100644 index 00000000000..a29d31e858d --- /dev/null +++ b/PCbuild/pythoncore.vcxproj @@ -0,0 +1,408 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + pythoncore + + + + + DynamicLibrary + false + + + + + + ClCompile + true + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + $(PyDllName) + + + Link + + + + /Zm200 %(AdditionalOptions) + $(PySourcePath)Python;$(PySourcePath)Modules\zlib;%(AdditionalIncludeDirectories) + _USRDLL;Py_BUILD_CORE;Py_ENABLE_SHARED;MS_DLL_ID="$(SysWinVer)";%(PreprocessorDefinitions) + + + ws2_32.lib;%(AdditionalDependencies) + 0x1e000000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $([System.IO.File]::ReadAllText('$(IntDir)hgbranch.txt').Trim()) + $([System.IO.File]::ReadAllText('$(IntDir)hgversion.txt').Trim()) + $([System.IO.File]::ReadAllText('$(IntDir)hgtag.txt').Trim()) + + + + HGVERSION="$(HgVersion)";HGTAG="$(HgTag)";HGBRANCH="$(HgBranch)";%(PreprocessorDefinitions) + + + + + + + diff --git a/PCbuild/pythoncore.vcxproj.filters b/PCbuild/pythoncore.vcxproj.filters new file mode 100644 index 00000000000..49066b6ebfe --- /dev/null +++ b/PCbuild/pythoncore.vcxproj.filters @@ -0,0 +1,953 @@ + + + + + {086b0afb-270c-4603-a02a-63d46f0b2b92} + + + {8e81609f-13ca-4eae-9fdb-f8af20c710c7} + + + {8787c5bb-bab6-4586-a42e-4a27c7b3ffb6} + + + {5d6d2d6c-9e61-4a1d-b0b2-5cc2f446d69e} + + + {9f12c4b1-322e-431e-abf1-e02550f50032} + + + {ab29a558-143d-4fe7-a039-b431fb429856} + + + {97349fee-0abf-48b0-a8f5-771bf39b8aee} + + + {ea21fc98-de89-4746-a979-c5616964329a} + + + {f2696406-14bc-48bd-90c5-e93ab82a21ac} + + + {c3e03a5c-56c7-45fd-8543-e5d2326b907d} + + + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Include + + + Modules + + + Modules + + + Modules + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\cjkcodecs + + + Modules\cjkcodecs + + + Modules\cjkcodecs + + + Modules\cjkcodecs + + + Modules\cjkcodecs + + + Modules\cjkcodecs + + + Modules\cjkcodecs + + + Modules\cjkcodecs + + + Modules\cjkcodecs + + + Modules\cjkcodecs + + + Modules\_io + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Parser + + + Parser + + + PC + + + PC + + + Python + + + Python + + + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\zlib + + + Modules\cjkcodecs + + + Modules\cjkcodecs + + + Modules\cjkcodecs + + + Modules\cjkcodecs + + + Modules\cjkcodecs + + + Modules\cjkcodecs + + + Modules\cjkcodecs + + + Modules\_io + + + Modules\_io + + + Modules\_io + + + Modules\_io + + + Modules\_io + + + Modules\_io + + + Modules\_io + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Objects + + + Parser + + + Parser + + + Parser + + + Parser + + + Parser + + + Parser + + + Parser + + + Parser + + + Parser + + + Parser + + + Parser + + + Parser + + + PC + + + PC + + + PC + + + PC + + + PC + + + PC + + + PC + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + Python + + + + + Resource Files + + + diff --git a/PCbuild/pythonw.vcxproj b/PCbuild/pythonw.vcxproj new file mode 100644 index 00000000000..ea5f1c82b25 --- /dev/null +++ b/PCbuild/pythonw.vcxproj @@ -0,0 +1,80 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {F4229CC3-873C-49AE-9729-DD308ED4CD4A} + ClCompile + false + + + + + Application + false + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + + + + 2000000 + 0x1d000000 + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + diff --git a/PCbuild/pythonw.vcxproj.filters b/PCbuild/pythonw.vcxproj.filters new file mode 100644 index 00000000000..a28c03c846d --- /dev/null +++ b/PCbuild/pythonw.vcxproj.filters @@ -0,0 +1,21 @@ + + + + + {0434cf11-a311-4a92-8a6c-4164aa79a7f2} + + + {e1d8ea6b-c65d-42f4-9eed-6010846ed378} + + + + + Resource Files + + + + + Source Files + + + diff --git a/PCbuild/readme.txt b/PCbuild/readme.txt index dfc62b76fbf..e5bf746042c 100644 --- a/PCbuild/readme.txt +++ b/PCbuild/readme.txt @@ -1,15 +1,29 @@ -Building Python using VC++ 9.0 ------------------------------- +Building Python using MSVC 9.0 via MSBuild +------------------------------------------ This directory is used to build Python for Win32 and x64 platforms, e.g. -Windows 2000, XP, Vista and Windows Server 2008. In order to build 32-bit -debug and release executables, Microsoft Visual C++ 2008 Express Edition is -required at the very least. In order to build 64-bit debug and release -executables, Visual Studio 2008 Standard Edition is required at the very -least. In order to build all of the above, as well as generate release builds -that make use of Profile Guided Optimisation (PG0), Visual Studio 2008 -Professional Edition is required at the very least. The official Python -releases are built with this version of Visual Studio. +Windows 2000 and later. In order to use the project files in this +directory, you must have installed the MSVC 9.0 compilers, the v90 +PlatformToolset project files for MSBuild, and MSBuild version 4.0 or later. +The easiest way to make sure you have all of these components is to install +Visual Studio 2008 and Visual Studio 2010. Another configuration proven +to work is Visual Studio 2008, Windows SDK 7.1, and Visual Studio 2013. + +If you only have Visual Studio 2008 available, use the project files in +../PC/VS9.0 which are fully supported and specifically for VS 2008. + +If you do not have Visual Studio 2008 available, you can use these project +files to build using a different version of MSVC. For example, use + + PCbuild\build.bat "/p:PlatformToolset=v100" + +to build using MSVC10 (Visual Studio 2010). + +***WARNING*** +Building Python 2.7 for Windows using any toolchain that doesn't link +against MSVCRT90.dll is *unsupported* as the resulting python.exe will +not be able to use precompiled extension modules that do link against +MSVCRT90.dll. For other Windows platforms and compilers, see ../PC/readme.txt. diff --git a/PCbuild/rt.bat b/PCbuild/rt.bat index 31a8dc91531..3d781be3033 100644 --- a/PCbuild/rt.bat +++ b/PCbuild/rt.bat @@ -32,21 +32,19 @@ 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=%prefix%amd64) & (set tcltk=tcltk64) & shift & goto CheckOpts +if "%1"=="-x64" (set prefix=%pcbuild%amd64\) & shift & goto CheckOpts -PATH %PATH%;%pcbuild%..\externals\%tcltk%\bin -set exe="%prefix%\python%suffix%" -set cmd=%exe% %dashO% -Wd -3 -E -tt "%pcbuild%\..\Lib\test\regrtest.py" %1 %2 %3 %4 %5 %6 %7 %8 %9 +set exe=%prefix%\python%suffix% +set cmd="%exe%" %dashO% -Wd -3 -E -tt "%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" +"%exe%" "%pcbuild%rmpyc.py" echo on %cmd% diff --git a/PCbuild/select.vcxproj b/PCbuild/select.vcxproj new file mode 100644 index 00000000000..1cae1efd56c --- /dev/null +++ b/PCbuild/select.vcxproj @@ -0,0 +1,79 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {18CAE28C-B454-46C1-87A0-493D91D97F03} + select + + + + + DynamicLibrary + NotSet + + + + .pyd + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + + + + ws2_32.lib;%(AdditionalDependencies) + 0x1D110000 + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + diff --git a/PCbuild/select.vcxproj.filters b/PCbuild/select.vcxproj.filters new file mode 100644 index 00000000000..380339493f2 --- /dev/null +++ b/PCbuild/select.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {98346077-900c-4c7a-852f-a23470e37b40} + + + + + Source Files + + + diff --git a/PCbuild/sqlite3.vcxproj b/PCbuild/sqlite3.vcxproj new file mode 100644 index 00000000000..3720545ad62 --- /dev/null +++ b/PCbuild/sqlite3.vcxproj @@ -0,0 +1,77 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {A1A295E5-463C-437F-81CA-1F32367685DA} + sqlite3 + .pyd + false + + + + + DynamicLibrary + NotSet + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + + + + $(sqlite3Dir);%(AdditionalIncludeDirectories) + SQLITE_API=__declspec(dllexport);%(PreprocessorDefinitions) + Level1 + + + + + + + + + + + + + diff --git a/PCbuild/sqlite3.vcxproj.filters b/PCbuild/sqlite3.vcxproj.filters new file mode 100644 index 00000000000..2e0e8df8877 --- /dev/null +++ b/PCbuild/sqlite3.vcxproj.filters @@ -0,0 +1,24 @@ + + + + + {ce5b649d-a6f7-4459-9425-c883795d79df} + + + {0e842fe2-176b-4e83-9d1f-0ad13a859efd} + + + + + Header Files + + + Header Files + + + + + Source Files + + + diff --git a/PCbuild/ssleay.vcxproj b/PCbuild/ssleay.vcxproj new file mode 100644 index 00000000000..9ad6733e168 --- /dev/null +++ b/PCbuild/ssleay.vcxproj @@ -0,0 +1,119 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Debug + x64 + + + Release + x64 + + + + {10615B24-73BF-4EFA-93AA-236916321317} + ssleay + + + + + + + StaticLibrary + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PCbuild/tcl.vcxproj b/PCbuild/tcl.vcxproj new file mode 100644 index 00000000000..c19f53e92d7 --- /dev/null +++ b/PCbuild/tcl.vcxproj @@ -0,0 +1,90 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Debug + x64 + + + Release + x64 + + + + {B5FD6F1D-129E-4BFF-9340-03606FAC7283} + + + + + + + + Makefile + $(tcltkDir) + $(OutDir)bin\$(tclDLLName) + + + + + + + + + + symbols + INSTALLDIR="$(OutDir.TrimEnd(`\`))" INSTALL_DIR="$(OutDir.TrimEnd(`\`))" + DEBUGFLAGS="-wd4456 -wd4457 -wd4458 -wd4459 -wd4996" + setlocal +@(ExpectedOutputs->'if not exist "%(FullPath)" goto build',' +') +goto :eof +:build +set VCINSTALLDIR=$(VCInstallDir) +cd /D "$(tclDir)win" +nmake -f makefile.vc MACHINE=$(TclMachine) OPTS=$(TclOpts) $(TclDirs) $(DebugFlags) core shell dlls +nmake -f makefile.vc MACHINE=$(TclMachine) OPTS=$(TclOpts) $(TclDirs) $(DebugFlags) install-binaries install-libraries + + + + + + + + + + + + + + + diff --git a/PCbuild/tcltk.props b/PCbuild/tcltk.props new file mode 100644 index 00000000000..9660a9fc257 --- /dev/null +++ b/PCbuild/tcltk.props @@ -0,0 +1,43 @@ + + + + + 8 + 5 + 15 + 0 + $(TclMajorVersion) + $(TclMinorVersion) + $(TclPatchLevel) + $(TclRevision) + 8 + 4 + 3 + 5 + $(ExternalsDir)tcl-$(TclMajorVersion).$(TclMinorVersion).$(TclPatchLevel).$(TclRevision)\ + $(ExternalsDir)tk-$(TkMajorVersion).$(TkMinorVersion).$(TkPatchLevel).$(TkRevision)\ + $(ExternalsDir)tix-$(TixMajorVersion).$(TixMinorVersion).$(TixPatchLevel).$(TixRevision)\ + $(ExternalsDir)tcltk\ + $(ExternalsDir)tcltk64\ + g + tcl$(TclMajorVersion)$(TclMinorVersion)$(TclDebugExt).dll + tcl$(TclMajorVersion)$(TclMinorVersion)$(TclDebugExt).lib + tclsh$(TclMajorVersion)$(TclMinorVersion)$(TclDebugExt).exe + tk$(TkMajorVersion)$(TkMinorVersion)$(TclDebugExt).dll + tk$(TkMajorVersion)$(TkMinorVersion)$(TclDebugExt).lib + tix$(TixMajorVersion)$(TixMinorVersion)$(TclDebugExt).dll + $(tcltkDir)lib\tix$(TixMajorVersion).$(TixMinorVersion).$(TixPatchLevel)\$(tixDLLName) + $(tcltkDir)lib\tcl$(TclMajorVersion)$(TclMinorVersion)$(TclDebugExt).lib;$(tcltkDir)lib\tk$(TkMajorVersion)$(TkMinorVersion)$(TclDebugExt).lib + IX86 + AMD64 + TCL_MAJOR_VERSION=$(TclMajorVersion) TCL_MINOR_VERSION=$(TclMinorVersion) TCL_PATCH_LEVEL=$(TclPatchLevel) + TCL_MAJOR=$(TclMajorVersion) TCL_MINOR=$(TclMinorVersion) TCL_PATCH=$(TclPatchLevel) + TK_MAJOR_VERSION=$(TkMajorVersion) TK_MINOR_VERSION=$(TkMinorVersion) TK_PATCH_LEVEL=$(TkPatchLevel) + + Release + Debug + $(BuildDirTop)_$(TclMachine) + + $(BuildDirTop)_VC9 + + diff --git a/PCbuild/tix.vcxproj b/PCbuild/tix.vcxproj new file mode 100644 index 00000000000..5d2a66f405c --- /dev/null +++ b/PCbuild/tix.vcxproj @@ -0,0 +1,94 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Debug + x64 + + + Release + x64 + + + + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555} + tix + + + + + + + + Makefile + $(tcltkDir) + $(tixDLLPath) + + + + + + + + + + msvcrt + symbols,msvcrt + BUILDDIRTOP="$(BuildDirTop)" TCL_DIR="$(tclDir.TrimEnd(`\`))" TK_DIR="$(tkDir.TrimEnd(`\`))" INSTALL_DIR="$(OutDir.TrimEnd(`\`))" + DEBUG=1 NODEBUG=0 TCL_DBGX=g DEBUGFLAGS="-wd4456 -wd4457 -wd4458 -wd4459 -wd4996" + DEBUG=0 NODEBUG=1 + setlocal +@(ExpectedOutputs->'if not exist "%(FullPath)" goto build',' +') +goto :eof +:build +set VCINSTALLDIR=$(VCInstallDir) +cd /D "$(tixDir)win" +nmake /nologo -f makefile.vc MACHINE=$(TclMachine) $(DebugFlags) $(TclShortVersions) $(TixDirs) all install + + rmdir /q/s "$(OutDir.TrimEnd(`\`))" + + + + + {b5fd6f1d-129e-4bff-9340-03606fac7283} + false + + + {7e85eccf-a72c-4da4-9e52-884508e80ba1} + false + + + + + + + + + + + diff --git a/PCbuild/tk.vcxproj b/PCbuild/tk.vcxproj new file mode 100644 index 00000000000..36f4f501a98 --- /dev/null +++ b/PCbuild/tk.vcxproj @@ -0,0 +1,95 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Debug + x64 + + + Release + x64 + + + + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1} + tk + + + + + + + + Makefile + $(tcltkDir) + $(OutDir)bin\$(tkDLLName) + + + + + + + + + + msvcrt + symbols,msvcrt + TCLDIR="$(tclDir.TrimEnd(`\`))" INSTALLDIR="$(OutDir.TrimEnd(`\`))" + DEBUGFLAGS="-wd4456 -wd4457 -wd4458 -wd4459 -wd4996" + setlocal +@(ExpectedOutputs->'if not exist "%(FullPath)" goto build',' +') +goto :eof +:build +set VCINSTALLDIR=$(VCInstallDir) +cd /D "$(tkDir)win" +nmake /nologo -f makefile.vc RC=rc MACHINE=$(TclMachine) OPTS=$(TkOpts) $(TkDirs) $(DebugFlags) all +nmake /nologo -f makefile.vc RC=rc MACHINE=$(TclMachine) OPTS=$(TkOpts) $(TkDirs) $(DebugFlags) install-binaries install-libraries + + + + + {b5fd6f1d-129e-4bff-9340-03606fac7283} + false + + + + + + + + + + + + + + diff --git a/PCbuild/unicodedata.vcxproj b/PCbuild/unicodedata.vcxproj new file mode 100644 index 00000000000..92df09b010d --- /dev/null +++ b/PCbuild/unicodedata.vcxproj @@ -0,0 +1,83 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {ECC7CEAC-A5E5-458E-BB9E-2413CC847881} + unicodedata + Win32Proj + + + + + DynamicLibrary + NotSet + + + + .pyd + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + + + + 0x1D120000 + + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + diff --git a/PCbuild/unicodedata.vcxproj.filters b/PCbuild/unicodedata.vcxproj.filters new file mode 100644 index 00000000000..eec7e97b207 --- /dev/null +++ b/PCbuild/unicodedata.vcxproj.filters @@ -0,0 +1,24 @@ + + + + + {b939a8f1-ccd7-420a-974a-243606dccd74} + + + {e2c055bb-ec62-4bbc-aa1c-d88da4d4ad1c} + + + + + Header Files + + + Header Files + + + + + Source Files + + + diff --git a/PCbuild/w9xpopen.vcxproj b/PCbuild/w9xpopen.vcxproj new file mode 100644 index 00000000000..4dd9cca4e34 --- /dev/null +++ b/PCbuild/w9xpopen.vcxproj @@ -0,0 +1,77 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058} + w9xpopen + Win32Proj + false + + + + + Application + false + MultiByte + + + + + + + + + + + + _CONSOLE;%(PreprocessorDefinitions) + MaxSpeed + OnlyExplicitInline + true + MultiThreaded + true + + + Console + + + + + + + + + diff --git a/PCbuild/w9xpopen.vcxproj.filters b/PCbuild/w9xpopen.vcxproj.filters new file mode 100644 index 00000000000..d185226969c --- /dev/null +++ b/PCbuild/w9xpopen.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {abc2dffd-3f2a-47bd-b89b-0314c99ef21e} + + + + + Source Files + + + diff --git a/PCbuild/winsound.vcxproj b/PCbuild/winsound.vcxproj new file mode 100644 index 00000000000..211e6765948 --- /dev/null +++ b/PCbuild/winsound.vcxproj @@ -0,0 +1,79 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {28B5D777-DDF2-4B6B-B34F-31D938813856} + winsound + Win32Proj + + + + + DynamicLibrary + NotSet + + + + .pyd + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + + + + winmm.lib;%(AdditionalDependencies) + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + diff --git a/PCbuild/winsound.vcxproj.filters b/PCbuild/winsound.vcxproj.filters new file mode 100644 index 00000000000..0705a8aee7b --- /dev/null +++ b/PCbuild/winsound.vcxproj.filters @@ -0,0 +1,14 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + + + Source Files + + + diff --git a/Tools/buildbot/build.bat b/Tools/buildbot/build.bat index 7bf7a6d0864..3d825fed179 100644 --- a/Tools/buildbot/build.bat +++ b/Tools/buildbot/build.bat @@ -15,4 +15,4 @@ call "%~dp0clean.bat" %* @rem 4) re-comment, commit and push again @rem Do the build -call "%~dp0..\..\PCbuild\build.bat" -e -d -k %* +call "%~dp0..\..\PCbuild\build.bat" -v -e -d -k %*