From 401f9f3d32dcebf5ead8079d46a83fe7c7631581 Mon Sep 17 00:00:00 2001 From: Brian Curtin Date: Sun, 13 May 2012 11:19:23 -0500 Subject: [PATCH] Fix #13210. Port the Windows build from VS2008 to VS2010. --- .hgignore | 1 + Lib/distutils/command/build_ext.py | 2 +- Lib/distutils/command/wininst-10.0-amd64.exe | Bin 0 -> 222208 bytes Lib/distutils/command/wininst-10.0.exe | Bin 0 -> 190976 bytes Lib/packaging/command/build_ext.py | 2 +- Lib/packaging/compiler/msvc9compiler.py | 11 +- Misc/NEWS | 5 + Modules/errnomodule.c | 27 + Objects/exceptions.c | 28 + PC/VS9.0/_bz2.vcproj | 581 ++++++ PC/VS9.0/_ctypes.vcproj | 705 +++++++ PC/VS9.0/_ctypes_test.vcproj | 521 +++++ PC/VS9.0/_elementtree.vcproj | 613 ++++++ PC/VS9.0/_hashlib.vcproj | 537 +++++ PC/VS9.0/_msi.vcproj | 529 +++++ PC/VS9.0/_multiprocessing.vcproj | 541 +++++ PC/VS9.0/_socket.vcproj | 537 +++++ PC/VS9.0/_sqlite3.vcproj | 613 ++++++ PC/VS9.0/_ssl.vcproj | 537 +++++ PC/VS9.0/_testcapi.vcproj | 521 +++++ PC/VS9.0/_tkinter.vcproj | 541 +++++ PC/VS9.0/bdist_wininst.vcproj | 270 +++ {PCbuild => PC/VS9.0}/debug.vsprops | 0 PC/VS9.0/kill_python.vcproj | 279 +++ PC/VS9.0/make_buildinfo.vcproj | 101 + PC/VS9.0/make_versioninfo.vcproj | 324 +++ PC/VS9.0/pcbuild.sln | 658 ++++++ {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 PC/VS9.0/pyexpat.vcproj | 553 +++++ {PCbuild => PC/VS9.0}/pyproject.vsprops | 0 PC/VS9.0/python.vcproj | 637 ++++++ PC/VS9.0/python3dll.vcproj | 246 +++ PC/VS9.0/pythoncore.vcproj | 1917 ++++++++++++++++++ PC/VS9.0/pythonw.vcproj | 618 ++++++ {PCbuild => PC/VS9.0}/release.vsprops | 0 PC/VS9.0/select.vcproj | 537 +++++ PC/VS9.0/sqlite3.vcproj | 537 +++++ {PCbuild => PC/VS9.0}/sqlite3.vsprops | 0 PC/VS9.0/ssl.vcproj | 189 ++ PC/VS9.0/unicodedata.vcproj | 533 +++++ PC/VS9.0/w9xpopen.vcproj | 576 ++++++ PC/VS9.0/winsound.vcproj | 523 +++++ {PCbuild => PC/VS9.0}/x64.vsprops | 0 PC/VS9.0/xxlimited.vcproj | 417 ++++ PC/dl_nt.c | 10 +- PC/msvcrtmodule.c | 15 +- PC/pyconfig.h | 9 +- PCbuild/_bz2.vcxproj | 263 +++ PCbuild/_bz2.vcxproj.filters | 48 + PCbuild/_ctypes.vcxproj | 283 +++ PCbuild/_ctypes.vcxproj.filters | 65 + PCbuild/_ctypes_test.vcxproj | 195 ++ PCbuild/_ctypes_test.vcxproj.filters | 21 + PCbuild/_decimal.vcxproj | 297 +++ PCbuild/_decimal.vcxproj.filters | 116 ++ PCbuild/_elementtree.vcxproj | 272 +++ PCbuild/_elementtree.vcxproj.filters | 72 + PCbuild/_hashlib.vcxproj | 283 +++ PCbuild/_hashlib.vcxproj.filters | 13 + PCbuild/_lzma.vcxproj | 252 +++ PCbuild/_lzma.vcxproj.filters | 13 + PCbuild/_msi.vcxproj | 228 +++ PCbuild/_msi.vcxproj.filters | 13 + PCbuild/_multiprocessing.vcxproj | 232 +++ PCbuild/_multiprocessing.vcxproj.filters | 24 + PCbuild/_socket.vcxproj | 231 +++ PCbuild/_socket.vcxproj.filters | 21 + PCbuild/_sqlite3.vcxproj | 276 +++ PCbuild/_sqlite3.vcxproj.filters | 72 + PCbuild/_ssl.vcxproj | 287 +++ PCbuild/_ssl.vcxproj.filters | 13 + PCbuild/_testbuffer.vcxproj | 206 ++ PCbuild/_testbuffer.vcxproj.filters | 13 + PCbuild/_testcapi.vcxproj | 220 ++ PCbuild/_testcapi.vcxproj.filters | 13 + PCbuild/_tkinter.vcxproj | 252 +++ PCbuild/_tkinter.vcxproj.filters | 16 + PCbuild/bdist_wininst.vcxproj | 158 ++ PCbuild/bdist_wininst.vcxproj.filters | 61 + PCbuild/debug.props | 23 + PCbuild/kill_python.vcxproj | 124 ++ PCbuild/kill_python.vcxproj.filters | 13 + PCbuild/make_buildinfo.vcxproj | 54 + PCbuild/make_buildinfo.vcxproj.filters | 14 + PCbuild/make_versioninfo.vcxproj | 197 ++ PCbuild/make_versioninfo.vcxproj.filters | 13 + PCbuild/pcbuild.sln | 184 +- PCbuild/pginstrument.props | 38 + PCbuild/pgupdate.props | 16 + PCbuild/pyd.props | 27 + PCbuild/pyd_d.props | 41 + PCbuild/pyexpat.vcxproj | 239 +++ PCbuild/pyexpat.vcxproj.filters | 33 + PCbuild/pyproject.props | 96 + PCbuild/python.vcxproj | 372 ++++ PCbuild/python.vcxproj.filters | 26 + PCbuild/python3dll.vcxproj | 184 ++ PCbuild/python3dll.vcxproj.filters | 32 + PCbuild/pythoncore.vcxproj | 703 +++++++ PCbuild/pythoncore.vcxproj.filters | 932 +++++++++ PCbuild/pythonw.vcxproj | 350 ++++ PCbuild/pythonw.vcxproj.filters | 21 + PCbuild/release.props | 19 + PCbuild/select.vcxproj | 236 +++ PCbuild/select.vcxproj.filters | 13 + PCbuild/sqlite3.props | 16 + PCbuild/sqlite3.vcxproj | 241 +++ PCbuild/sqlite3.vcxproj.filters | 24 + PCbuild/ssl.vcxproj | 221 ++ PCbuild/unicodedata.vcxproj | 224 ++ PCbuild/unicodedata.vcxproj.filters | 24 + PCbuild/w9xpopen.vcxproj | 263 +++ PCbuild/w9xpopen.vcxproj.filters | 13 + PCbuild/winsound.vcxproj | 220 ++ PCbuild/winsound.vcxproj.filters | 14 + PCbuild/x64.props | 26 + PCbuild/xxlimited.vcxproj | 191 ++ PCbuild/xxlimited.vcxproj.filters | 13 + Python/dynload_win.c | 8 + Tools/buildbot/build-amd64.bat | 2 +- Tools/buildbot/build.bat | 2 +- Tools/buildbot/buildmsi.bat | 2 +- Tools/buildbot/clean-amd64.bat | 2 +- Tools/buildbot/clean.bat | 2 +- Tools/buildbot/external-amd64.bat | 2 +- Tools/buildbot/external-common.bat | 6 +- Tools/buildbot/external.bat | 12 +- Tools/msi/msi.py | 32 +- 131 files changed, 25718 insertions(+), 172 deletions(-) create mode 100644 Lib/distutils/command/wininst-10.0-amd64.exe create mode 100644 Lib/distutils/command/wininst-10.0.exe create mode 100644 PC/VS9.0/_bz2.vcproj create mode 100644 PC/VS9.0/_ctypes.vcproj create mode 100644 PC/VS9.0/_ctypes_test.vcproj create mode 100644 PC/VS9.0/_elementtree.vcproj create mode 100644 PC/VS9.0/_hashlib.vcproj create mode 100644 PC/VS9.0/_msi.vcproj create mode 100644 PC/VS9.0/_multiprocessing.vcproj create mode 100644 PC/VS9.0/_socket.vcproj create mode 100644 PC/VS9.0/_sqlite3.vcproj create mode 100644 PC/VS9.0/_ssl.vcproj create mode 100644 PC/VS9.0/_testcapi.vcproj create mode 100644 PC/VS9.0/_tkinter.vcproj create mode 100644 PC/VS9.0/bdist_wininst.vcproj rename {PCbuild => PC/VS9.0}/debug.vsprops (100%) create mode 100644 PC/VS9.0/kill_python.vcproj create mode 100644 PC/VS9.0/make_buildinfo.vcproj create mode 100644 PC/VS9.0/make_versioninfo.vcproj 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%) create mode 100644 PC/VS9.0/pyexpat.vcproj rename {PCbuild => PC/VS9.0}/pyproject.vsprops (100%) create mode 100644 PC/VS9.0/python.vcproj create mode 100644 PC/VS9.0/python3dll.vcproj create mode 100644 PC/VS9.0/pythoncore.vcproj create mode 100644 PC/VS9.0/pythonw.vcproj rename {PCbuild => PC/VS9.0}/release.vsprops (100%) create mode 100644 PC/VS9.0/select.vcproj create mode 100644 PC/VS9.0/sqlite3.vcproj rename {PCbuild => PC/VS9.0}/sqlite3.vsprops (100%) create mode 100644 PC/VS9.0/ssl.vcproj create mode 100644 PC/VS9.0/unicodedata.vcproj create mode 100644 PC/VS9.0/w9xpopen.vcproj create mode 100644 PC/VS9.0/winsound.vcproj rename {PCbuild => PC/VS9.0}/x64.vsprops (100%) create mode 100644 PC/VS9.0/xxlimited.vcproj create mode 100644 PCbuild/_bz2.vcxproj create mode 100644 PCbuild/_bz2.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/_decimal.vcxproj create mode 100644 PCbuild/_decimal.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/_lzma.vcxproj create mode 100644 PCbuild/_lzma.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/_testbuffer.vcxproj create mode 100644 PCbuild/_testbuffer.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/bdist_wininst.vcxproj create mode 100644 PCbuild/bdist_wininst.vcxproj.filters create mode 100644 PCbuild/debug.props create mode 100644 PCbuild/kill_python.vcxproj create mode 100644 PCbuild/kill_python.vcxproj.filters create mode 100644 PCbuild/make_buildinfo.vcxproj create mode 100644 PCbuild/make_buildinfo.vcxproj.filters create mode 100644 PCbuild/make_versioninfo.vcxproj create mode 100644 PCbuild/make_versioninfo.vcxproj.filters create mode 100644 PCbuild/pginstrument.props create mode 100644 PCbuild/pgupdate.props create mode 100644 PCbuild/pyd.props create mode 100644 PCbuild/pyd_d.props create mode 100644 PCbuild/pyexpat.vcxproj create mode 100644 PCbuild/pyexpat.vcxproj.filters create mode 100644 PCbuild/pyproject.props create mode 100644 PCbuild/python.vcxproj create mode 100644 PCbuild/python.vcxproj.filters create mode 100644 PCbuild/python3dll.vcxproj create mode 100644 PCbuild/python3dll.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/release.props create mode 100644 PCbuild/select.vcxproj create mode 100644 PCbuild/select.vcxproj.filters create mode 100644 PCbuild/sqlite3.props create mode 100644 PCbuild/sqlite3.vcxproj create mode 100644 PCbuild/sqlite3.vcxproj.filters create mode 100644 PCbuild/ssl.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 create mode 100644 PCbuild/x64.props create mode 100644 PCbuild/xxlimited.vcxproj create mode 100644 PCbuild/xxlimited.vcxproj.filters diff --git a/.hgignore b/.hgignore index dc612b32b50d..1eb60c0489c3 100644 --- a/.hgignore +++ b/.hgignore @@ -66,6 +66,7 @@ PCbuild/*.ncb PCbuild/*.bsc PCbuild/*.user PCbuild/*.suo +PCbuild/*.*sdf PCbuild/Win32-temp-* PCbuild/x64-temp-* __pycache__ diff --git a/Lib/distutils/command/build_ext.py b/Lib/distutils/command/build_ext.py index 59d0cd2df227..ac37c1320a4f 100644 --- a/Lib/distutils/command/build_ext.py +++ b/Lib/distutils/command/build_ext.py @@ -197,7 +197,7 @@ class build_ext(Command): # Append the source distribution include and library directories, # this allows distutils on windows to work in the source tree self.include_dirs.append(os.path.join(sys.exec_prefix, 'PC')) - if MSVC_VERSION == 9: + if MSVC_VERSION >= 9: # Use the .lib files for the correct architecture if self.plat_name == 'win32': suffix = '' diff --git a/Lib/distutils/command/wininst-10.0-amd64.exe b/Lib/distutils/command/wininst-10.0-amd64.exe new file mode 100644 index 0000000000000000000000000000000000000000..6fa0dce16315854223a9fefc3ac9f3cf71730a6a GIT binary patch literal 222208 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 z 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%0DpLzmXFL)?gX0%q`P(L7`HAql*?$ML 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

rHyi2e zl+MmL{XTE`f}@;ui?iSC-07$2IYbl1y+WI~+9{s|Kh(aL-zo~7`M?gFpSo+?nI&;2 zbHo{((wTLz-}SZ1$6~ekOVo(FK6-{cVPlZnrP#@an1$*n^Y*0_gPFmMR5HJwuRi4B zlQY@=GR&kk#0-O56~7#@X6<0Ets?)OU#R08>Zsz)09_+@ z1kU-XdaU!a#+sj|yEScKIX@!SxBZIU z(ew^4yO6A({g&U7mnRf|nyhU|vGD0QV|rv#F;DL2x+yhcaex;6-`f@q9tV@P&0s$2 zq^(C$=7l?0vSO@kCGhrswjzw>7{+p~_}yo6b00x{hIrS;d8RXGEB%^P*tpB2G+gqT zru2^-=5$WYkGI{qbu_Qg4|*bQ+wwiu^`*RRnPa+5u~r()+_#t4^dpXyW%(8PsMnmV z(D&uK-N5VioXz)J5{99t_ohaI$I_`mqcxNn8f-R_1A01PY)qT)*KAB4N;fBrbmMS1 z6ig=u5A^GX`I1d*DBQRywB`BL!C=dgp^U+AQ?9VK*JL@AH1uSKUP)JZNQU$eGSH&a z+v>vyQu=<~uuj@f%NK0XkazT9Jrzt**cwV0U4z4i4(dapVCFz1NiTA>hWZmJLl13f oY4RvsRNmyRy`{;~)|Mu#)5y0pnd7;oC(;vXZ|~aC5sRtBKYZ0+%m4rY literal 0 Hc-jL100001 diff --git a/Lib/packaging/command/build_ext.py b/Lib/packaging/command/build_ext.py index 4c85822a9265..99cf8ce2e78f 100644 --- a/Lib/packaging/command/build_ext.py +++ b/Lib/packaging/command/build_ext.py @@ -191,7 +191,7 @@ class build_ext(Command): # Append the source distribution include and library directories, # this allows distutils on windows to work in the source tree self.include_dirs.append(os.path.join(sys.exec_prefix, 'PC')) - if MSVC_VERSION == 9: + if MSVC_VERSION >= 9: # Use the .lib files for the correct architecture if self.plat_name == 'win32': suffix = '' diff --git a/Lib/packaging/compiler/msvc9compiler.py b/Lib/packaging/compiler/msvc9compiler.py index 029aa7727be5..82659fe47829 100644 --- a/Lib/packaging/compiler/msvc9compiler.py +++ b/Lib/packaging/compiler/msvc9compiler.py @@ -634,11 +634,12 @@ class MSVCCompiler(CCompiler) : mfid = 2 self._remove_visual_c_ref(temp_manifest) out_arg = '-outputresource:%s;%s' % (output_filename, mfid) - try: - self.spawn(['mt.exe', '-nologo', '-manifest', - temp_manifest, out_arg]) - except PackagingExecError as msg: - raise LinkError(msg) + if self.__version < 10: + try: + self.spawn(['mt.exe', '-nologo', '-manifest', + temp_manifest, out_arg]) + except PackagingExecError as msg: + raise LinkError(msg) else: logger.debug("skipping %s (up-to-date)", output_filename) diff --git a/Misc/NEWS b/Misc/NEWS index c0f33cb65357..83257ab50b96 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -80,6 +80,11 @@ Tools/Demos - Issue #14695: Bring Tools/parser/unparse.py support up to date with the Python 3.3 Grammar. +Build +----- + +- Issue #13210: Windows build now uses VS2010, ported from VS2008. + What's New in Python 3.3.0 Alpha 3? =================================== diff --git a/Modules/errnomodule.c b/Modules/errnomodule.c index 86b0a01c09d9..06ed53a64dbd 100644 --- a/Modules/errnomodule.c +++ b/Modules/errnomodule.c @@ -7,6 +7,33 @@ #ifdef MS_WINDOWS #define WIN32_LEAN_AND_MEAN #include +/* The following constants were added to errno.h in VS2010 but have + preferred WSA equivalents. */ +#undef EADDRINUSE +#undef EADDRNOTAVAIL +#undef EAFNOSUPPORT +#undef EALREADY +#undef ECONNABORTED +#undef ECONNREFUSED +#undef ECONNRESET +#undef EDESTADDRREQ +#undef EHOSTUNREACH +#undef EINPROGRESS +#undef EISCONN +#undef ELOOP +#undef EMSGSIZE +#undef ENETDOWN +#undef ENETRESET +#undef ENETUNREACH +#undef ENOBUFS +#undef ENOPROTOOPT +#undef ENOTCONN +#undef ENOTSOCK +#undef EOPNOTSUPP +#undef EPROTONOSUPPORT +#undef EPROTOTYPE +#undef ETIMEDOUT +#undef EWOULDBLOCK #endif /* diff --git a/Objects/exceptions.c b/Objects/exceptions.c index a2f2e44b3f53..a11283e34091 100644 --- a/Objects/exceptions.c +++ b/Objects/exceptions.c @@ -2317,6 +2317,34 @@ PyObject *PyExc_RecursionErrorInst = NULL; #ifdef MS_WINDOWS #include +/* The following constants were added to errno.h in VS2010 but have + preferred WSA equivalents. */ +#undef EADDRINUSE +#undef EADDRNOTAVAIL +#undef EAFNOSUPPORT +#undef EALREADY +#undef ECONNABORTED +#undef ECONNREFUSED +#undef ECONNRESET +#undef EDESTADDRREQ +#undef EHOSTUNREACH +#undef EINPROGRESS +#undef EISCONN +#undef ELOOP +#undef EMSGSIZE +#undef ENETDOWN +#undef ENETRESET +#undef ENETUNREACH +#undef ENOBUFS +#undef ENOPROTOOPT +#undef ENOTCONN +#undef ENOTSOCK +#undef EOPNOTSUPP +#undef EPROTONOSUPPORT +#undef EPROTOTYPE +#undef ETIMEDOUT +#undef EWOULDBLOCK + #if defined(WSAEALREADY) && !defined(EALREADY) #define EALREADY WSAEALREADY #endif diff --git a/PC/VS9.0/_bz2.vcproj b/PC/VS9.0/_bz2.vcproj new file mode 100644 index 000000000000..e6b9c886d105 --- /dev/null +++ b/PC/VS9.0/_bz2.vcproj @@ -0,0 +1,581 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/_ctypes.vcproj b/PC/VS9.0/_ctypes.vcproj new file mode 100644 index 000000000000..1eb8b579a4fb --- /dev/null +++ b/PC/VS9.0/_ctypes.vcproj @@ -0,0 +1,705 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/_ctypes_test.vcproj b/PC/VS9.0/_ctypes_test.vcproj new file mode 100644 index 000000000000..0c7abbee75e2 --- /dev/null +++ b/PC/VS9.0/_ctypes_test.vcproj @@ -0,0 +1,521 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/_elementtree.vcproj b/PC/VS9.0/_elementtree.vcproj new file mode 100644 index 000000000000..3e9631f4ed1f --- /dev/null +++ b/PC/VS9.0/_elementtree.vcproj @@ -0,0 +1,613 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/_hashlib.vcproj b/PC/VS9.0/_hashlib.vcproj new file mode 100644 index 000000000000..e05d97ebc26d --- /dev/null +++ b/PC/VS9.0/_hashlib.vcproj @@ -0,0 +1,537 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/_msi.vcproj b/PC/VS9.0/_msi.vcproj new file mode 100644 index 000000000000..084efdf749b5 --- /dev/null +++ b/PC/VS9.0/_msi.vcproj @@ -0,0 +1,529 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/_multiprocessing.vcproj b/PC/VS9.0/_multiprocessing.vcproj new file mode 100644 index 000000000000..58238f82e790 --- /dev/null +++ b/PC/VS9.0/_multiprocessing.vcproj @@ -0,0 +1,541 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/_socket.vcproj b/PC/VS9.0/_socket.vcproj new file mode 100644 index 000000000000..ee72c1016e3d --- /dev/null +++ b/PC/VS9.0/_socket.vcproj @@ -0,0 +1,537 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/_sqlite3.vcproj b/PC/VS9.0/_sqlite3.vcproj new file mode 100644 index 000000000000..b31f9b68dde2 --- /dev/null +++ b/PC/VS9.0/_sqlite3.vcproj @@ -0,0 +1,613 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/_ssl.vcproj b/PC/VS9.0/_ssl.vcproj new file mode 100644 index 000000000000..5728c84583dd --- /dev/null +++ b/PC/VS9.0/_ssl.vcproj @@ -0,0 +1,537 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/_testcapi.vcproj b/PC/VS9.0/_testcapi.vcproj new file mode 100644 index 000000000000..55f243f14b38 --- /dev/null +++ b/PC/VS9.0/_testcapi.vcproj @@ -0,0 +1,521 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/_tkinter.vcproj b/PC/VS9.0/_tkinter.vcproj new file mode 100644 index 000000000000..1c5f0cbedda1 --- /dev/null +++ b/PC/VS9.0/_tkinter.vcproj @@ -0,0 +1,541 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/bdist_wininst.vcproj b/PC/VS9.0/bdist_wininst.vcproj new file mode 100644 index 000000000000..68b3931103be --- /dev/null +++ b/PC/VS9.0/bdist_wininst.vcproj @@ -0,0 +1,270 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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/kill_python.vcproj b/PC/VS9.0/kill_python.vcproj new file mode 100644 index 000000000000..a34107aab7a2 --- /dev/null +++ b/PC/VS9.0/kill_python.vcproj @@ -0,0 +1,279 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/make_buildinfo.vcproj b/PC/VS9.0/make_buildinfo.vcproj new file mode 100644 index 000000000000..1910b9eb13f6 --- /dev/null +++ b/PC/VS9.0/make_buildinfo.vcproj @@ -0,0 +1,101 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/make_versioninfo.vcproj b/PC/VS9.0/make_versioninfo.vcproj new file mode 100644 index 000000000000..881f44bb5318 --- /dev/null +++ b/PC/VS9.0/make_versioninfo.vcproj @@ -0,0 +1,324 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/pcbuild.sln b/PC/VS9.0/pcbuild.sln new file mode 100644 index 000000000000..bc0758c29c01 --- /dev/null +++ b/PC/VS9.0/pcbuild.sln @@ -0,0 +1,658 @@ +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}") = "_decimal", "_decimal.vcproj", "{0E9791DB-593A-465F-98BC-681011311617}" + ProjectSection(ProjectDependencies) = postProject + {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} + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0} = {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0} + {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}") = "_lzma", "_lzma.vcproj", "{F9D71780-F393-11E0-BE50-0800200C9A66}" + 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} + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0} = {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0} + {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}") = "ssl", "ssl.vcproj", "{E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}" + ProjectSection(ProjectDependencies) = postProject + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9} = {B11D750F-CD1F-4A96-85CE-E69A5C5259F9} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "kill_python", "kill_python.vcproj", "{6DE10744-E396-40A5-B4E2-1B69AA7C8D31}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python3dll", "python3dll.vcproj", "{885D4898-D08D-4091-9C40-C700CFE3FC5A}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xxlimited", "xxlimited.vcproj", "{F749B822-B489-4CA5-A3AD-CE078F5F338A}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_testbuffer", "_testbuffer.vcproj", "{A2697BD3-28C1-4AEC-9106-8B748639FD16}" + ProjectSection(ProjectDependencies) = postProject + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + EndProjectSection +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 + {0E9791DB-593A-465F-98BC-681011311617}.Debug|Win32.ActiveCfg = Debug|Win32 + {0E9791DB-593A-465F-98BC-681011311617}.Debug|Win32.Build.0 = Debug|Win32 + {0E9791DB-593A-465F-98BC-681011311617}.Debug|x64.ActiveCfg = Debug|x64 + {0E9791DB-593A-465F-98BC-681011311617}.Debug|x64.Build.0 = Debug|x64 + {0E9791DB-593A-465F-98BC-681011311617}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {0E9791DB-593A-465F-98BC-681011311617}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {0E9791DB-593A-465F-98BC-681011311617}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {0E9791DB-593A-465F-98BC-681011311617}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {0E9791DB-593A-465F-98BC-681011311617}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {0E9791DB-593A-465F-98BC-681011311617}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {0E9791DB-593A-465F-98BC-681011311617}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {0E9791DB-593A-465F-98BC-681011311617}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {0E9791DB-593A-465F-98BC-681011311617}.Release|Win32.ActiveCfg = Release|Win32 + {0E9791DB-593A-465F-98BC-681011311617}.Release|Win32.Build.0 = Release|Win32 + {0E9791DB-593A-465F-98BC-681011311617}.Release|x64.ActiveCfg = Release|x64 + {0E9791DB-593A-465F-98BC-681011311617}.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 + {F9D71780-F393-11E0-BE50-0800200C9A66}.Debug|Win32.ActiveCfg = Debug|Win32 + {F9D71780-F393-11E0-BE50-0800200C9A66}.Debug|Win32.Build.0 = Debug|Win32 + {F9D71780-F393-11E0-BE50-0800200C9A66}.Debug|x64.ActiveCfg = Debug|x64 + {F9D71780-F393-11E0-BE50-0800200C9A66}.Debug|x64.Build.0 = Debug|x64 + {F9D71780-F393-11E0-BE50-0800200C9A66}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {F9D71780-F393-11E0-BE50-0800200C9A66}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {F9D71780-F393-11E0-BE50-0800200C9A66}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {F9D71780-F393-11E0-BE50-0800200C9A66}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {F9D71780-F393-11E0-BE50-0800200C9A66}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {F9D71780-F393-11E0-BE50-0800200C9A66}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {F9D71780-F393-11E0-BE50-0800200C9A66}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {F9D71780-F393-11E0-BE50-0800200C9A66}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {F9D71780-F393-11E0-BE50-0800200C9A66}.Release|Win32.ActiveCfg = Release|Win32 + {F9D71780-F393-11E0-BE50-0800200C9A66}.Release|Win32.Build.0 = Release|Win32 + {F9D71780-F393-11E0-BE50-0800200C9A66}.Release|x64.ActiveCfg = Release|x64 + {F9D71780-F393-11E0-BE50-0800200C9A66}.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 + {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 = PGInstrument|Win32 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGUpdate|x64.Build.0 = PGUpdate|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 + {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 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.Debug|Win32.ActiveCfg = PGInstrument|Win32 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.Debug|x64.ActiveCfg = PGUpdate|x64 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.Debug|x64.Build.0 = PGUpdate|x64 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.Release|Win32.ActiveCfg = Release|Win32 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.Release|Win32.Build.0 = Release|Win32 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.Release|x64.ActiveCfg = Release|x64 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.Release|x64.Build.0 = Release|x64 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.Debug|Win32.ActiveCfg = Debug|Win32 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.Debug|Win32.Build.0 = Debug|Win32 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.Debug|x64.ActiveCfg = Debug|x64 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.Debug|x64.Build.0 = Debug|x64 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.PGInstrument|Win32.Build.0 = Release|Win32 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.PGInstrument|x64.ActiveCfg = Release|x64 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.PGInstrument|x64.Build.0 = Release|x64 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.PGUpdate|Win32.Build.0 = Release|Win32 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.PGUpdate|x64.ActiveCfg = Release|x64 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.PGUpdate|x64.Build.0 = Release|x64 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.Release|Win32.ActiveCfg = Release|Win32 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.Release|Win32.Build.0 = Release|Win32 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.Release|x64.ActiveCfg = Release|x64 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.Release|x64.Build.0 = Release|x64 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.Debug|Win32.ActiveCfg = Debug|Win32 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.Debug|Win32.Build.0 = Debug|Win32 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.Debug|x64.ActiveCfg = Debug|x64 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.Debug|x64.Build.0 = Debug|x64 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.Release|Win32.ActiveCfg = Release|Win32 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.Release|Win32.Build.0 = Release|Win32 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.Release|x64.ActiveCfg = Release|x64 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.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/PC/VS9.0/pyexpat.vcproj b/PC/VS9.0/pyexpat.vcproj new file mode 100644 index 000000000000..5a20a51f75ef --- /dev/null +++ b/PC/VS9.0/pyexpat.vcproj @@ -0,0 +1,553 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PCbuild/pyproject.vsprops b/PC/VS9.0/pyproject.vsprops similarity index 100% rename from PCbuild/pyproject.vsprops rename to PC/VS9.0/pyproject.vsprops diff --git a/PC/VS9.0/python.vcproj b/PC/VS9.0/python.vcproj new file mode 100644 index 000000000000..47b289e2a0b3 --- /dev/null +++ b/PC/VS9.0/python.vcproj @@ -0,0 +1,637 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/python3dll.vcproj b/PC/VS9.0/python3dll.vcproj new file mode 100644 index 000000000000..52c675221436 --- /dev/null +++ b/PC/VS9.0/python3dll.vcproj @@ -0,0 +1,246 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/pythoncore.vcproj b/PC/VS9.0/pythoncore.vcproj new file mode 100644 index 000000000000..4c58251a5775 --- /dev/null +++ b/PC/VS9.0/pythoncore.vcproj @@ -0,0 +1,1917 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/pythonw.vcproj b/PC/VS9.0/pythonw.vcproj new file mode 100644 index 000000000000..7ae562a4d697 --- /dev/null +++ b/PC/VS9.0/pythonw.vcproj @@ -0,0 +1,618 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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/select.vcproj b/PC/VS9.0/select.vcproj new file mode 100644 index 000000000000..02e0a2fc40f4 --- /dev/null +++ b/PC/VS9.0/select.vcproj @@ -0,0 +1,537 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/sqlite3.vcproj b/PC/VS9.0/sqlite3.vcproj new file mode 100644 index 000000000000..e1771f491705 --- /dev/null +++ b/PC/VS9.0/sqlite3.vcproj @@ -0,0 +1,537 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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/PC/VS9.0/ssl.vcproj b/PC/VS9.0/ssl.vcproj new file mode 100644 index 000000000000..ec2be304ee37 --- /dev/null +++ b/PC/VS9.0/ssl.vcproj @@ -0,0 +1,189 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/unicodedata.vcproj b/PC/VS9.0/unicodedata.vcproj new file mode 100644 index 000000000000..59682a1a8d23 --- /dev/null +++ b/PC/VS9.0/unicodedata.vcproj @@ -0,0 +1,533 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/w9xpopen.vcproj b/PC/VS9.0/w9xpopen.vcproj new file mode 100644 index 000000000000..05d8f81f9a5c --- /dev/null +++ b/PC/VS9.0/w9xpopen.vcproj @@ -0,0 +1,576 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/VS9.0/winsound.vcproj b/PC/VS9.0/winsound.vcproj new file mode 100644 index 000000000000..69470cce723a --- /dev/null +++ b/PC/VS9.0/winsound.vcproj @@ -0,0 +1,523 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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/VS9.0/xxlimited.vcproj b/PC/VS9.0/xxlimited.vcproj new file mode 100644 index 000000000000..6da20160130d --- /dev/null +++ b/PC/VS9.0/xxlimited.vcproj @@ -0,0 +1,417 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/PC/dl_nt.c b/PC/dl_nt.c index ef1ce0934c18..ae10fb56231b 100644 --- a/PC/dl_nt.c +++ b/PC/dl_nt.c @@ -18,7 +18,8 @@ char dllVersionBuffer[16] = ""; // a private buffer HMODULE PyWin_DLLhModule = NULL; const char *PyWin_DLLVersionString = dllVersionBuffer; -// Windows "Activation Context" work: +#if HAVE_SXS +// Windows "Activation Context" work. // Our .pyd extension modules are generally built without a manifest (ie, // those included with Python and those built with a default distutils. // This requires we perform some "activation context" magic when loading our @@ -29,6 +30,8 @@ const char *PyWin_DLLVersionString = dllVersionBuffer; // As an added complication, this magic only works on XP or later - we simply // use the existence (or not) of the relevant function pointers from kernel32. // See bug 4566 (http://python.org/sf/4566) for more details. +// In Visual Studio 2010, side by side assemblies are no longer used by +// default. typedef BOOL (WINAPI * PFN_GETCURRENTACTCTX)(HANDLE *); typedef BOOL (WINAPI * PFN_ACTIVATEACTCTX)(HANDLE, ULONG_PTR *); @@ -75,6 +78,7 @@ void _Py_DeactivateActCtx(ULONG_PTR cookie) if (!(*pfnDeactivateActCtx)(0, cookie)) OutputDebugString("Python failed to de-activate the activation context\n"); } +#endif /* HAVE_SXS */ BOOL WINAPI DllMain (HANDLE hInst, ULONG ul_reason_for_call, @@ -87,17 +91,21 @@ BOOL WINAPI DllMain (HANDLE hInst, // 1000 is a magic number I picked out of the air. Could do with a #define, I spose... LoadString(hInst, 1000, dllVersionBuffer, sizeof(dllVersionBuffer)); +#if HAVE_SXS // and capture our activation context for use when loading extensions. _LoadActCtxPointers(); if (pfnGetCurrentActCtx && pfnAddRefActCtx) if ((*pfnGetCurrentActCtx)(&PyWin_DLLhActivationContext)) if (!(*pfnAddRefActCtx)(PyWin_DLLhActivationContext)) OutputDebugString("Python failed to load the default activation context\n"); +#endif break; case DLL_PROCESS_DETACH: +#if HAVE_SXS if (pfnReleaseActCtx) (*pfnReleaseActCtx)(PyWin_DLLhActivationContext); +#endif break; } return TRUE; diff --git a/PC/msvcrtmodule.c b/PC/msvcrtmodule.c index f277b0a64dd6..04d2088d2987 100755 --- a/PC/msvcrtmodule.c +++ b/PC/msvcrtmodule.c @@ -27,6 +27,8 @@ #ifdef _MSC_VER #if _MSC_VER >= 1500 && _MSC_VER < 1600 #include +#elif _MSC_VER >= 1600 +#include #endif #endif @@ -464,7 +466,7 @@ PyMODINIT_FUNC PyInit_msvcrt(void) { int st; - PyObject *d; + PyObject *d, *version; PyObject *m = PyModule_Create(&msvcrtmodule); if (m == NULL) return NULL; @@ -494,6 +496,7 @@ PyInit_msvcrt(void) #endif /* constants for the crt versions */ + (void)st; #ifdef _VC_ASSEMBLY_PUBLICKEYTOKEN st = PyModule_AddStringConstant(m, "VC_ASSEMBLY_PUBLICKEYTOKEN", _VC_ASSEMBLY_PUBLICKEYTOKEN); @@ -510,5 +513,15 @@ PyInit_msvcrt(void) if (st < 0) return NULL; #endif + /* constants for the 2010 crt versions */ +#if defined(_VC_CRT_MAJOR_VERSION) && defined (_VC_CRT_MINOR_VERSION) && defined(_VC_CRT_BUILD_VERSION) && defined(_VC_CRT_RBUILD_VERSION) + version = PyUnicode_FromFormat("%d.%d.%d.%d", _VC_CRT_MAJOR_VERSION, + _VC_CRT_MINOR_VERSION, + _VC_CRT_BUILD_VERSION, + _VC_CRT_RBUILD_VERSION); + st = PyModule_AddObject(m, "CRT_ASSEMBLY_VERSION", version); + if (st < 0) return NULL; +#endif + return m; } diff --git a/PC/pyconfig.h b/PC/pyconfig.h index 3b71b47ebd21..d6de5f013e4c 100644 --- a/PC/pyconfig.h +++ b/PC/pyconfig.h @@ -215,14 +215,19 @@ typedef int pid_t; #define copysign _copysign #define hypot _hypot -#endif /* _MSC_VER */ +/* Side by Side assemblies supported in VS 2005 and VS 2008 but not 2010*/ +#if _MSC_VER >= 1400 && _MSC_VER < 1600 +#define HAVE_SXS 1 +#endif /* define some ANSI types that are not defined in earlier Win headers */ -#if defined(_MSC_VER) && _MSC_VER >= 1200 +#if _MSC_VER >= 1200 /* This file only exists in VC 6.0 or higher */ #include #endif +#endif /* _MSC_VER */ + /* ------------------------------------------------------------------------*/ /* The Borland compiler defines __BORLANDC__ */ /* XXX These defines are likely incomplete, but should be easy to fix. */ diff --git a/PCbuild/_bz2.vcxproj b/PCbuild/_bz2.vcxproj new file mode 100644 index 000000000000..d197597b7d8b --- /dev/null +++ b/PCbuild/_bz2.vcxproj @@ -0,0 +1,263 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5} + bz2 + Win32Proj + + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .pyd + .pyd + + + + $(bz2Dir);%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) + + + 0x1D170000 + + + + + X64 + + + $(bz2Dir);%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) + + + 0x1D170000 + + + + + $(bz2Dir);%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) + + + 0x1D170000 + + + + + X64 + + + $(bz2Dir);%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) + + + 0x1D170000 + + + + + $(bz2Dir);%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) + + + 0x1D170000 + + + + + X64 + + + $(bz2Dir);%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) + + + 0x1D170000 + MachineX64 + + + + + $(bz2Dir);%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) + + + 0x1D170000 + + + + + X64 + + + $(bz2Dir);%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) + + + 0x1D170000 + MachineX64 + + + + + + + + + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/_bz2.vcxproj.filters b/PCbuild/_bz2.vcxproj.filters new file mode 100644 index 000000000000..4ae1357c10cb --- /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.5 Source Files + + + bzip2 1.0.5 Source Files + + + bzip2 1.0.5 Source Files + + + bzip2 1.0.5 Source Files + + + bzip2 1.0.5 Source Files + + + bzip2 1.0.5 Source Files + + + bzip2 1.0.5 Source Files + + + + + bzip2 1.0.5 Header Files + + + bzip2 1.0.5 Header Files + + + \ No newline at end of file diff --git a/PCbuild/_ctypes.vcxproj b/PCbuild/_ctypes.vcxproj new file mode 100644 index 000000000000..c686650be68e --- /dev/null +++ b/PCbuild/_ctypes.vcxproj @@ -0,0 +1,283 @@ + + + + + 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 + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.40219.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .pyd + .pyd + + + + ..\Modules\_ctypes\libffi_msvc;%(AdditionalIncludeDirectories) + + + 0x1D1A0000 + + + + + X64 + + + ..\Modules\_ctypes\libffi_msvc;%(AdditionalIncludeDirectories) + + + 0x1D1A0000 + $(OutDir)python33_d.lib;%(AdditionalDependencies) + + + + + ..\Modules\_ctypes\libffi_msvc;%(AdditionalIncludeDirectories) + + + /EXPORT:DllGetClassObject,PRIVATE /EXPORT:DllCanUnloadNow,PRIVATE %(AdditionalOptions) + NotSet + 0x1D1A0000 + + + + + X64 + + + ..\Modules\_ctypes\libffi_msvc;%(AdditionalIncludeDirectories) + + + /EXPORT:DllGetClassObject,PRIVATE /EXPORT:DllCanUnloadNow,PRIVATE %(AdditionalOptions) + NotSet + 0x1D1A0000 + $(OutDir)python33.lib;%(AdditionalDependencies) + + + + + ..\Modules\_ctypes\libffi_msvc;%(AdditionalIncludeDirectories) + + + /EXPORT:DllGetClassObject,PRIVATE /EXPORT:DllCanUnloadNow,PRIVATE %(AdditionalOptions) + NotSet + 0x1D1A0000 + + + + + X64 + + + ..\Modules\_ctypes\libffi_msvc;%(AdditionalIncludeDirectories) + + + /EXPORT:DllGetClassObject,PRIVATE /EXPORT:DllCanUnloadNow,PRIVATE %(AdditionalOptions) + NotSet + 0x1D1A0000 + MachineX64 + + + + + ..\Modules\_ctypes\libffi_msvc;%(AdditionalIncludeDirectories) + + + /EXPORT:DllGetClassObject,PRIVATE /EXPORT:DllCanUnloadNow,PRIVATE %(AdditionalOptions) + NotSet + 0x1D1A0000 + + + + + X64 + + + ..\Modules\_ctypes\libffi_msvc;%(AdditionalIncludeDirectories) + + + /EXPORT:DllGetClassObject,PRIVATE /EXPORT:DllCanUnloadNow,PRIVATE %(AdditionalOptions) + NotSet + 0x1D1A0000 + MachineX64 + + + + + + + + + + + + + + + + + + + + + true + true + true + true + + + + + true + ml64 /nologo /c /Zi /Fo "$(IntDir)win64.obj" "%(FullPath)" + + $(IntDir)win64.obj;%(Outputs) + true + ml64 /nologo /c /Fo "$(IntDir)win64.obj" "%(FullPath)" + + $(IntDir)win64.obj;%(Outputs) + true + ml64 /nologo /c /Fo "$(IntDir)win64.obj" "%(FullPath)" + + $(IntDir)win64.obj;%(Outputs) + true + ml64 /nologo /c /Fo "$(IntDir)win64.obj" "%(FullPath)" + + $(IntDir)win64.obj;%(Outputs) + + + + + + \ No newline at end of file diff --git a/PCbuild/_ctypes.vcxproj.filters b/PCbuild/_ctypes.vcxproj.filters new file mode 100644 index 000000000000..83d7a7b67ab9 --- /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 + + + \ No newline at end of file diff --git a/PCbuild/_ctypes_test.vcxproj b/PCbuild/_ctypes_test.vcxproj new file mode 100644 index 000000000000..27ff37a8e725 --- /dev/null +++ b/PCbuild/_ctypes_test.vcxproj @@ -0,0 +1,195 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {9EC7190A-249F-4180-A900-548FDCF3055F} + _ctypes_test + Win32Proj + + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .pyd + .pyd + + + + X64 + + + + + X64 + + + + + X64 + + + MachineX64 + + + + + X64 + + + MachineX64 + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/_ctypes_test.vcxproj.filters b/PCbuild/_ctypes_test.vcxproj.filters new file mode 100644 index 000000000000..c1e94ce1faa0 --- /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 + + + \ No newline at end of file diff --git a/PCbuild/_decimal.vcxproj b/PCbuild/_decimal.vcxproj new file mode 100644 index 000000000000..fef408dce323 --- /dev/null +++ b/PCbuild/_decimal.vcxproj @@ -0,0 +1,297 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {0E9791DB-593A-465F-98BC-681011311617} + _decimal + Win32Proj + + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.40219.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .pyd + .pyd + $(SolutionDir)\amd64\ + $(SolutionDir)$(PlatformName)-temp-$(Configuration)\$(ProjectName)\ + + + + /D_CRT_SECURE_NO_WARNINGS /DCONFIG_32 /DPPRO /DMASM %(AdditionalOptions) + ..\Modules\_decimal;..\Modules\_decimal\libmpdec;%(AdditionalIncludeDirectories) + + + 0x1D1A0000 + + + + + X64 + + + /D_CRT_SECURE_NO_WARNINGS /DCONFIG_64 /DMASM %(AdditionalOptions) + ..\Modules\_decimal;..\Modules\_decimal\libmpdec;%(AdditionalIncludeDirectories) + + + 0x1D1A0000 + $(OutDir)python33_d.lib;%(AdditionalDependencies) + + + + + /D_CRT_SECURE_NO_WARNINGS /DCONFIG_32 /DPPRO /DMASM %(AdditionalOptions) + ..\Modules\_decimal;..\Modules\_decimal\libmpdec;%(AdditionalIncludeDirectories) + + + NotSet + 0x1D1A0000 + + + + + X64 + + + /D_CRT_SECURE_NO_WARNINGS /DCONFIG_64 /DMASM %(AdditionalOptions) + ..\Modules\_decimal;..\Modules\_decimal\libmpdec;..\Include;..\PC;%(AdditionalIncludeDirectories) + + + NotSet + 0x1D1A0000 + $(OutDir)python33.lib;%(AdditionalDependencies) + + + + + /D_CRT_SECURE_NO_WARNINGS /DCONFIG_32 /DPPRO /DMASM %(AdditionalOptions) + ..\Modules\_decimal;..\Modules\_decimal\libmpdec;%(AdditionalIncludeDirectories) + + + NotSet + 0x1D1A0000 + + + + + X64 + + + /D_CRT_SECURE_NO_WARNINGS /DCONFIG_64 /DMASM %(AdditionalOptions) + ..\Modules\_decimal;..\Modules\_decimal\libmpdec;%(AdditionalIncludeDirectories) + + + NotSet + 0x1D1A0000 + MachineX64 + + + + + /D_CRT_SECURE_NO_WARNINGS /DCONFIG_32 /DPPRO /DMASM %(AdditionalOptions) + ..\Modules\_decimal;..\Modules\_decimal\libmpdec;%(AdditionalIncludeDirectories) + + + NotSet + 0x1D1A0000 + + + + + X64 + + + /D_CRT_SECURE_NO_WARNINGS /DCONFIG_64 /DMASM %(AdditionalOptions) + ..\Modules\_decimal;..\Modules\_decimal\libmpdec;%(AdditionalIncludeDirectories) + + + NotSet + 0x1D1A0000 + MachineX64 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + ml64 /nologo /c /Zi /Fo "$(IntDir)vcdiv64.obj" "%(FullPath)" + + $(IntDir)vcdiv64.obj;%(Outputs) + true + ml64 /nologo /c /Fo "$(IntDir)vcdiv64.obj" "%(FullPath)" + + $(IntDir)vcdiv64.obj;%(Outputs) + true + ml64 /nologo /c /Fo "$(IntDir)vcdiv64.obj" "%(FullPath)" + + $(IntDir)vcdiv64.obj;%(Outputs) + true + ml64 /nologo /c /Zi /Fo "$(IntDir)vcdiv64.obj" "%(FullPath)" + + $(IntDir)vcdiv64.obj;%(Outputs) + + + + + + \ No newline at end of file diff --git a/PCbuild/_decimal.vcxproj.filters b/PCbuild/_decimal.vcxproj.filters new file mode 100644 index 000000000000..7e19aa2f6596 --- /dev/null +++ b/PCbuild/_decimal.vcxproj.filters @@ -0,0 +1,116 @@ + + + + + {f35a78a6-3ef0-4e36-bd8b-afaef22fbb7c} + + + {138089f8-faba-494f-b6ed-051f31fbaf2d} + + + + + 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 + + + Header Files + + + Header Files + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + + + Source Files + + + \ No newline at end of file diff --git a/PCbuild/_elementtree.vcxproj b/PCbuild/_elementtree.vcxproj new file mode 100644 index 000000000000..3f51336f925e --- /dev/null +++ b/PCbuild/_elementtree.vcxproj @@ -0,0 +1,272 @@ + + + + + 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 + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .pyd + .pyd + + + + ..\Modules\expat;%(AdditionalIncludeDirectories) + XML_NS;XML_DTD;BYTEORDER=1234;XML_CONTEXT_BYTES=1024;USE_PYEXPAT_CAPI;XML_STATIC;HAVE_MEMMOVE;%(PreprocessorDefinitions) + + + 0x1D100000 + + + + + X64 + + + ..\Modules\expat;%(AdditionalIncludeDirectories) + XML_NS;XML_DTD;BYTEORDER=1234;XML_CONTEXT_BYTES=1024;USE_PYEXPAT_CAPI;XML_STATIC;HAVE_MEMMOVE;%(PreprocessorDefinitions) + + + 0x1D100000 + + + + + ..\Modules\expat;%(AdditionalIncludeDirectories) + XML_NS;XML_DTD;BYTEORDER=1234;XML_CONTEXT_BYTES=1024;USE_PYEXPAT_CAPI;XML_STATIC;HAVE_MEMMOVE;%(PreprocessorDefinitions) + + + 0x1D100000 + + + + + X64 + + + ..\Modules\expat;%(AdditionalIncludeDirectories) + XML_NS;XML_DTD;BYTEORDER=1234;XML_CONTEXT_BYTES=1024;USE_PYEXPAT_CAPI;XML_STATIC;HAVE_MEMMOVE;%(PreprocessorDefinitions) + + + 0x1D100000 + + + + + ..\Modules\expat;%(AdditionalIncludeDirectories) + XML_NS;XML_DTD;BYTEORDER=1234;XML_CONTEXT_BYTES=1024;USE_PYEXPAT_CAPI;XML_STATIC;HAVE_MEMMOVE;%(PreprocessorDefinitions) + + + 0x1D100000 + + + + + X64 + + + ..\Modules\expat;%(AdditionalIncludeDirectories) + XML_NS;XML_DTD;BYTEORDER=1234;XML_CONTEXT_BYTES=1024;USE_PYEXPAT_CAPI;XML_STATIC;HAVE_MEMMOVE;%(PreprocessorDefinitions) + + + 0x1D100000 + MachineX64 + + + + + ..\Modules\expat;%(AdditionalIncludeDirectories) + XML_NS;XML_DTD;BYTEORDER=1234;XML_CONTEXT_BYTES=1024;USE_PYEXPAT_CAPI;XML_STATIC;HAVE_MEMMOVE;%(PreprocessorDefinitions) + + + 0x1D100000 + + + + + X64 + + + ..\Modules\expat;%(AdditionalIncludeDirectories) + XML_NS;XML_DTD;BYTEORDER=1234;XML_CONTEXT_BYTES=1024;USE_PYEXPAT_CAPI;XML_STATIC;HAVE_MEMMOVE;%(PreprocessorDefinitions) + + + 0x1D100000 + MachineX64 + + + + + + + + + + + + + + + + + + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/_elementtree.vcxproj.filters b/PCbuild/_elementtree.vcxproj.filters new file mode 100644 index 000000000000..ee78295fa949 --- /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 + + + \ No newline at end of file diff --git a/PCbuild/_hashlib.vcxproj b/PCbuild/_hashlib.vcxproj new file mode 100644 index 000000000000..4d643218e063 --- /dev/null +++ b/PCbuild/_hashlib.vcxproj @@ -0,0 +1,283 @@ + + + + + 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 + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .pyd + + + + $(opensslDir)\inc32;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;$(opensslDir)\out32\libeay32.lib;$(opensslDir)\out32\ssleay32.lib;%(AdditionalDependencies) + + + + + X64 + + + $(opensslDir)\inc64;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;$(opensslDir)\out64\libeay32.lib;$(opensslDir)\out64\ssleay32.lib;%(AdditionalDependencies) + + + + + $(opensslDir)\inc32;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;$(opensslDir)\out32\libeay32.lib;$(opensslDir)\out32\ssleay32.lib;%(AdditionalDependencies) + + + + + X64 + + + $(opensslDir)\inc64;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;$(opensslDir)\out64\libeay32.lib;$(opensslDir)\out64\ssleay32.lib;%(AdditionalDependencies) + + + + + $(opensslDir)\inc32;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;$(opensslDir)\out32\libeay32.lib;$(opensslDir)\out32\ssleay32.lib;%(AdditionalDependencies) + + + + + X64 + + + $(opensslDir)\inc64;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;$(opensslDir)\out64\libeay32.lib;$(opensslDir)\out64\ssleay32.lib;%(AdditionalDependencies) + MachineX64 + + + + + $(opensslDir)\inc32;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;$(opensslDir)\out32\libeay32.lib;$(opensslDir)\out32\ssleay32.lib;%(AdditionalDependencies) + + + + + X64 + + + $(opensslDir)\inc64;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;$(opensslDir)\out64\libeay32.lib;$(opensslDir)\out64\ssleay32.lib;%(AdditionalDependencies) + MachineX64 + + + + + + + + {b11d750f-cd1f-4a96-85ce-e69a5c5259f9} + false + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + {e5b04cc0-eb4c-42ab-b4dc-18ef95f864b0} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/_hashlib.vcxproj.filters b/PCbuild/_hashlib.vcxproj.filters new file mode 100644 index 000000000000..a9d993eb3ed4 --- /dev/null +++ b/PCbuild/_hashlib.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {cc45963d-bd25-4eb8-bdba-a5507090bca4} + + + + + Source Files + + + \ No newline at end of file diff --git a/PCbuild/_lzma.vcxproj b/PCbuild/_lzma.vcxproj new file mode 100644 index 000000000000..a242de47a679 --- /dev/null +++ b/PCbuild/_lzma.vcxproj @@ -0,0 +1,252 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {F9D71780-F393-11E0-BE50-0800200C9A66} + lzma + Win32Proj + + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .pyd + .pyd + + + + $(lzmaDir)\include;%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;LZMA_API_STATIC;%(PreprocessorDefinitions) + + + $(lzmaDir)\bin_i486\liblzma.a;%(AdditionalDependencies) + + + + + X64 + + + $(lzmaDir)\include;%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;LZMA_API_STATIC;%(PreprocessorDefinitions) + + + $(lzmaDir)\bin_x86-64\liblzma.a;%(AdditionalDependencies) + + + + + $(lzmaDir)\include;%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;LZMA_API_STATIC;%(PreprocessorDefinitions) + + + $(lzmaDir)\bin_i486\liblzma.a;%(AdditionalDependencies) + + + + + X64 + + + $(lzmaDir)\include;%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;LZMA_API_STATIC;%(PreprocessorDefinitions) + + + $(lzmaDir)\bin_x86-64\liblzma.a;%(AdditionalDependencies) + + + + + $(lzmaDir)\include;%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;LZMA_API_STATIC;%(PreprocessorDefinitions) + + + $(lzmaDir)\bin_i486\liblzma.a;%(AdditionalDependencies) + + + + + X64 + + + $(lzmaDir)\include;%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;LZMA_API_STATIC;%(PreprocessorDefinitions) + + + $(lzmaDir)\bin_x86-64\liblzma.a;%(AdditionalDependencies) + MachineX64 + + + + + $(lzmaDir)\include;%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;LZMA_API_STATIC;%(PreprocessorDefinitions) + + + $(lzmaDir)\bin_i486\liblzma.a;%(AdditionalDependencies) + + + + + X64 + + + $(lzmaDir)\include;%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;LZMA_API_STATIC;%(PreprocessorDefinitions) + + + $(lzmaDir)\bin_x86-64\liblzma.a;%(AdditionalDependencies) + MachineX64 + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/_lzma.vcxproj.filters b/PCbuild/_lzma.vcxproj.filters new file mode 100644 index 000000000000..0c5ed74608e6 --- /dev/null +++ b/PCbuild/_lzma.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {53e68eda-39fc-4336-a658-dc5f5d598760} + + + + + Source Files + + + \ No newline at end of file diff --git a/PCbuild/_msi.vcxproj b/PCbuild/_msi.vcxproj new file mode 100644 index 000000000000..f5279a6d7a64 --- /dev/null +++ b/PCbuild/_msi.vcxproj @@ -0,0 +1,228 @@ + + + + + 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 + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .pyd + .pyd + + + + fci.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies) + 0x1D160000 + + + + + X64 + + + fci.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies) + 0x1D160000 + + + + + fci.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies) + 0x1D160000 + + + + + X64 + + + fci.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies) + 0x1D160000 + + + + + fci.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies) + 0x1D160000 + + + + + X64 + + + fci.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies) + 0x1D160000 + MachineX64 + + + + + fci.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies) + 0x1D160000 + + + + + X64 + + + fci.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies) + 0x1D160000 + MachineX64 + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/_msi.vcxproj.filters b/PCbuild/_msi.vcxproj.filters new file mode 100644 index 000000000000..7dec52de0b3e --- /dev/null +++ b/PCbuild/_msi.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {bdef7710-e433-4ac0-84e0-14f34454bd3e} + + + + + Source Files + + + \ No newline at end of file diff --git a/PCbuild/_multiprocessing.vcxproj b/PCbuild/_multiprocessing.vcxproj new file mode 100644 index 000000000000..1e060acf1fa3 --- /dev/null +++ b/PCbuild/_multiprocessing.vcxproj @@ -0,0 +1,232 @@ + + + + + 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 + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .pyd + .pyd + + + + ws2_32.lib;%(AdditionalDependencies) + 0x1e1D0000 + + + + + X64 + + + ws2_32.lib;%(AdditionalDependencies) + 0x1e1D0000 + + + + + ws2_32.lib;%(AdditionalDependencies) + 0x1e1D0000 + + + + + X64 + + + ws2_32.lib;%(AdditionalDependencies) + 0x1e1D0000 + + + + + ws2_32.lib;%(AdditionalDependencies) + 0x1e1D0000 + + + + + X64 + + + ws2_32.lib;%(AdditionalDependencies) + 0x1e1D0000 + MachineX64 + + + + + ws2_32.lib;%(AdditionalDependencies) + 0x1e1D0000 + + + + + X64 + + + ws2_32.lib;%(AdditionalDependencies) + 0x1e1D0000 + MachineX64 + + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/_multiprocessing.vcxproj.filters b/PCbuild/_multiprocessing.vcxproj.filters new file mode 100644 index 000000000000..78133ec0ec84 --- /dev/null +++ b/PCbuild/_multiprocessing.vcxproj.filters @@ -0,0 +1,24 @@ + + + + + {623c956c-1893-43d9-a7dc-96e4fef20f93} + + + {34615a62-f999-4659-83f5-19d17a644530} + + + + + Header Files + + + + + Source Files + + + Source Files + + + \ No newline at end of file diff --git a/PCbuild/_socket.vcxproj b/PCbuild/_socket.vcxproj new file mode 100644 index 000000000000..5c9bb5f23908 --- /dev/null +++ b/PCbuild/_socket.vcxproj @@ -0,0 +1,231 @@ + + + + + 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 + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .pyd + .pyd + + + + ws2_32.lib;%(AdditionalDependencies) + 0x1e1D0000 + + + + + X64 + + + ws2_32.lib;%(AdditionalDependencies) + 0x1e1D0000 + + + + + ws2_32.lib;%(AdditionalDependencies) + 0x1e1D0000 + + + + + X64 + + + ws2_32.lib;%(AdditionalDependencies) + 0x1e1D0000 + + + + + ws2_32.lib;%(AdditionalDependencies) + 0x1e1D0000 + + + + + X64 + + + ws2_32.lib;%(AdditionalDependencies) + 0x1e1D0000 + MachineX64 + + + + + ws2_32.lib;%(AdditionalDependencies) + 0x1e1D0000 + + + + + X64 + + + ws2_32.lib;%(AdditionalDependencies) + 0x1e1D0000 + MachineX64 + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/_socket.vcxproj.filters b/PCbuild/_socket.vcxproj.filters new file mode 100644 index 000000000000..790ffa80dd4c --- /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 + + + \ No newline at end of file diff --git a/PCbuild/_sqlite3.vcxproj b/PCbuild/_sqlite3.vcxproj new file mode 100644 index 000000000000..7991ff920c9f --- /dev/null +++ b/PCbuild/_sqlite3.vcxproj @@ -0,0 +1,276 @@ + + + + + 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 + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .pyd + .pyd + + + + $(sqlite3Dir);%(AdditionalIncludeDirectories) + MODULE_NAME="sqlite3";%(PreprocessorDefinitions) + + + 0x1e180000 + + + + + X64 + + + $(sqlite3Dir);%(AdditionalIncludeDirectories) + MODULE_NAME="sqlite3";%(PreprocessorDefinitions) + + + 0x1e180000 + + + + + $(sqlite3Dir);%(AdditionalIncludeDirectories) + MODULE_NAME="sqlite3";%(PreprocessorDefinitions) + + + 0x1e180000 + + + + + X64 + + + $(sqlite3Dir);%(AdditionalIncludeDirectories) + MODULE_NAME="sqlite3";%(PreprocessorDefinitions) + + + 0x1e180000 + + + + + $(sqlite3Dir);%(AdditionalIncludeDirectories) + MODULE_NAME="sqlite3";%(PreprocessorDefinitions) + + + 0x1e180000 + + + + + X64 + + + $(sqlite3Dir);%(AdditionalIncludeDirectories) + MODULE_NAME="sqlite3";%(PreprocessorDefinitions) + + + 0x1e180000 + MachineX64 + + + + + $(sqlite3Dir);%(AdditionalIncludeDirectories) + MODULE_NAME="sqlite3";%(PreprocessorDefinitions) + + + 0x1e180000 + + + + + X64 + + + $(sqlite3Dir);%(AdditionalIncludeDirectories) + MODULE_NAME="sqlite3";%(PreprocessorDefinitions) + + + 0x1e180000 + MachineX64 + + + + + + + + + + + + + + + + + + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + {a1a295e5-463c-437f-81ca-1f32367685da} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/_sqlite3.vcxproj.filters b/PCbuild/_sqlite3.vcxproj.filters new file mode 100644 index 000000000000..88e5fdbb9aa9 --- /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 + + + \ No newline at end of file diff --git a/PCbuild/_ssl.vcxproj b/PCbuild/_ssl.vcxproj new file mode 100644 index 000000000000..a539b4acb512 --- /dev/null +++ b/PCbuild/_ssl.vcxproj @@ -0,0 +1,287 @@ + + + + + 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 + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .pyd + + + + $(opensslDir)\inc32;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;$(opensslDir)\out32\libeay32.lib;$(opensslDir)\out32\ssleay32.lib;%(AdditionalDependencies) + + + + + X64 + + + $(opensslDir)\inc64;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;$(opensslDir)\out64\libeay32.lib;$(opensslDir)\out64\ssleay32.lib;%(AdditionalDependencies) + + + + + $(opensslDir)\inc32;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;$(opensslDir)\out32\libeay32.lib;$(opensslDir)\out32\ssleay32.lib;%(AdditionalDependencies) + + + + + X64 + + + $(opensslDir)\inc64;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;$(opensslDir)\out64\libeay32.lib;$(opensslDir)\out64\ssleay32.lib;%(AdditionalDependencies) + + + + + $(opensslDir)\inc32;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;$(opensslDir)\out32\libeay32.lib;$(opensslDir)\out32\ssleay32.lib;%(AdditionalDependencies) + + + + + X64 + + + $(opensslDir)\inc64;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;$(opensslDir)\out64\libeay32.lib;$(opensslDir)\out64\ssleay32.lib;%(AdditionalDependencies) + MachineX64 + + + + + $(opensslDir)\inc32;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;$(opensslDir)\out32\libeay32.lib;$(opensslDir)\out32\ssleay32.lib;%(AdditionalDependencies) + + + + + X64 + + + $(opensslDir)\inc64;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;$(opensslDir)\out64\libeay32.lib;$(opensslDir)\out64\ssleay32.lib;%(AdditionalDependencies) + MachineX64 + + + + + + + + {b11d750f-cd1f-4a96-85ce-e69a5c5259f9} + false + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + {e5b04cc0-eb4c-42ab-b4dc-18ef95f864b0} + false + + + {86937f53-c189-40ef-8ce8-8759d8e7d480} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/_ssl.vcxproj.filters b/PCbuild/_ssl.vcxproj.filters new file mode 100644 index 000000000000..78b1459923dc --- /dev/null +++ b/PCbuild/_ssl.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {695348f7-e9f6-4fe1-bc03-5f08ffc8095b} + + + + + Source Files + + + \ No newline at end of file diff --git a/PCbuild/_testbuffer.vcxproj b/PCbuild/_testbuffer.vcxproj new file mode 100644 index 000000000000..4854fe02f53f --- /dev/null +++ b/PCbuild/_testbuffer.vcxproj @@ -0,0 +1,206 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {A2697BD3-28C1-4AEC-9106-8B748639FD16} + _testbuffer + Win32Proj + + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.40219.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .pyd + .pyd + + + + 0x1e1F0000 + + + + + X64 + + + 0x1e1F0000 + $(OutDir)python33_d.lib;%(AdditionalDependencies) + + + + + 0x1e1F0000 + + + + + X64 + + + 0x1e1F0000 + $(OutDir)python33.lib;%(AdditionalDependencies) + + + + + 0x1e1F0000 + + + + + X64 + + + 0x1e1F0000 + MachineX64 + + + + + 0x1e1F0000 + + + + + X64 + + + 0x1e1F0000 + MachineX64 + + + + + + + + + \ No newline at end of file diff --git a/PCbuild/_testbuffer.vcxproj.filters b/PCbuild/_testbuffer.vcxproj.filters new file mode 100644 index 000000000000..eadf282750ba --- /dev/null +++ b/PCbuild/_testbuffer.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {8d232240-921a-4bc2-87c3-93ffd3462f0a} + + + + + Source Files + + + \ No newline at end of file diff --git a/PCbuild/_testcapi.vcxproj b/PCbuild/_testcapi.vcxproj new file mode 100644 index 000000000000..f871c55bfc74 --- /dev/null +++ b/PCbuild/_testcapi.vcxproj @@ -0,0 +1,220 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {6901D91C-6E48-4BB7-9FEC-700C8131DF1D} + _testcapi + Win32Proj + + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .pyd + .pyd + + + + 0x1e1F0000 + + + + + X64 + + + 0x1e1F0000 + + + + + 0x1e1F0000 + + + + + X64 + + + 0x1e1F0000 + + + + + 0x1e1F0000 + + + + + X64 + + + 0x1e1F0000 + MachineX64 + + + + + 0x1e1F0000 + + + + + X64 + + + 0x1e1F0000 + MachineX64 + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/_testcapi.vcxproj.filters b/PCbuild/_testcapi.vcxproj.filters new file mode 100644 index 000000000000..7a6ad1a864ec --- /dev/null +++ b/PCbuild/_testcapi.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {a76a90d8-8e8b-4c36-8f58-8bd46abe9f5e} + + + + + Source Files + + + \ No newline at end of file diff --git a/PCbuild/_tkinter.vcxproj b/PCbuild/_tkinter.vcxproj new file mode 100644 index 000000000000..fb7104138867 --- /dev/null +++ b/PCbuild/_tkinter.vcxproj @@ -0,0 +1,252 @@ + + + + + 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 + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .pyd + + + + $(tcltkDir)\include;%(AdditionalIncludeDirectories) + WITH_APPINIT;%(PreprocessorDefinitions) + + + $(tcltkLibDebug);%(AdditionalDependencies) + + + + + X64 + + + $(tcltk64Dir)\include;%(AdditionalIncludeDirectories) + WITH_APPINIT;%(PreprocessorDefinitions) + + + $(tcltk64LibDebug);%(AdditionalDependencies) + + + + + $(tcltkDir)\include;%(AdditionalIncludeDirectories) + WITH_APPINIT;%(PreprocessorDefinitions) + + + $(tcltkLib);%(AdditionalDependencies) + + + + + X64 + + + $(tcltk64Dir)\include;%(AdditionalIncludeDirectories) + WITH_APPINIT;%(PreprocessorDefinitions) + + + $(tcltk64Lib);%(AdditionalDependencies) + + + + + $(tcltkDir)\include;%(AdditionalIncludeDirectories) + WITH_APPINIT;%(PreprocessorDefinitions) + + + $(tcltkLib);%(AdditionalDependencies) + + + + + X64 + + + $(tcltk64Dir)\include;%(AdditionalIncludeDirectories) + WITH_APPINIT;%(PreprocessorDefinitions) + + + $(tcltk64Lib);%(AdditionalDependencies) + MachineX64 + + + + + $(tcltkDir)\include;%(AdditionalIncludeDirectories) + WITH_APPINIT;%(PreprocessorDefinitions) + + + $(tcltkLib);%(AdditionalDependencies) + + + + + X64 + + + $(tcltk64Dir)\include;%(AdditionalIncludeDirectories) + WITH_APPINIT;%(PreprocessorDefinitions) + + + $(tcltk64Lib);%(AdditionalDependencies) + MachineX64 + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/_tkinter.vcxproj.filters b/PCbuild/_tkinter.vcxproj.filters new file mode 100644 index 000000000000..4e5cd479e30b --- /dev/null +++ b/PCbuild/_tkinter.vcxproj.filters @@ -0,0 +1,16 @@ + + + + + {b9ce64dd-cb95-472d-bbe8-5583b2cd375b} + + + + + Source Files + + + Source Files + + + \ No newline at end of file diff --git a/PCbuild/bdist_wininst.vcxproj b/PCbuild/bdist_wininst.vcxproj new file mode 100644 index 000000000000..49276a2e41e2 --- /dev/null +++ b/PCbuild/bdist_wininst.vcxproj @@ -0,0 +1,158 @@ + + + + + Release + Win32 + + + Release + x64 + + + + {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C} + wininst + + + + Application + false + NotSet + + + Application + false + NotSet + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + ..\lib\distutils\command\ + false + ..\lib\distutils\command\ + $(SolutionDir)$(PlatformName)-temp-$(Configuration)\$(ProjectName)\ + false + AllRules.ruleset + + + AllRules.ruleset + + + .exe + .exe + + + + NDEBUG;%(PreprocessorDefinitions) + true + true + Win32 + .\..\lib\distutils\command\wininst.tlb + + + + + MinSpace + OnlyExplicitInline + ..\PC\bdist_wininst;..\Include;..\Modules\zlib;%(AdditionalIncludeDirectories) + _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) + true + MultiThreaded + true + Level3 + true + + + NDEBUG;%(PreprocessorDefinitions) + 0x0000 + ..\PC;..\PC\bdist_wininst;..\Include;%(AdditionalIncludeDirectories) + + + comctl32.lib;imagehlp.lib;%(AdditionalDependencies) + ..\lib\distutils\command\wininst-10.0.exe + true + LIBC;%(IgnoreSpecificDefaultLibraries) + ..\lib\distutils\command\wininst-10.0.pdb + Windows + false + + + MachineX86 + + + + + NDEBUG;%(PreprocessorDefinitions) + true + true + X64 + .\..\lib\distutils\command\wininst.tlb + + + + + MinSpace + OnlyExplicitInline + ..\PC\bdist_wininst;..\Include;..\Modules\zlib;%(AdditionalIncludeDirectories) + _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) + true + MultiThreaded + true + Level3 + true + + + NDEBUG;%(PreprocessorDefinitions) + 0x0000 + ..\PC;..\PC\bdist_wininst;..\Include;%(AdditionalIncludeDirectories) + + + comctl32.lib;imagehlp.lib;%(AdditionalDependencies) + ..\lib\distutils\command\wininst-10.0-amd64.exe + true + LIBC;%(IgnoreSpecificDefaultLibraries) + ..\lib\distutils\command\wininst-9.0-amd64.pdb + Windows + false + + + MachineX64 + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/PCbuild/bdist_wininst.vcxproj.filters b/PCbuild/bdist_wininst.vcxproj.filters new file mode 100644 index 000000000000..b4b6a4d514db --- /dev/null +++ b/PCbuild/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/debug.props b/PCbuild/debug.props new file mode 100644 index 000000000000..c36ab561d616 --- /dev/null +++ b/PCbuild/debug.props @@ -0,0 +1,23 @@ + + + + $(OutDir)kill_python_d.exe + + + <_ProjectFileVersion>10.0.30319.1 + $(ProjectName)_d + + + + _DEBUG;%(PreprocessorDefinitions) + + + $(OutDir)$(TargetName)$(TargetExt) + + + + + $(KillPythonExe) + + + \ No newline at end of file diff --git a/PCbuild/kill_python.vcxproj b/PCbuild/kill_python.vcxproj new file mode 100644 index 000000000000..b6d21442c9a6 --- /dev/null +++ b/PCbuild/kill_python.vcxproj @@ -0,0 +1,124 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} + kill_python + Win32Proj + + + + Application + NotSet + true + + + Application + NotSet + + + Application + NotSet + true + + + Application + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .exe + .exe + .exe + .exe + + + + $(OutDir)$(ProjectName)_d.exe + Console + + + + + X64 + + + $(OutDir)$(ProjectName)_d.exe + Console + + + + + Console + + + + + X64 + + + Console + + + + + + + + + \ No newline at end of file diff --git a/PCbuild/kill_python.vcxproj.filters b/PCbuild/kill_python.vcxproj.filters new file mode 100644 index 000000000000..433d75159687 --- /dev/null +++ b/PCbuild/kill_python.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {48606591-c8b6-41a5-95c5-9a0890c5504f} + + + + + Source Files + + + \ No newline at end of file diff --git a/PCbuild/make_buildinfo.vcxproj b/PCbuild/make_buildinfo.vcxproj new file mode 100644 index 000000000000..35a2b0a3acbd --- /dev/null +++ b/PCbuild/make_buildinfo.vcxproj @@ -0,0 +1,54 @@ + + + + + Release + Win32 + + + + {C73F0EC1-358B-4177-940F-0846AC8B04CD} + make_buildinfo + Win32Proj + + + + Application + NotSet + + + + + + + + + + + + <_ProjectFileVersion>10.0.40219.1 + AllRules.ruleset + + + .exe + + + + Disabled + OnlyExplicitInline + _CONSOLE;%(PreprocessorDefinitions) + MultiThreaded + + + $(OutDir)make_buildinfo.exe + $(TargetDir)$(TargetName).pdb + Console + + + + + + + + + \ No newline at end of file diff --git a/PCbuild/make_buildinfo.vcxproj.filters b/PCbuild/make_buildinfo.vcxproj.filters new file mode 100644 index 000000000000..2227f8ce7bd7 --- /dev/null +++ b/PCbuild/make_buildinfo.vcxproj.filters @@ -0,0 +1,14 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx + + + + + Source Files + + + \ No newline at end of file diff --git a/PCbuild/make_versioninfo.vcxproj b/PCbuild/make_versioninfo.vcxproj new file mode 100644 index 000000000000..6e35ef46cc54 --- /dev/null +++ b/PCbuild/make_versioninfo.vcxproj @@ -0,0 +1,197 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {F0E0541E-F17D-430B-97C4-93ADF0DD284E} + make_versioninfo + + + + Application + false + NotSet + + + Application + false + MultiByte + + + Application + + + Application + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.40219.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .exe + .exe + + + + Build PC/pythonnt_rc(_d).h + cd $(SolutionDir) +make_versioninfo.exe > ..\PC\pythonnt_rc.h + + $(SolutionDir)..\PC\pythonnt_rc.h;%(Outputs) + + + MaxSpeed + OnlyExplicitInline + true + %(AdditionalIncludeDirectories) + _CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + $(SolutionDir)make_versioninfo.exe + $(TargetDir)$(TargetName).pdb + Console + 0x1d000000 + + + cd $(SolutionDir) +make_versioninfo.exe > ..\PC\python_nt.h + + + + + + Build PC/pythonnt_rc(_d).h + cd $(SolutionDir) +make_versioninfo.exe > ..\PC\pythonnt_rc.h + + $(SolutionDir)..\PC\pythonnt_rc.h;%(Outputs) + + + MaxSpeed + OnlyExplicitInline + true + _CONSOLE;%(PreprocessorDefinitions) + + + $(SolutionDir)make_versioninfo.exe + + + cd $(SolutionDir) +make_versioninfo.exe > ..\PC\python_nt.h + + + + + + Build PC/pythonnt_rc(_d).h + cd $(SolutionDir) +make_versioninfo_d.exe > ..\PC\pythonnt_rc_d.h + + $(SolutionDir)..\PC\pythonnt_rc_d.h;%(Outputs) + + + Disabled + OnlyExplicitInline + false + %(AdditionalIncludeDirectories) + _CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + $(SolutionDir)make_versioninfo_d.exe + $(TargetDir)$(TargetName).pdb + Console + 0x1d000000 + + + cd $(SolutionDir) +make_versioninfo_d.exe > ..\PC\python_nt_d.h + + + + + + Build PC/pythonnt_rc(_d).h + cd $(SolutionDir) +make_versioninfo_d.exe > ..\PC\pythonnt_rc_d.h + + $(SolutionDir)..\PC\pythonnt_rc_d.h;%(Outputs) + + + X64 + + + Disabled + OnlyExplicitInline + false + _CONSOLE;%(PreprocessorDefinitions) + + + $(SolutionDir)make_versioninfo_d.exe + MachineX64 + + + cd $(SolutionDir) +make_versioninfo_d.exe > ..\PC\python_nt_d.h + + + + + + + + + + \ No newline at end of file diff --git a/PCbuild/make_versioninfo.vcxproj.filters b/PCbuild/make_versioninfo.vcxproj.filters new file mode 100644 index 000000000000..96c0434e8776 --- /dev/null +++ b/PCbuild/make_versioninfo.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {e4180954-c3a5-4749-b9a4-31b804ee4fa8} + + + + + Source Files + + + \ No newline at end of file diff --git a/PCbuild/pcbuild.sln b/PCbuild/pcbuild.sln index bc0758c29c01..97bcecce205b 100644 --- a/PCbuild/pcbuild.sln +++ b/PCbuild/pcbuild.sln @@ -1,153 +1,81 @@ -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} +Microsoft Visual Studio Solution File, Format Version 11.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}") = "make_versioninfo", "make_versioninfo.vcproj", "{F0E0541E-F17D-430B-97C4-93ADF0DD284E}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python", "python.vcxproj", "{B11D750F-CD1F-4A96-85CE-E69A5C5259F9}" 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 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_versioninfo", "make_versioninfo.vcxproj", "{F0E0541E-F17D-430B-97C4-93ADF0DD284E}" 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 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pythoncore", "pythoncore.vcxproj", "{CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}" 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 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pythonw", "pythonw.vcxproj", "{F4229CC3-873C-49AE-9729-DD308ED4CD4A}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_buildinfo", "make_buildinfo.vcproj", "{C73F0EC1-358B-4177-940F-0846AC8B04CD}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "w9xpopen", "w9xpopen.vcxproj", "{E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}" 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 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_buildinfo", "make_buildinfo.vcxproj", "{C73F0EC1-358B-4177-940F-0846AC8B04CD}" 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}") = "winsound", "winsound.vcxproj", "{28B5D777-DDF2-4B6B-B34F-31D938813856}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_decimal", "_decimal.vcproj", "{0E9791DB-593A-465F-98BC-681011311617}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_decimal", "_decimal.vcxproj", "{0E9791DB-593A-465F-98BC-681011311617}" ProjectSection(ProjectDependencies) = postProject {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}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_ctypes", "_ctypes.vcxproj", "{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 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_ctypes_test", "_ctypes_test.vcxproj", "{9EC7190A-249F-4180-A900-548FDCF3055F}" 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}") = "_elementtree", "_elementtree.vcxproj", "{17E1E049-C309-4D79-843F-AE483C264AEA}" 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}") = "_msi", "_msi.vcxproj", "{31FFC478-7B4A-43E8-9954-8D03E2187E9C}" 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}") = "_socket", "_socket.vcxproj", "{86937F53-C189-40EF-8CE8-8759D8E7D480}" 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}") = "_sqlite3", "_sqlite3.vcxproj", "{13CECB97-4119-4316-9D42-8534019A5A44}" 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} - {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0} = {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0} - {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}") = "_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}") = "_testcapi", "_testcapi.vcxproj", "{6901D91C-6E48-4BB7-9FEC-700C8131DF1D}" 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}") = "_tkinter", "_tkinter.vcxproj", "{4946ECAC-2E69-4BF8-A90A-F5136F5094DF}" 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}") = "_bz2", "_bz2.vcxproj", "{73FCD2BD-F133-46B7-8EC1-144CD82A59D5}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_lzma", "_lzma.vcproj", "{F9D71780-F393-11E0-BE50-0800200C9A66}" - ProjectSection(ProjectDependencies) = postProject - {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}") = "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}") = "_lzma", "_lzma.vcxproj", "{F9D71780-F393-11E0-BE50-0800200C9A66}" 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}") = "unicodedata", "unicodedata.vcxproj", "{ECC7CEAC-A5E5-458E-BB9E-2413CC847881}" 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}") = "pyexpat", "pyexpat.vcxproj", "{D06B6426-4762-44CC-8BAD-D79052507F2F}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bdist_wininst", "bdist_wininst.vcproj", "{EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bdist_wininst", "bdist_wininst.vcxproj", "{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} - {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0} = {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0} - {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_hashlib", "_hashlib.vcxproj", "{447F05A8-F581-4CAC-A466-5AC7936E207E}" 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}") = "sqlite3", "sqlite3.vcxproj", "{A1A295E5-463C-437F-81CA-1F32367685DA}" 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}") = "_multiprocessing", "_multiprocessing.vcxproj", "{9E48B300-37D1-11DD-8C41-005056C00008}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssl", "ssl.vcproj", "{E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}" - ProjectSection(ProjectDependencies) = postProject - {B11D750F-CD1F-4A96-85CE-E69A5C5259F9} = {B11D750F-CD1F-4A96-85CE-E69A5C5259F9} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssl", "ssl.vcxproj", "{E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "kill_python", "kill_python.vcproj", "{6DE10744-E396-40A5-B4E2-1B69AA7C8D31}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "kill_python", "kill_python.vcxproj", "{6DE10744-E396-40A5-B4E2-1B69AA7C8D31}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python3dll", "python3dll.vcproj", "{885D4898-D08D-4091-9C40-C700CFE3FC5A}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python3dll", "python3dll.vcxproj", "{885D4898-D08D-4091-9C40-C700CFE3FC5A}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xxlimited", "xxlimited.vcproj", "{F749B822-B489-4CA5-A3AD-CE078F5F338A}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xxlimited", "xxlimited.vcxproj", "{F749B822-B489-4CA5-A3AD-CE078F5F338A}" + ProjectSection(ProjectDependencies) = postProject + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + EndProjectSection EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_testbuffer", "_testbuffer.vcproj", "{A2697BD3-28C1-4AEC-9106-8B748639FD16}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_testbuffer", "_testbuffer.vcxproj", "{A2697BD3-28C1-4AEC-9106-8B748639FD16}" ProjectSection(ProjectDependencies) = postProject {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} EndProjectSection @@ -452,22 +380,6 @@ Global {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 - {F9D71780-F393-11E0-BE50-0800200C9A66}.Debug|Win32.ActiveCfg = Debug|Win32 - {F9D71780-F393-11E0-BE50-0800200C9A66}.Debug|Win32.Build.0 = Debug|Win32 - {F9D71780-F393-11E0-BE50-0800200C9A66}.Debug|x64.ActiveCfg = Debug|x64 - {F9D71780-F393-11E0-BE50-0800200C9A66}.Debug|x64.Build.0 = Debug|x64 - {F9D71780-F393-11E0-BE50-0800200C9A66}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 - {F9D71780-F393-11E0-BE50-0800200C9A66}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 - {F9D71780-F393-11E0-BE50-0800200C9A66}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 - {F9D71780-F393-11E0-BE50-0800200C9A66}.PGInstrument|x64.Build.0 = PGInstrument|x64 - {F9D71780-F393-11E0-BE50-0800200C9A66}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 - {F9D71780-F393-11E0-BE50-0800200C9A66}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 - {F9D71780-F393-11E0-BE50-0800200C9A66}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 - {F9D71780-F393-11E0-BE50-0800200C9A66}.PGUpdate|x64.Build.0 = PGUpdate|x64 - {F9D71780-F393-11E0-BE50-0800200C9A66}.Release|Win32.ActiveCfg = Release|Win32 - {F9D71780-F393-11E0-BE50-0800200C9A66}.Release|Win32.Build.0 = Release|Win32 - {F9D71780-F393-11E0-BE50-0800200C9A66}.Release|x64.ActiveCfg = Release|x64 - {F9D71780-F393-11E0-BE50-0800200C9A66}.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 @@ -484,6 +396,22 @@ Global {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 + {F9D71780-F393-11E0-BE50-0800200C9A66}.Debug|Win32.ActiveCfg = Debug|Win32 + {F9D71780-F393-11E0-BE50-0800200C9A66}.Debug|Win32.Build.0 = Debug|Win32 + {F9D71780-F393-11E0-BE50-0800200C9A66}.Debug|x64.ActiveCfg = Debug|x64 + {F9D71780-F393-11E0-BE50-0800200C9A66}.Debug|x64.Build.0 = Debug|x64 + {F9D71780-F393-11E0-BE50-0800200C9A66}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {F9D71780-F393-11E0-BE50-0800200C9A66}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {F9D71780-F393-11E0-BE50-0800200C9A66}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {F9D71780-F393-11E0-BE50-0800200C9A66}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {F9D71780-F393-11E0-BE50-0800200C9A66}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {F9D71780-F393-11E0-BE50-0800200C9A66}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {F9D71780-F393-11E0-BE50-0800200C9A66}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {F9D71780-F393-11E0-BE50-0800200C9A66}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {F9D71780-F393-11E0-BE50-0800200C9A66}.Release|Win32.ActiveCfg = Release|Win32 + {F9D71780-F393-11E0-BE50-0800200C9A66}.Release|Win32.Build.0 = Release|Win32 + {F9D71780-F393-11E0-BE50-0800200C9A66}.Release|x64.ActiveCfg = Release|x64 + {F9D71780-F393-11E0-BE50-0800200C9A66}.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 diff --git a/PCbuild/pginstrument.props b/PCbuild/pginstrument.props new file mode 100644 index 000000000000..6da27428953f --- /dev/null +++ b/PCbuild/pginstrument.props @@ -0,0 +1,38 @@ + + + + $(SolutionDir)$(Platform)-pgi\ + + + <_ProjectFileVersion>10.0.30319.1 + $(OutDirPGI)\ + $(SolutionDir)$(PlatformName)-temp-pgi\$(ProjectName)\ + + + + MaxSpeed + OnlyExplicitInline + false + Size + true + false + true + true + + + false + + + true + true + PGInstrument + $(SolutionDir)$(Platform)-pgi\$(TargetName).pgd + $(OutDirPGI)\$(TargetName).lib + + + + + $(OutDirPGI) + + + \ No newline at end of file diff --git a/PCbuild/pgupdate.props b/PCbuild/pgupdate.props new file mode 100644 index 000000000000..80ee90b83e84 --- /dev/null +++ b/PCbuild/pgupdate.props @@ -0,0 +1,16 @@ + + + + + + + <_ProjectFileVersion>10.0.30319.1 + $(SolutionDir)$(PlatformName)-pgo\ + + + + %(AdditionalManifestDependencies) + PGUpdate + + + \ No newline at end of file diff --git a/PCbuild/pyd.props b/PCbuild/pyd.props new file mode 100644 index 000000000000..fe58a1c06323 --- /dev/null +++ b/PCbuild/pyd.props @@ -0,0 +1,27 @@ + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + false + false + + + + Py_BUILD_CORE_MODULE;%(PreprocessorDefinitions) + MultiThreadedDLL + + + $(OutDir)$(ProjectName).pyd + $(OutDir)$(ProjectName).pdb + $(OutDir)$(TargetName).lib + + + + + + + \ No newline at end of file diff --git a/PCbuild/pyd_d.props b/PCbuild/pyd_d.props new file mode 100644 index 000000000000..75719984a62a --- /dev/null +++ b/PCbuild/pyd_d.props @@ -0,0 +1,41 @@ + + + + + + + + $(SolutionDir)python_d.exe + + + <_ProjectFileVersion>10.0.30319.1 + false + false + false + .pyd + $(ProjectName)_d + + + + Disabled + Default + false + Py_BUILD_CORE_MODULE;%(PreprocessorDefinitions) + MultiThreadedDebugDLL + + + $(OutDir)$(ProjectName)_d.pyd + $(OutDir)$(ProjectName)_d.pdb + $(OutDir)$(TargetName).lib + + + + + + + + + $(PythonExe) + + + \ No newline at end of file diff --git a/PCbuild/pyexpat.vcxproj b/PCbuild/pyexpat.vcxproj new file mode 100644 index 000000000000..db42129f323d --- /dev/null +++ b/PCbuild/pyexpat.vcxproj @@ -0,0 +1,239 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {D06B6426-4762-44CC-8BAD-D79052507F2F} + pyexpat + Win32Proj + + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .pyd + .pyd + + + + .\..\Modules\expat;%(AdditionalIncludeDirectories) + PYEXPAT_EXPORTS;HAVE_EXPAT_H;XML_NS;XML_DTD;BYTEORDER=1234;XML_CONTEXT_BYTES=1024;XML_STATIC;HAVE_MEMMOVE;%(PreprocessorDefinitions) + + + + + X64 + + + .\..\Modules\expat;%(AdditionalIncludeDirectories) + PYEXPAT_EXPORTS;HAVE_EXPAT_H;XML_NS;XML_DTD;BYTEORDER=1234;XML_CONTEXT_BYTES=1024;XML_STATIC;HAVE_MEMMOVE;%(PreprocessorDefinitions) + + + + + .\..\Modules\expat;%(AdditionalIncludeDirectories) + PYEXPAT_EXPORTS;HAVE_EXPAT_H;XML_NS;XML_DTD;BYTEORDER=1234;XML_CONTEXT_BYTES=1024;XML_STATIC;HAVE_MEMMOVE;%(PreprocessorDefinitions) + + + + + X64 + + + .\..\Modules\expat;%(AdditionalIncludeDirectories) + PYEXPAT_EXPORTS;HAVE_EXPAT_H;XML_NS;XML_DTD;BYTEORDER=1234;XML_CONTEXT_BYTES=1024;XML_STATIC;HAVE_MEMMOVE;%(PreprocessorDefinitions) + + + + + .\..\Modules\expat;%(AdditionalIncludeDirectories) + PYEXPAT_EXPORTS;HAVE_EXPAT_H;XML_NS;XML_DTD;BYTEORDER=1234;XML_CONTEXT_BYTES=1024;XML_STATIC;HAVE_MEMMOVE;%(PreprocessorDefinitions) + + + + + X64 + + + .\..\Modules\expat;%(AdditionalIncludeDirectories) + PYEXPAT_EXPORTS;HAVE_EXPAT_H;XML_NS;XML_DTD;BYTEORDER=1234;XML_CONTEXT_BYTES=1024;XML_STATIC;HAVE_MEMMOVE;%(PreprocessorDefinitions) + + + MachineX64 + + + + + .\..\Modules\expat;%(AdditionalIncludeDirectories) + PYEXPAT_EXPORTS;HAVE_EXPAT_H;XML_NS;XML_DTD;BYTEORDER=1234;XML_CONTEXT_BYTES=1024;XML_STATIC;HAVE_MEMMOVE;%(PreprocessorDefinitions) + + + + + X64 + + + .\..\Modules\expat;%(AdditionalIncludeDirectories) + PYEXPAT_EXPORTS;HAVE_EXPAT_H;XML_NS;XML_DTD;BYTEORDER=1234;XML_CONTEXT_BYTES=1024;XML_STATIC;HAVE_MEMMOVE;%(PreprocessorDefinitions) + + + MachineX64 + + + + + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/pyexpat.vcxproj.filters b/PCbuild/pyexpat.vcxproj.filters new file mode 100644 index 000000000000..abf362fb0bfa --- /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 + + + \ No newline at end of file diff --git a/PCbuild/pyproject.props b/PCbuild/pyproject.props new file mode 100644 index 000000000000..4b7081c960c1 --- /dev/null +++ b/PCbuild/pyproject.props @@ -0,0 +1,96 @@ + + + + python33 + $(SolutionDir)\python.exe + ..\.. + $(externalsDir)\sqlite-3.7.4 + $(externalsDir)\bzip2-1.0.5 + $(externalsDir)\xz-5.0.3 + $(externalsDir)\openssl-1.0.0a + $(externalsDir)\tcltk + $(externalsDir)\tcltk64 + $(tcltkDir)\lib\tcl85.lib;$(tcltkDir)\lib\tk85.lib + $(tcltkDir)\lib\tcl85g.lib;$(tcltkDir)\lib\tk85g.lib + $(tcltk64Dir)\lib\tcl85.lib;$(tcltk64Dir)\lib\tk85.lib + $(tcltk64Dir)\lib\tcl85g.lib;$(tcltk64Dir)\lib\tk85g.lib + + + <_ProjectFileVersion>10.0.30319.1 + $(SolutionDir)\ + $(SolutionDir)$(PlatformName)-temp-$(Configuration)\$(ProjectName)\ + false + .dll + + + + MaxSpeed + OnlyExplicitInline + true + ..\Include; ..\PC;%(AdditionalIncludeDirectories) + _WIN32;%(PreprocessorDefinitions) + true + + + MultiThreaded + true + Level3 + ProgramDatabase + Default + + + $(OutDir);%(AdditionalLibraryDirectories) + true + $(OutDir)$(TargetName).pdb + Windows + false + + + MachineX86 + + + ..\PC;..\Include;%(AdditionalIncludeDirectories) + + + + + $(PyDllName) + + + $(PythonExe) + + + $(externalsDir) + + + $(sqlite3Dir) + + + $(bz2Dir) + + + $(lzmaDir) + + + $(opensslDir) + + + $(tcltkDir) + + + $(tcltk64Dir) + + + $(tcltkLib) + + + $(tcltkLibDebug) + + + $(tcltk64Lib) + + + $(tcltk64LibDebug) + + + diff --git a/PCbuild/python.vcxproj b/PCbuild/python.vcxproj new file mode 100644 index 000000000000..8b551e2182d5 --- /dev/null +++ b/PCbuild/python.vcxproj @@ -0,0 +1,372 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {B11D750F-CD1F-4A96-85CE-E69A5C5259F9} + + + + Application + false + MultiByte + + + Application + false + MultiByte + + + Application + false + NotSet + + + Application + false + MultiByte + + + Application + false + MultiByte + + + Application + false + MultiByte + + + Application + false + MultiByte + + + Application + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .exe + .exe + .exe + .exe + + + + %(AdditionalIncludeDirectories) + _CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + $(OutDir)python.exe + Console + 2000000 + 0x1d000000 + + + + + X64 + + + %(AdditionalIncludeDirectories) + _CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + $(OutDir)python.exe + Console + 2000000 + 0x1d000000 + + + + + Disabled + false + %(AdditionalIncludeDirectories) + _CONSOLE;%(PreprocessorDefinitions) + MultiThreadedDebugDLL + true + Default + + + _DEBUG;%(PreprocessorDefinitions) + 0x0409 + ..\Include;%(AdditionalIncludeDirectories) + + + $(OutDir)python_d.exe + Console + 2000000 + 0x1d000000 + + + + + X64 + + + Disabled + false + %(AdditionalIncludeDirectories) + _CONSOLE;%(PreprocessorDefinitions) + MultiThreadedDebugDLL + true + Default + + + _DEBUG;%(PreprocessorDefinitions) + 0x0409 + ..\Include;%(AdditionalIncludeDirectories) + + + $(OutDir)python_d.exe + Console + 2100000 + 0x1d000000 + + + + + %(AdditionalIncludeDirectories) + _CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + $(OutDir)python.exe + Console + 2000000 + 0x1d000000 + + + + + + + X64 + + + %(AdditionalIncludeDirectories) + _CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + $(OutDir)python.exe + Console + 2000000 + 0x1d000000 + + + MachineX64 + + + + + %(AdditionalIncludeDirectories) + _CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + $(OutDir)python.exe + Console + 2000000 + 0x1d000000 + + + + + + + X64 + + + %(AdditionalIncludeDirectories) + _CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + $(OutDir)python.exe + Console + 2000000 + 0x1d000000 + + + MachineX64 + + + + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + {e9e0a1f6-0009-4e8c-b8f8-1b8f5d49a058} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/python.vcxproj.filters b/PCbuild/python.vcxproj.filters new file mode 100644 index 000000000000..e4906a40d7f7 --- /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 + + + \ No newline at end of file diff --git a/PCbuild/python3dll.vcxproj b/PCbuild/python3dll.vcxproj new file mode 100644 index 000000000000..b3459b5fec14 --- /dev/null +++ b/PCbuild/python3dll.vcxproj @@ -0,0 +1,184 @@ + + + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {885D4898-D08D-4091-9C40-C700CFE3FC5A} + python3dll + Win32Proj + + + + Makefile + + + Makefile + + + Makefile + true + + + Makefile + + + Makefile + + + Makefile + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + cd $(ProjectDir)\..\PC +nmake /f python3.mak MACHINE=x86 OutDir=$(OutDir) + cd $(ProjectDir)\..\PC +nmake /f python3.mak MACHINE=x86 OutDir=$(OutDir) rebuild + cd $(ProjectDir)\..\PC +nmake /f python3.mak MACHINE=x86 OutDir=$(OutDir) clean + $(OutDir)python3.dll + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + cd $(ProjectDir)\..\PC +nmake /f python3.mak MACHINE=x64 OutDir=$(OutDir) + cd $(ProjectDir)\..\PC +nmake /f python3.mak MACHINE=x64 OutDir=$(OutDir) rebuild + cd $(ProjectDir)\..\PC +nmake /f python3.mak MACHINE=x64 OutDir=$(OutDir) clean + $(OutDir)python3.dll + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + cd $(ProjectDir)\..\PC +nmake /f python3.mak MACHINE=x86 OutDir=$(OutDir) + cd $(ProjectDir)\..\PC +nmake /f python3.mak MACHINE=x86 OutDir=$(OutDir) rebuild + cd $(ProjectDir)\..\PC +nmake /f python3.mak MACHINE=x86 OutDir=$(OutDir) clean + $(OutDir)python3.dll + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + cd $(ProjectDir)\..\PC +nmake /f python3.mak MACHINE=x64 OutDir=$(OutDir) + cd $(ProjectDir)\..\PC +nmake /f python3.mak MACHINE=x64 OutDir=$(OutDir) rebuild + cd $(ProjectDir)\..\PC +nmake /f python3.mak MACHINE=x64 OutDir=$(OutDir) clean + $(OutDir)python3.dll + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + cd $(ProjectDir)\..\PC +nmake /f python3.mak MACHINE=x86 OutDir=$(OutDir) + cd $(ProjectDir)\..\PC +nmake /f python3.mak MACHINE=x86 OutDir=$(OutDir) rebuild + cd $(ProjectDir)\..\PC +nmake /f python3.mak MACHINE=x86 OutDir=$(OutDir) clean + $(OutDir)python3.dll + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + cd $(ProjectDir)\..\PC +nmake /f python3.mak MACHINE=x64 OutDir=$(OutDir) + cd $(ProjectDir)\..\PC +nmake /f python3.mak MACHINE=x64 OutDir=$(OutDir) rebuild + cd $(ProjectDir)\..\PC +nmake /f python3.mak MACHINE=x64 OutDir=$(OutDir) clean + $(OutDir)python3.dll + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/PCbuild/python3dll.vcxproj.filters b/PCbuild/python3dll.vcxproj.filters new file mode 100644 index 000000000000..d250c45254e8 --- /dev/null +++ b/PCbuild/python3dll.vcxproj.filters @@ -0,0 +1,32 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hpp;hxx;hm;inl;inc;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav + + + + + Source Files + + + + + Source Files + + + + + Resource Files + + + \ No newline at end of file diff --git a/PCbuild/pythoncore.vcxproj b/PCbuild/pythoncore.vcxproj new file mode 100644 index 000000000000..3d96b105ee8c --- /dev/null +++ b/PCbuild/pythoncore.vcxproj @@ -0,0 +1,703 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} + pythoncore + + + + DynamicLibrary + false + + + DynamicLibrary + false + + + DynamicLibrary + false + NotSet + + + DynamicLibrary + false + + + DynamicLibrary + false + + + DynamicLibrary + false + + + DynamicLibrary + false + + + DynamicLibrary + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + $(PyDllName)_d + $(PyDllName) + $(PyDllName)_d + $(PyDllName) + + + + /Zm200 %(AdditionalOptions) + ..\Python;..\Modules\zlib;%(AdditionalIncludeDirectories) + _USRDLL;Py_BUILD_CORE;Py_ENABLE_SHARED;WIN32;%(PreprocessorDefinitions) + MultiThreadedDLL + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + ..\Include;%(AdditionalIncludeDirectories) + + + Generate build information... + "$(SolutionDir)make_buildinfo.exe" Release "$(IntDir)" + + + $(IntDir)getbuildinfo.o;%(AdditionalDependencies) + $(OutDir)$(PyDllName).dll + libc;%(IgnoreSpecificDefaultLibraries) + $(OutDir)$(PyDllName).pdb + 0x1e000000 + $(OutDir)$(PyDllName).lib + + + + + X64 + + + /Zm200 %(AdditionalOptions) + ..\Python;..\Modules\zlib;%(AdditionalIncludeDirectories) + _USRDLL;Py_BUILD_CORE;Py_ENABLE_SHARED;WIN32;%(PreprocessorDefinitions) + MultiThreadedDLL + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + ..\Include;%(AdditionalIncludeDirectories) + + + Generate build information... + "$(SolutionDir)make_buildinfo.exe" Release "$(IntDir)" + + + $(IntDir)getbuildinfo.o;%(AdditionalDependencies) + $(OutDir)$(PyDllName).dll + libc;%(IgnoreSpecificDefaultLibraries) + $(OutDir)$(PyDllName).pdb + 0x1e000000 + $(OutDir)$(PyDllName).lib + + + + + /Zm200 %(AdditionalOptions) + Disabled + Default + false + ..\Python;..\Modules\zlib;%(AdditionalIncludeDirectories) + _USRDLL;Py_BUILD_CORE;Py_ENABLE_SHARED;WIN32;%(PreprocessorDefinitions) + MultiThreadedDebugDLL + + + _DEBUG;%(PreprocessorDefinitions) + 0x0409 + ..\Include;%(AdditionalIncludeDirectories) + + + Generate build information... + "$(SolutionDir)make_buildinfo.exe" Debug "$(IntDir)" + + + $(IntDir)getbuildinfo.o;%(AdditionalDependencies) + $(OutDir)$(PyDllName)_d.dll + libc;%(IgnoreSpecificDefaultLibraries) + $(OutDir)$(PyDllName)_d.pdb + 0x1e000000 + $(OutDir)$(PyDllName)_d.lib + + + + + X64 + + + /Zm200 %(AdditionalOptions) + Disabled + Default + false + ..\Python;..\Modules\zlib;%(AdditionalIncludeDirectories) + _USRDLL;Py_BUILD_CORE;Py_ENABLE_SHARED;WIN32;%(PreprocessorDefinitions) + MultiThreadedDebugDLL + + + _DEBUG;%(PreprocessorDefinitions) + 0x0409 + ..\Include;%(AdditionalIncludeDirectories) + + + Generate build information... + "$(SolutionDir)make_buildinfo.exe" Debug "$(IntDir)" + + + $(IntDir)getbuildinfo.o;%(AdditionalDependencies) + $(OutDir)$(PyDllName)_d.dll + libc;%(IgnoreSpecificDefaultLibraries) + $(OutDir)$(PyDllName)_d.pdb + 0x1e000000 + $(OutDir)$(PyDllName)_d.lib + + + + + /Zm200 %(AdditionalOptions) + ..\Python;..\Modules\zlib;%(AdditionalIncludeDirectories) + _USRDLL;Py_BUILD_CORE;Py_ENABLE_SHARED;WIN32;%(PreprocessorDefinitions) + MultiThreadedDLL + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + ..\Include;%(AdditionalIncludeDirectories) + + + Generate build information... + "$(SolutionDir)make_buildinfo.exe" Release "$(IntDir)" + + + $(IntDir)getbuildinfo.o;%(AdditionalDependencies) + $(OutDir)$(PyDllName).dll + libc;%(IgnoreSpecificDefaultLibraries) + $(OutDir)$(PyDllName).pdb + 0x1e000000 + $(OutDirPGI)$(PyDllName).lib + + + + + X64 + + + /Zm200 %(AdditionalOptions) + ..\Python;..\Modules\zlib;%(AdditionalIncludeDirectories) + _USRDLL;Py_BUILD_CORE;Py_ENABLE_SHARED;WIN32;%(PreprocessorDefinitions) + MultiThreadedDLL + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + ..\Include;%(AdditionalIncludeDirectories) + + + Generate build information... + "$(SolutionDir)make_buildinfo.exe" Release "$(IntDir)" + + + $(IntDir)getbuildinfo.o;%(AdditionalDependencies) + $(OutDir)$(PyDllName).dll + libc;%(IgnoreSpecificDefaultLibraries) + $(OutDir)$(PyDllName).pdb + 0x1e000000 + $(OutDirPGI)$(PyDllName).lib + MachineX64 + + + + + /Zm200 %(AdditionalOptions) + ..\Python;..\Modules\zlib;%(AdditionalIncludeDirectories) + _USRDLL;Py_BUILD_CORE;Py_ENABLE_SHARED;WIN32;%(PreprocessorDefinitions) + MultiThreadedDLL + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + ..\Include;%(AdditionalIncludeDirectories) + + + Generate build information... + "$(SolutionDir)make_buildinfo.exe" Release "$(IntDir)" + + + $(IntDir)getbuildinfo.o;%(AdditionalDependencies) + $(OutDir)$(PyDllName).dll + libc;%(IgnoreSpecificDefaultLibraries) + $(OutDir)$(PyDllName).pdb + 0x1e000000 + $(OutDirPGI)$(PyDllName).lib + + + + + X64 + + + /Zm200 %(AdditionalOptions) + ..\Python;..\Modules\zlib;%(AdditionalIncludeDirectories) + _USRDLL;Py_BUILD_CORE;Py_ENABLE_SHARED;WIN32;%(PreprocessorDefinitions) + MultiThreadedDLL + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + ..\Include;%(AdditionalIncludeDirectories) + + + Generate build information... + "$(SolutionDir)make_buildinfo.exe" Release "$(IntDir)" + + + $(IntDir)getbuildinfo.o;%(AdditionalDependencies) + $(OutDir)$(PyDllName).dll + libc;%(IgnoreSpecificDefaultLibraries) + $(OutDir)$(PyDllName).pdb + 0x1e000000 + $(OutDirPGI)$(PyDllName).lib + MachineX64 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + _CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) + _CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) + _CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) + _CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {6de10744-e396-40a5-b4e2-1b69aa7c8d31} + false + + + {c73f0ec1-358b-4177-940f-0846ac8b04cd} + false + + + {f0e0541e-f17d-430b-97c4-93adf0dd284e} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/pythoncore.vcxproj.filters b/PCbuild/pythoncore.vcxproj.filters new file mode 100644 index 000000000000..4e8997dc40c3 --- /dev/null +++ b/PCbuild/pythoncore.vcxproj.filters @@ -0,0 +1,932 @@ + + + + + {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 + + + Include + + + Modules + + + Modules + + + Modules + + + Modules\_io + + + 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 + + + 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\_io + + + Modules\_io + + + Modules\_io + + + Modules\_io + + + Modules\_io + + + Modules\_io + + + Modules\_io + + + 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 + + + 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 + + + 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 + + + Python + + + Python + + + PC + + + + + Resource Files + + + \ No newline at end of file diff --git a/PCbuild/pythonw.vcxproj b/PCbuild/pythonw.vcxproj new file mode 100644 index 000000000000..c85e2e4fa1bb --- /dev/null +++ b/PCbuild/pythonw.vcxproj @@ -0,0 +1,350 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {F4229CC3-873C-49AE-9729-DD308ED4CD4A} + + + + Application + false + + + Application + false + + + Application + false + + + Application + false + NotSet + + + Application + false + + + Application + false + + + Application + false + + + Application + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .exe + .exe + .exe + .pyd + + + + Disabled + false + %(AdditionalIncludeDirectories) + _WINDOWS;%(PreprocessorDefinitions) + MultiThreadedDebugDLL + Default + + + _DEBUG;%(PreprocessorDefinitions) + 0x0409 + + + $(OutDir)pythonw_d.exe + 2000000 + 0x1d000000 + MachineX86 + + + + + X64 + + + Disabled + false + %(AdditionalIncludeDirectories) + _WINDOWS;%(PreprocessorDefinitions) + MultiThreadedDebugDLL + Default + + + _DEBUG;%(PreprocessorDefinitions) + 0x0409 + + + $(OutDir)pythonw_d.exe + 2000000 + 0x1d000000 + + + + + %(AdditionalIncludeDirectories) + _WINDOWS;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + $(OutDir)pythonw.exe + 2000000 + 0x1d000000 + MachineX86 + + + + + X64 + + + %(AdditionalIncludeDirectories) + _WINDOWS;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + $(OutDir)pythonw.exe + 2000000 + 0x1d000000 + + + + + %(AdditionalIncludeDirectories) + _WINDOWS;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + $(OutDir)pythonw.exe + 2000000 + 0x1d000000 + + + MachineX86 + + + + + X64 + + + %(AdditionalIncludeDirectories) + _WINDOWS;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + $(OutDir)pythonw.exe + 2000000 + 0x1d000000 + + + MachineX64 + + + + + %(AdditionalIncludeDirectories) + _WINDOWS;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + $(OutDir)pythonw.exe + 2000000 + 0x1d000000 + + + MachineX86 + + + + + X64 + + + %(AdditionalIncludeDirectories) + _WINDOWS;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + $(OutDir)pythonw.exe + 2000000 + 0x1d000000 + + + MachineX64 + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/pythonw.vcxproj.filters b/PCbuild/pythonw.vcxproj.filters new file mode 100644 index 000000000000..259866fbcc2f --- /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 + + + \ No newline at end of file diff --git a/PCbuild/release.props b/PCbuild/release.props new file mode 100644 index 000000000000..356f53dfdbb9 --- /dev/null +++ b/PCbuild/release.props @@ -0,0 +1,19 @@ + + + + $(OutDir)kill_python.exe + + + <_ProjectFileVersion>10.0.30319.1 + + + + NDEBUG;%(PreprocessorDefinitions) + + + + + $(KillPythonExe) + + + \ No newline at end of file diff --git a/PCbuild/select.vcxproj b/PCbuild/select.vcxproj new file mode 100644 index 000000000000..7598b5ba6a13 --- /dev/null +++ b/PCbuild/select.vcxproj @@ -0,0 +1,236 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {18CAE28C-B454-46C1-87A0-493D91D97F03} + select + Win32Proj + + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .pyd + .pyd + + + + wsock32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + X64 + + + wsock32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + wsock32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + X64 + + + wsock32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + wsock32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + X64 + + + wsock32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + MachineX64 + + + + + wsock32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + X64 + + + wsock32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + MachineX64 + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/select.vcxproj.filters b/PCbuild/select.vcxproj.filters new file mode 100644 index 000000000000..55a2fc834a35 --- /dev/null +++ b/PCbuild/select.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {98346077-900c-4c7a-852f-a23470e37b40} + + + + + Source Files + + + \ No newline at end of file diff --git a/PCbuild/sqlite3.props b/PCbuild/sqlite3.props new file mode 100644 index 000000000000..d3ee02cf756d --- /dev/null +++ b/PCbuild/sqlite3.props @@ -0,0 +1,16 @@ + + + + + + + <_ProjectFileVersion>10.0.30319.1 + + + + $(sqlite3Dir);%(AdditionalIncludeDirectories) + SQLITE_API=__declspec(dllexport);%(PreprocessorDefinitions) + Level1 + + + \ No newline at end of file diff --git a/PCbuild/sqlite3.vcxproj b/PCbuild/sqlite3.vcxproj new file mode 100644 index 000000000000..1ce080b1b366 --- /dev/null +++ b/PCbuild/sqlite3.vcxproj @@ -0,0 +1,241 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {A1A295E5-463C-437F-81CA-1F32367685DA} + sqlite3 + Win32Proj + + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .dll + + + + %(AdditionalIncludeDirectories) + + + $(OutDir)$(ProjectName)_d.dll + + + + + X64 + + + %(AdditionalIncludeDirectories) + + + $(OutDir)$(ProjectName)_d.dll + + + + + %(AdditionalIncludeDirectories) + + + $(OutDir)$(ProjectName).dll + + + + + X64 + + + %(AdditionalIncludeDirectories) + + + $(OutDir)$(ProjectName).dll + + + + + $(sqlite3Dir);%(AdditionalIncludeDirectories) + + + $(OutDir)$(ProjectName).dll + + + + + X64 + + + %(AdditionalIncludeDirectories) + + + + + %(AdditionalIncludeDirectories) + + + $(OutDir)$(ProjectName).dll + + + + + X64 + + + %(AdditionalIncludeDirectories) + + + + + + + + + + + + {6de10744-e396-40a5-b4e2-1b69aa7c8d31} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/sqlite3.vcxproj.filters b/PCbuild/sqlite3.vcxproj.filters new file mode 100644 index 000000000000..86680c1c3830 --- /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 + + + \ No newline at end of file diff --git a/PCbuild/ssl.vcxproj b/PCbuild/ssl.vcxproj new file mode 100644 index 000000000000..41fd780c3b3d --- /dev/null +++ b/PCbuild/ssl.vcxproj @@ -0,0 +1,221 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0} + ssl + MakeFileProj + + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + cd "$(SolutionDir)" +"$(PythonExe)" build_ssl.py Release $(Platform) -a + + + + + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + cd "$(SolutionDir)" +"$(PythonExe)" build_ssl.py Release $(Platform) -a + + + + + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + cd "$(SolutionDir)" +"$(PythonExe)" build_ssl.py Release $(Platform) -a + + + + + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + cd "$(SolutionDir)" +"$(PythonExe)" build_ssl.py Release $(Platform) -a + + + + + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + cd "$(SolutionDir)" +"$(PythonExe)" build_ssl.py Release $(Platform) -a + + + + + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + cd "$(SolutionDir)" +"$(PythonExe)" build_ssl.py Release $(Platform) -a + + + + + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + cd "$(SolutionDir)" +"$(PythonExe)" build_ssl.py Release $(Platform) -a + + + + + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + cd "$(SolutionDir)" +"$(PythonExe)" build_ssl.py Release $(Platform) -a + + + + + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + + + + + + {b11d750f-cd1f-4a96-85ce-e69a5c5259f9} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/unicodedata.vcxproj b/PCbuild/unicodedata.vcxproj new file mode 100644 index 000000000000..5dc92e8463aa --- /dev/null +++ b/PCbuild/unicodedata.vcxproj @@ -0,0 +1,224 @@ + + + + + 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 + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .pyd + .pyd + + + + 0x1D120000 + + + + + X64 + + + 0x1D120000 + + + + + 0x1D120000 + + + + + X64 + + + 0x1D120000 + + + + + 0x1D120000 + + + + + X64 + + + 0x1D120000 + MachineX64 + + + + + 0x1D120000 + + + + + X64 + + + 0x1D120000 + MachineX64 + + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/unicodedata.vcxproj.filters b/PCbuild/unicodedata.vcxproj.filters new file mode 100644 index 000000000000..20e640ee11ed --- /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 + + + \ No newline at end of file diff --git a/PCbuild/w9xpopen.vcxproj b/PCbuild/w9xpopen.vcxproj new file mode 100644 index 000000000000..66c9e673bcdf --- /dev/null +++ b/PCbuild/w9xpopen.vcxproj @@ -0,0 +1,263 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058} + w9xpopen + + + + Application + false + MultiByte + + + Application + false + MultiByte + + + Application + false + MultiByte + + + Application + false + NotSet + + + Application + false + MultiByte + + + Application + false + MultiByte + + + Application + false + MultiByte + + + Application + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.40219.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + + + + Disabled + EnableFastChecks + MultiThreadedDebug + + + Console + + + + + X64 + + + Disabled + EnableFastChecks + MultiThreadedDebug + + + Console + + + + + MaxSpeed + OnlyExplicitInline + true + MultiThreaded + true + + + false + Console + + + + + X64 + + + MaxSpeed + OnlyExplicitInline + true + MultiThreaded + true + + + false + Console + + + + + MaxSpeed + OnlyExplicitInline + true + MultiThreaded + true + + + false + Console + + + + + + + X64 + + + MaxSpeed + OnlyExplicitInline + true + MultiThreaded + true + + + false + Console + + + MachineX64 + + + + + MaxSpeed + OnlyExplicitInline + true + MultiThreaded + true + + + false + Console + + + + + + + X64 + + + MaxSpeed + OnlyExplicitInline + true + MultiThreaded + true + + + false + Console + + + MachineX64 + + + + + + + + + \ No newline at end of file diff --git a/PCbuild/w9xpopen.vcxproj.filters b/PCbuild/w9xpopen.vcxproj.filters new file mode 100644 index 000000000000..dec67add2d9b --- /dev/null +++ b/PCbuild/w9xpopen.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {abc2dffd-3f2a-47bd-b89b-0314c99ef21e} + + + + + Source Files + + + \ No newline at end of file diff --git a/PCbuild/winsound.vcxproj b/PCbuild/winsound.vcxproj new file mode 100644 index 000000000000..c373a11648bb --- /dev/null +++ b/PCbuild/winsound.vcxproj @@ -0,0 +1,220 @@ + + + + + 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 + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .pyd + .pyd + + + + winmm.lib;%(AdditionalDependencies) + + + + + X64 + + + winmm.lib;%(AdditionalDependencies) + + + + + winmm.lib;%(AdditionalDependencies) + + + + + X64 + + + winmm.lib;%(AdditionalDependencies) + + + + + winmm.lib;%(AdditionalDependencies) + + + + + X64 + + + winmm.lib;%(AdditionalDependencies) + MachineX64 + + + + + winmm.lib;%(AdditionalDependencies) + + + + + X64 + + + winmm.lib;%(AdditionalDependencies) + MachineX64 + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + \ No newline at end of file diff --git a/PCbuild/winsound.vcxproj.filters b/PCbuild/winsound.vcxproj.filters new file mode 100644 index 000000000000..7d08931b186d --- /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 + + + \ No newline at end of file diff --git a/PCbuild/x64.props b/PCbuild/x64.props new file mode 100644 index 000000000000..e43ff9dd889e --- /dev/null +++ b/PCbuild/x64.props @@ -0,0 +1,26 @@ + + + + $(HOST_PYTHON) + + + <_ProjectFileVersion>10.0.30319.1 + <_PropertySheetDisplayName>amd64 + $(SolutionDir)\amd64\ + $(SolutionDir)$(PlatformName)-temp-$(Configuration)\$(ProjectName)\ + + + + /USECL:MS_OPTERON /GS- %(AdditionalOptions) + _WIN64;_M_X64;%(PreprocessorDefinitions) + + + MachineX64 + + + + + $(PythonExe) + + + \ No newline at end of file diff --git a/PCbuild/xxlimited.vcxproj b/PCbuild/xxlimited.vcxproj new file mode 100644 index 000000000000..b25034ed4bea --- /dev/null +++ b/PCbuild/xxlimited.vcxproj @@ -0,0 +1,191 @@ + + + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {F749B822-B489-4CA5-A3AD-CE078F5F338A} + xxlimited + Win32Proj + + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + DynamicLibrary + NotSet + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + .pyd + .pyd + + + + NDEBUG;_WIN32;_WINDLL;Py_LIMITED_API + + + wsock32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + X64 + + + wsock32.lib;$(OutDir)python33.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + Py_LIMITED_API;%(PreprocessorDefinitions) + + + wsock32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + X64 + + + wsock32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + MachineX64 + + + + + Py_LIMITED_API;%(PreprocessorDefinitions) + + + wsock32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + X64 + + + wsock32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + MachineX64 + + + + + + + + + \ No newline at end of file diff --git a/PCbuild/xxlimited.vcxproj.filters b/PCbuild/xxlimited.vcxproj.filters new file mode 100644 index 000000000000..21db468001d2 --- /dev/null +++ b/PCbuild/xxlimited.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {eb5eebc7-3787-4f8f-b282-204db2962cc3} + + + + + Source Files + + + \ No newline at end of file diff --git a/Python/dynload_win.c b/Python/dynload_win.c index 9c48a2de4f7d..25b6680b3b78 100644 --- a/Python/dynload_win.c +++ b/Python/dynload_win.c @@ -12,8 +12,10 @@ #include // "activation context" magic - see dl_nt.c... +#if HAVE_SXS extern ULONG_PTR _Py_ActivateActCtx(); void _Py_DeactivateActCtx(ULONG_PTR cookie); +#endif const char *_PyImport_DynLoadFiletab[] = { #ifdef _DEBUG @@ -191,18 +193,24 @@ dl_funcptr _PyImport_GetDynLoadWindows(const char *shortname, { HINSTANCE hDLL = NULL; unsigned int old_mode; +#if HAVE_SXS ULONG_PTR cookie = 0; +#endif /* Don't display a message box when Python can't load a DLL */ old_mode = SetErrorMode(SEM_FAILCRITICALERRORS); +#if HAVE_SXS cookie = _Py_ActivateActCtx(); +#endif /* We use LoadLibraryEx so Windows looks for dependent DLLs in directory of pathname first. */ /* XXX This call doesn't exist in Windows CE */ hDLL = LoadLibraryExW(wpathname, NULL, LOAD_WITH_ALTERED_SEARCH_PATH); +#if HAVE_SXS _Py_DeactivateActCtx(cookie); +#endif /* restore old error mode settings */ SetErrorMode(old_mode); diff --git a/Tools/buildbot/build-amd64.bat b/Tools/buildbot/build-amd64.bat index 5175c6231e7f..18bf3f5bb971 100644 --- a/Tools/buildbot/build-amd64.bat +++ b/Tools/buildbot/build-amd64.bat @@ -1,6 +1,6 @@ @rem Used by the buildbot "compile" step. cmd /c Tools\buildbot\external-amd64.bat -call "%VS90COMNTOOLS%\..\..\VC\vcvarsall.bat" x86_amd64 +call "%VS100COMNTOOLS%\..\..\VC\vcvarsall.bat" x86_amd64 cmd /c Tools\buildbot\clean-amd64.bat vcbuild /useenv PCbuild\kill_python.vcproj "Debug|x64" && PCbuild\amd64\kill_python_d.exe vcbuild PCbuild\pcbuild.sln "Debug|x64" diff --git a/Tools/buildbot/build.bat b/Tools/buildbot/build.bat index ab3ea7da46a7..d9abc11bb995 100644 --- a/Tools/buildbot/build.bat +++ b/Tools/buildbot/build.bat @@ -1,6 +1,6 @@ @rem Used by the buildbot "compile" step. cmd /c Tools\buildbot\external.bat -call "%VS90COMNTOOLS%vsvars32.bat" +call "%VS100COMNTOOLS%vsvars32.bat" cmd /c Tools\buildbot\clean.bat vcbuild /useenv PCbuild\kill_python.vcproj "Debug|Win32" && PCbuild\kill_python_d.exe vcbuild /useenv PCbuild\pcbuild.sln "Debug|Win32" diff --git a/Tools/buildbot/buildmsi.bat b/Tools/buildbot/buildmsi.bat index 4430cb86c562..7e59b5448650 100644 --- a/Tools/buildbot/buildmsi.bat +++ b/Tools/buildbot/buildmsi.bat @@ -2,7 +2,7 @@ cmd /c Tools\buildbot\external.bat @rem build release versions of things -call "%VS90COMNTOOLS%vsvars32.bat" +call "%VS100COMNTOOLS%vsvars32.bat" @rem build Python vcbuild /useenv PCbuild\pcbuild.sln "Release|Win32" diff --git a/Tools/buildbot/clean-amd64.bat b/Tools/buildbot/clean-amd64.bat index 715805a7c115..7b612fe2eef7 100644 --- a/Tools/buildbot/clean-amd64.bat +++ b/Tools/buildbot/clean-amd64.bat @@ -1,5 +1,5 @@ @rem Used by the buildbot "clean" step. -call "%VS90COMNTOOLS%\..\..\VC\vcvarsall.bat" x86_amd64 +call "%VS100COMNTOOLS%\..\..\VC\vcvarsall.bat" x86_amd64 @echo Deleting .pyc/.pyo files ... del /s Lib\*.pyc Lib\*.pyo @echo Deleting test leftovers ... diff --git a/Tools/buildbot/clean.bat b/Tools/buildbot/clean.bat index 5c8f33eccaac..2c12c3e08dd7 100644 --- a/Tools/buildbot/clean.bat +++ b/Tools/buildbot/clean.bat @@ -1,5 +1,5 @@ @rem Used by the buildbot "clean" step. -call "%VS90COMNTOOLS%vsvars32.bat" +call "%VS100COMNTOOLS%vsvars32.bat" @echo Deleting .pyc/.pyo files ... del /s Lib\*.pyc Lib\*.pyo @echo Deleting test leftovers ... diff --git a/Tools/buildbot/external-amd64.bat b/Tools/buildbot/external-amd64.bat index 954238ed5d18..dfd5b38249f7 100644 --- a/Tools/buildbot/external-amd64.bat +++ b/Tools/buildbot/external-amd64.bat @@ -2,7 +2,7 @@ @rem Assume we start inside the Python source directory call "Tools\buildbot\external-common.bat" -call "%VS90COMNTOOLS%\..\..\VC\vcvarsall.bat" x86_amd64 +call "%VS100COMNTOOLS%\..\..\VC\vcvarsall.bat" x86_amd64 if not exist tcltk64\bin\tcl85g.dll ( cd tcl-8.5.9.0\win diff --git a/Tools/buildbot/external-common.bat b/Tools/buildbot/external-common.bat index 244d5f581b8b..118871cfceb2 100644 --- a/Tools/buildbot/external-common.bat +++ b/Tools/buildbot/external-common.bat @@ -30,11 +30,11 @@ if not exist db-4.4.20 svn export http://svn.python.org/projects/external/db-4.4 if not exist openssl-1.0.0a svn export http://svn.python.org/projects/external/openssl-1.0.0a @rem tcl/tk -if not exist tcl-8.5.9.0 ( +if not exist tcl-8.5.11.0 ( rd /s/q tcltk tcltk64 - svn export http://svn.python.org/projects/external/tcl-8.5.9.0 + svn export http://svn.python.org/projects/external/tcl-8.5.11.0 ) -if not exist tk-8.5.9.0 svn export http://svn.python.org/projects/external/tk-8.5.9.0 +if not exist tk-8.5.11.0 svn export http://svn.python.org/projects/external/tk-8.5.11.0 @rem sqlite3 if not exist sqlite-3.7.4 ( diff --git a/Tools/buildbot/external.bat b/Tools/buildbot/external.bat index e958fd68a47b..ed5c10e8350d 100644 --- a/Tools/buildbot/external.bat +++ b/Tools/buildbot/external.bat @@ -2,20 +2,20 @@ @rem Assume we start inside the Python source directory call "Tools\buildbot\external-common.bat" -call "%VS90COMNTOOLS%\vsvars32.bat" +call "%VS100COMNTOOLS%\vsvars32.bat" if not exist tcltk\bin\tcl85g.dll ( @rem all and install need to be separate invocations, otherwise nmakehlp is not found on install - cd tcl-8.5.9.0\win + cd tcl-8.5.11.0\win nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 DEBUG=1 INSTALLDIR=..\..\tcltk clean all nmake -f makefile.vc DEBUG=1 INSTALLDIR=..\..\tcltk install cd ..\.. ) if not exist tcltk\bin\tk85g.dll ( - cd tk-8.5.9.0\win - nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 OPTS=noxp DEBUG=1 INSTALLDIR=..\..\tcltk TCLDIR=..\..\tcl-8.5.9.0 clean - nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 OPTS=noxp DEBUG=1 INSTALLDIR=..\..\tcltk TCLDIR=..\..\tcl-8.5.9.0 all - nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 OPTS=noxp DEBUG=1 INSTALLDIR=..\..\tcltk TCLDIR=..\..\tcl-8.5.9.0 install + cd tk-8.5.11.0\win + nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 OPTS=noxp DEBUG=1 INSTALLDIR=..\..\tcltk TCLDIR=..\..\tcl-8.5.11.0 clean + nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 OPTS=noxp DEBUG=1 INSTALLDIR=..\..\tcltk TCLDIR=..\..\tcl-8.5.11.0 all + nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 OPTS=noxp DEBUG=1 INSTALLDIR=..\..\tcltk TCLDIR=..\..\tcl-8.5.11.0 install cd ..\.. ) diff --git a/Tools/msi/msi.py b/Tools/msi/msi.py index 695a103380d1..c29e6cad67e2 100644 --- a/Tools/msi/msi.py +++ b/Tools/msi/msi.py @@ -27,7 +27,7 @@ have_tcl = True # path to PCbuild directory PCBUILD="PCbuild" # msvcrt version -MSVCR = "90" +MSVCR = "100" # Name of certificate in default store to sign MSI with certname = None # Make a zip file containing the PDB files for this build? @@ -872,26 +872,23 @@ def add_features(db): parent = default_feature, attributes=2|8, level=2) -def extract_msvcr90(): +def extract_msvcr100(): # Find the redistributable files if msilib.Win64: arch = "amd64" else: arch = "x86" - dir = os.path.join(os.environ['VS90COMNTOOLS'], r"..\..\VC\redist\%s\Microsoft.VC90.CRT" % arch) + dir = os.path.join(os.environ['VS100COMNTOOLS'], r"..\..\VC\redist\%s\Microsoft.VC100.CRT" % arch) result = [] installer = msilib.MakeInstaller() - # omit msvcm90 and msvcp90, as they aren't really needed - files = ["Microsoft.VC90.CRT.manifest", "msvcr90.dll"] - for f in files: - path = os.path.join(dir, f) - kw = {'src':path} - if f.endswith('.dll'): - kw['version'] = installer.FileVersion(path, 0) - kw['language'] = installer.FileVersion(path, 1) - result.append((f, kw)) - return result + # At least for VS2010, manifests are no longer provided + name = "msvcr100.dll" + path = os.path.join(dir, name) + kw = {'src':path} + kw['version'] = installer.FileVersion(path, 0) + kw['language'] = installer.FileVersion(path, 1) + return name, kw def generate_license(): import shutil, glob @@ -981,9 +978,8 @@ def add_files(db): # pointing to the root directory root.start_component("msvcr90", feature=private_crt) # Results are ID,keyword pairs - manifest, crtdll = extract_msvcr90() - root.add_file(manifest[0], **manifest[1]) - root.add_file(crtdll[0], **crtdll[1]) + crtdll, kwds = extract_msvcr100() + root.add_file(crtdll, **kwds) # Copy the manifest # Actually, don't do that anymore - no DLL in DLLs should have a manifest # dependency on msvcr90.dll anymore, so this should not be necessary @@ -1317,9 +1313,9 @@ finally: # Merge CRT into MSI file. This requires the database to be closed. mod_dir = os.path.join(os.environ["ProgramFiles"], "Common Files", "Merge Modules") if msilib.Win64: - modules = ["Microsoft_VC90_CRT_x86_x64.msm", "policy_9_0_Microsoft_VC90_CRT_x86_x64.msm"] + modules = ["Microsoft_VC100_CRT_x64.msm"] else: - modules = ["Microsoft_VC90_CRT_x86.msm","policy_9_0_Microsoft_VC90_CRT_x86.msm"] + modules = ["Microsoft_VC100_CRT_x86.msm"] for i, n in enumerate(modules): modules[i] = os.path.join(mod_dir, n) -- 2.47.3