# HG changeset patch # User Steve Dower # Date 1416689697 28800 # Sat Nov 22 12:54:57 2014 -0800 # Branch Projects # Node ID 73d74d6d28a3729c5738c7125b2fd49ab3e1ab55 # Parent 406965684327faf9947b397d3a9c189b7dd47625 Simplifies and streamlines PCBuild projects and enables building with newer MSVC versions. diff --git a/.gitignore b/.gitignore --- a/.gitignore +++ b/.gitignore @@ -31,23 +31,26 @@ Programs/_testembed PC/python_nt*.h PC/pythonnt_rc*.h -PCbuild/*.bsc -PCbuild/*.dll -PCbuild/*.exe -PCbuild/*.exp -PCbuild/*.lib -PCbuild/*.ncb -PCbuild/*.o -PCbuild/*.pdb +PC/*/*.exe +PC/*/*.exp +PC/*/*.lib +PC/*/*.bsc +PC/*/*.dll +PC/*/*.pdb +PC/*/*.user +PC/*/*.ncb +PC/*/*.suo +PC/*/Win32-temp-* +PC/*/x64-temp-* +PC/*/amd64 PCbuild/*.user PCbuild/*.suo PCbuild/*.*sdf -PCbuild/Win32-temp-* -PCbuild/x64-temp-* PCbuild/*-pgi PCbuild/*-pgo PCbuild/amd64/ -PCbuild/ipch +PCbuild/obj +PCBuild/win32 .purify Parser/pgen __pycache__ @@ -82,3 +85,5 @@ coverage/ externals/ htmlcov/ +Tools/ssl/amd64 +Tools/ssl/win32 diff --git a/.hgignore b/.hgignore --- a/.hgignore +++ b/.hgignore @@ -54,8 +54,6 @@ Misc/*.wpu PC/python_nt*.h PC/pythonnt_rc*.h -PC/*.obj -PC/*.exe PC/*/*.exe PC/*/*.exp PC/*/*.lib @@ -68,23 +66,14 @@ PC/*/Win32-temp-* PC/*/x64-temp-* PC/*/amd64 -PCbuild/*.exe -PCbuild/*.dll -PCbuild/*.pdb -PCbuild/*.lib -PCbuild/*.exp -PCbuild/*.o -PCbuild/*.ncb -PCbuild/*.bsc PCbuild/*.user PCbuild/*.suo PCbuild/*.*sdf -PCbuild/Win32-temp-* -PCbuild/x64-temp-* PCbuild/*-pgi PCbuild/*-pgo PCbuild/amd64 -PCbuild/ipch +PCbuild/obj +PCbuild/win32 Tools/unicode/build/ Tools/unicode/MAPPINGS/ BuildLog.htm @@ -99,3 +88,5 @@ *.gcno *.gcov coverage.info +Tools/ssl/amd64 +Tools/ssl/win32 diff --git a/PC/VS10.0/_bz2.vcxproj b/PC/VS10.0/_bz2.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_bz2.vcxproj @@ -0,0 +1,261 @@ + + + + + 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 + + + + + + $(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/PC/VS10.0/_bz2.vcxproj.filters b/PC/VS10.0/_bz2.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_bz2.vcxproj.filters @@ -0,0 +1,48 @@ + + + + + {f53a859d-dad2-4d5b-ae41-f28d8b571f5a} + + + {7e0bed05-ae33-43b7-8797-656455bbb7f3} + + + {ed574b89-6983-4cdf-9f98-fe7048d9e89c} + + + + + Source Files + + + bzip2 1.0.6 Source Files + + + bzip2 1.0.6 Source Files + + + bzip2 1.0.6 Source Files + + + bzip2 1.0.6 Source Files + + + bzip2 1.0.6 Source Files + + + bzip2 1.0.6 Source Files + + + bzip2 1.0.6 Source Files + + + + + bzip2 1.0.6 Header Files + + + bzip2 1.0.6 Header Files + + + diff --git a/PC/VS10.0/_ctypes.vcxproj b/PC/VS10.0/_ctypes.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_ctypes.vcxproj @@ -0,0 +1,294 @@ + + + + + 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 + + + + + + ..\Modules\_ctypes\libffi_msvc;%(AdditionalIncludeDirectories) + + + 0x1D1A0000 + + + + + X64 + + + ..\Modules\_ctypes\libffi_msvc;%(AdditionalIncludeDirectories) + + + 0x1D1A0000 + + + + + ..\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 + + + + + ..\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) + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + + + + + + \ No newline at end of file diff --git a/PC/VS10.0/_ctypes.vcxproj.filters b/PC/VS10.0/_ctypes.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_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/PC/VS10.0/_ctypes_test.vcxproj b/PC/VS10.0/_ctypes_test.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_ctypes_test.vcxproj @@ -0,0 +1,192 @@ + + + + + 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 + + + + + + X64 + + + + + X64 + + + + + X64 + + + MachineX64 + + + + + X64 + + + MachineX64 + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + + + + + + \ No newline at end of file diff --git a/PC/VS10.0/_ctypes_test.vcxproj.filters b/PC/VS10.0/_ctypes_test.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_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/PC/VS10.0/_decimal.vcxproj b/PC/VS10.0/_decimal.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_decimal.vcxproj @@ -0,0 +1,308 @@ + + + + + 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 + + + + + + /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 + + + + + /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 + + + + + /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) + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + + + + + + \ No newline at end of file diff --git a/PC/VS10.0/_decimal.vcxproj.filters b/PC/VS10.0/_decimal.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_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/PC/VS10.0/_elementtree.vcxproj b/PC/VS10.0/_elementtree.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_elementtree.vcxproj @@ -0,0 +1,270 @@ + + + + + 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 + + + + + + ..\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/PC/VS10.0/_elementtree.vcxproj.filters b/PC/VS10.0/_elementtree.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_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/PC/VS10.0/_freeze_importlib.vcxproj b/PC/VS10.0/_freeze_importlib.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_freeze_importlib.vcxproj @@ -0,0 +1,188 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {19C0C13F-47CA-4432-AFF3-799A296A4DDC} + Win32Proj + _freeze_importlib + + + + Application + true + Unicode + + + Application + true + Unicode + + + Application + false + true + Unicode + + + Application + false + true + Unicode + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + true + + + false + + + false + + + + + + Level3 + Disabled + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + + + Console + true + + + $(TargetPath) ..\Lib\importlib\_bootstrap.py ..\Python\importlib.h + + + creating importlib.h + + + + + + + Level3 + Disabled + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + + + Console + true + + + $(TargetPath) ..\Lib\importlib\_bootstrap.py ..\Python\importlib.h + + + creating importlib.h + + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + + + Console + true + true + true + + + $(TargetPath) ..\Lib\importlib\_bootstrap.py ..\Python\importlib.h + + + creating importlib.h + + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + + + Console + true + true + true + + + $(TargetPath) ..\Lib\importlib\_bootstrap.py ..\Python\importlib.h + + + creating importlib.h + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + true + true + false + true + false + + + + + + + + + diff --git a/PC/VS10.0/_freeze_importlib.vcxproj.filters b/PC/VS10.0/_freeze_importlib.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_freeze_importlib.vcxproj.filters @@ -0,0 +1,27 @@ + + + + + {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;mfcribbon-ms + + + + + Source Files + + + + + Source Files + + + diff --git a/PC/VS10.0/_hashlib.vcxproj b/PC/VS10.0/_hashlib.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_hashlib.vcxproj @@ -0,0 +1,282 @@ + + + + + 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 + + + + + + $(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/PC/VS10.0/_hashlib.vcxproj.filters b/PC/VS10.0/_hashlib.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_hashlib.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {cc45963d-bd25-4eb8-bdba-a5507090bca4} + + + + + Source Files + + + \ No newline at end of file diff --git a/PC/VS10.0/_lzma.vcxproj b/PC/VS10.0/_lzma.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_lzma.vcxproj @@ -0,0 +1,250 @@ + + + + + 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 + + + + + + $(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/PC/VS10.0/_lzma.vcxproj.filters b/PC/VS10.0/_lzma.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_lzma.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {53e68eda-39fc-4336-a658-dc5f5d598760} + + + + + Source Files + + + \ No newline at end of file diff --git a/PC/VS10.0/_msi.vcxproj b/PC/VS10.0/_msi.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_msi.vcxproj @@ -0,0 +1,226 @@ + + + + + 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 + + + + + + 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/PC/VS10.0/_msi.vcxproj.filters b/PC/VS10.0/_msi.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_msi.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {bdef7710-e433-4ac0-84e0-14f34454bd3e} + + + + + Source Files + + + \ No newline at end of file diff --git a/PC/VS10.0/_multiprocessing.vcxproj b/PC/VS10.0/_multiprocessing.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_multiprocessing.vcxproj @@ -0,0 +1,230 @@ + + + + + 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 + + + + + + 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/PC/VS10.0/_multiprocessing.vcxproj.filters b/PC/VS10.0/_multiprocessing.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_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/PC/VS10.0/_overlapped.vcxproj b/PC/VS10.0/_overlapped.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_overlapped.vcxproj @@ -0,0 +1,234 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {EB6E69DD-04BF-4543-9B92-49FAABCEAC2E} + _overlapped + 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 + + + + + + ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + X64 + + + ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + X64 + + + ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + X64 + + + ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + MachineX64 + + + + + ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + X64 + + + ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + MachineX64 + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + \ No newline at end of file diff --git a/PC/VS10.0/_overlapped.vcxproj.filters b/PC/VS10.0/_overlapped.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_overlapped.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {6f67c8db-7de7-4714-a967-2b0d4bc71f2e} + + + + + Source Files + + + \ No newline at end of file diff --git a/PC/VS10.0/_socket.vcxproj b/PC/VS10.0/_socket.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_socket.vcxproj @@ -0,0 +1,229 @@ + + + + + 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 + + + + + + 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/PC/VS10.0/_socket.vcxproj.filters b/PC/VS10.0/_socket.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_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/PC/VS10.0/_sqlite3.vcxproj b/PC/VS10.0/_sqlite3.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_sqlite3.vcxproj @@ -0,0 +1,273 @@ + + + + + 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 + + + + + + $(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/PC/VS10.0/_sqlite3.vcxproj.filters b/PC/VS10.0/_sqlite3.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_sqlite3.vcxproj.filters @@ -0,0 +1,69 @@ + + + + + {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 + + + + + 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/PC/VS10.0/_ssl.vcxproj b/PC/VS10.0/_ssl.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_ssl.vcxproj @@ -0,0 +1,286 @@ + + + + + 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 + + + + + + $(opensslDir)\inc32;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;crypt32.lib;$(opensslDir)\out32\libeay32.lib;$(opensslDir)\out32\ssleay32.lib;%(AdditionalDependencies) + + + + + X64 + + + $(opensslDir)\inc64;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;crypt32.lib;$(opensslDir)\out64\libeay32.lib;$(opensslDir)\out64\ssleay32.lib;%(AdditionalDependencies) + + + + + $(opensslDir)\inc32;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;crypt32.lib;$(opensslDir)\out32\libeay32.lib;$(opensslDir)\out32\ssleay32.lib;%(AdditionalDependencies) + + + + + X64 + + + $(opensslDir)\inc64;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;crypt32.lib;$(opensslDir)\out64\libeay32.lib;$(opensslDir)\out64\ssleay32.lib;%(AdditionalDependencies) + + + + + $(opensslDir)\inc32;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;crypt32.lib;$(opensslDir)\out32\libeay32.lib;$(opensslDir)\out32\ssleay32.lib;%(AdditionalDependencies) + + + + + X64 + + + $(opensslDir)\inc64;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;crypt32.lib;$(opensslDir)\out64\libeay32.lib;$(opensslDir)\out64\ssleay32.lib;%(AdditionalDependencies) + MachineX64 + + + + + $(opensslDir)\inc32;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;crypt32.lib;$(opensslDir)\out32\libeay32.lib;$(opensslDir)\out32\ssleay32.lib;%(AdditionalDependencies) + + + + + X64 + + + $(opensslDir)\inc64;%(AdditionalIncludeDirectories) + + + + + + + ws2_32.lib;crypt32.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/PC/VS10.0/_ssl.vcxproj.filters b/PC/VS10.0/_ssl.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_ssl.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {695348f7-e9f6-4fe1-bc03-5f08ffc8095b} + + + + + Source Files + + + \ No newline at end of file diff --git a/PC/VS10.0/_testbuffer.vcxproj b/PC/VS10.0/_testbuffer.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_testbuffer.vcxproj @@ -0,0 +1,217 @@ + + + + + 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 + + + + + + 0x1e1F0000 + + + + + X64 + + + 0x1e1F0000 + + + + + 0x1e1F0000 + + + + + X64 + + + 0x1e1F0000 + + + + + 0x1e1F0000 + + + + + X64 + + + 0x1e1F0000 + MachineX64 + + + + + 0x1e1F0000 + + + + + X64 + + + 0x1e1F0000 + MachineX64 + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + + + + + + \ No newline at end of file diff --git a/PC/VS10.0/_testbuffer.vcxproj.filters b/PC/VS10.0/_testbuffer.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_testbuffer.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {8d232240-921a-4bc2-87c3-93ffd3462f0a} + + + + + Source Files + + + \ No newline at end of file diff --git a/PC/VS10.0/_testcapi.vcxproj b/PC/VS10.0/_testcapi.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_testcapi.vcxproj @@ -0,0 +1,218 @@ + + + + + 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 + + + + + + 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/PC/VS10.0/_testcapi.vcxproj.filters b/PC/VS10.0/_testcapi.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_testcapi.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {a76a90d8-8e8b-4c36-8f58-8bd46abe9f5e} + + + + + Source Files + + + \ No newline at end of file diff --git a/PC/VS10.0/_testembed.vcxproj b/PC/VS10.0/_testembed.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_testembed.vcxproj @@ -0,0 +1,161 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {6DAC66D9-E703-4624-BE03-49112AB5AA62} + Win32Proj + _testembed + + + + Application + true + Unicode + + + Application + true + Unicode + + + Application + false + true + Unicode + + + Application + false + true + Unicode + + + + + + + + + + + + + + + + + + + + + + + + + + + false + + + false + + + false + + + false + + + + + + Level3 + Disabled + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + + + Console + true + + + + + + + Level3 + Disabled + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + + + Console + true + + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + + + Console + true + true + true + + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + + + Console + true + true + true + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + true + true + false + true + false + + + + + + \ No newline at end of file diff --git a/PC/VS10.0/_testembed.vcxproj.filters b/PC/VS10.0/_testembed.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_testembed.vcxproj.filters @@ -0,0 +1,22 @@ + + + + + {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;mfcribbon-ms + + + + + Source Files + + + \ No newline at end of file diff --git a/PC/VS10.0/_testimportmultiple.vcxproj b/PC/VS10.0/_testimportmultiple.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_testimportmultiple.vcxproj @@ -0,0 +1,218 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781} + _testimportmultiple + 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 + + + + + + 0x1e1F0000 + + + + + X64 + + + 0x1e1F0000 + + + + + 0x1e1F0000 + + + + + X64 + + + 0x1e1F0000 + + + + + 0x1e1F0000 + + + + + X64 + + + 0x1e1F0000 + MachineX64 + + + + + 0x1e1F0000 + + + + + X64 + + + 0x1e1F0000 + MachineX64 + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + diff --git a/PC/VS10.0/_testimportmultiple.vcxproj.filters b/PC/VS10.0/_testimportmultiple.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_testimportmultiple.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {1ec38ad9-1abf-4b80-8628-ac43ccba324b} + + + + + Source Files + + + diff --git a/PC/VS10.0/_tkinter.vcxproj b/PC/VS10.0/_tkinter.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_tkinter.vcxproj @@ -0,0 +1,265 @@ + + + + + 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 + + + + + + $(tcltkDir)\include;%(AdditionalIncludeDirectories) + WITH_APPINIT;%(PreprocessorDefinitions) + + + $(tcltkLib);%(AdditionalDependencies) + + + + + X64 + + + $(tcltkDir)\include;%(AdditionalIncludeDirectories) + WITH_APPINIT;%(PreprocessorDefinitions) + + + $(tcltkLib);%(AdditionalDependencies) + + + + + $(tcltkDir)\include;%(AdditionalIncludeDirectories) + WITH_APPINIT;%(PreprocessorDefinitions) + + + $(tcltkLib);%(AdditionalDependencies) + + + + + X64 + + + $(tcltkDir)\include;%(AdditionalIncludeDirectories) + WITH_APPINIT;%(PreprocessorDefinitions) + + + $(tcltkLib);%(AdditionalDependencies) + + + + + $(tcltkDir)\include;%(AdditionalIncludeDirectories) + WITH_APPINIT;%(PreprocessorDefinitions) + + + $(tcltkLib);%(AdditionalDependencies) + + + + + X64 + + + $(tcltkDir)\include;%(AdditionalIncludeDirectories) + WITH_APPINIT;%(PreprocessorDefinitions) + + + $(tcltkLib);%(AdditionalDependencies) + MachineX64 + + + + + $(tcltkDir)\include;%(AdditionalIncludeDirectories) + WITH_APPINIT;%(PreprocessorDefinitions) + + + $(tcltkLib);%(AdditionalDependencies) + + + + + X64 + + + $(tcltkDir)\include;%(AdditionalIncludeDirectories) + WITH_APPINIT;%(PreprocessorDefinitions) + + + $(tcltkLib);%(AdditionalDependencies) + MachineX64 + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + {b5fd6f1d-129e-4bff-9340-03606fac7283} + + + {7e85eccf-a72c-4da4-9e52-884508e80ba1} + + + + + + \ No newline at end of file diff --git a/PC/VS10.0/_tkinter.vcxproj.filters b/PC/VS10.0/_tkinter.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/_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/PC/VS10.0/bdist_wininst.vcxproj b/PC/VS10.0/bdist_wininst.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/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/PC/VS10.0/bdist_wininst.vcxproj.filters b/PC/VS10.0/bdist_wininst.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/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/PC/VS10.0/build.bat b/PC/VS10.0/build.bat new file mode 100644 --- /dev/null +++ b/PC/VS10.0/build.bat @@ -0,0 +1,34 @@ +@echo off +rem A batch program to build or rebuild a particular configuration, +rem just for convenience. + +rem Arguments: +rem -c Set the configuration (default: Release) +rem -p Set the platform (x64 or Win32, default: Win32) +rem -r Target Rebuild instead of Build +rem -d Set the configuration to Debug +rem -e Pull in external libraries using get_externals.bat + +setlocal +set platf=Win32 +set conf=Release +set target=Build +set dir=%~dp0 + +:CheckOpts +if '%1'=='-c' (set conf=%2) & shift & shift & goto CheckOpts +if '%1'=='-p' (set platf=%2) & shift & shift & goto CheckOpts +if '%1'=='-r' (set target=Rebuild) & shift & goto CheckOpts +if '%1'=='-d' (set conf=Debug) & shift & goto CheckOpts +if '%1'=='-e' call "%dir%get_externals.bat" & shift & goto CheckOpts + +if '%platf%'=='x64' (set vs_platf=x86_amd64) + +rem Setup the environment +call "%VS100COMNTOOLS%..\..\VC\vcvarsall.bat" %vs_platf% + +rem Call on MSBuild to do the work, echo the command. +rem Passing %1-9 is not the preferred option, but argument parsing in +rem batch is, shall we say, "lackluster" +echo on +msbuild "%dir%pcbuild.sln" /t:%target% /p:Configuration=%conf% /p:Platform=%platf% %1 %2 %3 %4 %5 %6 %7 %8 %9 diff --git a/PC/VS10.0/build_env.bat b/PC/VS10.0/build_env.bat new file mode 100644 --- /dev/null +++ b/PC/VS10.0/build_env.bat @@ -0,0 +1,1 @@ +@%comspec% /k env.bat %* diff --git a/PC/VS10.0/build_pgo.bat b/PC/VS10.0/build_pgo.bat new file mode 100644 --- /dev/null +++ b/PC/VS10.0/build_pgo.bat @@ -0,0 +1,48 @@ +@echo off +rem A batch program to build PGO (Profile guided optimization) by first +rem building instrumented binaries, then running the testsuite, and +rem finally building the optimized code. +rem Note, after the first instrumented run, one can just keep on +rem building the PGUpdate configuration while developing. + +setlocal +set platf=Win32 +set dir=%~dp0 + +rem use the performance testsuite. This is quick and simple +set job1="%dir%..\tools\pybench\pybench.py" -n 1 -C 1 --with-gc +set path1="%dir%..\tools\pybench" + +rem or the whole testsuite for more thorough testing +set job2="%dir%..\lib\test\regrtest.py" +set path2="%dir%..\lib" + +set job=%job1% +set clrpath=%path1% + +:CheckOpts +if "%1"=="-p" (set platf=%2) & shift & shift & goto CheckOpts +if "%1"=="-2" (set job=%job2%) & (set clrpath=%path2%) & shift & goto CheckOpts + +set PGI=%dir%%platf%-pgi +set PGO=%dir%%platf%-pgo + +rem We cannot cross compile PGO builds, as the optimization needs to be run natively +set vs_platf=x86 +if "%platf%"=="x64" (set vs_platf=amd64) +rem Setup the environment +call "%VS100COMNTOOLS%..\..\VC\vcvarsall.bat" %vs_platf% + +rem build the instrumented version +msbuild "%dir%pcbuild.sln" /t:Build /p:Configuration=PGInstrument /p:Platform=%platf% %1 %2 %3 %4 %5 %6 %7 %8 %9 + +rem remove .pyc files, .pgc files and execute the job +"%PGI%\python.exe" "%dir%rmpyc.py" %clrpath% +del "%PGI%\*.pgc" +"%PGI%\python.exe" %job% + +rem clean +if exist "%PGO%" del /s /q "%PGO%" + +rem build optimized version +msbuild "%dir%pcbuild.sln" /t:Build /p:Configuration=PGUpdate /p:Platform=%platf% %1 %2 %3 %4 %5 %6 %7 %8 %9 diff --git a/PC/VS10.0/debug.props b/PC/VS10.0/debug.props new file mode 100644 --- /dev/null +++ b/PC/VS10.0/debug.props @@ -0,0 +1,31 @@ + + + + _d + $(OutDir)kill_python_d.exe + g + + + <_ProjectFileVersion>10.0.30319.1 + $(ProjectName)_d + + + + _DEBUG;%(PreprocessorDefinitions) + + + _DEBUG + + + + + $(PyDebugExt) + + + $(KillPythonExe) + + + $(TclDebugExt) + + + \ No newline at end of file diff --git a/PC/VS10.0/env.bat b/PC/VS10.0/env.bat new file mode 100644 --- /dev/null +++ b/PC/VS10.0/env.bat @@ -0,0 +1,5 @@ +@echo off + +echo Build environments: x86, ia64, amd64, x86_amd64, x86_ia64 +echo. +call "%VS100COMNTOOLS%..\..\VC\vcvarsall.bat" %1 diff --git a/PC/VS10.0/field3.py b/PC/VS10.0/field3.py new file mode 100644 --- /dev/null +++ b/PC/VS10.0/field3.py @@ -0,0 +1,35 @@ +# An absurd workaround for the lack of arithmetic in MS's resource compiler. +# After building Python, run this, then paste the output into the appropriate +# part of PC\python_nt.rc. +# Example output: +# +# * For 2.3a0, +# * PY_MICRO_VERSION = 0 +# * PY_RELEASE_LEVEL = 'alpha' = 0xA +# * PY_RELEASE_SERIAL = 1 +# * +# * and 0*1000 + 10*10 + 1 = 101. +# */ +# #define FIELD3 101 + +import sys + +major, minor, micro, level, serial = sys.version_info +levelnum = {'alpha': 0xA, + 'beta': 0xB, + 'candidate': 0xC, + 'final': 0xF, + }[level] +string = sys.version.split()[0] # like '2.3a0' + +print(" * For %s," % string) +print(" * PY_MICRO_VERSION = %d" % micro) +print(" * PY_RELEASE_LEVEL = %r = %s" % (level, hex(levelnum))) +print(" * PY_RELEASE_SERIAL = %d" % serial) +print(" *") + +field3 = micro * 1000 + levelnum * 10 + serial + +print(" * and %d*1000 + %d*10 + %d = %d" % (micro, levelnum, serial, field3)) +print(" */") +print("#define FIELD3", field3) diff --git a/PC/VS10.0/get_externals.bat b/PC/VS10.0/get_externals.bat new file mode 100644 --- /dev/null +++ b/PC/VS10.0/get_externals.bat @@ -0,0 +1,103 @@ +@echo off +setlocal +rem Simple script to fetch source for external libraries + +if not exist "%~dp0..\externals" mkdir "%~dp0..\externals" +pushd "%~dp0..\externals" + +if "%SVNROOT%"=="" set SVNROOT=http://svn.python.org/projects/external/ + +rem Optionally clean up first. Be warned that this can be very destructive! +if not "%1"=="" ( + for %%c in (-c --clean --clean-only) do ( + if "%1"=="%%c" goto clean + ) + goto usage +) +goto fetch + +:clean +echo.Cleaning up external libraries. +for /D %%d in ( + bzip2-* + db-* + nasm-* + openssl-* + tcl-* + tcltk* + tk-* + tix-* + sqlite-* + xz-* + ) do ( + echo.Removing %%d + rmdir /s /q %%d +) +if "%1"=="--clean-only" ( + goto end +) + +:fetch +rem Fetch current versions + +svn --version > nul 2>&1 +if ERRORLEVEL 9009 ( + echo.svn.exe must be on your PATH. + echo.Try TortoiseSVN (http://tortoisesvn.net/^) and be sure to check the + echo.command line tools option. + popd + exit /b 1 +) + +echo.Fetching external libraries... + +for %%e in ( + bzip2-1.0.6 + nasm-2.11.06 + openssl-1.0.1j + tcl-8.6.1.0 + tk-8.6.1.0 + tix-8.4.3.4 + sqlite-3.8.3.1 + xz-5.0.5 + ) do ( + if exist %%e ( + echo.%%e already exists, skipping. + ) else ( + echo.Fetching %%e... + svn export %SVNROOT%%%e + ) +) + +goto end + +:usage +echo.invalid argument: %1 +echo.usage: %~n0 [[ -c ^| --clean ] ^| --clean-only ] +echo. +echo.Pull all sources necessary for compiling optional extension modules +echo.that rely on external libraries. Requires svn.exe to be on your PATH +echo.and pulls sources from %SVNROOT%. +echo. +echo.Use the -c or --clean option to clean up all external library sources +echo.before pulling in the current versions. +echo. +echo.Use the --clean-only option to do the same cleaning, without pulling in +echo.anything new. +echo. +echo.Only the first argument is checked, all others are ignored. +echo. +echo.**WARNING**: the cleaning options unconditionally remove any directory +echo.that is a child of +echo. %CD% +echo.and matches wildcard patterns beginning with bzip2-, db-, nasm-, openssl-, +echo.tcl-, tcltk, tk-, tix-, sqlite-, or xz-, and as such has the potential +echo.to be very destructive if you are not aware of what it is doing. Use with +echo.caution! +popd +exit /b -1 + + +:end +echo Finished. +popd diff --git a/PC/VS10.0/idle.bat b/PC/VS10.0/idle.bat new file mode 100644 --- /dev/null +++ b/PC/VS10.0/idle.bat @@ -0,0 +1,15 @@ +@echo off +rem start idle +rem Usage: idle [-d] +rem -d Run Debug build (python_d.exe). Else release build. + +setlocal +set exe=python +PATH %PATH%;..\..\tcltk\bin + +if "%1"=="-d" (set exe=python_d) & shift + +set cmd=%exe% ../Lib/idlelib/idle.py %1 %2 %3 %4 %5 %6 %7 %8 %9 + +echo on +%cmd% diff --git a/PC/VS10.0/installer.bmp b/PC/VS10.0/installer.bmp new file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..1875e194ba2720cf25541c20e0459f16f3f96d72 GIT binary patch literal 58806 zc%1E>d4L>cng8D$Ui$-&)!h{p0k3se)&mqY1cIoLAEy`YMi3!EP)IN&aYeubvm_yy z2qf%~0nEjOC4lZ4PDKO{GU={*yAGIAvs9IJA6*UIJxvr%^7}q-bJ{vRzuwPgOZ(aJz5Cf5Wk37p<+rkb zUA2aNwfjHV=eu{XMGwgAU$#EMPSN(WQ=i$-<{JCi>A&62&fLA9o&D^7_DO3$JMWo& z>eB{eIeP;<^}uN!e{rfFa35OTZ;Q@a9b+H?Cah>cB#LQef^gvyW`3^Y|F9} zSu!53Kw&+y1?; zu>05lD|>Lm*V%(NU&0=}<7)PcE#G9n=)Rn-T(yd=?CNIg)~#c=-+nt=@%@|Gy8Hf< z{rJx7*^h2t&K}*mn*H>?+u0-c{5yO6KR2@b?z@j|-MW=M^2j6Xp&i@V^>=J#xBTSS ztmkLHU|q%Eup7+1Y`yhocC#L{e{=V-Rmonq&cSo#z3lei|C!y6`#Y+8*{#p-W%nt4 z?5^Lr?4kb-SdaH-cCY_uc2D_F?5^5gc7J^@`)N>SJF*7*DQ=G?e`Y_9Uu6GP-^YH8 z+m8Ny?7wh(0Jn$4Z7+MU`XYOzv5);k-1f4czp#(}>;-&I?M3#p=l8JfUYR|4*LAG- zzSXR_ql-QB$iK6vAGwVcesmLi>L>TH-pBuo{r2aZnEtc7nDom>*zRB5!_49X%#t5v zPw#w$+0p~-_obh(-}6VAqx_UP>SN5+evbQ}F;9P-{pwf0Vv;1Wr=?%9-;{pEey0`K z(@#Imo_*G2zx(ZP*|WcWn*FNuH2Y;%XTMDU%nFq~>{r!2>`8F`61OM8{OdjY*iPJ@ z!uBugFS26w1y;o4UARe&KQZ|a`&bFLUASq_y~v)f|A{HI{l|UmY1|ClcGv#Ie)Hl! z_B-56-1I$vX1|Ow=0Ec!3yfcZ^$8aK<|!8ab|;H}w~Hmuau)x0k%icH%-t-tRObHo z(=4+!R&kzT70+PLdB0(q_dDkO-ekZ3{qI>21k7_C7DX|O^&PqzkZH0bsMd*KDT?O}WN(CrVby62Cq@rM`LAO7$M-2TY^_(!_E$XIS?#$pvn-pQpR7FhquajlnNOX2!IgLa zS7-9W4&Rpxn@Yx|cmHRHvi*mhz7sNqjGwt+>9!8{`okaYxTkZrGt zOcwhWeaZG@87XwNBei(zvG8nw)}9*lrnyG z>-`@7ZwCmK+g3dITlj)YV1r-0+uU1i`)c5l&CnhWl{$KvxfN>4|%L?t?Zr z;9WfrY@u>*su(HvTz*%_jQ93z>FMd}xv!_|UT{6obMKa(2Oa<}F#(g_vVneXz!y1? zQJTFr-&k|nesRC{v{Ui()YERspFZ_8@p?9Q)~s2x*Z3{QvtIYQ*S+S9FKx^L=AAGv z-e+S+RT&C=j4x?``-XP;{V-UAlb5^i)_AO%iZ?^_ujkd2Yo;f{Wy?u7RzZQbVO=f zMtlMKCj3M;lfU?4wJ)E!fj;@}>5R>zjd_gC6#JTUCTV2e%h;I%jL;#0 z0jUR>=iZ(TU4%!PBg^B*-2-nufRUqNo88nWThos57RGXqKr6T&ZZYE(=aE02f9QM)e;`Bxv#_8+YtA8i8>Qn`XZ_Yo^dAfKMHnQDUt}f^jXIabB*+F9}9M>zRIn z&?kTe)|NSlBQ|s1P&IaU37np8lCFy$Alfdn_tq{_Wj9{f+O_o{#@Q4wb6KA{jRI!Y ztWNdVWE6Vrc^QG8FujNLxoyj|)3KKakawn?G>niG*|mwV2ytuormlfUty{OAL_bbo)8;&| z^#CC?b#>?e2yYW0d%An>>gu5v@qpwmn)VpVC`=86*|P-1dLkY*vJj zLZ2@-DEka&>=mxKuH}$mTnFcv@rsLx@!VI;IAMTi=5(P?g5A3HQ0R9A*>ut7O$$WK zbT3$N*VZl={4Ub3xZAp^d(**;@$`JxYgn$&7b*MXjI-G+3UX-{n?}Pp6iG>ZJw~OS z`8e~*&m493t6x5|YwLMA8q_KD3D}e9!OV-WId9%@#EnqaMqz5OUbJar_kvB}ylYd} z=B~|mK{nncWGG|P)Z~`Azs-e~a>f_eOlLD^&6?I!V0AVKW?|44j4wWW`XPtB?sbQ} z;?Rrkx(hhsgW;BQ#K!5TOTv8 z0u>LtH?`h3x%$y>F^ZV^95IedHZK6^rtW3SmTla$aoK_e=Ru>u-MkU>3%Xw##w*8% zxakKQ7i`|RdD*6A3zlu(ycv||Er9)huz4AQZU$?Ij9CYa+gpr37?*$!c;X&P+yuO3 z7hME2*n9I2HWB3}dfS+cr?Od%myEH+^Mhr}?$``nk~SB>@_=1N=y&{}BSws3{H0?2 z!Gg`pNLzwuGZ72c1;i-;=@nx9dKI~Q!ewI}vYhVjk?3vOSw?DhoGw%MdsV#2ua&=y%=@Sui=qrVKLPK2BM-Z2q!4 zmkFK)%Whw`biw=u%a$%9jV`!zX^ZkN%y>I^=HGrh=?;9*;nMk_TtJl2WX?JjjFol7 z__nu!asGMZL|l61(xq31hy0#3jjHvaF>!Amt48@$_23X3zL;1`_1;R(Hy`h zFPwAImE)5o3zp#j()mm7T#7re;kJM%;R1Jpc_~8u&M9Ji^=m(K)H@HkVEl|r7UZg2 zb|pZuHGlpR5H1Dee7p>1{A8?N55u@IImUYqq5AO^pC30P?7Va-=~4V&x?~AK(gvQz z7B-hHS;APDHZoha!_2NX>Jwz#K#ZR{ClGc_iSu%g=V$$BCr8yvhF34ZPCSxTt zY&2}U9{Ot9Fys2TImy-odR#JISq!qpOO`BJ1R8KI5>!ibdlT!DMPFmA5vp#r5$lbH ztGbO?Zs>7!+>B?u?(Cyp`|1nMm^pvEj7t{@2P9)Jf)_5HzX()Ia>rbRpNp0(h91*~ zU5XnGs54XLMnervXlR-e@$k-q6+?zW>7d{bMoq9(wv26J{hmE?P9G%EgPX z5NuaqdtuHATi5L@wKLy^D%II+O;we9k&POS0(kmt) z3l}XE_NJI#4A#X97cN?~kSGP>BKRZMGjc_>Zu^bKbhakU5a*>vmNxWVctKxtDjN9N z>8Omb_1P0<1mzWkbOj;d!F(`ZA-Jy)s)QaJYB4l1)<}M4X4Bc+ICkres$|#WG}}c< z$yfK!VzXaL#w!*=b@LYjlmKZH+FMA@xG;|yB%5B}*RzHyg+BBc`*jy~*Gp;Dtx5$y ztXK8Ybhfh-#!Dv1C^+W}-H~w@QmBx{=M(KhG$a7xa$VOOG4CT=BVww^M6vAFLpR*z zrf&U(*=+6@jKUu;xqLE`>o4b;PfEn2ui+7F-6z4eY8cC5MtW4uxKW2o)*Bp_Hscbn zhV@g~X)itF<(DtK9Hzc({$-a5RZ;!BQ%q-ODTF^3_$_PKXYfxo3%T3a zdCU6sVdK=6L%QpBjmUWJ+un8*7%!U=fgUfLf9d=SgepmoX}!dIxnFIlrI1f&r=Cc& z>(l2psxH^#wKHi6;LOub%o*Ji8JqRO3;P+%lcvkqT4Fr!)rY+1HHW^b_aKolQr-h-o&Pc}sXOd@C(*n1|MzDvizy?&-(EHNgs`2mdb z%U*E?#q}p&KI5z}f0-D+OajKUzC0DeSQI7wfo9dLq8EA7*;-yM6#Avk2TEdlzCL{Mm6;DZ&(->Q??F2%c8)cX4kt$#GewQR<`oblWlY|cx<7hJfW$WV+*V1Y5HC_$ftm?=A8S>seJu9e&9 zu|SN*w5C6P8ZmR$g@W|=k=(D4w7YH>gsw4;7dYxcg zi-fsn&+Hke=ZvqO@v;jq%yZ9|zkJzQtz-a)pWiM+U{Hj7P9_Uu{rvR9l%HN`t$KI4p>@ynN8cKPKeF!r@c))={9yf$4w zHLLZyZM**5Y12HJ^`YbuNa?|4UuP znJ;gSg{NP5;e{8RK5hD(&wp(m5KmYt{rR56CKUDa(H zJz>4>>b7pLojZ4KZy3sY-FDZnGfmsi;{CU*Pa8YeK(Fg|<%}pf)~!n$Ipg-*KKagf zz7qwcV7&CQ`SZ>=UL~aLs#|nw2m5xtGcV3w(8p%FIMYS z-&Mm>sX8{}+duW$f4)#a662Luj(cvroiJwmsUF&?Up0MKuZC%;a$U7$*S38>?p5oE z7}F1nc6~I)4PQFicQs){JLMts-bTVFdfMFhiC6W5`XL4KmFM+669CDJk^Y*Zf9~K3o~2R zDY!FR&0^Qrt7@OB%dTwmVm&VT^(<`5*iQ#F&v`33!yo_1KRk zH4c#{tA1FuQ{6RX9?C`T`n`6nBkTv5dZ!O(Z0r_6GhpnT@js?Y;E%jy$Mw2gNZlCv zj9usw;|_9>ZpwNV_V(#vv4DhR4uQHwAIA869yCWajeV(LylbT8G7}LnR_%f=*X!Xf zJ$B7qaovT*Gc`_2VeHC!S}hj(T(?)1t6`&^Jl}N4ma&n0h;iH02xEO&nn^N`<7z>& zO`o!j8&k%qtH|v|cp_JOOIcAW#BCXcL!SHA+}MEp@)cm*ICYHGJ~yoTT=wITb6vN& zlp=1@y3eyv&N8W}*3D80DZQ`Ima&x~VeEg-jlJZ`A8g!q_tXgD+UIJR*7ahk9;=cM zoDz&3n)Q_XbxF-iybqyXvhBK*c3^CwNErLdJ2q||Tv9tJVGIExbKkG0a$gMB%-v5e z*F!xnx^=%O`{pj2hj#nG#!!<-&7dM-Y%q3uLd|FbTl=xDBXOe!%j#L7R7WC;QxqE2 zFs$2ViDP^$%4u)R-S+<2j2cqpr$0xKmyja2-hJQHFb1_GNVtP0+OWJ@r7UYvAD+SE zpymZ-&5+7Tg2c!5Vsd&WQP&J~FqDXe|TWlcqn>r}!v=NHz>T2d=R zVREIcd5%#IqMD~@iIXH{C8;FGtJrT`Lp3_ueYPExkY zH7iNH2u6+!qYNMLEYE?>lf>|XN|L}4Mq%uKPK1rHcAkJPyW+|pK<7a>a8-W6Z66&RcWHf6gKAXhHsV!orwUD_ags z?Nw@#;nd1T*@G+Mu_GsmRSq~*8CASQ)0C*}jgoy@);{})A&_640!a9y5kPxEt>z&< zERGxe(bDiZ;k*`=6GQV1ryO~K%$*<^jZs(|E_uX}O~@~jPu{*!ME8#c($sQXovzp7h})ie&{f|;4Fn$<@YK;HHx3huY&kS$e$QVfj$ zHGxD#eW9M&VeF>>bj3uTFJZe{mCex3LbGa@s;C{Saj2IMEH%eq zY(gS%TJ~;IUa^EQ(JW4&pUHGJjmA zdlrF%Jo(mPlwv06%a>h7$Na~)as|C>T1{m$He)o0c5J3$>Q;Rl>VpsZu_@W0)Z?n8 znqg?BRcS1T6q*!}KGX^m)t2yl}F~3Ip(K7OQ7Qv#^7(ZE|m}`t{T&vZ3cbmNZxp?#=Z@8hNdLK z8$V>772OAQ(Y*vx! zp>5Ocj8WLTNqNpuZ*5_|U7&U*gN(FN0qu0vED@^dn;|l|tCsXqOraBp7#^!;Y^%hK zoSFF@GS+LL+@4bkWdakRN48Kq7V<|7Eun3vVaX@hObt~j4Ru}TDnf_yI)#dv0uXUs z#c4oPG9D(BzThWUSJ7H^Qe^!Rv=^Rah8fqwm^2M)fQ<$HUm9 z+%7P`^o1{+Po(YSoRNjru#YCySXel-B^cRHO(;2Y$Hho~NtnG$OQyfmW$R6M!Vl=XL`Wq@&69 zgQa7}8rmE!L7Q9Ag35##bEyEet?V9A#=(fscW6mN;#iYloPdmrktoZS=SAh0h-PFN zCnMq~3XEW44mmNYRL0FnzhrssULh$%@~uhIwLWqJjQGW5*r$}sNfJd-0P%(hJ;u{X z0^|uZD#h}|7zgPRLh~G&F)$1bqO^n_7=~e4h%?|4>I6uGvLlrT8OcTo?bQiL1=t?# zGjlwe&M*j!b6J)osYp^N6vTZIPslRo;5BIa%>(FoRa()Eh!Z2tqc}m5curuE%`C++ z9PT)PtvJa@zX?F%Gl&js!0PMk9ZCB72$)cFP{BDK%yQXqXq}X&B;_b_qNtKoJerL3 zG|jVQ!*R+EqBw$vhXLXZf)C0AUQV|QvhyIJX9X%qCBZpfOoU9rn9Qw2vnmv=5k--M zAsGzNDJM-@Wy7c>T1%ZR4JtWbjz>8A_pcj4_BT;;&LNm%Q4Xj@#5GzNGj`=T%Us<} z(=5wu6$N>yqx9B&)8-i(+gP=;46ntZ@0z+=0-*pTzMO9T$Ra?AG{+=umUPp0{V>g{ zqe$jA@4>~GuiAE)WkoeZC2pp8F3Ws3b3_cygUKqCoZ_G4Afe4eE$Wd}{|~7-z0cq9k4Nk_uGnpga`8t0bM(UGPn3p$dM4^uoU~CY!QQz&ZWpy z)x=Mm^DHdbv5#UKJwb-%Ixgv%YleMlTIefEdZEDg?<%ykI0Uf;wPrwCPpoa~asU#V z95DC6icEFvTerm|-Tv|Zfv092tyZU-%c~|ew zb$uHQ-{4{u<6hz zg4>sARu|zCt1kYlAvaYs#>Yy%&}Ff(bKSZj0W;LrBOr>`az!5Cki%^aTbjss$R0ZO z=7;tGBx5DpB_rEe>id*uLfI; zruOkWrOcI!2yiY_y|A;luXo-4U4zMSni-nxHh@2=u-#I%Z?V8n=_Ks*IP z6FYN}i<^utW1$;{g2zUrgqg`B?~`;{wf!`vz3FbK+G2=Eb)cs)SSg*DO=k@m(_=yj z%^1FzBBG%?Xq2a^t;ae%CN}B!V_DDABI2gVMcK7$S7F4V@W3HvJ=qv9uY(Wohx(yK z)Ixfx=$A|~m#=c@FEcSh_;CpB={!tbSB(+7Eo0LfO`nDtD2%dAZecS^CH#u%(~9Se z7U;qQR5w!#IzEIKI4Z?mz0DC@aOM@oK|?jgve4kpb-Vg@?(dc4-lAG66#cN|`!=ka z!hy`p4iTx~%wRjtZQl(|1nMB8i=hV$$O9@JG6Go+T+&lFj`0d8bupyFk=K85||ekTo$_r+F+PnVaO*@Ml>qVHhfv>{3D0Kl0EDch^uE zD06$^hJ8q^y#?Kr5Ery|R`SW?k!46P8OArL#W#^Y;A-$E*Tx|1XDvoURxGp$C}_(; zWbp_;(Ve2gGc+lnO3$*&3AzVMv!Wo0G+EJc#-DGk{rldtG#3_akydy<+7)t8h6Tu zf({y7i33{0h|oO*^a=nyjY{6YqedbqYmVr*L`&1`X+S$vxaegxD50SA6=f999u!g5 zJkV*5QKTj}Dms={2DqY?BN?EM#3S@-k>pr~q{WC|OYqyYh62CrM2Qh44n08IfL9_~ z_(87#FY+vUQ(&M-r^N!Ina*27FK-Tk+Z1}>B>)1^7Y#oq!q~d@x=Cj~Bq+W%?#Tqc<^NnXf1I_Bh=$Vf%Gjb_>LDDPPx*VL~x+8CI?VNqIl@y zU~6(4Sl6R4;lta4GoPUIG2M0*v>j1XRdP$hj5c^|S1>>qK2T;kzf_}##9 zWX18&)Ee-u4jJ)bR#}o@TOI`P5=W99jrIlqEF+>l=tEHw1Ri}ExMQRkMlnHdNpePb z9@l94$f31bR8Ib4k?oELC+dcfngOyOedN` zdXo)};xIxid319;2}*Kkc~%i#nrL!?=3|?T$TtcXlRV@g4y8)?oJ3JbiJL;GOpc`C zn}Cl#NP#LjWr9Jr5&HN+R)fP&6s3UgTGo(WEqvVq#sZ79BI5yEQ43@lk7zv6B=UYs zF#;!NR5-o_Jq~EW9>ovYz$kM{3<*$>kdVj~xDIUY!Sf?hBTp2(FvwT0AFzz3ULV3~ z$c~eEmLeNS7BbSMVt|BmcwpI4$gRlJyrL(i*dDZ!VB|&YA%&3(k#fosGy^xV0x}{!8+eLfL_~ z9o4+W0Jqnq)M{SH5WjLE<;i;p?i2?}tzHW7RL3;HGJY zR5n8s5O}0ZCHNlN7V5V{u9t|B_UghZ{MgnxdKFTej$0_Js_21j)rONmouN)0EuBM$ zUdd1E^=fv(>tFx+LC7}te&s9Af1y#&Z0d(x(=MUKqb?bZ3#SE)eyD~iak(@F8`IgC zCTQTEsS9JKS-$3j_8Plr8Ql`i6qVr3s!rr3oz_axX(4#CYlkvgbn3Qa7matdasKOt zv{B^{$a7!FQnY^bSu_=Fr}$h~cXeIzZJL|2$$;=B6E9-F(30!=&~K`jLYhly?iJdH zE#MeH)m_AlOq!)Le((k#p#xVm#kcdJ5%j+G?BX}PVN}S!I{Ql(pYtjKd2u~W!;r$4 zCc}{_LTV6IHG&_k1l^ne;vUnN`TdxbC1x3pneH-s`_fD*?qpa;hH zp)91AQhZ^bW_RI^F!k;?zTpi`$`K*o^dqF57j_>;jIY{VPto&Ikbuq%eK$7YFsd5c zrO-yi3j+8U5((nhm+5pt+Eq%nM#R!yZP*$iLV=>{P$0fE+HuoIpN(!EDugQKm|ie_ z`g$3h@o)ZS1js?ki^WMRFZ@Ut{oF9F(pl)VSL6(Q3_yI}g$AhMhuU0n(Gv0|B1(^m zUbRW_bX);%hY!XyZ4&x%sH-8VQVm0T1v!@H>WK>93g6DRU7J<}RnzJbe=`K~U{${9 zg`Dw)BSdi5W8pADH&7UIhi%ioY$*((AiP4}=BqL?u}McTQ~>CRu9U7j<3a=-Ob#2+ zHF1y+N+!+Tg9paY#Xx{usUoye3=q{UYdrh6e>*DV5iQ2Eg-1S{WiEyX@lp8P67~<} z0X5`uN-MPJPz$M`fH*>As5I$FM>A}?-X8WEnkgvZj^qv)OI$jYR0U5;lWE*WXxnj2 zMv@WIY362)>OFreAV;#dU_7kFc$8q=Pz@2B$SI&nVKd|m)hv-KxnV&kABTmoV>6Ts zFrbQYlcu9X7kWf(K@AWFc~o|&8Uu9wk)|c6)+9Q{Nv~K6Dsl~NHVOd=#a>d5lg6gM zYY! zQJbMM52)os(}DgPwGtJW=+#heg9r5w3N=(yiG@xOJuN;WaN=?;-Sl?{K@L~t5zkR^ z_J^bLOnGs|i$$#(&}0ERhRD$r$C73AOokPpJ#=`4I=HBzOjJ;`qKizZMgk*nEbJBK zok1lT3Pb}BtSG^z#W~GVL|T-fRHrjoP@P6J7ZPXv-G3(_M{&x-E`EN`ZAUco`E6On zRj78jt8fX*kzwn|K?QC=;f}C5%<7>4jUr(UnvlSjMejjFK`)`RP6EFQMuHs6 zDF-NT>yIO9NnvW4CpjhD%JCGMxrh`fO-6%<(mzq~Iy{xWPthQMq`g8-4!T~$bA+=P zVj3>8(3Tqt`2bbN4%8hOa3S>SHmdtd&l}(P#y5@t*+!MOHP8w}OOipeQ8^>D2OoNNYpM}J zrC}}Ue&ZnI=$Z0WIb%h`H;u}Misqy!_5+X9U>46IAFv##vIrZ)-^J^Otk6#ddepe) zMF<9TSY%Ccf*DQg&}^cJCKWzL zGD3+|y1PX}QuL2Vq>R__YYlI$(ukY54DON2YmK%G}6!gvaSL%rY@j zyXz?udQy$fEwt#|JsMeR;s~5H zN@_`^QR#c4C6AXgp~r(D|K<%Ntg_7Io|bIb@S{e5R;gEL`WEA>CycGg2BKKY(~{vN zxe^5%;8Z;CmP&8S_ASrn{WmGN?FgoNBj&NN{>TueCH{XWTiJS%}Nvf6jruV#umE#)KxnB#Y_> zFDf4>jLATx!&(yJUeYvCJkoFE_V!#aNh{Tx-}S!XkjDm9!Fc#&obr{o?Wxz1fGAXH zw(MZMCSzPGp^endSl0d6R8h>k)Sks9bZRKQ(Q#(kz7M=hKn_wKo5foWKm72KRoSsq zzUjF}y_%(?N*trVj$Ikepl_m=w&{p!2|bVL(^9ioEGIx`cGbJybpYhC)pW~S+Cp~h zl;<|;V?f5lh%PHuWgXp)UgET*r-YshO`uJOg9)-;B{d!ZN&fhj(IGo=%2(|kRgtj} zFpB$932nJgEr0BmI7j~lEz;x%9gP3>yWVvmfQO{nh&Jw{!qGrc<7CAR}VHm2F?AX$uGv4(c9|s$4)qjj;_U zkV;UqO{-b5IIU;L{rw1#`>K_9yk!{W#GLX7S`r$EG#iT;Fln|5bShmE%ru34Ra!?1 z$dDW`rg<$`*p2lf%?0{8a$_}f-~IO^K;G1-|I1t6GL|YkaLVVZVQQB^N7HpGS82XN zrK^|ux=vHm!XI6-YG@XHIvtbdn_%XUlcJFv>y5@^U_2P|lsFIUNjv3+xJr{Wx~=L^ zq%CpNHi77xp_ubAg+GR&i&*x3E`@Ywh9Q+=LImS=?;Z*A{d@iN(;Y&N>Xhe;Q{7Bx z$`mtZoU11EM{CI3kmmVK)D*P(0bLiGt0D@EC>bKV|4vA-vBkCD@2=xHY(zrRHqOm)n*!<06vv=<#r2*!*Uk9l_+$g3I{wBOz- zWILxkjLvmIKPm;DMiYx1rJ}6S1P?491=s{5S$Ranq%0Ue@Q(wKe?J`Z+jP~ig$GlP z%PHUFrxjY=70H^1t_n3ajLzl2f@X_gQ;M{{rww6?@jd_87V?z6G*kQA#fyiW(fv6g zpKZ#g-!Ya`{&mfxh=9kTn^91SM_Lg!M^&yEo=lD^daia-7P;piNk)PM<*_%nu6czf zZ{&+%?Oycu(Va4@I26-?5=2D=37Q(ONb^h_+>XMPfUcJ^Dr0}n_>aS!a!7a|`)~Vl zmRcJ|a@u!{=9IMx3`%oqG?7@;&_`>5q|tOAI%h}Gvnn**YqVssr~{74InCZ^l7r4(GmyAPXB7GInDzwhr_q2mNxD{&)iT>yL!$%yxzYt|* zaSWqKGoGGEl~5jrMaPnjNV7)Ik2&K{kDdz1?>8Es8*%u)C!yuiq(I4_{6katfumVG zh&)G=06rEYf@bg0BSZfExFA1@R6gSH?Pb0Xr6G(1g$H8!bmY)lP!t!)k*Lu|XUqfp zBU1tS{%T|QNHyh=HH>?jMk~@SO_Mwe4oQPFtSmvd$dRMx@TRf9arAJ=c7ylmkQi{@ zF+xpwZiX`4GpG!wqgF*a4ir$uZCR)&G+IVY{q-n9BTfCuqep}sXAXJ-j3d;P+f#Hi zIvuc9eckqH6%VZnp%V_!hPkwKq7%l(F-H$jP8<@0&D#&IDUZnL=z55D-bdSyj?kw* zR;Ppd)C;P<>xW}7=I!gZjz0Q8RgNFB$#_7ca{>K<9-BIU-KJAv=<>0oQMB8%T1rQ& z*b!rW@6l5L*FuaQ`?6Apf6LUQ($PFo6cRDr2t;&%j(#SLXlTb0ptMVP{{MM zj8@>8bb6QRs-=<{+O&3zo3wt;rWKBAaV*BBB9ECoyCGvXzq#l7<0()jp~zQkBcqF7UbdG zF$|3wf=Wd0(Xs_p-I9e7QI-uyrZQ5|2(kml2*Y-zR;#<;I%YDE1B`<59T)6Q6LD^V zp@AykmS-ra84Vdt1A0Mpi70sjO?EnC6q>BkYX5ydhdlZ75oO@8ahvc4 z4$E|ki^ml(Dl*X+R9P6@3TOpYfG%6Z$Sql&F%o1p?6ir4&Q2I2ZF0~}%`+HUCtQ>R zA61Q}DH;k2sc3jbx=;v8N7)KInQJsFAmN9kbjB#`J>*1`YV#b0_KXKZ-c%oYCP<|m z(xN8n{YYnyRFoYqD+>C5l#DR4L`roe*uP`ONK}(8$tZ{(J8ooYlg+_c$p$_lO{m<~ zXeJ_{Qy2m+6)mHv$d;l72HFOw5`5s*I<)lwW~;2ssx zh?-*2ur#hw$_zA4ZqP}7Y{&TE_y+F-86(4UXq6cJjvEMX*+K9iUGf5lZZ%n=m6CWi z@Fv4JzQOxoMp&8FYAWcVWe@2FM%M7qlO!=yftLf}29shO*SL5PV?;c3R;3|14#f(c z-%F>hSO%>c)f|iL9VqhT7zN}<9_rt_{FpHz4`z(S%mkfCCM#la0iBHOh>?+7VnTp| zW|FoRkRKM;{`8Ltfvb z^;m=V$c%KoB7>H+VTe&sUBJR{M~kNP9Ar?9SSP{wQ-S#5dUI?%W{l4Ji8hQ7y7)J( zC#AU_uyH#3(SUwINvpgj&RE|k7_VtDeq@Xs^h|rkNL)V4acCr@wW>y+Ml%7F-DxfJ z1Q}Br3`ME-5m6~%^gd?v9P|MUg=u?6!AaMDx5QjeQKm)T;`(UO1R0^oYP~=27Jp44 z)8D^(j6``=y*i2-N0kXPlCgy%kK0GZ&M%J{J)3`E->9a3Nf=YADsIRl`x`61`}L#8 z7;>nh7{k<~FoqM7yzd@p#KvlBzfB7};)(4loG4=x^199-Cxti(#vJk|$BYem%+Cbk z|2$(TW-zMty;qL``GKqa>ZA}S!5B8DFzWlhHA?4w%(wT|Cy6*2Mgf^$qxk3F_{d0* z$6fW)IuT9|aZ-%Az3JjGz})-O>#q6mamVG5#~t_KuV435I+IfnPCQ(ijKO4t8nF~@ z;z$=Qphh)A1DNEO0iC!^l94E5(bZo~Sh)ulx@%I^6IKjs~Aj{1hivdX_ji)TzAGjGjf8b>g0-i5XCu8_^tETEvZx zKjS53^c;;Wta*k+m+_*rJ`Gym0lgXym#qH}7&XOE=nQ>N(VQZTj157j&;k!ARhB#R z&6keRGiZIFq9}A~yrRg8MVA>=D01jjde4B(c}J>z$rv4ncsM6YI=5WICOM=cW)*3L z5vssO({0?0{fi~%ETCJn_eu)@8NrW+ZV+&6MnL;Ye zQzdP{3$(u+Ba$L_gtEltBBcJPnFm%{d9TB)m2wj>9RL;Wo^!FTh~jj z%59Tlk1kzgMlE%+W5y)gv~^px?I}XkRdKKDvX0L+xvBz4H%oHSG;ybz+_dRhDYRTm z=OwihMq9!s(fOlOf~aEuO-5k30HMG1RkCf>l#9Bl>OzU2RMirlzE$FG2aI}2F4;OX zKh|6I4m3@A)5TtOI&)Uywo7Ma;aMnw7dVLFT7pui%X^u0!MCv)k)^myzU_@62uo+I zcQ}?|NaB+$g&T^c$cSf|hH4CkTqzXksILeeyw`E);)=#t`}HWUv2!|fJSL<<=i`s^ zGF>VHsnDU}gRaGkZ?4dF1}vGbn=8?fQuJ3q}RMfNaaf$TX@r zR3gw3vXNfm3SH`k{*pHRjR6tq4cPr8dD7+{;Rv&L^eGEozV6S7n8J}#?^+^i!hlIdD2b>jI z<5Xc63v@kc+Jx4`yA{cB3Nnp{g`y)%2xs`LgeQ3srpDW#Rbha!8RgP5ys+yTNa^V@ zM1F?%(P}0IyVe9Q`59D0iy@3Y@Q^(a!udDSfP$|Ne^8*%B1M%1S42R|1<5jGF5zPe znlqLn8N2n?#~**<3H*El8>7n;^yAj2c0JX*t5-HeU{VgD)2^To|L66Vd1_j0-rv+zR+2~05L8IsTo2y2lJiXw4IGz37`2sw-gMTJJsu^f`I zV<#jZ{OBoA=_juJ4vhYIpIj_bJpmI+qJ7Etihu&9jIV&v3BfE;S1pn;4FEE>5%pB4 zkCF5k`_MRrRN3S_`QsmlGXD*fy+w(dQAd#_(fs9m)f7te7{rQs+h3sS1<yV@YYX4;>HGmNtdSZ+)s)!Z?CPRU5Kby5tt8%fQh{P6N3F zC1SK8)6>oEz zK_`e((@0TG`9L#9AB7qF2FW$o@hD;m6fJe6>s^hd$1$IG9S1N5K5i;!&9K#ul@w)4`DFM(b|sw8_0$bv%kdcIeh z9z*pt8i7#es18Yt6B6;gT9jA8;IKEG66W6Z3{{NHHib%!F$e|a=z9FFkn8cUxiz{p z-!(+11F9T=EERQCwdvBp^yl5(VPex|uWge~d~6ID8B`J3rGacO^^4P zCCNNsPquB#vR*Q6Q>N<+L%}8p@kk$=@uBg`gAYIW;Dg^=eZwkfv}yGrkRQz<4Wl4t zbOr?FI^w&a(If(wH0sX90R~hU`Ls%VVeBX4lt&+ZBu9lxSFO0d1qp*+bxjU=?RRc| z3e^uE0!UpiT0qM}<%1?mL;K4WabOPJt|lwuZzr{9{ONe*vBw@G)JF*O#v4|w9Hh)O zdGg1u{r=6n=qj}>K`TgIpoNZ=PKKg$V>GF#&?!hzqbyW83M6AApZPSZ4|JIps&8pB$e_RBjQWE9_8Hp3f??3#Lqo4FhGuC`vSig%*}{J(ac|wE2_2c#7cvSoayoIO*b;;=vyx9=B3@u;P66K*asn|kJb>VoKcmQL zL0%`UjU)+0wq}#j0V-s0aW0{yA;u|-i&;pT!k2MJ6SXfDqtN6}9>Kt~Vr8C#z9kg- z@j*qxs>Gn>bAZ$*QofXBtEd>_1SvQragM_H5*c{HYn?mLkc=djC69DB*P_X z>JLFp`CXz}-gb-=7-uMh4||X+@`e?8DMX5-9C_2@#oX93&7~OBdQ+2#jBQX9<$ryV zd=z*VIv`_88Ji>b;6pLu3{fO`Z_7$UTVu|PW9$0ua+0ld;Y&N&j}fxGKiej@%i?|<^hBM&}& zv2{Ps-`Ool=?j992 z?}HDnM*BdGBN_WcqKwQPl8aggl!$0jm>~}8aZy*$1p$;IjX!iGu?^#RdxciZkoOIb zK1!QJNdw}lrb7y2e-tg^asIbRa~;R3AAcr>SyIe@nMWAq{luYo?a*p&U=hL-hZl z2OoNvS}-w{(R4@zjc_qq5x^zUZ3&wiElL=l4!MiU$dKC9K8!swAsO0lw>BPrc=d`^ zdCx5}BxUiO(V`Sce}32!$C4=BhzvyD2^W=R4x`h38^&?Z0W`@T#D7S>DSo1ry>X?8 z8t4&0b25!I`Ch5~78sUMB(S2E|3zX&9FD^)@Ju?6TpXG4!3oO4t8o)^7KoMAg7AA( zjtg6hz^0Mrse(;ns*;Ku=elXi#geWTxvpZH*3y(pdP$~-#R9FVIanBbcw({|0kZnx z8*xVuZo~!=isW;>U_6-^zyG)xSLi?|E%cBJNQdZIi_jz;k)=b6GR@i>yhv6r6s!@1 zv2jjGwS=(5{~L*K^^L1=ziP#DxMQBhugMwL_vQOR_D1o5rWKK6pv097sShcK25C;Y zT@#&+%!?y3-Z(*7g^_R7svB>(VHN)2@rvauR;*aLe0e@YiR6--Y`J{(W-%e*oG39LygOYu_-}*@Z^tEnVavmDABl5 zfK?S4jRM9%Nzw|SqN9Ol>w4I*bC8MQ%tm<0p^AxMG3=AZU-AaJitQNoZ^>zkWH?IiSb&Jl|`+ zjEe$Uk@LT`bb!#|Bu)yRO2!r6CBT*6CDQM%T%MyYzkVfITnvUNDiAY$&Am#R_#^l7 zNPI0!bdALk9C8wjE6Mu=px~uVSpU1r1!T^6?f0LOq2VY^a$e$06mb$`p%|W52z?@#uV`j-G5D-nG2o9+iN#tIrE4*+p0E(-3QqN z7tgG^akTU{|f84f=m0l|ZXK+=UC(Zc(06=5p AUH||9 diff --git a/PC/VS10.0/kill_python.c b/PC/VS10.0/kill_python.c new file mode 100644 --- /dev/null +++ b/PC/VS10.0/kill_python.c @@ -0,0 +1,178 @@ +/* + * Helper program for killing lingering python[_d].exe processes before + * building, thus attempting to avoid build failures due to files being + * locked. + */ + +#include +#include +#include +#include + +#pragma comment(lib, "psapi") + +#ifdef _DEBUG +#define PYTHON_EXE (L"python_d.exe") +#define PYTHON_EXE_LEN (12) +#define KILL_PYTHON_EXE (L"kill_python_d.exe") +#define KILL_PYTHON_EXE_LEN (17) +#else +#define PYTHON_EXE (L"python.exe") +#define PYTHON_EXE_LEN (10) +#define KILL_PYTHON_EXE (L"kill_python.exe") +#define KILL_PYTHON_EXE_LEN (15) +#endif + +int +main(int argc, char **argv) +{ + HANDLE hp, hsp, hsm; /* process, snapshot processes, snapshot modules */ + DWORD dac, our_pid; + size_t len; + wchar_t path[MAX_PATH+1]; + + MODULEENTRY32W me; + PROCESSENTRY32W pe; + + me.dwSize = sizeof(MODULEENTRY32W); + pe.dwSize = sizeof(PROCESSENTRY32W); + + memset(path, 0, MAX_PATH+1); + + our_pid = GetCurrentProcessId(); + + hsm = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, our_pid); + if (hsm == INVALID_HANDLE_VALUE) { + printf("CreateToolhelp32Snapshot[1] failed: %d\n", GetLastError()); + return 1; + } + + if (!Module32FirstW(hsm, &me)) { + printf("Module32FirstW[1] failed: %d\n", GetLastError()); + CloseHandle(hsm); + return 1; + } + + /* + * Enumerate over the modules for the current process in order to find + * kill_process[_d].exe, then take a note of the directory it lives in. + */ + do { + if (_wcsnicmp(me.szModule, KILL_PYTHON_EXE, KILL_PYTHON_EXE_LEN)) + continue; + + len = wcsnlen_s(me.szExePath, MAX_PATH) - KILL_PYTHON_EXE_LEN; + wcsncpy_s(path, MAX_PATH+1, me.szExePath, len); + + break; + + } while (Module32NextW(hsm, &me)); + + CloseHandle(hsm); + + if (path == NULL) { + printf("failed to discern directory of running process\n"); + return 1; + } + + /* + * Take a snapshot of system processes. Enumerate over the snapshot, + * looking for python processes. When we find one, verify it lives + * in the same directory we live in. If it does, kill it. If we're + * unable to kill it, treat this as a fatal error and return 1. + * + * The rationale behind this is that we're called at the start of the + * build process on the basis that we'll take care of killing any + * running instances, such that the build won't encounter permission + * denied errors during linking. If we can't kill one of the processes, + * we can't provide this assurance, and the build shouldn't start. + */ + + hsp = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); + if (hsp == INVALID_HANDLE_VALUE) { + printf("CreateToolhelp32Snapshot[2] failed: %d\n", GetLastError()); + return 1; + } + + if (!Process32FirstW(hsp, &pe)) { + printf("Process32FirstW failed: %d\n", GetLastError()); + CloseHandle(hsp); + return 1; + } + + dac = PROCESS_QUERY_INFORMATION | PROCESS_VM_READ | PROCESS_TERMINATE; + do { + + /* + * XXX TODO: if we really wanted to be fancy, we could check the + * modules for all processes (not just the python[_d].exe ones) + * and see if any of our DLLs are loaded (i.e. python35[_d].dll), + * as that would also inhibit our ability to rebuild the solution. + * Not worth loosing sleep over though; for now, a simple check + * for just the python executable should be sufficient. + */ + + if (_wcsnicmp(pe.szExeFile, PYTHON_EXE, PYTHON_EXE_LEN)) + /* This isn't a python process. */ + continue; + + /* It's a python process, so figure out which directory it's in... */ + hsm = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, pe.th32ProcessID); + if (hsm == INVALID_HANDLE_VALUE) + /* + * If our module snapshot fails (which will happen if we don't own + * the process), just ignore it and continue. (It seems different + * versions of Windows return different values for GetLastError() + * in this situation; it's easier to just ignore it and move on vs. + * stopping the build for what could be a false positive.) + */ + continue; + + if (!Module32FirstW(hsm, &me)) { + printf("Module32FirstW[2] failed: %d\n", GetLastError()); + CloseHandle(hsp); + CloseHandle(hsm); + return 1; + } + + do { + if (_wcsnicmp(me.szModule, PYTHON_EXE, PYTHON_EXE_LEN)) + /* Wrong module, we're looking for python[_d].exe... */ + continue; + + if (_wcsnicmp(path, me.szExePath, len)) + /* Process doesn't live in our directory. */ + break; + + /* Python process residing in the right directory, kill it! */ + hp = OpenProcess(dac, FALSE, pe.th32ProcessID); + if (!hp) { + printf("OpenProcess failed: %d\n", GetLastError()); + CloseHandle(hsp); + CloseHandle(hsm); + return 1; + } + + if (!TerminateProcess(hp, 1)) { + printf("TerminateProcess failed: %d\n", GetLastError()); + CloseHandle(hsp); + CloseHandle(hsm); + CloseHandle(hp); + return 1; + } + + CloseHandle(hp); + break; + + } while (Module32NextW(hsm, &me)); + + CloseHandle(hsm); + + } while (Process32NextW(hsp, &pe)); + + CloseHandle(hsp); + + return 0; +} + +/* vi: set ts=8 sw=4 sts=4 expandtab */ diff --git a/PC/VS10.0/kill_python.vcxproj b/PC/VS10.0/kill_python.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/kill_python.vcxproj @@ -0,0 +1,120 @@ + + + + + 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 + + + + + + $(OutDir)$(ProjectName)_d.exe + Console + + + + + X64 + + + $(OutDir)$(ProjectName)_d.exe + Console + + + + + Console + + + + + X64 + + + Console + + + + + + + + + \ No newline at end of file diff --git a/PC/VS10.0/kill_python.vcxproj.filters b/PC/VS10.0/kill_python.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/kill_python.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {48606591-c8b6-41a5-95c5-9a0890c5504f} + + + + + Source Files + + + \ No newline at end of file diff --git a/PC/VS10.0/make_buildinfo.c b/PC/VS10.0/make_buildinfo.c new file mode 100644 --- /dev/null +++ b/PC/VS10.0/make_buildinfo.c @@ -0,0 +1,194 @@ +#include +#include +#include +#include +#include + +#define CMD_SIZE 500 + +/* This file creates the getbuildinfo.o object, by first + invoking subwcrev.exe (if found), and then invoking cl.exe. + As a side effect, it might generate PCBuild\getbuildinfo2.c + also. If this isn't a subversion checkout, or subwcrev isn't + found, it compiles ..\\Modules\\getbuildinfo.c instead. + + Currently, subwcrev.exe is found from the registry entries + of TortoiseSVN. + + No attempt is made to place getbuildinfo.o into the proper + binary directory. This isn't necessary, as this tool is + invoked as a pre-link step for pythoncore, so that overwrites + any previous getbuildinfo.o. + + However, if a second argument is provided, this will be used + as a temporary directory where any getbuildinfo2.c and + getbuildinfo.o files are put. This is useful if multiple + configurations are being built in parallel, to avoid them + trampling each other's files. + +*/ + +int make_buildinfo2(const char *tmppath) +{ + struct _stat st; + HKEY hTortoise; + char command[CMD_SIZE+1]; + DWORD type, size; + if (_stat(".svn", &st) < 0) + return 0; + /* Allow suppression of subwcrev.exe invocation if a no_subwcrev file is present. */ + if (_stat("no_subwcrev", &st) == 0) + return 0; + if (RegOpenKey(HKEY_LOCAL_MACHINE, "Software\\TortoiseSVN", &hTortoise) != ERROR_SUCCESS && + RegOpenKey(HKEY_CURRENT_USER, "Software\\TortoiseSVN", &hTortoise) != ERROR_SUCCESS) + /* Tortoise not installed */ + return 0; + command[0] = '"'; /* quote the path to the executable */ + size = sizeof(command) - 1; + if (RegQueryValueEx(hTortoise, "Directory", 0, &type, command+1, &size) != ERROR_SUCCESS || + type != REG_SZ) + /* Registry corrupted */ + return 0; + strcat_s(command, CMD_SIZE, "bin\\subwcrev.exe"); + if (_stat(command+1, &st) < 0) + /* subwcrev.exe not part of the release */ + return 0; + strcat_s(command, CMD_SIZE, "\" .. ..\\Modules\\getbuildinfo.c \""); + strcat_s(command, CMD_SIZE, tmppath); /* quoted tmppath */ + strcat_s(command, CMD_SIZE, "getbuildinfo2.c\""); + puts(command); fflush(stdout); + if (system(command) < 0) + return 0; + return 1; +} + +const char DELIMS[] = { " \n" }; + +int get_mercurial_info(char * hgbranch, char * hgtag, char * hgrev, int size) +{ + int result = 0; + char filename[CMD_SIZE]; + char cmdline[CMD_SIZE]; + + strcpy_s(filename, CMD_SIZE, "tmpXXXXXX"); + if (_mktemp_s(filename, CMD_SIZE) == 0) { + int rc; + + strcpy_s(cmdline, CMD_SIZE, "hg id -bit > "); + strcat_s(cmdline, CMD_SIZE, filename); + rc = system(cmdline); + if (rc == 0) { + FILE * fp; + + if (fopen_s(&fp, filename, "r") == 0) { + char * cp = fgets(cmdline, CMD_SIZE, fp); + + if (cp) { + char * context = NULL; + char * tp = strtok_s(cp, DELIMS, &context); + if (tp) { + strcpy_s(hgrev, size, tp); + tp = strtok_s(NULL, DELIMS, &context); + if (tp) { + strcpy_s(hgbranch, size, tp); + tp = strtok_s(NULL, DELIMS, &context); + if (tp) { + strcpy_s(hgtag, size, tp); + result = 1; + } + } + } + } + fclose(fp); + } + } + _unlink(filename); + } + return result; +} + +int main(int argc, char*argv[]) +{ + char command[CMD_SIZE] = "cl.exe -c -D_WIN32 -DUSE_DL_EXPORT -D_WINDOWS -DWIN32 -D_WINDLL "; + char tmppath[CMD_SIZE] = ""; + int do_unlink, result; + char *tmpdir = NULL; + if (argc <= 2 || argc > 3) { + fprintf(stderr, "make_buildinfo $(ConfigurationName) [tmpdir]\n"); + return EXIT_FAILURE; + } + if (strcmp(argv[1], "Release") == 0) { + strcat_s(command, CMD_SIZE, "-MD "); + } + else if (strcmp(argv[1], "Debug") == 0) { + strcat_s(command, CMD_SIZE, "-D_DEBUG -MDd "); + } + else if (strcmp(argv[1], "ReleaseItanium") == 0) { + strcat_s(command, CMD_SIZE, "-MD /USECL:MS_ITANIUM "); + } + else if (strcmp(argv[1], "ReleaseAMD64") == 0) { + strcat_s(command, CMD_SIZE, "-MD "); + strcat_s(command, CMD_SIZE, "-MD /USECL:MS_OPTERON "); + } + else { + fprintf(stderr, "unsupported configuration %s\n", argv[1]); + return EXIT_FAILURE; + } + if (argc > 2) { + tmpdir = argv[2]; + strcat_s(tmppath, _countof(tmppath), tmpdir); + /* Hack fix for bad command line: If the command is issued like this: + * $(SolutionDir)make_buildinfo.exe" Debug "$(IntDir)" + * we will get a trailing quote because IntDir ends with a backslash that then + * escapes the final ". To simplify the life for developers, catch that problem + * here by cutting it off. + * The proper command line, btw is: + * $(SolutionDir)make_buildinfo.exe" Debug "$(IntDir)\" + * Hooray for command line parsing on windows. + */ + if (strlen(tmppath) > 0 && tmppath[strlen(tmppath)-1] == '"') + tmppath[strlen(tmppath)-1] = '\0'; + strcat_s(tmppath, _countof(tmppath), "\\"); + } + + if ((do_unlink = make_buildinfo2(tmppath))) { + strcat_s(command, CMD_SIZE, "\""); + strcat_s(command, CMD_SIZE, tmppath); + strcat_s(command, CMD_SIZE, "getbuildinfo2.c\" -DSUBWCREV "); + } + else { + char hgtag[CMD_SIZE]; + char hgbranch[CMD_SIZE]; + char hgrev[CMD_SIZE]; + + if (get_mercurial_info(hgbranch, hgtag, hgrev, CMD_SIZE)) { + strcat_s(command, CMD_SIZE, "-DHGBRANCH=\\\""); + strcat_s(command, CMD_SIZE, hgbranch); + strcat_s(command, CMD_SIZE, "\\\""); + + strcat_s(command, CMD_SIZE, " -DHGTAG=\\\""); + strcat_s(command, CMD_SIZE, hgtag); + strcat_s(command, CMD_SIZE, "\\\""); + + strcat_s(command, CMD_SIZE, " -DHGVERSION=\\\""); + strcat_s(command, CMD_SIZE, hgrev); + strcat_s(command, CMD_SIZE, "\\\" "); + } + strcat_s(command, CMD_SIZE, "..\\Modules\\getbuildinfo.c"); + } + strcat_s(command, CMD_SIZE, " -Fo\""); + strcat_s(command, CMD_SIZE, tmppath); + strcat_s(command, CMD_SIZE, "getbuildinfo.o\" -I..\\Include -I..\\PC"); + puts(command); fflush(stdout); + result = system(command); + if (do_unlink) { + command[0] = '\0'; + strcat_s(command, CMD_SIZE, "\""); + strcat_s(command, CMD_SIZE, tmppath); + strcat_s(command, CMD_SIZE, "getbuildinfo2.c\""); + _unlink(command); + } + if (result < 0) + return EXIT_FAILURE; + return 0; +} diff --git a/PC/VS10.0/make_buildinfo.vcxproj b/PC/VS10.0/make_buildinfo.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/make_buildinfo.vcxproj @@ -0,0 +1,52 @@ + + + + + Release + Win32 + + + + {C73F0EC1-358B-4177-940F-0846AC8B04CD} + make_buildinfo + Win32Proj + + + + Application + NotSet + + + + + + + + + + + + <_ProjectFileVersion>10.0.40219.1 + AllRules.ruleset + + + + + + Disabled + OnlyExplicitInline + _CONSOLE;%(PreprocessorDefinitions) + MultiThreaded + + + $(OutDir)make_buildinfo.exe + Console + + + + + + + + + \ No newline at end of file diff --git a/PC/VS10.0/make_buildinfo.vcxproj.filters b/PC/VS10.0/make_buildinfo.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/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/PC/VS10.0/make_versioninfo.vcxproj b/PC/VS10.0/make_versioninfo.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/make_versioninfo.vcxproj @@ -0,0 +1,200 @@ + + + + + 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 + + + + + + Build PC/pythonnt_rc(_d).h + cd $(SolutionDir) +make_versioninfo.exe > ..\PC\pythonnt_rc.h + + $(SolutionDir)..\PC\pythonnt_rc.h;%(Outputs) + $(SolutionDir)make_versioninfo.exe + + + MaxSpeed + OnlyExplicitInline + true + %(AdditionalIncludeDirectories) + _CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + $(SolutionDir)make_versioninfo.exe + Console + 0x1d000000 + + + + + + + + + + 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) + $(SolutionDir)make_versioninfo_d.exe + + + Disabled + OnlyExplicitInline + false + %(AdditionalIncludeDirectories) + _CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + $(SolutionDir)make_versioninfo_d.exe + Console + 0x1d000000 + + + + + + + + + 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/PC/VS10.0/make_versioninfo.vcxproj.filters b/PC/VS10.0/make_versioninfo.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/make_versioninfo.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {e4180954-c3a5-4749-b9a4-31b804ee4fa8} + + + + + Source Files + + + \ No newline at end of file diff --git a/PC/VS10.0/pcbuild.sln b/PC/VS10.0/pcbuild.sln new file mode 100644 --- /dev/null +++ b/PC/VS10.0/pcbuild.sln @@ -0,0 +1,706 @@ +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}") = "python", "python.vcxproj", "{B11D750F-CD1F-4A96-85CE-E69A5C5259F9}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_versioninfo", "make_versioninfo.vcxproj", "{F0E0541E-F17D-430B-97C4-93ADF0DD284E}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pythoncore", "pythoncore.vcxproj", "{CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}" +EndProject +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.vcxproj", "{C73F0EC1-358B-4177-940F-0846AC8B04CD}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "winsound", "winsound.vcxproj", "{28B5D777-DDF2-4B6B-B34F-31D938813856}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_decimal", "_decimal.vcxproj", "{0E9791DB-593A-465F-98BC-681011311617}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_ctypes", "_ctypes.vcxproj", "{0E9791DB-593A-465F-98BC-681011311618}" +EndProject +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.vcxproj", "{17E1E049-C309-4D79-843F-AE483C264AEA}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_msi", "_msi.vcxproj", "{31FFC478-7B4A-43E8-9954-8D03E2187E9C}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_socket", "_socket.vcxproj", "{86937F53-C189-40EF-8CE8-8759D8E7D480}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_sqlite3", "_sqlite3.vcxproj", "{13CECB97-4119-4316-9D42-8534019A5A44}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_ssl", "_ssl.vcxproj", "{C6E20F84-3247-4AD6-B051-B073268F73BA}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_testcapi", "_testcapi.vcxproj", "{6901D91C-6E48-4BB7-9FEC-700C8131DF1D}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_testimportmultiple", "_testimportmultiple.vcxproj", "{36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_tkinter", "_tkinter.vcxproj", "{4946ECAC-2E69-4BF8-A90A-F5136F5094DF}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_bz2", "_bz2.vcxproj", "{73FCD2BD-F133-46B7-8EC1-144CD82A59D5}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "select", "select.vcxproj", "{18CAE28C-B454-46C1-87A0-493D91D97F03}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_lzma", "_lzma.vcxproj", "{F9D71780-F393-11E0-BE50-0800200C9A66}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unicodedata", "unicodedata.vcxproj", "{ECC7CEAC-A5E5-458E-BB9E-2413CC847881}" +EndProject +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.vcxproj", "{EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_hashlib", "_hashlib.vcxproj", "{447F05A8-F581-4CAC-A466-5AC7936E207E}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sqlite3", "sqlite3.vcxproj", "{A1A295E5-463C-437F-81CA-1F32367685DA}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_multiprocessing", "_multiprocessing.vcxproj", "{9E48B300-37D1-11DD-8C41-005056C00008}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssl", "ssl.vcxproj", "{E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}" +EndProject +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.vcxproj", "{885D4898-D08D-4091-9C40-C700CFE3FC5A}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xxlimited", "xxlimited.vcxproj", "{F749B822-B489-4CA5-A3AD-CE078F5F338A}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_testbuffer", "_testbuffer.vcxproj", "{A2697BD3-28C1-4AEC-9106-8B748639FD16}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pylauncher", "pylauncher.vcxproj", "{7B2727B5-5A3F-40EE-A866-43A13CD31446}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pywlauncher", "pywlauncher.vcxproj", "{1D4B18D3-7C12-4ECB-9179-8531FF876CE6}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_freeze_importlib", "_freeze_importlib.vcxproj", "{19C0C13F-47CA-4432-AFF3-799A296A4DDC}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_overlapped", "_overlapped.vcxproj", "{EB6E69DD-04BF-4543-9B92-49FAABCEAC2E}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_testembed", "_testembed.vcxproj", "{6DAC66D9-E703-4624-BE03-49112AB5AA62}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tcl", "tcl.vcxproj", "{B5FD6F1D-129E-4BFF-9340-03606FAC7283}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tk", "tk.vcxproj", "{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tix", "tix.vcxproj", "{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}" +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 + {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 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.Debug|Win32.ActiveCfg = Debug|Win32 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.Debug|Win32.Build.0 = Debug|Win32 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.Debug|x64.ActiveCfg = Debug|x64 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.Debug|x64.Build.0 = Debug|x64 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.Release|Win32.ActiveCfg = Release|Win32 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.Release|Win32.Build.0 = Release|Win32 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.Release|x64.ActiveCfg = Release|x64 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.Release|x64.Build.0 = Release|x64 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.Debug|Win32.ActiveCfg = Debug|Win32 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.Debug|Win32.Build.0 = Debug|Win32 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.Debug|x64.ActiveCfg = Debug|x64 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.Debug|x64.Build.0 = Debug|x64 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.Release|Win32.ActiveCfg = Release|Win32 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.Release|Win32.Build.0 = Release|Win32 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.Release|x64.ActiveCfg = Release|x64 + {4946ECAC-2E69-4BF8-A90A-F5136F5094DF}.Release|x64.Build.0 = Release|x64 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.Debug|Win32.ActiveCfg = Debug|Win32 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.Debug|Win32.Build.0 = Debug|Win32 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.Debug|x64.ActiveCfg = Debug|x64 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.Debug|x64.Build.0 = Debug|x64 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.Release|Win32.ActiveCfg = Release|Win32 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.Release|Win32.Build.0 = Release|Win32 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.Release|x64.ActiveCfg = Release|x64 + {73FCD2BD-F133-46B7-8EC1-144CD82A59D5}.Release|x64.Build.0 = Release|x64 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.Debug|Win32.ActiveCfg = Debug|Win32 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.Debug|Win32.Build.0 = Debug|Win32 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.Debug|x64.ActiveCfg = Debug|x64 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.Debug|x64.Build.0 = Debug|x64 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.Release|Win32.ActiveCfg = Release|Win32 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.Release|Win32.Build.0 = Release|Win32 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.Release|x64.ActiveCfg = Release|x64 + {18CAE28C-B454-46C1-87A0-493D91D97F03}.Release|x64.Build.0 = Release|x64 + {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 + {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 = Release|Win32 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.Debug|x64.ActiveCfg = Release|x64 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {F749B822-B489-4CA5-A3AD-CE078F5F338A}.PGUpdate|Win32.Build.0 = PGUpdate|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 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Debug|Win32.ActiveCfg = Debug|Win32 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Debug|Win32.Build.0 = Debug|Win32 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Debug|x64.ActiveCfg = Debug|x64 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Debug|x64.Build.0 = Debug|x64 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGInstrument|x64.ActiveCfg = PGInstrument|Win32 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGInstrument|x64.Build.0 = PGInstrument|Win32 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGUpdate|x64.ActiveCfg = PGUpdate|Win32 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGUpdate|x64.Build.0 = PGUpdate|Win32 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Release|Win32.ActiveCfg = Release|Win32 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Release|Win32.Build.0 = Release|Win32 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Release|x64.ActiveCfg = Release|Win32 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Release|x64.Build.0 = Release|Win32 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Debug|Win32.ActiveCfg = Debug|Win32 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Debug|Win32.Build.0 = Debug|Win32 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Debug|x64.ActiveCfg = Debug|x64 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Debug|x64.Build.0 = Debug|x64 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGInstrument|x64.ActiveCfg = PGInstrument|Win32 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGInstrument|x64.Build.0 = PGInstrument|Win32 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGUpdate|x64.ActiveCfg = PGUpdate|Win32 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGUpdate|x64.Build.0 = PGUpdate|Win32 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Release|Win32.ActiveCfg = Release|Win32 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Release|Win32.Build.0 = Release|Win32 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Release|x64.ActiveCfg = Release|Win32 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Release|x64.Build.0 = Release|Win32 + {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.Debug|Win32.ActiveCfg = Debug|Win32 + {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.Debug|x64.ActiveCfg = Debug|x64 + {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.PGInstrument|x64.ActiveCfg = Release|Win32 + {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.PGUpdate|x64.ActiveCfg = Release|Win32 + {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.Release|Win32.ActiveCfg = Release|Win32 + {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.Release|x64.ActiveCfg = Release|x64 + {EB6E69DD-04BF-4543-9B92-49FAABCEAC2E}.Debug|Win32.ActiveCfg = Debug|Win32 + {EB6E69DD-04BF-4543-9B92-49FAABCEAC2E}.Debug|Win32.Build.0 = Debug|Win32 + {EB6E69DD-04BF-4543-9B92-49FAABCEAC2E}.Debug|x64.ActiveCfg = Debug|x64 + {EB6E69DD-04BF-4543-9B92-49FAABCEAC2E}.Debug|x64.Build.0 = Debug|x64 + {EB6E69DD-04BF-4543-9B92-49FAABCEAC2E}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {EB6E69DD-04BF-4543-9B92-49FAABCEAC2E}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {EB6E69DD-04BF-4543-9B92-49FAABCEAC2E}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {EB6E69DD-04BF-4543-9B92-49FAABCEAC2E}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {EB6E69DD-04BF-4543-9B92-49FAABCEAC2E}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {EB6E69DD-04BF-4543-9B92-49FAABCEAC2E}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {EB6E69DD-04BF-4543-9B92-49FAABCEAC2E}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {EB6E69DD-04BF-4543-9B92-49FAABCEAC2E}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {EB6E69DD-04BF-4543-9B92-49FAABCEAC2E}.Release|Win32.ActiveCfg = Release|Win32 + {EB6E69DD-04BF-4543-9B92-49FAABCEAC2E}.Release|Win32.Build.0 = Release|Win32 + {EB6E69DD-04BF-4543-9B92-49FAABCEAC2E}.Release|x64.ActiveCfg = Release|x64 + {EB6E69DD-04BF-4543-9B92-49FAABCEAC2E}.Release|x64.Build.0 = Release|x64 + {6DAC66D9-E703-4624-BE03-49112AB5AA62}.Debug|Win32.ActiveCfg = Debug|Win32 + {6DAC66D9-E703-4624-BE03-49112AB5AA62}.Debug|Win32.Build.0 = Debug|Win32 + {6DAC66D9-E703-4624-BE03-49112AB5AA62}.Debug|x64.ActiveCfg = Debug|x64 + {6DAC66D9-E703-4624-BE03-49112AB5AA62}.Debug|x64.Build.0 = Debug|x64 + {6DAC66D9-E703-4624-BE03-49112AB5AA62}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {6DAC66D9-E703-4624-BE03-49112AB5AA62}.PGInstrument|x64.ActiveCfg = Release|x64 + {6DAC66D9-E703-4624-BE03-49112AB5AA62}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {6DAC66D9-E703-4624-BE03-49112AB5AA62}.PGUpdate|Win32.Build.0 = Release|Win32 + {6DAC66D9-E703-4624-BE03-49112AB5AA62}.PGUpdate|x64.ActiveCfg = Release|x64 + {6DAC66D9-E703-4624-BE03-49112AB5AA62}.PGUpdate|x64.Build.0 = Release|x64 + {6DAC66D9-E703-4624-BE03-49112AB5AA62}.Release|Win32.ActiveCfg = Release|Win32 + {6DAC66D9-E703-4624-BE03-49112AB5AA62}.Release|Win32.Build.0 = Release|Win32 + {6DAC66D9-E703-4624-BE03-49112AB5AA62}.Release|x64.ActiveCfg = Release|x64 + {6DAC66D9-E703-4624-BE03-49112AB5AA62}.Release|x64.Build.0 = Release|x64 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Debug|Win32.ActiveCfg = Debug|Win32 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Debug|Win32.Build.0 = Debug|Win32 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Debug|x64.ActiveCfg = Debug|x64 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Debug|x64.Build.0 = Debug|x64 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|Win32.Build.0 = Release|Win32 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|Win32.Build.0 = Release|Win32 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Release|Win32.ActiveCfg = Release|Win32 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Release|Win32.Build.0 = Release|Win32 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Release|x64.ActiveCfg = Release|x64 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Release|x64.Build.0 = Release|x64 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Debug|Win32.ActiveCfg = Debug|Win32 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Debug|Win32.Build.0 = Debug|Win32 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Debug|x64.ActiveCfg = Debug|x64 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Debug|x64.Build.0 = Debug|x64 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|Win32.Build.0 = Release|Win32 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|Win32.Build.0 = Release|Win32 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Release|Win32.ActiveCfg = Release|Win32 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Release|Win32.Build.0 = Release|Win32 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Release|x64.ActiveCfg = Release|x64 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Release|x64.Build.0 = Release|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|Win32.ActiveCfg = Debug|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|Win32.Build.0 = Debug|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|x64.ActiveCfg = Debug|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|x64.Build.0 = Debug|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|Win32.ActiveCfg = Release|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|Win32.Build.0 = Release|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|x64.ActiveCfg = Release|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|x64.Build.0 = Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/PC/VS10.0/pginstrument.props b/PC/VS10.0/pginstrument.props new file mode 100644 --- /dev/null +++ b/PC/VS10.0/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 + false + PGInstrument + $(SolutionDir)$(Platform)-pgi\$(TargetName).pgd + $(OutDirPGI)\$(TargetName).lib + + + + + $(OutDirPGI) + + + diff --git a/PC/VS10.0/pgupdate.props b/PC/VS10.0/pgupdate.props new file mode 100644 --- /dev/null +++ b/PC/VS10.0/pgupdate.props @@ -0,0 +1,17 @@ + + + + + + + <_ProjectFileVersion>10.0.30319.1 + $(SolutionDir)$(PlatformName)-pgo\ + + + + %(AdditionalManifestDependencies) + PGUpdate + $(OutDir)$(TargetName).lib + + + \ No newline at end of file diff --git a/PC/VS10.0/prepare_ssl.bat b/PC/VS10.0/prepare_ssl.bat new file mode 100644 --- /dev/null +++ b/PC/VS10.0/prepare_ssl.bat @@ -0,0 +1,12 @@ +@echo off +if not defined HOST_PYTHON ( + if %1 EQU Debug ( + shift + set HOST_PYTHON=python_d.exe + if not exist python35_d.dll exit 1 + ) ELSE ( + set HOST_PYTHON=python.exe + if not exist python35.dll exit 1 + ) +) +%HOST_PYTHON% prepare_ssl.py %1 diff --git a/PC/VS10.0/prepare_ssl.py b/PC/VS10.0/prepare_ssl.py new file mode 100644 --- /dev/null +++ b/PC/VS10.0/prepare_ssl.py @@ -0,0 +1,240 @@ +# Script for preparing OpenSSL for building on Windows. +# Uses Perl to create nmake makefiles and otherwise prepare the way +# for building on 32 or 64 bit platforms. + +# Script originally authored by Mark Hammond. +# Major revisions by: +# Martin v. Löwis +# Christian Heimes +# Zachary Ware + +# THEORETICALLY, you can: +# * Unpack the latest OpenSSL release where $(opensslDir) in +# PCbuild\pyproject.props expects it to be. +# * Install ActivePerl and ensure it is somewhere on your path. +# * Run this script with the OpenSSL source dir as the only argument. +# +# it should configure OpenSSL such that it is ready to be built by +# ssl.vcxproj on 32 or 64 bit platforms. + +import os +import re +import sys +import shutil +import subprocess + +# Find all "foo.exe" files on the PATH. +def find_all_on_path(filename, extras = None): + entries = os.environ["PATH"].split(os.pathsep) + ret = [] + for p in entries: + fname = os.path.abspath(os.path.join(p, filename)) + if os.path.isfile(fname) and fname not in ret: + ret.append(fname) + if extras: + for p in extras: + fname = os.path.abspath(os.path.join(p, filename)) + if os.path.isfile(fname) and fname not in ret: + ret.append(fname) + return ret + +# Find a suitable Perl installation for OpenSSL. +# cygwin perl does *not* work. ActivePerl does. +# Being a Perl dummy, the simplest way I can check is if the "Win32" package +# is available. +def find_working_perl(perls): + for perl in perls: + try: + subprocess.check_output([perl, "-e", "use Win32;"]) + except subprocess.CalledProcessError: + continue + else: + return perl + + if perls: + print("The following perl interpreters were found:") + for p in perls: + print(" ", p) + print(" None of these versions appear suitable for building OpenSSL") + else: + print("NO perl interpreters were found on this machine at all!") + print(" Please install ActivePerl and ensure it appears on your path") + +def create_makefile64(makefile, m32): + """Create and fix makefile for 64bit + + Replace 32 with 64bit directories + """ + if not os.path.isfile(m32): + return + with open(m32) as fin: + with open(makefile, 'w') as fout: + for line in fin: + line = line.replace("=tmp32", "=tmp64") + line = line.replace("=out32", "=out64") + line = line.replace("=inc32", "=inc64") + # force 64 bit machine + line = line.replace("MKLIB=lib", "MKLIB=lib /MACHINE:X64") + line = line.replace("LFLAGS=", "LFLAGS=/MACHINE:X64 ") + # don't link against the lib on 64bit systems + line = line.replace("bufferoverflowu.lib", "") + fout.write(line) + os.unlink(m32) + +def create_asms(makefile): + #create a custom makefile out of the provided one + asm_makefile = os.path.splitext(makefile)[0] + '.asm.mak' + with open(makefile) as fin: + with open(asm_makefile, 'w') as fout: + for line in fin: + # Keep everything up to the install target (it's convenient) + if line.startswith('install: all'): + break + else: + fout.write(line) + asms = [] + for line in fin: + if '.asm' in line and line.strip().endswith('.pl'): + asms.append(line.split(':')[0]) + while line.strip(): + fout.write(line) + line = next(fin) + fout.write('\n') + + fout.write('asms: $(TMP_D) ') + fout.write(' '.join(asms)) + fout.write('\n') + + os.system('nmake /f {} PERL=perl asms'.format(asm_makefile)) + os.unlink(asm_makefile) + + + +def fix_makefile(makefile): + """Fix some stuff in all makefiles + """ + if not os.path.isfile(makefile): + return + with open(makefile) as fin: + lines = fin.readlines() + with open(makefile, 'w') as fout: + for line in lines: + if line.startswith("PERL="): + continue + if line.startswith("CP="): + line = "CP=copy\n" + if line.startswith("MKDIR="): + line = "MKDIR=mkdir\n" + if line.startswith("CFLAG="): + line = line.strip() + for algo in ("RC5", "MDC2", "IDEA"): + noalgo = " -DOPENSSL_NO_%s" % algo + if noalgo not in line: + line = line + noalgo + line = line + '\n' + fout.write(line) + +def run_configure(configure, do_script): + print("perl Configure "+configure+" no-idea no-mdc2") + os.system("perl Configure "+configure+" no-idea no-mdc2") + print(do_script) + os.system(do_script) + +def cmp(f1, f2): + bufsize = 1024 * 8 + with open(f1, 'rb') as fp1, open(f2, 'rb') as fp2: + while True: + b1 = fp1.read(bufsize) + b2 = fp2.read(bufsize) + if b1 != b2: + return False + if not b1: + return True + +def copy(src, dst): + if os.path.isfile(dst) and cmp(src, dst): + return + shutil.copy(src, dst) + +def prep(arch): + if arch == "x86": + configure = "VC-WIN32" + do_script = "ms\\do_nasm" + makefile="ms\\nt.mak" + m32 = makefile + dirsuffix = "32" + elif arch == "amd64": + configure = "VC-WIN64A" + do_script = "ms\\do_win64a" + makefile = "ms\\nt64.mak" + m32 = makefile.replace('64', '') + dirsuffix = "64" + #os.environ["VSEXTCOMP_USECL"] = "MS_OPTERON" + else: + raise ValueError('Unrecognized platform: %s' % arch) + + # rebuild makefile when we do the role over from 32 to 64 build + if arch == "amd64" and os.path.isfile(m32) and not os.path.isfile(makefile): + os.unlink(m32) + + # If the ssl makefiles do not exist, we invoke Perl to generate them. + # Due to a bug in this script, the makefile sometimes ended up empty + # Force a regeneration if it is. + if not os.path.isfile(makefile) or os.path.getsize(makefile)==0: + print("Creating the makefiles...") + sys.stdout.flush() + run_configure(configure, do_script) + + if arch == "amd64": + create_makefile64(makefile, m32) + fix_makefile(makefile) + copy(r"crypto\buildinf.h", r"crypto\buildinf_%s.h" % arch) + copy(r"crypto\opensslconf.h", r"crypto\opensslconf_%s.h" % arch) + else: + print(makefile, 'already exists!') + + print('creating asms...') + create_asms(makefile) + +def main(): + if len(sys.argv) == 1: + print("Not enough arguments: directory containing OpenSSL", + "sources must be supplied") + sys.exit(1) + + if len(sys.argv) > 2: + print("Too many arguments supplied, all we need is the directory", + "containing OpenSSL sources") + sys.exit(1) + + ssl_dir = sys.argv[1] + + if not os.path.isdir(ssl_dir): + print(ssl_dir, "is not an existing directory!") + sys.exit(1) + + # perl should be on the path, but we also look in "\perl" and "c:\\perl" + # as "well known" locations + perls = find_all_on_path("perl.exe", ["\\perl\\bin", "C:\\perl\\bin"]) + perl = find_working_perl(perls) + if perl: + print("Found a working perl at '%s'" % (perl,)) + else: + sys.exit(1) + sys.stdout.flush() + + # Put our working Perl at the front of our path + os.environ["PATH"] = os.path.dirname(perl) + \ + os.pathsep + \ + os.environ["PATH"] + + old_cwd = os.getcwd() + try: + os.chdir(ssl_dir) + for arch in ['amd64', 'x86']: + prep(arch) + finally: + os.chdir(old_cwd) + +if __name__=='__main__': + main() diff --git a/PC/VS10.0/pyd.props b/PC/VS10.0/pyd.props new file mode 100644 --- /dev/null +++ b/PC/VS10.0/pyd.props @@ -0,0 +1,25 @@ + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + false + false + .pyd + + + + Py_BUILD_CORE_MODULE;%(PreprocessorDefinitions) + MultiThreadedDLL + + + + + + + + + \ No newline at end of file diff --git a/PC/VS10.0/pyd_d.props b/PC/VS10.0/pyd_d.props new file mode 100644 --- /dev/null +++ b/PC/VS10.0/pyd_d.props @@ -0,0 +1,31 @@ + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + false + false + false + .pyd + $(ProjectName)_d + + + + Disabled + Default + false + Py_BUILD_CORE_MODULE;%(PreprocessorDefinitions) + MultiThreadedDebugDLL + + + + + + + + + \ No newline at end of file diff --git a/PC/VS10.0/pyexpat.vcxproj b/PC/VS10.0/pyexpat.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/pyexpat.vcxproj @@ -0,0 +1,237 @@ + + + + + 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 + + + + + + .\..\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/PC/VS10.0/pyexpat.vcxproj.filters b/PC/VS10.0/pyexpat.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/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/PC/VS10.0/pylauncher.vcxproj b/PC/VS10.0/pylauncher.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/pylauncher.vcxproj @@ -0,0 +1,311 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {7B2727B5-5A3F-40EE-A866-43A13CD31446} + pylauncher + + + + Application + true + MultiByte + + + Application + true + MultiByte + + + Application + false + true + MultiByte + + + Application + false + true + MultiByte + + + Application + false + true + MultiByte + + + Application + false + true + MultiByte + + + Application + false + true + MultiByte + + + Application + false + true + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + py_d + + + py_d + + + py + + + py + + + py + + + py + + + py + + + py + + + + Level3 + Disabled + _CONSOLE;%(PreprocessorDefinitions) + + + true + version.lib;%(AdditionalDependencies) + false + Console + $(OutDir)$(TargetName)$(TargetExt) + + + + + Level3 + Disabled + _CONSOLE;%(PreprocessorDefinitions) + + + true + version.lib;%(AdditionalDependencies) + false + Console + $(OutDir)$(TargetName)$(TargetExt) + + + + + Level3 + MaxSpeed + true + true + _CONSOLE;NDEBUG;%(PreprocessorDefinitions) + + + true + false + true + false + version.lib;%(AdditionalDependencies) + Console + + + + + Level3 + MaxSpeed + true + true + _CONSOLE;NDEBUG;%(PreprocessorDefinitions) + + + true + false + true + false + version.lib;%(AdditionalDependencies) + Console + + + + + Level3 + MaxSpeed + true + true + _CONSOLE;NDEBUG;%(PreprocessorDefinitions) + + + true + false + true + false + version.lib;%(AdditionalDependencies) + Console + + + + + Level3 + MaxSpeed + true + true + _CONSOLE;NDEBUG;%(PreprocessorDefinitions) + + + true + false + true + false + version.lib;%(AdditionalDependencies) + Console + + + + + Level3 + MaxSpeed + true + true + _CONSOLE;NDEBUG;%(PreprocessorDefinitions) + + + true + false + true + false + version.lib;%(AdditionalDependencies) + Console + + + + + Level3 + MaxSpeed + true + true + _CONSOLE;NDEBUG;%(PreprocessorDefinitions) + + + true + false + true + false + version.lib;%(AdditionalDependencies) + Console + + + + + + + + + + + + + + {f0e0541e-f17d-430b-97c4-93adf0dd284e} + + + + + + diff --git a/PC/VS10.0/pylauncher.vcxproj.filters b/PC/VS10.0/pylauncher.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/pylauncher.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;mfcribbon-ms + + + + + Source Files + + + + + Resource Files + + + + + Resource Files + + + \ No newline at end of file diff --git a/PC/VS10.0/pyproject.props b/PC/VS10.0/pyproject.props new file mode 100644 --- /dev/null +++ b/PC/VS10.0/pyproject.props @@ -0,0 +1,100 @@ + + + + <_ProjectFileVersion>10.0.30319.1 + $(SolutionDir) + $(SolutionDir)$(PlatformName)-temp-$(Configuration)\$(ProjectName)\ + false + + + <_ProjectFileVersion>10.0.30319.1 + <_PropertySheetDisplayName>amd64 + $(SolutionDir)amd64\ + $(SolutionDir)$(PlatformName)-temp-$(Configuration)\$(ProjectName)\ + + + python35$(PyDebugExt) + $(OutDir)python$(PyDebugExt).exe + $(OutDir)kill_python$(PyDebugExt).exe + ..\externals + $(externalsDir)\sqlite-3.8.3.1 + $(externalsDir)\bzip2-1.0.6 + $(externalsDir)\xz-5.0.5 + $(externalsDir)\nasm-2.11.06 + $(externalsDir)\openssl-1.0.1j + $(externalsDir)\tcl-8.6.1.0 + $(externalsDir)\tk-8.6.1.0 + $(externalsDir)\tix-8.4.3.4 + $(externalsDir)\tcltk + + + + MaxSpeed + OnlyExplicitInline + true + ..\Include; ..\PC;%(AdditionalIncludeDirectories) + _WIN32;%(PreprocessorDefinitions) + true + + + MultiThreaded + true + Level3 + ProgramDatabase + Default + + + $(OutDir);%(AdditionalLibraryDirectories) + true + $(OutDir)$(TargetName).pdb + Windows + true + true + MachineX86 + + + ..\PC;..\Include;%(AdditionalIncludeDirectories) + + + + + $(PyDllName) + + + $(PythonExe) + + + $(KillPythonExe) + + + $(externalsDir) + + + $(sqlite3Dir) + + + $(bz2Dir) + + + $(lzmaDir) + + + $(nasmDir) + + + $(opensslDir) + + + $(tclDir) + + + $(tkDir) + + + $(tixDir) + + + $(tcltkDir) + + + \ No newline at end of file diff --git a/PC/VS10.0/python.vcxproj b/PC/VS10.0/python.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/python.vcxproj @@ -0,0 +1,524 @@ + + + + + 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 + + + Link + Link + Link + Link + Link + Link + Link + Link + + + + %(AdditionalIncludeDirectories) + _CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + $(OutDir)python.exe + Console + 2000000 + 0x1d000000 + + + echo @rem This script invokes the most recently built Python with all arguments> "$(SolutionDir)..\python.bat" +echo @rem passed through to the interpreter. This file is generated by the>> "$(SolutionDir)..\python.bat" +echo @rem build process and any changes *will* be thrown away by the next>> "$(SolutionDir)..\python.bat" +echo @rem rebuild.>> "$(SolutionDir)..\python.bat" +echo @rem This is only meant as a convenience for developing CPython>> "$(SolutionDir)..\python.bat" +echo @rem and using it outside of that context is ill-advised.>> "$(SolutionDir)..\python.bat" +echo @echo Running $(Configuration)^^^|$(Platform) interpreter...>> "$(SolutionDir)..\python.bat" +echo @"$(OutDir)python$(PyDebugExt).exe" %%*>> "$(SolutionDir)..\python.bat" + + + Creating convenience batch file for easily invoking the newly built interpreter. + + + $(SolutionDir)..\python.bat + + + $(OutDir)python$(PyDebugExt).exe;%(Inputs) + + + + + X64 + + + %(AdditionalIncludeDirectories) + _CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + $(OutDir)python.exe + Console + 2000000 + 0x1d000000 + + + echo @rem This script invokes the most recently built Python with all arguments> "$(SolutionDir)..\python.bat" +echo @rem passed through to the interpreter. This file is generated by the>> "$(SolutionDir)..\python.bat" +echo @rem build process and any changes *will* be thrown away by the next>> "$(SolutionDir)..\python.bat" +echo @rem rebuild.>> "$(SolutionDir)..\python.bat" +echo @rem This is only meant as a convenience for developing CPython>> "$(SolutionDir)..\python.bat" +echo @rem and using it outside of that context is ill-advised.>> "$(SolutionDir)..\python.bat" +echo @echo Running $(Configuration)^^^|$(Platform) interpreter...>> "$(SolutionDir)..\python.bat" +echo @"$(OutDir)python$(PyDebugExt).exe" %%*>> "$(SolutionDir)..\python.bat" + + + Creating convenience batch file for easily invoking the newly built interpreter. + + + $(SolutionDir)..\python.bat + + + $(OutDir)python$(PyDebugExt).exe;%(Inputs) + + + + + Disabled + false + %(AdditionalIncludeDirectories) + _CONSOLE;%(PreprocessorDefinitions) + MultiThreadedDebugDLL + true + Default + + + _DEBUG;%(PreprocessorDefinitions) + 0x0409 + ..\Include;%(AdditionalIncludeDirectories) + + + $(OutDir)python_d.exe + Console + 2000000 + 0x1d000000 + + + echo @rem This script invokes the most recently built Python with all arguments> "$(SolutionDir)..\python.bat" +echo @rem passed through to the interpreter. This file is generated by the>> "$(SolutionDir)..\python.bat" +echo @rem build process and any changes *will* be thrown away by the next>> "$(SolutionDir)..\python.bat" +echo @rem rebuild.>> "$(SolutionDir)..\python.bat" +echo @rem This is only meant as a convenience for developing CPython>> "$(SolutionDir)..\python.bat" +echo @rem and using it outside of that context is ill-advised.>> "$(SolutionDir)..\python.bat" +echo @echo Running $(Configuration)^^^|$(Platform) interpreter...>> "$(SolutionDir)..\python.bat" +echo @"$(OutDir)python$(PyDebugExt).exe" %%*>> "$(SolutionDir)..\python.bat" + + + Creating convenience batch file for easily invoking the newly built interpreter. + + + $(SolutionDir)..\python.bat + + + $(OutDir)python$(PyDebugExt).exe;%(Inputs) + + + + + X64 + + + Disabled + false + %(AdditionalIncludeDirectories) + _CONSOLE;%(PreprocessorDefinitions) + MultiThreadedDebugDLL + true + Default + + + _DEBUG;%(PreprocessorDefinitions) + 0x0409 + ..\Include;%(AdditionalIncludeDirectories) + + + $(OutDir)python_d.exe + Console + 4194304 + 0x1d000000 + + + echo @rem This script invokes the most recently built Python with all arguments> "$(SolutionDir)..\python.bat" +echo @rem passed through to the interpreter. This file is generated by the>> "$(SolutionDir)..\python.bat" +echo @rem build process and any changes *will* be thrown away by the next>> "$(SolutionDir)..\python.bat" +echo @rem rebuild.>> "$(SolutionDir)..\python.bat" +echo @rem This is only meant as a convenience for developing CPython>> "$(SolutionDir)..\python.bat" +echo @rem and using it outside of that context is ill-advised.>> "$(SolutionDir)..\python.bat" +echo @echo Running $(Configuration)^^^|$(Platform) interpreter...>> "$(SolutionDir)..\python.bat" +echo @"$(OutDir)python$(PyDebugExt).exe" %%*>> "$(SolutionDir)..\python.bat" + + + Creating convenience batch file for easily invoking the newly built interpreter. + + + $(SolutionDir)..\python.bat + + + $(OutDir)python$(PyDebugExt).exe;%(Inputs) + + + + + %(AdditionalIncludeDirectories) + _CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + $(OutDir)python.exe + Console + 2000000 + 0x1d000000 + + + + + echo @rem This script invokes the most recently built Python with all arguments> "$(SolutionDir)..\python.bat" +echo @rem passed through to the interpreter. This file is generated by the>> "$(SolutionDir)..\python.bat" +echo @rem build process and any changes *will* be thrown away by the next>> "$(SolutionDir)..\python.bat" +echo @rem rebuild.>> "$(SolutionDir)..\python.bat" +echo @rem This is only meant as a convenience for developing CPython>> "$(SolutionDir)..\python.bat" +echo @rem and using it outside of that context is ill-advised.>> "$(SolutionDir)..\python.bat" +echo @echo Running $(Configuration)^^^|$(Platform) interpreter...>> "$(SolutionDir)..\python.bat" +echo @"$(OutDir)python$(PyDebugExt).exe" %%*>> "$(SolutionDir)..\python.bat" + + + Creating convenience batch file for easily invoking the newly built interpreter. + + + $(SolutionDir)..\python.bat + + + $(OutDir)python$(PyDebugExt).exe;%(Inputs) + + + + + X64 + + + %(AdditionalIncludeDirectories) + _CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + $(OutDir)python.exe + Console + 2000000 + 0x1d000000 + + + MachineX64 + + + echo @rem This script invokes the most recently built Python with all arguments> "$(SolutionDir)..\python.bat" +echo @rem passed through to the interpreter. This file is generated by the>> "$(SolutionDir)..\python.bat" +echo @rem build process and any changes *will* be thrown away by the next>> "$(SolutionDir)..\python.bat" +echo @rem rebuild.>> "$(SolutionDir)..\python.bat" +echo @rem This is only meant as a convenience for developing CPython>> "$(SolutionDir)..\python.bat" +echo @rem and using it outside of that context is ill-advised.>> "$(SolutionDir)..\python.bat" +echo @echo Running $(Configuration)^^^|$(Platform) interpreter...>> "$(SolutionDir)..\python.bat" +echo @"$(OutDir)python$(PyDebugExt).exe" %%*>> "$(SolutionDir)..\python.bat" + + + Creating convenience batch file for easily invoking the newly built interpreter. + + + $(SolutionDir)..\python.bat + + + $(OutDir)python$(PyDebugExt).exe;%(Inputs) + + + + + %(AdditionalIncludeDirectories) + _CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + $(OutDir)python.exe + Console + 2000000 + 0x1d000000 + + + + + echo @rem This script invokes the most recently built Python with all arguments> "$(SolutionDir)..\python.bat" +echo @rem passed through to the interpreter. This file is generated by the>> "$(SolutionDir)..\python.bat" +echo @rem build process and any changes *will* be thrown away by the next>> "$(SolutionDir)..\python.bat" +echo @rem rebuild.>> "$(SolutionDir)..\python.bat" +echo @rem This is only meant as a convenience for developing CPython>> "$(SolutionDir)..\python.bat" +echo @rem and using it outside of that context is ill-advised.>> "$(SolutionDir)..\python.bat" +echo @echo Running $(Configuration)^^^|$(Platform) interpreter...>> "$(SolutionDir)..\python.bat" +echo @"$(OutDir)python$(PyDebugExt).exe" %%*>> "$(SolutionDir)..\python.bat" + + + Creating convenience batch file for easily invoking the newly built interpreter. + + + $(SolutionDir)..\python.bat + + + $(OutDir)python$(PyDebugExt).exe;%(Inputs) + + + + + X64 + + + %(AdditionalIncludeDirectories) + _CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + Default + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + $(OutDir)python.exe + Console + 2000000 + 0x1d000000 + + + MachineX64 + + + echo @rem This script invokes the most recently built Python with all arguments> "$(SolutionDir)..\python.bat" +echo @rem passed through to the interpreter. This file is generated by the>> "$(SolutionDir)..\python.bat" +echo @rem build process and any changes *will* be thrown away by the next>> "$(SolutionDir)..\python.bat" +echo @rem rebuild.>> "$(SolutionDir)..\python.bat" +echo @rem This is only meant as a convenience for developing CPython>> "$(SolutionDir)..\python.bat" +echo @rem and using it outside of that context is ill-advised.>> "$(SolutionDir)..\python.bat" +echo @echo Running $(Configuration)^^^|$(Platform) interpreter...>> "$(SolutionDir)..\python.bat" +echo @"$(OutDir)python$(PyDebugExt).exe" %%*>> "$(SolutionDir)..\python.bat" + + + Creating convenience batch file for easily invoking the newly built interpreter. + + + $(SolutionDir)..\python.bat + + + $(OutDir)python$(PyDebugExt).exe;%(Inputs) + + + + + + + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + \ No newline at end of file diff --git a/PC/VS10.0/python.vcxproj.filters b/PC/VS10.0/python.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/python.vcxproj.filters @@ -0,0 +1,26 @@ + + + + + {2d690795-de83-4a33-8235-3c5dafe45efa} + + + {8b010a19-5b29-45f1-a8a0-f672e2bbb11a} + + + + + Resource Files + + + + + Resource Files + + + + + Source Files + + + diff --git a/PC/VS10.0/python3dll.vcxproj b/PC/VS10.0/python3dll.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/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 +"$(VSInstallDir)\VC\bin\nmake.exe" /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 +"$(VSInstallDir)\VC\bin\nmake.exe" /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 +"$(VSInstallDir)\VC\bin\nmake.exe" /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 +"$(VSInstallDir)\VC\bin\nmake.exe" /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 +"$(VSInstallDir)\VC\bin\nmake.exe" /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 +"$(VSInstallDir)\VC\bin\nmake.exe" /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/PC/VS10.0/python3dll.vcxproj.filters b/PC/VS10.0/python3dll.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/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/PC/VS10.0/pythoncore.vcxproj b/PC/VS10.0/pythoncore.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/pythoncore.vcxproj @@ -0,0 +1,773 @@ + + + + + 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) + $(PyDllName) + $(PyDllName) + $(PyDllName) + $(PyDllName) + $(PyDllName) + $(PyDllName) + $(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;ws2_32.lib;%(AdditionalDependencies) + $(OutDir)$(PyDllName).dll + libc;%(IgnoreSpecificDefaultLibraries) + 0x1e000000 + + + $(KillPythonExe) +IF %ERRORLEVEL% NEQ 0 ( + echo kill_python: war^ning: could not kill running Pythons, exit code %ERRORLEVEL% + exit /b 0 +) + + + Killing any running $(PythonExe) instances... + + + + + 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;ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1e000000 + + + $(KillPythonExe) +IF %ERRORLEVEL% NEQ 0 ( + echo kill_python: war^ning: could not kill running Pythons, exit code %ERRORLEVEL% + exit /b 0 +) + + + Killing any running $(PythonExe) instances... + + + + + /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;ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1e000000 + + + $(KillPythonExe) +IF %ERRORLEVEL% NEQ 0 ( + echo kill_python: war^ning: could not kill running Pythons, exit code %ERRORLEVEL% + exit /b 0 +) + + + Killing any running $(PythonExe) instances... + + + + + 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;ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1e000000 + + + $(KillPythonExe) +IF %ERRORLEVEL% NEQ 0 ( + echo kill_python: war^ning: could not kill running Pythons, exit code %ERRORLEVEL% + exit /b 0 +) + + + Killing any running $(PythonExe) instances... + + + + + /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;ws2_32.lib;%(AdditionalDependencies) + $(OutDir)$(PyDllName).dll + libc;%(IgnoreSpecificDefaultLibraries) + 0x1e000000 + + + $(KillPythonExe) +IF %ERRORLEVEL% NEQ 0 ( + echo kill_python: war^ning: could not kill running Pythons, exit code %ERRORLEVEL% + exit /b 0 +) + + + Killing any running $(PythonExe) instances... + + + + + 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;ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1e000000 + MachineX64 + + + $(KillPythonExe) +IF %ERRORLEVEL% NEQ 0 ( + echo kill_python: war^ning: could not kill running Pythons, exit code %ERRORLEVEL% + exit /b 0 +) + + + Killing any running $(PythonExe) instances... + + + + + /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;ws2_32.lib;%(AdditionalDependencies) + $(OutDir)$(PyDllName).dll + libc;%(IgnoreSpecificDefaultLibraries) + 0x1e000000 + + + $(KillPythonExe) +IF %ERRORLEVEL% NEQ 0 ( + echo kill_python: war^ning: could not kill running Pythons, exit code %ERRORLEVEL% + exit /b 0 +) + + + Killing any running $(PythonExe) instances... + + + + + 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;ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1e000000 + MachineX64 + + + $(KillPythonExe) +IF %ERRORLEVEL% NEQ 0 ( + echo kill_python: war^ning: could not kill running Pythons, exit code %ERRORLEVEL% + exit /b 0 +) + + + Killing any running $(PythonExe) instances... + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {6de10744-e396-40a5-b4e2-1b69aa7c8d31} + false + + + {c73f0ec1-358b-4177-940f-0846ac8b04cd} + false + + + {f0e0541e-f17d-430b-97c4-93adf0dd284e} + false + + + + + + diff --git a/PC/VS10.0/pythoncore.vcxproj.filters b/PC/VS10.0/pythoncore.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/pythoncore.vcxproj.filters @@ -0,0 +1,968 @@ + + + + + {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 + + + Modules + + + Modules + + + 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 + + + Objects + + + Parser + + + Parser + + + PC + + + PC + + + Python + + + Python + + + Python + + + Python + + + Include + + + Include + + + Modules + + + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules + + + Modules\_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\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 + + + Python + + + PC + + + Modules + + + Python + + + Objects + + + Modules + + + Modules + + + Modules + + + + + Resource Files + + + \ No newline at end of file diff --git a/PC/VS10.0/pythonw.vcxproj b/PC/VS10.0/pythonw.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/pythonw.vcxproj @@ -0,0 +1,346 @@ + + + + + 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 + + + + + + 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/PC/VS10.0/pythonw.vcxproj.filters b/PC/VS10.0/pythonw.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/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/PC/VS10.0/pywlauncher.vcxproj b/PC/VS10.0/pywlauncher.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/pywlauncher.vcxproj @@ -0,0 +1,251 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6} + pywlauncher + + + + Application + true + Unicode + + + Application + true + Unicode + + + Application + false + true + Unicode + + + Application + false + true + Unicode + + + Unicode + + + Unicode + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + pyw_d + + + pyw_d + + + pyw + + + pyw + + + pyw + + + pyw + + + + Level3 + Disabled + _WINDOWS;%(PreprocessorDefinitions) + + + true + version.lib;%(AdditionalDependencies) + false + Windows + $(OutDir)$(TargetName)$(TargetExt) + + + + + Level3 + Disabled + _WINDOWS;%(PreprocessorDefinitions) + + + true + version.lib;%(AdditionalDependencies) + false + Windows + $(OutDir)$(TargetName)$(TargetExt) + + + + + Level3 + MaxSpeed + true + true + _WINDOWS;NDEBUG;%(PreprocessorDefinitions) + + + true + false + true + false + version.lib;%(AdditionalDependencies) + Windows + + + + + Level3 + MaxSpeed + true + true + _WINDOWS;NDEBUG;%(PreprocessorDefinitions) + + + true + false + true + false + version.lib;%(AdditionalDependencies) + Windows + + + + + version.lib;%(AdditionalDependencies) + + + _WINDOWS;NDEBUG;%(PreprocessorDefinitions) + + + + + version.lib;%(AdditionalDependencies) + + + _WINDOWS;NDEBUG;%(PreprocessorDefinitions) + + + + + version.lib;%(AdditionalDependencies) + + + _WINDOWS;NDEBUG;_WIN64;_M_X64;%(PreprocessorDefinitions) + + + + + version.lib;%(AdditionalDependencies) + + + _WINDOWS;NDEBUG;_WIN64;_M_X64;%(PreprocessorDefinitions) + + + + + + + + + + + + + + {f0e0541e-f17d-430b-97c4-93adf0dd284e} + + + + + + \ No newline at end of file diff --git a/PC/VS10.0/pywlauncher.vcxproj.filters b/PC/VS10.0/pywlauncher.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/pywlauncher.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;mfcribbon-ms + + + + + Source Files + + + + + Resource Files + + + + + Resource Files + + + \ No newline at end of file diff --git a/PC/VS10.0/readme.txt b/PC/VS10.0/readme.txt new file mode 100644 --- /dev/null +++ b/PC/VS10.0/readme.txt @@ -0,0 +1,365 @@ +Quick Start Guide +----------------- + +1. Install Microsoft Visual C++ 2010 SP1, any edition. +2. Install Subversion, and make sure 'svn.exe' is on your PATH. +3. Run "build.bat -e" to build Python in 32-bit Release configuration. +4. (Optional, but recommended) Run the test suite with "rt.bat -q". + + +Building Python using Microsoft Visual C++ +------------------------------------------ + +This directory is used to build CPython for Microsoft Windows NT version +5.1 or higher (Windows XP, Windows Server 2003, or later) on 32 and 64 +bit platforms. Using this directory requires an installation of +Microsoft Visual C++ 2010 (MSVC 10.0) of any edition. The specific +requirements are as follows: + +Visual C++ 2010 Express Edition + Required for building 32-bit Debug and Release configuration builds. + The Python build solution pcbuild.sln makes use of Solution Folders, + which this edition does not support. Any time pcbuild.sln is opened + or reloaded by Visual C++, a warning about Solution Folders will be + displayed which can be safely dismissed with no impact on your + ability to build Python. +Visual Studio 2010 Professional Edition + Required for building 64-bit Debug and Release configuration builds +Visual Studio 2010 Premium Edition + Required for building Release configuration builds that make use of + Profile Guided Optimization (PGO), on either platform. + +Installing Service Pack 1 for Visual Studio 2010 is highly recommended +to avoid LNK1123 errors. + +All you need to do to build is open the solution "pcbuild.sln" in Visual +Studio, select the desired combination of configuration and platform, +then build with "Build Solution" or the F7 keyboard shortcut. You can +also build from the command line using the "build.bat" script in this +directory; see below for details. The solution is configured to build +the projects in the correct order. + +The solution currently supports two platforms. The Win32 platform is +used to build standard x86-compatible 32-bit binaries, output into this +directory. The x64 platform is used for building 64-bit AMD64 (aka +x86_64 or EM64T) binaries, output into the amd64 sub-directory which +will be created if it doesn't already exist. The Itanium (IA-64) +platform is no longer supported. See the "Building for AMD64" section +below for more information about 64-bit builds. + +Four configuration options are supported by the solution: +Debug + Used to build Python with extra debugging capabilities, equivalent + to using ./configure --with-pydebug on UNIX. All binaries built + using this configuration have "_d" added to their name: + python35_d.dll, python_d.exe, parser_d.pyd, and so on. Both the + build and rt (run test) batch files in this directory accept a -d + option for debug builds. If you are building Python to help with + development of CPython, you will most likely use this configuration. +PGInstrument, PGUpdate + Used to build Python in Release configuration using PGO, which + requires Premium Edition of Visual Studio. See the "Profile + Guided Optimization" section below for more information. Build + output from each of these configurations lands in its own + sub-directory of this directory. The official Python releases are + built using these configurations. +Release + Used to build Python as it is meant to be used in production + settings, though without PGO. + + +Building Python using the build.bat script +---------------------------------------------- + +In this directory you can find build.bat, a script designed to make +building Python on Windows simpler. The only absolute requirement for +using this script is for the VS100COMNTOOLS environment variable to be +properly set, which should be done by Microsoft Visual C++ 2010 +installation. + +By default, build.bat will build Python in Release configuration for +the 32-bit Win32 platform. It accepts several arguments to change +this behavior: + + -c Set the configuration (see above) + -d Shortcut for "-c Debug" + -p Set the platform to build for ("Win32" or "x64") + -r Rebuild instead of just building + -e Use get_externals.bat to fetch external sources + +Up to 9 MSBuild switches can also be passed, though they must be passed +after specifying any of the above switches. For example, use: + + build.bat -e -d /m + +to do a concurrent debug build with externals fetched as needed. If +the MSBuild switch requires an equal sign ("="), the entire switch must +be quoted: + + build.bat -e -d "/p:externalsDir=P:\cpython-externals" + +There may also be other situations where quotes are necessary. + + +Legacy support +-------------- + +You can find build directories for older versions of Visual Studio and +Visual C++ in the PC directory. The legacy build directories are no +longer actively maintained and may not work out of the box. + +Currently, the only legacy build directory is PC\VS9.0, for Visual +Studio 2008 (9.0). + + +C Runtime +--------- + +Visual Studio 2010 uses version 10 of the C runtime (MSVCRT10). The +executables no longer use the "Side by Side" assemblies used in previous +versions of the compiler. This simplifies distribution of applications. + +The run time libraries are available under the VC/Redist folder of your +Visual Studio distribution. For more info, see the Readme in the +VC/Redist folder. + + +Sub-Projects +------------ + +The CPython project is split up into several smaller sub-projects which +are managed by the pcbuild.sln solution file. Each sub-project is +represented by a .vcxproj and a .vcxproj.filters file starting with the +name of the sub-project. These sub-projects fall into a few general +categories: + +The following sub-projects represent the bare minimum required to build +a functioning CPython interpreter. If nothing else builds but these, +you'll have a very limited but usable python.exe: +pythoncore + .dll and .lib +python + .exe +kill_python + kill_python.exe, a small program designed to kill any instances of + python(_d).exe that are running and live in the build output + directory; this is meant to avoid build issues due to locked files +make_buildinfo, make_versioninfo + helpers to provide necessary information to the build process + +These sub-projects provide extra executables that are useful for running +CPython in different ways: +pythonw + pythonw.exe, a variant of python.exe that doesn't open a Command + Prompt window +pylauncher + py.exe, the Python Launcher for Windows, see + http://docs.python.org/3/using/windows.html#launcher +pywlauncher + pyw.exe, a variant of py.exe that doesn't open a Command Prompt + window +_testembed + _testembed.exe, a small program that embeds Python for testing + purposes, used by test_capi.py + +These are miscellaneous sub-projects that don't really fit the other +categories. By default, these projects do not build in Debug +configuration: +_freeze_importlib + _freeze_importlib.exe, used to regenerate Python\importlib.h after + changes have been made to Lib\importlib\_bootstrap.py +bdist_wininst + ..\Lib\distutils\command\wininst-10.0[-amd64].exe, the base + executable used by the distutils bdist_wininst command +python3dll + python3.dll, the PEP 384 Stable ABI dll +xxlimited + builds an example module that makes use of the PEP 384 Stable ABI, + see Modules\xxlimited.c + +The following sub-projects are for individual modules of the standard +library which are implemented in C; each one builds a DLL (renamed to +.pyd) of the same name as the project: +_ctypes +_ctypes_test +_decimal +_elementtree +_hashlib +_msi +_multiprocessing +_overlapped +_socket +_testcapi +_testbuffer +_testimportmultiple +pyexpat +select +unicodedata +winsound + +The following Python-controlled sub-projects wrap external projects. +Note that these external libraries are not necessary for a working +interpreter, but they do implement several major features. See the +"Getting External Sources" section below for additional information +about getting the source for building these libraries. The sub-projects +are: +_bz2 + Python wrapper for version 1.0.6 of the libbzip2 compression library + Homepage: + http://www.bzip.org/ +_lzma + Python wrapper for the liblzma compression library, using pre-built + binaries of XZ Utils version 5.0.5 + Homepage: + http://tukaani.org/xz/ +_ssl + Python wrapper for version 1.0.1j of the OpenSSL secure sockets + library, which is built by ssl.vcxproj + Homepage: + http://www.openssl.org/ + + Building OpenSSL requires nasm.exe (the Netwide Assembler), version + 2.10 or newer from + http://www.nasm.us/ + to be somewhere on your PATH. More recent versions of OpenSSL may + need a later version of NASM. If OpenSSL's self tests don't pass, + you should first try to update NASM and do a full rebuild of + OpenSSL. get_externals.py also downloads a snapshot of NASM, and the + ssl sub-project includes that version of nasm.exe on PATH. + + The ssl sub-project expects your OpenSSL sources to have already + been configured and be ready to build. If you get your sources + from svn.python.org as suggested in the "Getting External Sources" + section below, the OpenSSL source will already be ready to go. If + you want to build a different version, you will need to run + + PCbuild\prepare_ssl.py path\to\openssl-source-dir + + That script will prepare your OpenSSL sources in the same way that + those available on svn.python.org have been prepared. Note that + Perl must be installed and available on your PATH to configure + OpenSSL. ActivePerl is recommended and is available from + http://www.activestate.com/activeperl/ + + The ssl sub-project does not have the ability to clean the OpenSSL + build; if you need to rebuild, you'll have to clean it by hand. +_sqlite3 + Wraps SQLite 3.8.3.1, which is itself built by sqlite3.vcxproj + Homepage: + http://www.sqlite.org/ +_tkinter + Wraps version 8.6.1 of the Tk windowing system. + Homepage: + http://www.tcl.tk/ + + Tkinter's dependencies are built by the tcl.vcxproj and tk.vcxproj + projects. The tix.vcxproj project also builds the Tix extended + widget set for use with Tkinter. + + Those three projects install their respective components in a + directory alongside the source directories called "tcltk" on + Win32 and "tcltk64" on x64. They also copy the Tcl and Tk DLLs + into the current output directory, which should ensure that Tkinter + is able to load Tcl/Tk without having to change your PATH. + + The tcl, tk, and tix sub-projects do not have the ability to clean + their builds; if you need to rebuild, you'll have to clean them by + hand. + + +Getting External Sources +------------------------ + +The last category of sub-projects listed above wrap external projects +Python doesn't control, and as such a little more work is required in +order to download the relevant source files for each project before they +can be built. However, a simple script is provided to make this as +painless as possible, called "get_externals.bat" and located in this +directory. This script extracts all the external sub-projects from + http://svn.python.org/projects/external +via Subversion (so you'll need svn.exe on your PATH) and places them +in ..\externals (relative to this directory). + +It is also possible to download sources from each project's homepage, +though you may have to change folder names or pass the names to MSBuild +as the values of certain properties in order for the build solution to +find them. This is an advanced topic and not necessarily fully +supported. + + +Building for AMD64 +------------------ + +The build process for AMD64 / x64 is very similar to standard builds, +you just have to set x64 as platform. In addition, the HOST_PYTHON +environment variable must point to a Python interpreter (at least 2.4), +to support cross-compilation from Win32. Note that Visual Studio +requires Professional Edition or better in order to build 64-bit +binaries. + + +Profile Guided Optimization +--------------------------- + +The solution has two configurations for PGO. The PGInstrument +configuration must be built first. The PGInstrument binaries are linked +against a profiling library and contain extra debug information. The +PGUpdate configuration takes the profiling data and generates optimized +binaries. + +The build_pgo.bat script automates the creation of optimized binaries. +It creates the PGI files, runs the unit test suite or PyBench with the +PGI python, and finally creates the optimized files. + +See + http://msdn.microsoft.com/en-us/library/e7k32f4k(VS.100).aspx +for more on this topic. + + +Static library +-------------- + +The solution has no configuration for static libraries. However it is +easy to build a static library instead of a DLL. You simply have to set +the "Configuration Type" to "Static Library (.lib)" and alter the +preprocessor macro "Py_ENABLE_SHARED" to "Py_NO_ENABLE_SHARED". You may +also have to change the "Runtime Library" from "Multi-threaded DLL +(/MD)" to "Multi-threaded (/MT)". + + +Visual Studio properties +------------------------ + +The PCbuild solution makes heavy use of Visual Studio property files +(*.props). The properties can be viewed and altered in the Property +Manager (View -> Other Windows -> Property Manager). + +The property files used are (+-- = "also imports"): + * debug (debug macro: _DEBUG) + * pginstrument (PGO) + * pgupdate (PGO) + +-- pginstrument + * pyd (python extension, release build) + +-- release + +-- pyproject + * pyd_d (python extension, debug build) + +-- debug + +-- pyproject + * pyproject (base settings for all projects, user macros like PyDllName) + * release (release macro: NDEBUG) + * sqlite3 (used only by sqlite3.vcxproj) + * tcltk (used by _tkinter, tcl, tk and tix projects) + * x64 (AMD64 / x64 platform specific settings) + +The pyproject property file defines _WIN32 and x64 defines _WIN64 and +_M_X64 although the macros are set by the compiler, too. The GUI doesn't +always know about the macros and confuse the user with false +information. + + +Your Own Extension DLLs +----------------------- + +If you want to create your own extension module DLL (.pyd), there's an +example with easy-to-follow instructions in ..\PC\example\; read the +file readme.txt there first. diff --git a/PC/VS10.0/release.props b/PC/VS10.0/release.props new file mode 100644 --- /dev/null +++ b/PC/VS10.0/release.props @@ -0,0 +1,23 @@ + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + + + + NDEBUG;%(PreprocessorDefinitions) + + + + + $(PyDebugExt) + + + $(TclDebugExt) + + + \ No newline at end of file diff --git a/PC/VS10.0/rmpyc.py b/PC/VS10.0/rmpyc.py new file mode 100644 --- /dev/null +++ b/PC/VS10.0/rmpyc.py @@ -0,0 +1,25 @@ +# Remove all the .pyc and .pyo files under ../Lib. + + +def deltree(root): + import os + from os.path import join + + npyc = npyo = 0 + for root, dirs, files in os.walk(root): + for name in files: + delete = False + if name.endswith('.pyc'): + delete = True + npyc += 1 + elif name.endswith('.pyo'): + delete = True + npyo += 1 + + if delete: + os.remove(join(root, name)) + + return npyc, npyo + +npyc, npyo = deltree("../Lib") +print(npyc, ".pyc deleted,", npyo, ".pyo deleted") diff --git a/PC/VS10.0/rt.bat b/PC/VS10.0/rt.bat new file mode 100644 --- /dev/null +++ b/PC/VS10.0/rt.bat @@ -0,0 +1,58 @@ +@echo off +rem Run Tests. Run the regression test suite. +rem Usage: rt [-d] [-O] [-q] [-x64] regrtest_args +rem -d Run Debug build (python_d.exe). Else release build. +rem -O Run python.exe or python_d.exe (see -d) with -O. +rem -q "quick" -- normally the tests are run twice, the first time +rem after deleting all the .py[co] files reachable from Lib/. +rem -q runs the tests just once, and without deleting .py[co] files. +rem -x64 Run the 64-bit build of python (or python_d if -d was specified) +rem from the 'amd64' dir instead of the 32-bit build in this dir. +rem All leading instances of these switches are shifted off, and +rem whatever remains (up to 9 arguments) is passed to regrtest.py. +rem For example, +rem rt -O -d -x test_thread +rem runs +rem python_d -O ../lib/test/regrtest.py -x test_thread +rem twice, and +rem rt -q -g test_binascii +rem runs +rem python_d ../lib/test/regrtest.py -g test_binascii +rem to generate the expected-output file for binascii quickly. +rem +rem Confusing: if you want to pass a comma-separated list, like +rem -u network,largefile +rem then you have to quote it on the rt line, like +rem rt -u "network,largefile" + +setlocal + +set pcbuild=%~dp0 +set prefix=%pcbuild% +set suffix= +set qmode= +set dashO= + +:CheckOpts +if "%1"=="-O" (set dashO=-O) & shift & goto CheckOpts +if "%1"=="-q" (set qmode=yes) & shift & goto CheckOpts +if "%1"=="-d" (set suffix=_d) & shift & goto CheckOpts +if "%1"=="-x64" (set prefix=%pcbuild%amd64\) & shift & goto CheckOpts + +set exe=%prefix%python%suffix%.exe +set cmd="%exe%" %dashO% -Wd -E -bb "%pcbuild%..\lib\test\regrtest.py" %1 %2 %3 %4 %5 %6 %7 %8 %9 +if defined qmode goto Qmode + +echo Deleting .pyc/.pyo files ... +"%exe%" "%pcbuild%rmpyc.py" + +echo on +%cmd% +@echo off + +echo About to run again without deleting .pyc/.pyo first: +pause + +:Qmode +echo on +%cmd% diff --git a/PC/VS10.0/select.vcxproj b/PC/VS10.0/select.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/select.vcxproj @@ -0,0 +1,234 @@ + + + + + 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 + + + + + + ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + X64 + + + ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + X64 + + + ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + X64 + + + ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + MachineX64 + + + + + ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + X64 + + + ws2_32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + MachineX64 + + + + + + + + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + + + + + + \ No newline at end of file diff --git a/PC/VS10.0/select.vcxproj.filters b/PC/VS10.0/select.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/select.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {98346077-900c-4c7a-852f-a23470e37b40} + + + + + Source Files + + + \ No newline at end of file diff --git a/PC/VS10.0/sqlite3.props b/PC/VS10.0/sqlite3.props new file mode 100644 --- /dev/null +++ b/PC/VS10.0/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/PC/VS10.0/sqlite3.vcxproj b/PC/VS10.0/sqlite3.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/sqlite3.vcxproj @@ -0,0 +1,240 @@ + + + + + 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 + + + + + + %(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/PC/VS10.0/sqlite3.vcxproj.filters b/PC/VS10.0/sqlite3.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/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/PC/VS10.0/ssl.vcxproj b/PC/VS10.0/ssl.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/ssl.vcxproj @@ -0,0 +1,251 @@ + + + + + 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 + +path %PATH%;$(SolutionDir)$(nasmDir) +cd "$(SolutionDir)$(opensslDir)" +copy /Y crypto\buildinf_x86.h crypto\buildinf.h +copy /Y crypto\opensslconf_x86.h crypto\opensslconf.h +nmake /nologo -f "ms\nt.mak" + + + echo OpenSSL must be cleaned manually if you want to rebuild it. + + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + +path %PATH%;$(SolutionDir)$(nasmDir) +cd "$(SolutionDir)$(opensslDir)" +nasm -f win64 -DNEAR -Ox -g ms\\uptable.asm || echo nasm failed! && exit +copy /Y crypto\buildinf_amd64.h crypto\buildinf.h +copy /Y crypto\opensslconf_amd64.h crypto\opensslconf.h +nmake /nologo -f "ms\nt64.mak" + + + echo OpenSSL must be cleaned manually if you want to rebuild it. + + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + +path %PATH%;$(SolutionDir)$(nasmDir) +cd "$(SolutionDir)$(opensslDir)" +copy /Y crypto\buildinf_x86.h crypto\buildinf.h +copy /Y crypto\opensslconf_x86.h crypto\opensslconf.h +nmake /nologo -f "ms\nt.mak" + + + echo OpenSSL must be cleaned manually if you want to rebuild it. + + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + +path %PATH%;$(SolutionDir)$(nasmDir) +cd "$(SolutionDir)$(opensslDir)" +nasm -f win64 -DNEAR -Ox -g ms\\uptable.asm || echo nasm failed! && exit +copy /Y crypto\buildinf_amd64.h crypto\buildinf.h +copy /Y crypto\opensslconf_amd64.h crypto\opensslconf.h +nmake /nologo -f "ms\nt64.mak" + + + echo OpenSSL must be cleaned manually if you want to rebuild it. + + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + +path %PATH%;$(SolutionDir)$(nasmDir) +cd "$(SolutionDir)$(opensslDir)" +copy /Y crypto\buildinf_x86.h crypto\buildinf.h +copy /Y crypto\opensslconf_x86.h crypto\opensslconf.h +nmake /nologo -f "ms\nt.mak" + + + echo OpenSSL must be cleaned manually if you want to rebuild it. + + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + +path %PATH%;$(SolutionDir)$(nasmDir) +cd "$(SolutionDir)$(opensslDir)" +nasm -f win64 -DNEAR -Ox -g ms\\uptable.asm || echo nasm failed! && exit +copy /Y crypto\buildinf_amd64.h crypto\buildinf.h +copy /Y crypto\opensslconf_amd64.h crypto\opensslconf.h +nmake /nologo -f "ms\nt64.mak" + + + echo OpenSSL must be cleaned manually if you want to rebuild it. + + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + +path %PATH%;$(SolutionDir)$(nasmDir) +cd "$(SolutionDir)$(opensslDir)" +copy /Y crypto\buildinf_x86.h crypto\buildinf.h +copy /Y crypto\opensslconf_x86.h crypto\opensslconf.h +nmake /nologo -f "ms\nt.mak" + + + echo OpenSSL must be cleaned manually if you want to rebuild it. + + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + +path %PATH%;$(SolutionDir)$(nasmDir) +cd "$(SolutionDir)$(opensslDir)" +nasm -f win64 -DNEAR -Ox -g ms\\uptable.asm || echo nasm failed! && exit +copy /Y crypto\buildinf_amd64.h crypto\buildinf.h +copy /Y crypto\opensslconf_amd64.h crypto\opensslconf.h +nmake /nologo -f "ms\nt64.mak" + + + echo OpenSSL must be cleaned manually if you want to rebuild it. + + $(NMakePreprocessorDefinitions) + $(NMakeIncludeSearchPath) + $(NMakeForcedIncludes) + $(NMakeAssemblySearchPath) + $(NMakeForcedUsingAssemblies) + + + + + + + \ No newline at end of file diff --git a/PC/VS10.0/tcl.vcxproj b/PC/VS10.0/tcl.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/tcl.vcxproj @@ -0,0 +1,175 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {B5FD6F1D-129E-4BFF-9340-03606FAC7283} + tcl + MakeFileProj + + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + +IF EXIST $(tcltkDir)\include\tcl.h ( + IF EXIST $(tcltkDir)\bin\$(tclDLLName) ( + IF EXIST $(OutDir)$(tclDLLName) ( + echo Tcl is already built and available. + exit /b 0 + ) ELSE ( + echo Copying tcl dll to $(OutDir) + xcopy $(tcltkDir)\bin\$(tclDLLName) $(OutDir) + exit /b 0 + ) + ) +) + +IF NOT EXIST $(tclDir) ( + echo error: $(tclDir) doesn't exist. + exit 1 +) + +IF "$(Platform)" EQU "Win32" set TclMachine=IX86 +IF "$(Platform)" EQU "x64" set TclMachine=AMD64 + +IF "$(Configuration)" EQU "Debug" ( + set TclOpts=symbols +) ELSE ( + set TclOpts= +) + +cd $(tclDir)\win + +nmake -f makefile.vc MACHINE=%TclMachine% OPTS=%TclOpts% core shell dlls && nmake -f makefile.vc MACHINE=%TclMachine% OPTS=%TclOpts% INSTALLDIR=$(SolutionDir)$(tcltkDir) install-binaries install-libraries && xcopy /y $(SolutionDir)$(tcltkDir)\bin\$(tclDLLName) $(OutDir) + + del $(OutDir)$(tclDLLName) +echo Tcl must be cleaned manually if you want to rebuild it. + + + + + + + + + \ No newline at end of file diff --git a/PC/VS10.0/tcltk.props b/PC/VS10.0/tcltk.props new file mode 100644 --- /dev/null +++ b/PC/VS10.0/tcltk.props @@ -0,0 +1,30 @@ + + + + + Dummy value to avoid patching Tcl/Tk's makefile.vc + tcl86t$(TclDebugExt).dll + tk86t$(TclDebugExt).dll + tix84$(TclDebugExt).dll + $(tcltkDir)\lib\tcl86t$(TclDebugExt).lib;$(tcltkDir)\lib\tk86t$(TclDebugExt).lib + + + + + $(MSDEVDIR) + true + + + $(tclDLLName) + + + $(tkDLLName) + + + $(tixDLLName) + + + $(tcltkLib) + + + \ No newline at end of file diff --git a/PC/VS10.0/tix.vcxproj b/PC/VS10.0/tix.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/tix.vcxproj @@ -0,0 +1,171 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555} + tix + MakeFileProj + + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + +IF EXIST $(tcltkDir)\lib\tix8.4.3\$(tixDLLName) ( + echo Tix is already built and available. + exit /b 0 +) + +IF NOT EXIST $(tixDir) ( + echo error: $(tixDir) doesn't exist. + exit 1 +) + +IF "$(Platform)" EQU "Win32" set TclMachine=IX86 +IF "$(Platform)" EQU "x64" set TclMachine=AMD64 + +IF "$(Configuration)" EQU "Debug" ( + set TixDebug=1 +) ELSE ( + set TixDebug=0 +) + +cd $(tixDir)\win +nmake -f python.mak MACHINE=%TclMachine% DEBUG=%TixDebug% TCL_DIR=$(SolutionDir)$(tclDir) TK_DIR=$(SolutionDir)$(tkDir) all && nmake -f python.mak MACHINE=%TclMachine% DEBUG=%TixDebug% TCL_DIR=$(SolutionDir)$(tclDir) TK_DIR=$(SolutionDir)$(tkDir) INSTALL_DIR=$(SolutionDir)$(tcltkDir) install + + echo Tix must be cleaned manually if you want to rebuild it. + + + + + + {b5fd6f1d-129e-4bff-9340-03606fac7283} + + + {7e85eccf-a72c-4da4-9e52-884508e80ba1} + + + + + + \ No newline at end of file diff --git a/PC/VS10.0/tk.vcxproj b/PC/VS10.0/tk.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/tk.vcxproj @@ -0,0 +1,178 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Release + Win32 + + + Release + x64 + + + + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1} + tk + MakeFileProj + + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + Makefile + NotSet + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + +IF EXIST $(tcltkDir)\include\tk.h ( + IF EXIST $(tcltkDir)\bin\$(tkDLLName) ( + IF EXIST $(OutDir)$(tkDLLName) ( + echo Tk is already built and available. + exit /b 0 + ) ELSE ( + echo Copying tk dll to $(OutDir) + xcopy $(tcltkDir)\bin\$(tkDLLName) $(OutDir) + exit /b 0 + ) + ) +) + +IF NOT EXIST $(tkDir) ( + echo error: $(tkDir) doesn't exist. + exit 1 +) + +IF "$(Platform)" EQU "Win32" set TclMachine=IX86 +IF "$(Platform)" EQU "x64" set TclMachine=AMD64 + +IF "$(Configuration)" EQU "Debug" ( + set TclOpts=symbols +) ELSE ( + set TclOpts= +) + +cd $(tkDir)\win + +nmake -f makefile.vc MACHINE=%TclMachine% OPTS=%TclOpts% TCLDIR=$(SolutionDir)$(tclDir) all && nmake -f makefile.vc MACHINE=%TclMachine% OPTS=%TclOpts% TCLDIR=$(SolutionDir)$(tclDir) INSTALLDIR=$(SolutionDir)$(tcltkDir) install-binaries install-libraries && xcopy /y $(SolutionDir)$(tcltkDir)\bin\$(tkDLLName) $(OutDir) + + del $(OutDir)$(tkDLLName) +echo Tk must be cleaned manually if you want to rebuild it. + + + + + + {b5fd6f1d-129e-4bff-9340-03606fac7283} + + + + + + \ No newline at end of file diff --git a/PC/VS10.0/unicodedata.vcxproj b/PC/VS10.0/unicodedata.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/unicodedata.vcxproj @@ -0,0 +1,222 @@ + + + + + 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 + + + + + + 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/PC/VS10.0/unicodedata.vcxproj.filters b/PC/VS10.0/unicodedata.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/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/PC/VS10.0/vs9to10.py b/PC/VS10.0/vs9to10.py new file mode 100644 --- /dev/null +++ b/PC/VS10.0/vs9to10.py @@ -0,0 +1,56 @@ +#Run this file after automatic conversion of the VisualStudio 2008 solution by VisualStudio 2010. +#This can be done whenever the 2008 solution changes. +#It will make the necessary cleanup and updates to the vcxproj files +#the .props files need to be maintained by hand if the .vsprops files change + +from __future__ import with_statement +import sys +import os +import os.path + +def vs9to10(src, dest): + for name in os.listdir(src): + path, ext = os.path.splitext(name) + if ext.lower() not in ('.vcxproj',): + continue + + filename = os.path.normpath(os.path.join(src, name)) + destname = os.path.normpath(os.path.join(dest, name)) + print("%s -> %s" % (filename, destname)) + + lines = [] + lastline = b"" + importgroup = False + with open(filename, 'rb') as fin: + for line in fin: + #remove redundant linker output info + if b"" in line: + continue + if b"" in line: + continue + if b"" in line and b"" in line: + continue + + #add new property sheet to the pythoncore + if importgroup and "pythoncore" in name.lower(): + if b"" in line: + if b"debug.props" in lastline: + lines.append(b' \r\n') + elif b"pythoncore" not in lastline: + lines.append(b' \r\n') + if b"" in line: + importgroup = False + lines.append(line) + lastline = line + with open(destname, 'wb') as fout: + for line in lines: + fout.write(line) + +if __name__ == "__main__": + src = "." if len(sys.argv) < 2 else sys.argv[1] + name = os.path.basename(os.path.abspath(src)) + dest = os.path.abspath(os.path.join(src, "..", name + "Upd")) + os.makedirs(dest) + vs9to10(src, dest) diff --git a/PC/VS10.0/vs9to8.py b/PC/VS10.0/vs9to8.py new file mode 100644 --- /dev/null +++ b/PC/VS10.0/vs9to8.py @@ -0,0 +1,34 @@ +from __future__ import with_statement +import os + +def vs9to8(src, dest): + for name in os.listdir(src): + path, ext = os.path.splitext(name) + if ext.lower() not in ('.sln', '.vcproj', '.vsprops'): + continue + + filename = os.path.normpath(os.path.join(src, name)) + destname = os.path.normpath(os.path.join(dest, name)) + print("%s -> %s" % (filename, destname)) + + with open(filename, 'rU') as fin: + lines = fin.read() + lines = lines.replace('Version="9,00"', 'Version="8.00"') + lines = lines.replace('Version="9.00"', 'Version="8.00"') + lines = lines.replace('Format Version 10.00', 'Format Version 9.00') + lines = lines.replace('Visual Studio 2008', 'Visual Studio 2005') + + lines = lines.replace('wininst-9.0', 'wininst-8.0') + lines = lines.replace('..\\', '..\\..\\') + lines = lines.replace('..\\..\\..\\..\\', '..\\..\\..\\') + + # Bah. VS8.0 does not expand macros in file names. + # Replace them here. + lines = lines.replace('$(sqlite3Dir)', '..\\..\\..\\sqlite-3.6.21') + + with open(destname, 'wb') as fout: + lines = lines.replace("\n", "\r\n").encode() + fout.write(lines) + +if __name__ == "__main__": + vs9to8(src=".", dest="../PC/VS8.0") diff --git a/PC/VS10.0/winsound.vcxproj b/PC/VS10.0/winsound.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/winsound.vcxproj @@ -0,0 +1,218 @@ + + + + + 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 + + + + + + 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/PC/VS10.0/winsound.vcxproj.filters b/PC/VS10.0/winsound.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/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/PC/VS10.0/x64.props b/PC/VS10.0/x64.props new file mode 100644 --- /dev/null +++ b/PC/VS10.0/x64.props @@ -0,0 +1,26 @@ + + + + $(HOST_PYTHON) + + + $(externalsDir)\tcltk64 + + + + false + _WIN64;_M_X64;%(PreprocessorDefinitions) + + + MachineX64 + + + + + $(PythonExe) + + + $(tcltkDir) + + + \ No newline at end of file diff --git a/PC/VS10.0/xxlimited.vcxproj b/PC/VS10.0/xxlimited.vcxproj new file mode 100644 --- /dev/null +++ b/PC/VS10.0/xxlimited.vcxproj @@ -0,0 +1,189 @@ + + + + + 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 + + + + + + NDEBUG;_WIN32;_WINDLL;Py_LIMITED_API=0x03040000 + + + wsock32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + X64 + + + wsock32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + Py_LIMITED_API=0x03040000;%(PreprocessorDefinitions) + + + wsock32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + X64 + + + wsock32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + MachineX64 + + + + + Py_LIMITED_API=0x03040000;%(PreprocessorDefinitions) + + + wsock32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + + + + + X64 + + + wsock32.lib;%(AdditionalDependencies) + libc;%(IgnoreSpecificDefaultLibraries) + 0x1D110000 + MachineX64 + + + + + + + + + \ No newline at end of file diff --git a/PC/VS10.0/xxlimited.vcxproj.filters b/PC/VS10.0/xxlimited.vcxproj.filters new file mode 100644 --- /dev/null +++ b/PC/VS10.0/xxlimited.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {eb5eebc7-3787-4f8f-b282-204db2962cc3} + + + + + Source Files + + + \ No newline at end of file diff --git a/PC/python3.mak b/PC/python3.mak deleted file mode 100644 --- a/PC/python3.mak +++ /dev/null @@ -1,14 +0,0 @@ -$(OutDir)python3.dll: python3.def $(OutDir)python35stub.lib - cl /LD /Fe$(OutDir)python3.dll python3dll.c python3.def $(OutDir)python35stub.lib - -$(OutDir)python35stub.lib: python35stub.def - lib /def:python35stub.def /out:$(OutDir)python35stub.lib /MACHINE:$(MACHINE) - -clean: - IF EXIST $(OutDir)python3.dll del $(OutDir)python3.dll - IF EXIST $(OutDir)python3.lib del $(OutDir)python3.lib - IF EXIST $(OutDir)python35stub.lib del $(OutDir)python35stub.lib - IF EXIST $(OutDir)python3.exp del $(OutDir)python3.exp - IF EXIST $(OutDir)python35stub.exp del $(OutDir)python35stub.exp - -rebuild: clean $(OutDir)python3.dll diff --git a/PC/python35gen.py b/PC/python35gen.py deleted file mode 100644 --- a/PC/python35gen.py +++ /dev/null @@ -1,26 +0,0 @@ -# Generate python35stub.def out of python3.def -# The regular import library cannot be used, -# since it doesn't provide the right symbols for -# data forwarding -out = open("python35stub.def", "w") -out.write('LIBRARY "python35"\n') -out.write('EXPORTS\n') - -inp = open("python3.def") -line = inp.readline() -while line.strip().startswith(';'): - line = inp.readline() -line = inp.readline() # LIBRARY -assert line.strip()=='EXPORTS' - -for line in inp: - # SYM1=python35.SYM2[ DATA] - head, tail = line.split('.') - if 'DATA' in tail: - symbol, tail = tail.split(' ') - else: - symbol = tail.strip() - out.write(symbol+'\n') - -inp.close() -out.close() diff --git a/PC/python35stub.def b/PC/python35stub.def deleted file mode 100644 --- a/PC/python35stub.def +++ /dev/null @@ -1,701 +0,0 @@ -LIBRARY "python35" -EXPORTS -PyArg_Parse -PyArg_ParseTuple -PyArg_ParseTupleAndKeywords -PyArg_UnpackTuple -PyArg_VaParse -PyArg_VaParseTupleAndKeywords -PyArg_ValidateKeywordArguments -PyBaseObject_Type -PyBool_FromLong -PyBool_Type -PyByteArrayIter_Type -PyByteArray_AsString -PyByteArray_Concat -PyByteArray_FromObject -PyByteArray_FromStringAndSize -PyByteArray_Resize -PyByteArray_Size -PyByteArray_Type -PyBytesIter_Type -PyBytes_AsString -PyBytes_AsStringAndSize -PyBytes_Concat -PyBytes_ConcatAndDel -PyBytes_DecodeEscape -PyBytes_FromFormat -PyBytes_FromFormatV -PyBytes_FromObject -PyBytes_FromString -PyBytes_FromStringAndSize -PyBytes_Repr -PyBytes_Size -PyBytes_Type -PyCFunction_Call -PyCFunction_ClearFreeList -PyCFunction_GetFlags -PyCFunction_GetFunction -PyCFunction_GetSelf -PyCFunction_New -PyCFunction_NewEx -PyCFunction_Type -PyCallIter_New -PyCallIter_Type -PyCallable_Check -PyCapsule_GetContext -PyCapsule_GetDestructor -PyCapsule_GetName -PyCapsule_GetPointer -PyCapsule_Import -PyCapsule_IsValid -PyCapsule_New -PyCapsule_SetContext -PyCapsule_SetDestructor -PyCapsule_SetName -PyCapsule_SetPointer -PyCapsule_Type -PyClassMethodDescr_Type -PyCodec_BackslashReplaceErrors -PyCodec_Decode -PyCodec_Decoder -PyCodec_Encode -PyCodec_Encoder -PyCodec_IgnoreErrors -PyCodec_IncrementalDecoder -PyCodec_IncrementalEncoder -PyCodec_KnownEncoding -PyCodec_LookupError -PyCodec_Register -PyCodec_RegisterError -PyCodec_ReplaceErrors -PyCodec_StreamReader -PyCodec_StreamWriter -PyCodec_StrictErrors -PyCodec_XMLCharRefReplaceErrors -PyComplex_FromDoubles -PyComplex_ImagAsDouble -PyComplex_RealAsDouble -PyComplex_Type -PyDescr_NewClassMethod -PyDescr_NewGetSet -PyDescr_NewMember -PyDescr_NewMethod -PyDictItems_Type -PyDictIterItem_Type -PyDictIterKey_Type -PyDictIterValue_Type -PyDictKeys_Type -PyDictProxy_New -PyDictProxy_Type -PyDictValues_Type -PyDict_Clear -PyDict_Contains -PyDict_Copy -PyDict_DelItem -PyDict_DelItemString -PyDict_GetItem -PyDict_GetItemString -PyDict_GetItemWithError -PyDict_Items -PyDict_Keys -PyDict_Merge -PyDict_MergeFromSeq2 -PyDict_New -PyDict_Next -PyDict_SetItem -PyDict_SetItemString -PyDict_Size -PyDict_Type -PyDict_Update -PyDict_Values -PyEllipsis_Type -PyEnum_Type -PyErr_BadArgument -PyErr_BadInternalCall -PyErr_CheckSignals -PyErr_Clear -PyErr_Display -PyErr_ExceptionMatches -PyErr_Fetch -PyErr_Format -PyErr_FormatV -PyErr_GivenExceptionMatches -PyErr_NewException -PyErr_NewExceptionWithDoc -PyErr_NoMemory -PyErr_NormalizeException -PyErr_Occurred -PyErr_Print -PyErr_PrintEx -PyErr_ProgramText -PyErr_Restore -PyErr_SetFromErrno -PyErr_SetFromErrnoWithFilename -PyErr_SetFromErrnoWithFilenameObject -PyErr_SetInterrupt -PyErr_SetNone -PyErr_SetObject -PyErr_SetString -PyErr_SyntaxLocation -PyErr_WarnEx -PyErr_WarnExplicit -PyErr_WarnFormat -PyErr_WriteUnraisable -PyEval_AcquireLock -PyEval_AcquireThread -PyEval_CallFunction -PyEval_CallMethod -PyEval_CallObjectWithKeywords -PyEval_EvalCode -PyEval_EvalCodeEx -PyEval_EvalFrame -PyEval_EvalFrameEx -PyEval_GetBuiltins -PyEval_GetCallStats -PyEval_GetFrame -PyEval_GetFuncDesc -PyEval_GetFuncName -PyEval_GetGlobals -PyEval_GetLocals -PyEval_InitThreads -PyEval_ReInitThreads -PyEval_ReleaseLock -PyEval_ReleaseThread -PyEval_RestoreThread -PyEval_SaveThread -PyEval_ThreadsInitialized -PyExc_ArithmeticError -PyExc_AssertionError -PyExc_AttributeError -PyExc_BaseException -PyExc_BufferError -PyExc_BytesWarning -PyExc_DeprecationWarning -PyExc_EOFError -PyExc_EnvironmentError -PyExc_Exception -PyExc_FloatingPointError -PyExc_FutureWarning -PyExc_GeneratorExit -PyExc_IOError -PyExc_ImportError -PyExc_ImportWarning -PyExc_IndentationError -PyExc_IndexError -PyExc_KeyError -PyExc_KeyboardInterrupt -PyExc_LookupError -PyExc_MemoryError -PyExc_MemoryErrorInst -PyExc_NameError -PyExc_NotImplementedError -PyExc_OSError -PyExc_OverflowError -PyExc_PendingDeprecationWarning -PyExc_RecursionErrorInst -PyExc_ReferenceError -PyExc_RuntimeError -PyExc_RuntimeWarning -PyExc_StopIteration -PyExc_SyntaxError -PyExc_SyntaxWarning -PyExc_SystemError -PyExc_SystemExit -PyExc_TabError -PyExc_TypeError -PyExc_UnboundLocalError -PyExc_UnicodeDecodeError -PyExc_UnicodeEncodeError -PyExc_UnicodeError -PyExc_UnicodeTranslateError -PyExc_UnicodeWarning -PyExc_UserWarning -PyExc_ValueError -PyExc_Warning -PyExc_ZeroDivisionError -PyException_GetCause -PyException_GetContext -PyException_GetTraceback -PyException_SetCause -PyException_SetContext -PyException_SetTraceback -PyFile_FromFd -PyFile_GetLine -PyFile_WriteObject -PyFile_WriteString -PyFilter_Type -PyFloat_AsDouble -PyFloat_FromDouble -PyFloat_FromString -PyFloat_GetInfo -PyFloat_GetMax -PyFloat_GetMin -PyFloat_Type -PyFrozenSet_New -PyFrozenSet_Type -PyGC_Collect -PyGILState_Ensure -PyGILState_GetThisThreadState -PyGILState_Release -PyGetSetDescr_Type -PyImport_AddModule -PyImport_AppendInittab -PyImport_Cleanup -PyImport_ExecCodeModule -PyImport_ExecCodeModuleEx -PyImport_ExecCodeModuleWithPathnames -PyImport_GetImporter -PyImport_GetMagicNumber -PyImport_GetMagicTag -PyImport_GetModuleDict -PyImport_Import -PyImport_ImportFrozenModule -PyImport_ImportModule -PyImport_ImportModuleLevel -PyImport_ImportModuleNoBlock -PyImport_ReloadModule -PyInterpreterState_Clear -PyInterpreterState_Delete -PyInterpreterState_New -PyIter_Next -PyListIter_Type -PyListRevIter_Type -PyList_Append -PyList_AsTuple -PyList_GetItem -PyList_GetSlice -PyList_Insert -PyList_New -PyList_Reverse -PyList_SetItem -PyList_SetSlice -PyList_Size -PyList_Sort -PyList_Type -PyLongRangeIter_Type -PyLong_AsDouble -PyLong_AsLong -PyLong_AsLongAndOverflow -PyLong_AsLongLong -PyLong_AsLongLongAndOverflow -PyLong_AsSize_t -PyLong_AsSsize_t -PyLong_AsUnsignedLong -PyLong_AsUnsignedLongLong -PyLong_AsUnsignedLongLongMask -PyLong_AsUnsignedLongMask -PyLong_AsVoidPtr -PyLong_FromDouble -PyLong_FromLong -PyLong_FromLongLong -PyLong_FromSize_t -PyLong_FromSsize_t -PyLong_FromString -PyLong_FromUnsignedLong -PyLong_FromUnsignedLongLong -PyLong_FromVoidPtr -PyLong_GetInfo -PyLong_Type -PyMap_Type -PyMapping_Check -PyMapping_GetItemString -PyMapping_HasKey -PyMapping_HasKeyString -PyMapping_Items -PyMapping_Keys -PyMapping_Length -PyMapping_SetItemString -PyMapping_Size -PyMapping_Values -PyMem_Free -PyMem_Malloc -PyMem_Realloc -PyMemberDescr_Type -PyMemoryView_FromObject -PyMemoryView_GetContiguous -PyMemoryView_Type -PyMethodDescr_Type -PyModule_AddIntConstant -PyModule_AddObject -PyModule_AddStringConstant -PyModule_Create2 -PyModule_GetDef -PyModule_GetDict -PyModule_GetFilename -PyModule_GetFilenameObject -PyModule_GetName -PyModule_GetState -PyModule_New -PyModule_Type -PyNullImporter_Type -PyNumber_Absolute -PyNumber_Add -PyNumber_And -PyNumber_AsSsize_t -PyNumber_Check -PyNumber_Divmod -PyNumber_Float -PyNumber_FloorDivide -PyNumber_InPlaceAdd -PyNumber_InPlaceAnd -PyNumber_InPlaceFloorDivide -PyNumber_InPlaceLshift -PyNumber_InPlaceMultiply -PyNumber_InPlaceOr -PyNumber_InPlacePower -PyNumber_InPlaceRemainder -PyNumber_InPlaceRshift -PyNumber_InPlaceSubtract -PyNumber_InPlaceTrueDivide -PyNumber_InPlaceXor -PyNumber_Index -PyNumber_Invert -PyNumber_Long -PyNumber_Lshift -PyNumber_Multiply -PyNumber_Negative -PyNumber_Or -PyNumber_Positive -PyNumber_Power -PyNumber_Remainder -PyNumber_Rshift -PyNumber_Subtract -PyNumber_ToBase -PyNumber_TrueDivide -PyNumber_Xor -PyOS_AfterFork -PyOS_InitInterrupts -PyOS_InputHook -PyOS_InterruptOccurred -PyOS_ReadlineFunctionPointer -PyOS_double_to_string -PyOS_getsig -PyOS_mystricmp -PyOS_mystrnicmp -PyOS_setsig -PyOS_snprintf -PyOS_string_to_double -PyOS_strtol -PyOS_strtoul -PyOS_vsnprintf -PyObject_ASCII -PyObject_AsCharBuffer -PyObject_AsFileDescriptor -PyObject_AsReadBuffer -PyObject_AsWriteBuffer -PyObject_Bytes -PyObject_Call -PyObject_CallFunction -PyObject_CallFunctionObjArgs -PyObject_CallMethod -PyObject_CallMethodObjArgs -PyObject_CallObject -PyObject_CheckReadBuffer -PyObject_ClearWeakRefs -PyObject_DelItem -PyObject_DelItemString -PyObject_Dir -PyObject_Format -PyObject_Free -PyObject_GC_Del -PyObject_GC_Track -PyObject_GC_UnTrack -PyObject_GenericGetAttr -PyObject_GenericSetAttr -PyObject_GetAttr -PyObject_GetAttrString -PyObject_GetItem -PyObject_GetIter -PyObject_HasAttr -PyObject_HasAttrString -PyObject_Hash -PyObject_HashNotImplemented -PyObject_Init -PyObject_InitVar -PyObject_IsInstance -PyObject_IsSubclass -PyObject_IsTrue -PyObject_Length -PyObject_Malloc -PyObject_Not -PyObject_Realloc -PyObject_Repr -PyObject_RichCompare -PyObject_RichCompareBool -PyObject_SelfIter -PyObject_SetAttr -PyObject_SetAttrString -PyObject_SetItem -PyObject_Size -PyObject_Str -PyObject_Type -PyParser_SimpleParseFileFlags -PyParser_SimpleParseStringFlags -PyProperty_Type -PyRangeIter_Type -PyRange_Type -PyReversed_Type -PySeqIter_New -PySeqIter_Type -PySequence_Check -PySequence_Concat -PySequence_Contains -PySequence_Count -PySequence_DelItem -PySequence_DelSlice -PySequence_Fast -PySequence_GetItem -PySequence_GetSlice -PySequence_In -PySequence_InPlaceConcat -PySequence_InPlaceRepeat -PySequence_Index -PySequence_Length -PySequence_List -PySequence_Repeat -PySequence_SetItem -PySequence_SetSlice -PySequence_Size -PySequence_Tuple -PySetIter_Type -PySet_Add -PySet_Clear -PySet_Contains -PySet_Discard -PySet_New -PySet_Pop -PySet_Size -PySet_Type -PySlice_GetIndices -PySlice_GetIndicesEx -PySlice_New -PySlice_Type -PySortWrapper_Type -PyState_FindModule -PyState_AddModule -PyState_RemoveModule -PyStructSequence_GetItem -PyStructSequence_New -PyStructSequence_NewType -PyStructSequence_SetItem -PySuper_Type -PySys_AddWarnOption -PySys_AddWarnOptionUnicode -PySys_FormatStderr -PySys_FormatStdout -PySys_GetObject -PySys_HasWarnOptions -PySys_ResetWarnOptions -PySys_SetArgv -PySys_SetArgvEx -PySys_SetObject -PySys_SetPath -PySys_WriteStderr -PySys_WriteStdout -PyThreadState_Clear -PyThreadState_Delete -PyThreadState_DeleteCurrent -PyThreadState_Get -PyThreadState_GetDict -PyThreadState_New -PyThreadState_SetAsyncExc -PyThreadState_Swap -PyTraceBack_Here -PyTraceBack_Print -PyTraceBack_Type -PyTupleIter_Type -PyTuple_ClearFreeList -PyTuple_GetItem -PyTuple_GetSlice -PyTuple_New -PyTuple_Pack -PyTuple_SetItem -PyTuple_Size -PyTuple_Type -PyType_ClearCache -PyType_FromSpec -PyType_FromSpecWithBases -PyType_GenericAlloc -PyType_GenericNew -PyType_GetFlags -PyType_GetSlot -PyType_IsSubtype -PyType_Modified -PyType_Ready -PyType_Type -PyUnicodeDecodeError_Create -PyUnicodeDecodeError_GetEncoding -PyUnicodeDecodeError_GetEnd -PyUnicodeDecodeError_GetObject -PyUnicodeDecodeError_GetReason -PyUnicodeDecodeError_GetStart -PyUnicodeDecodeError_SetEnd -PyUnicodeDecodeError_SetReason -PyUnicodeDecodeError_SetStart -PyUnicodeEncodeError_GetEncoding -PyUnicodeEncodeError_GetEnd -PyUnicodeEncodeError_GetObject -PyUnicodeEncodeError_GetReason -PyUnicodeEncodeError_GetStart -PyUnicodeEncodeError_SetEnd -PyUnicodeEncodeError_SetReason -PyUnicodeEncodeError_SetStart -PyUnicodeIter_Type -PyUnicodeTranslateError_GetEnd -PyUnicodeTranslateError_GetObject -PyUnicodeTranslateError_GetReason -PyUnicodeTranslateError_GetStart -PyUnicodeTranslateError_SetEnd -PyUnicodeTranslateError_SetReason -PyUnicodeTranslateError_SetStart -PyUnicode_Append -PyUnicode_AppendAndDel -PyUnicode_AsASCIIString -PyUnicode_AsCharmapString -PyUnicode_AsDecodedObject -PyUnicode_AsDecodedUnicode -PyUnicode_AsEncodedObject -PyUnicode_AsEncodedString -PyUnicode_AsEncodedUnicode -PyUnicode_AsLatin1String -PyUnicode_AsRawUnicodeEscapeString -PyUnicode_AsUTF16String -PyUnicode_AsUTF32String -PyUnicode_AsUTF8String -PyUnicode_AsUnicodeEscapeString -PyUnicode_AsWideChar -PyUnicode_ClearFreelist -PyUnicode_Compare -PyUnicode_Concat -PyUnicode_Contains -PyUnicode_Count -PyUnicode_Decode -PyUnicode_DecodeASCII -PyUnicode_DecodeCharmap -PyUnicode_DecodeFSDefault -PyUnicode_DecodeFSDefaultAndSize -PyUnicode_DecodeLatin1 -PyUnicode_DecodeRawUnicodeEscape -PyUnicode_DecodeUTF16 -PyUnicode_DecodeUTF16Stateful -PyUnicode_DecodeUTF32 -PyUnicode_DecodeUTF32Stateful -PyUnicode_DecodeUTF8 -PyUnicode_DecodeUTF8Stateful -PyUnicode_DecodeUnicodeEscape -PyUnicode_FSConverter -PyUnicode_FSDecoder -PyUnicode_Find -PyUnicode_Format -PyUnicode_FromEncodedObject -PyUnicode_FromFormat -PyUnicode_FromFormatV -PyUnicode_FromObject -PyUnicode_FromOrdinal -PyUnicode_FromString -PyUnicode_FromStringAndSize -PyUnicode_FromWideChar -PyUnicode_GetDefaultEncoding -PyUnicode_GetSize -PyUnicode_IsIdentifier -PyUnicode_Join -PyUnicode_Partition -PyUnicode_RPartition -PyUnicode_RSplit -PyUnicode_Replace -PyUnicode_Resize -PyUnicode_RichCompare -PyUnicode_SetDefaultEncoding -PyUnicode_Split -PyUnicode_Splitlines -PyUnicode_Tailmatch -PyUnicode_Translate -PyUnicode_BuildEncodingMap -PyUnicode_CompareWithASCIIString -PyUnicode_DecodeUTF7 -PyUnicode_DecodeUTF7Stateful -PyUnicode_EncodeFSDefault -PyUnicode_InternFromString -PyUnicode_InternImmortal -PyUnicode_InternInPlace -PyUnicode_Type -PyWeakref_GetObject -PyWeakref_NewProxy -PyWeakref_NewRef -PyWrapperDescr_Type -PyWrapper_New -PyZip_Type -Py_AddPendingCall -Py_AtExit -Py_BuildValue -Py_CompileString -Py_DecRef -Py_EndInterpreter -Py_Exit -Py_FatalError -Py_FileSystemDefaultEncoding -Py_Finalize -Py_GetBuildInfo -Py_GetCompiler -Py_GetCopyright -Py_GetExecPrefix -Py_GetPath -Py_GetPlatform -Py_GetPrefix -Py_GetProgramFullPath -Py_GetProgramName -Py_GetPythonHome -Py_GetRecursionLimit -Py_GetVersion -Py_HasFileSystemDefaultEncoding -Py_IncRef -Py_Initialize -Py_InitializeEx -Py_IsInitialized -Py_Main -Py_MakePendingCalls -Py_NewInterpreter -Py_ReprEnter -Py_ReprLeave -Py_SetProgramName -Py_SetPythonHome -Py_SetRecursionLimit -Py_SymtableString -Py_VaBuildValue -_PyErr_BadInternalCall -_PyObject_CallFunction_SizeT -_PyObject_CallMethod_SizeT -_PyObject_GC_Malloc -_PyObject_GC_New -_PyObject_GC_NewVar -_PyObject_GC_Resize -_PyObject_New -_PyObject_NewVar -_PyState_AddModule -_PyThreadState_Init -_PyThreadState_Prealloc -_PyTrash_delete_later -_PyTrash_delete_nesting -_PyTrash_deposit_object -_PyTrash_destroy_chain -_PyWeakref_CallableProxyType -_PyWeakref_ProxyType -_PyWeakref_RefType -_Py_BuildValue_SizeT -_Py_CheckRecursionLimit -_Py_CheckRecursiveCall -_Py_Dealloc -_Py_EllipsisObject -_Py_FalseStruct -_Py_NoneStruct -_Py_NotImplementedStruct -_Py_SwappedOp -_Py_TrueStruct -_Py_VaBuildValue_SizeT -_PyArg_Parse_SizeT -_PyArg_ParseTuple_SizeT -_PyArg_ParseTupleAndKeywords_SizeT -_PyArg_VaParse_SizeT -_PyArg_VaParseTupleAndKeywords_SizeT -_Py_BuildValue_SizeT diff --git a/PCbuild/_bz2.vcxproj b/PCbuild/_bz2.vcxproj --- a/PCbuild/_bz2.vcxproj +++ b/PCbuild/_bz2.vcxproj @@ -39,117 +39,28 @@ bz2 Win32Proj + - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - + DynamicLibrary NotSet - - DynamicLibrary - NotSet - true + + + + .pyd - - 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 - - - + $(bz2Dir);%(AdditionalIncludeDirectories) WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) @@ -158,83 +69,6 @@ 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 - - diff --git a/PCbuild/_ctypes.vcxproj b/PCbuild/_ctypes.vcxproj --- a/PCbuild/_ctypes.vcxproj +++ b/PCbuild/_ctypes.vcxproj @@ -39,204 +39,33 @@ _ctypes Win32Proj + - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - + DynamicLibrary NotSet + + .pyd + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + <_ProjectFileVersion>10.0.40219.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - + ..\Modules\_ctypes\libffi_msvc;%(AdditionalIncludeDirectories) 0x1D1A0000 - - - - - X64 - - - ..\Modules\_ctypes\libffi_msvc;%(AdditionalIncludeDirectories) - - - 0x1D1A0000 - - - - - ..\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 - - - - - ..\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 @@ -257,30 +86,14 @@ - true - 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) + true + ml64 /nologo /c /Zi /Fo "$(IntDir)win64.obj" "%(FullPath)" + $(IntDir)win64.obj;%(Outputs) diff --git a/PCbuild/_ctypes_test.vcxproj b/PCbuild/_ctypes_test.vcxproj --- a/PCbuild/_ctypes_test.vcxproj +++ b/PCbuild/_ctypes_test.vcxproj @@ -38,143 +38,28 @@ {9EC7190A-249F-4180-A900-548FDCF3055F} _ctypes_test Win32Proj + false + - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - + DynamicLibrary NotSet + + .pyd + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + <_ProjectFileVersion>10.0.30319.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - - - X64 - - - - - X64 - - - - - X64 - - - MachineX64 - - - - - X64 - - - MachineX64 - - diff --git a/PCbuild/_decimal.vcxproj b/PCbuild/_decimal.vcxproj --- a/PCbuild/_decimal.vcxproj +++ b/PCbuild/_decimal.vcxproj @@ -39,208 +39,37 @@ _decimal Win32Proj + - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - + DynamicLibrary NotSet + + .pyd + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + <_ProjectFileVersion>10.0.40219.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - + - /D_CRT_SECURE_NO_WARNINGS /DCONFIG_32 /DPPRO /DMASM %(AdditionalOptions) + _CRT_SECURE_NO_WARNINGS;MASM;%(PreprocessorDefinitions) + CONFIG_32;PPRO;%(PreprocessorDefinitions) + CONFIG_64;%(PreprocessorDefinitions) ..\Modules\_decimal;..\Modules\_decimal\libmpdec;%(AdditionalIncludeDirectories) 0x1D1A0000 - - - X64 - - - /D_CRT_SECURE_NO_WARNINGS /DCONFIG_64 /DMASM %(AdditionalOptions) - ..\Modules\_decimal;..\Modules\_decimal\libmpdec;%(AdditionalIncludeDirectories) - - - 0x1D1A0000 - - - - - /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 - - - - - /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 - - @@ -279,22 +108,9 @@ - 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) + true + ml64 /nologo /c /Zi /Fo "$(IntDir)vcdiv64.obj" "%(FullPath)" + $(IntDir)vcdiv64.obj;%(Outputs) diff --git a/PCbuild/_elementtree.vcxproj b/PCbuild/_elementtree.vcxproj --- a/PCbuild/_elementtree.vcxproj +++ b/PCbuild/_elementtree.vcxproj @@ -39,117 +39,27 @@ _elementtree Win32Proj + - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - + DynamicLibrary NotSet + + .pyd + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + <_ProjectFileVersion>10.0.30319.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - + ..\Modules\expat;%(AdditionalIncludeDirectories) XML_NS;XML_DTD;BYTEORDER=1234;XML_CONTEXT_BYTES=1024;USE_PYEXPAT_CAPI;XML_STATIC;HAVE_MEMMOVE;%(PreprocessorDefinitions) @@ -158,83 +68,6 @@ 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 - - diff --git a/PCbuild/_freeze_importlib.vcxproj b/PCbuild/_freeze_importlib.vcxproj --- a/PCbuild/_freeze_importlib.vcxproj +++ b/PCbuild/_freeze_importlib.vcxproj @@ -9,6 +9,22 @@ Debug x64 + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + Release Win32 @@ -22,149 +38,29 @@ {19C0C13F-47CA-4432-AFF3-799A296A4DDC} Win32Proj _freeze_importlib + false + - + Application - true - Unicode - - - Application - true - Unicode - - - Application - false - true - Unicode - - - Application - false - true Unicode - - - - - - - - - - - - + - - - - - - - true - - - true - - - false - - - false - - + - - - Level3 - Disabled - WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + _CONSOLE;%(PreprocessorDefinitions) Console - true - - $(TargetPath) ..\Lib\importlib\_bootstrap.py ..\Python\importlib.h - - - creating importlib.h - - - - - - - Level3 - Disabled - WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) - - - Console - true - - - $(TargetPath) ..\Lib\importlib\_bootstrap.py ..\Python\importlib.h - - - creating importlib.h - - - - - Level3 - - - MaxSpeed - true - true - WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - - - Console - true - true - true - - - $(TargetPath) ..\Lib\importlib\_bootstrap.py ..\Python\importlib.h - - - creating importlib.h - - - - - Level3 - - - MaxSpeed - true - true - WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - - - Console - true - true - true - - - $(TargetPath) ..\Lib\importlib\_bootstrap.py ..\Python\importlib.h - - - creating importlib.h - @@ -185,4 +81,25 @@ + + + + + <_OldContent Condition="Exists('$(PySourcePath)Python\importlib.h')">$([System.IO.File]::ReadAllText('$(PySourcePath)Python\importlib.h')) + <_NewContent Condition="Exists('$(IntDir)importlib.g.h')">$([System.IO.File]::ReadAllText('$(IntDir)importlib.g.h')) + + + + + + + + + + + diff --git a/PCbuild/_hashlib.vcxproj b/PCbuild/_hashlib.vcxproj --- a/PCbuild/_hashlib.vcxproj +++ b/PCbuild/_hashlib.vcxproj @@ -39,239 +39,47 @@ _hashlib Win32Proj + - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - + DynamicLibrary NotSet + + .pyd + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + <_ProjectFileVersion>10.0.30319.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - + - $(opensslDir)\inc32;%(AdditionalIncludeDirectories) + $(opensslDir)include;%(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 + ws2_32.lib;$(OutDir)libeay$(PyDebugExt).lib;$(OutDir)ssleay$(PyDebugExt).lib;%(AdditionalDependencies) - - {b11d750f-cd1f-4a96-85ce-e69a5c5259f9} - false - {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} false - + + {10615b24-73bf-4efa-93aa-236916321317} + false + + {e5b04cc0-eb4c-42ab-b4dc-18ef95f864b0} false diff --git a/PCbuild/_lzma.vcxproj b/PCbuild/_lzma.vcxproj --- a/PCbuild/_lzma.vcxproj +++ b/PCbuild/_lzma.vcxproj @@ -39,200 +39,35 @@ lzma Win32Proj + - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - + DynamicLibrary NotSet + + .pyd + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + <_ProjectFileVersion>10.0.30319.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - + - $(lzmaDir)\include;%(AdditionalIncludeDirectories) + $(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 + $(lzmaDir)\bin_i486\liblzma.a;%(AdditionalDependencies) + $(lzmaDir)\bin_x86-64\liblzma.a;%(AdditionalDependencies) + false diff --git a/PCbuild/_msi.vcxproj b/PCbuild/_msi.vcxproj --- a/PCbuild/_msi.vcxproj +++ b/PCbuild/_msi.vcxproj @@ -39,178 +39,32 @@ _msi Win32Proj + - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - + DynamicLibrary NotSet + + .pyd + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + <_ProjectFileVersion>10.0.30319.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - + - fci.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies) + cabinet.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 - - diff --git a/PCbuild/_multiprocessing.vcxproj b/PCbuild/_multiprocessing.vcxproj --- a/PCbuild/_multiprocessing.vcxproj +++ b/PCbuild/_multiprocessing.vcxproj @@ -39,178 +39,32 @@ _multiprocessing Win32Proj + - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - + DynamicLibrary NotSet + + .pyd + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + <_ProjectFileVersion>10.0.30319.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - + 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 - - diff --git a/PCbuild/_overlapped.vcxproj b/PCbuild/_overlapped.vcxproj --- a/PCbuild/_overlapped.vcxproj +++ b/PCbuild/_overlapped.vcxproj @@ -39,186 +39,32 @@ _overlapped Win32Proj + - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - + DynamicLibrary NotSet + + .pyd + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + <_ProjectFileVersion>10.0.30319.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - + ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) 0x1D110000 - - - X64 - - - ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1D110000 - - - - - ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1D110000 - - - - - X64 - - - ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1D110000 - - - - - ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1D110000 - - - - - X64 - - - ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1D110000 - MachineX64 - - - - - ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1D110000 - - - - - X64 - - - ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1D110000 - MachineX64 - - diff --git a/PCbuild/_socket.vcxproj b/PCbuild/_socket.vcxproj --- a/PCbuild/_socket.vcxproj +++ b/PCbuild/_socket.vcxproj @@ -39,178 +39,32 @@ _socket Win32Proj + - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - + DynamicLibrary NotSet + + .pyd + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + <_ProjectFileVersion>10.0.30319.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - + 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 - - diff --git a/PCbuild/_sqlite3.vcxproj b/PCbuild/_sqlite3.vcxproj --- a/PCbuild/_sqlite3.vcxproj +++ b/PCbuild/_sqlite3.vcxproj @@ -39,117 +39,27 @@ _sqlite3 Win32Proj + - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - + DynamicLibrary NotSet + + .pyd + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + <_ProjectFileVersion>10.0.30319.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - + $(sqlite3Dir);%(AdditionalIncludeDirectories) MODULE_NAME="sqlite3";%(PreprocessorDefinitions) @@ -158,83 +68,6 @@ 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 - - diff --git a/PCbuild/_ssl.vcxproj b/PCbuild/_ssl.vcxproj --- a/PCbuild/_ssl.vcxproj +++ b/PCbuild/_ssl.vcxproj @@ -39,242 +39,50 @@ _ssl Win32Proj + - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - + DynamicLibrary NotSet + + .pyd + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + <_ProjectFileVersion>10.0.30319.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - + - $(opensslDir)\inc32;%(AdditionalIncludeDirectories) + $(opensslDir)include;%(AdditionalIncludeDirectories) - - - - - ws2_32.lib;crypt32.lib;$(opensslDir)\out32\libeay32.lib;$(opensslDir)\out32\ssleay32.lib;%(AdditionalDependencies) - - - - - X64 - - - $(opensslDir)\inc64;%(AdditionalIncludeDirectories) - - - - - - - ws2_32.lib;crypt32.lib;$(opensslDir)\out64\libeay32.lib;$(opensslDir)\out64\ssleay32.lib;%(AdditionalDependencies) - - - - - $(opensslDir)\inc32;%(AdditionalIncludeDirectories) - - - - - - - ws2_32.lib;crypt32.lib;$(opensslDir)\out32\libeay32.lib;$(opensslDir)\out32\ssleay32.lib;%(AdditionalDependencies) - - - - - X64 - - - $(opensslDir)\inc64;%(AdditionalIncludeDirectories) - - - - - - - ws2_32.lib;crypt32.lib;$(opensslDir)\out64\libeay32.lib;$(opensslDir)\out64\ssleay32.lib;%(AdditionalDependencies) - - - - - $(opensslDir)\inc32;%(AdditionalIncludeDirectories) - - - - - - - ws2_32.lib;crypt32.lib;$(opensslDir)\out32\libeay32.lib;$(opensslDir)\out32\ssleay32.lib;%(AdditionalDependencies) - - - - - X64 - - - $(opensslDir)\inc64;%(AdditionalIncludeDirectories) - - - - - - - ws2_32.lib;crypt32.lib;$(opensslDir)\out64\libeay32.lib;$(opensslDir)\out64\ssleay32.lib;%(AdditionalDependencies) - MachineX64 - - - - - $(opensslDir)\inc32;%(AdditionalIncludeDirectories) - - - - - - - ws2_32.lib;crypt32.lib;$(opensslDir)\out32\libeay32.lib;$(opensslDir)\out32\ssleay32.lib;%(AdditionalDependencies) - - - - - X64 - - - $(opensslDir)\inc64;%(AdditionalIncludeDirectories) - - - - - - - ws2_32.lib;crypt32.lib;$(opensslDir)\out64\libeay32.lib;$(opensslDir)\out64\ssleay32.lib;%(AdditionalDependencies) - MachineX64 + ws2_32.lib;crypt32.lib;$(OutDir)libeay$(PyDebugExt).lib;$(OutDir)ssleay$(PyDebugExt).lib;%(AdditionalDependencies) - - {b11d750f-cd1f-4a96-85ce-e69a5c5259f9} - false - {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} false - + {e5b04cc0-eb4c-42ab-b4dc-18ef95f864b0} false + + {10615b24-73bf-4efa-93aa-236916321317} + false + {86937f53-c189-40ef-8ce8-8759d8e7d480} false diff --git a/PCbuild/_testbuffer.vcxproj b/PCbuild/_testbuffer.vcxproj --- a/PCbuild/_testbuffer.vcxproj +++ b/PCbuild/_testbuffer.vcxproj @@ -38,171 +38,33 @@ {A2697BD3-28C1-4AEC-9106-8B748639FD16} _testbuffer Win32Proj + false + - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - + DynamicLibrary NotSet + + .pyd + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + <_ProjectFileVersion>10.0.40219.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - + 0x1e1F0000 - - - X64 - - - 0x1e1F0000 - - - - - 0x1e1F0000 - - - - - X64 - - - 0x1e1F0000 - - - - - 0x1e1F0000 - - - - - X64 - - - 0x1e1F0000 - MachineX64 - - - - - 0x1e1F0000 - - - - - X64 - - - 0x1e1F0000 - MachineX64 - - diff --git a/PCbuild/_testcapi.vcxproj b/PCbuild/_testcapi.vcxproj --- a/PCbuild/_testcapi.vcxproj +++ b/PCbuild/_testcapi.vcxproj @@ -38,171 +38,33 @@ {6901D91C-6E48-4BB7-9FEC-700C8131DF1D} _testcapi Win32Proj + false + - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - + DynamicLibrary NotSet + + .pyd + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + <_ProjectFileVersion>10.0.30319.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - + 0x1e1F0000 - - - X64 - - - 0x1e1F0000 - - - - - 0x1e1F0000 - - - - - X64 - - - 0x1e1F0000 - - - - - 0x1e1F0000 - - - - - X64 - - - 0x1e1F0000 - MachineX64 - - - - - 0x1e1F0000 - - - - - X64 - - - 0x1e1F0000 - MachineX64 - - diff --git a/PCbuild/_testembed.vcxproj b/PCbuild/_testembed.vcxproj --- a/PCbuild/_testembed.vcxproj +++ b/PCbuild/_testembed.vcxproj @@ -9,6 +9,22 @@ Debug x64 + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + Release Win32 @@ -22,124 +38,28 @@ {6DAC66D9-E703-4624-BE03-49112AB5AA62} Win32Proj _testembed + false + - + Application - true - Unicode - - - Application - true - Unicode - - - Application - false - true - Unicode - - - Application - false - true Unicode - - - - - - - - - - - - + - - - - - - - false - - - false - - - false - - - false - - + - - - Level3 - Disabled - WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + _CONSOLE;%(PreprocessorDefinitions) Console - true - - - - - - - Level3 - Disabled - WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) - - - Console - true - - - - - Level3 - - - MaxSpeed - true - true - WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - - - Console - true - true - true - - - - - Level3 - - - MaxSpeed - true - true - WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - - - Console - true - true - true diff --git a/PCbuild/_testimportmultiple.vcxproj b/PCbuild/_testimportmultiple.vcxproj --- a/PCbuild/_testimportmultiple.vcxproj +++ b/PCbuild/_testimportmultiple.vcxproj @@ -38,171 +38,33 @@ {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781} _testimportmultiple Win32Proj + false + - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - + DynamicLibrary NotSet + + .pyd + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + <_ProjectFileVersion>10.0.30319.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - + 0x1e1F0000 - - - X64 - - - 0x1e1F0000 - - - - - 0x1e1F0000 - - - - - X64 - - - 0x1e1F0000 - - - - - 0x1e1F0000 - - - - - X64 - - - 0x1e1F0000 - MachineX64 - - - - - 0x1e1F0000 - - - - - X64 - - - 0x1e1F0000 - MachineX64 - - diff --git a/PCbuild/_tkinter.vcxproj b/PCbuild/_tkinter.vcxproj --- a/PCbuild/_tkinter.vcxproj +++ b/PCbuild/_tkinter.vcxproj @@ -39,210 +39,35 @@ _tkinter Win32Proj + - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - + DynamicLibrary NotSet + + .pyd + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - <_ProjectFileVersion>10.0.30319.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - + - $(tcltkDir)\include;%(AdditionalIncludeDirectories) + $(tcltkDir)include;%(AdditionalIncludeDirectories) WITH_APPINIT;%(PreprocessorDefinitions) $(tcltkLib);%(AdditionalDependencies) - - - X64 - - - $(tcltkDir)\include;%(AdditionalIncludeDirectories) - WITH_APPINIT;%(PreprocessorDefinitions) - - - $(tcltkLib);%(AdditionalDependencies) - - - - - $(tcltkDir)\include;%(AdditionalIncludeDirectories) - WITH_APPINIT;%(PreprocessorDefinitions) - - - $(tcltkLib);%(AdditionalDependencies) - - - - - X64 - - - $(tcltkDir)\include;%(AdditionalIncludeDirectories) - WITH_APPINIT;%(PreprocessorDefinitions) - - - $(tcltkLib);%(AdditionalDependencies) - - - - - $(tcltkDir)\include;%(AdditionalIncludeDirectories) - WITH_APPINIT;%(PreprocessorDefinitions) - - - $(tcltkLib);%(AdditionalDependencies) - - - - - X64 - - - $(tcltkDir)\include;%(AdditionalIncludeDirectories) - WITH_APPINIT;%(PreprocessorDefinitions) - - - $(tcltkLib);%(AdditionalDependencies) - MachineX64 - - - - - $(tcltkDir)\include;%(AdditionalIncludeDirectories) - WITH_APPINIT;%(PreprocessorDefinitions) - - - $(tcltkLib);%(AdditionalDependencies) - - - - - X64 - - - $(tcltkDir)\include;%(AdditionalIncludeDirectories) - WITH_APPINIT;%(PreprocessorDefinitions) - - - $(tcltkLib);%(AdditionalDependencies) - MachineX64 - - @@ -255,6 +80,9 @@ {b5fd6f1d-129e-4bff-9340-03606fac7283} + + {c5a3e7fb-9695-4b2e-960b-1d9f43f1e555} + {7e85eccf-a72c-4da4-9e52-884508e80ba1} diff --git a/PCbuild/bdist_wininst.vcxproj b/PCbuild/bdist_wininst.vcxproj --- a/PCbuild/bdist_wininst.vcxproj +++ b/PCbuild/bdist_wininst.vcxproj @@ -1,6 +1,30 @@  + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + Release Win32 @@ -13,14 +37,12 @@ {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C} wininst + ClCompile + false + - - Application - false - NotSet - - + Application false NotSet @@ -28,109 +50,32 @@ - + - - - - - - - <_ProjectFileVersion>10.0.30319.1 - ..\lib\distutils\command\ - false - ..\lib\distutils\command\ - $(SolutionDir)$(PlatformName)-temp-$(Configuration)\$(ProjectName)\ - false - AllRules.ruleset - - - AllRules.ruleset - - - .exe - .exe + $(PySourcePath)lib\distutils\command\ + false + wininst-$(VisualStudioVersion) + $(TargetName)-amd64 + .exe - + - NDEBUG;%(PreprocessorDefinitions) - true - true - Win32 - .\..\lib\distutils\command\wininst.tlb - - + $(OutDir)wininst.tlb MinSpace - OnlyExplicitInline - ..\PC\bdist_wininst;..\Include;..\Modules\zlib;%(AdditionalIncludeDirectories) + $(PySourcePath)PC\bdist_wininst;$(PySourcePath)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) + $(PySourcePath)PC\bdist_wininst;%(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 diff --git a/PCbuild/debug.props b/PCbuild/debug.props deleted file mode 100644 --- a/PCbuild/debug.props +++ /dev/null @@ -1,31 +0,0 @@ - - - - _d - $(OutDir)kill_python_d.exe - g - - - <_ProjectFileVersion>10.0.30319.1 - $(ProjectName)_d - - - - _DEBUG;%(PreprocessorDefinitions) - - - _DEBUG - - - - - $(PyDebugExt) - - - $(KillPythonExe) - - - $(TclDebugExt) - - - \ No newline at end of file diff --git a/PCbuild/installer.bmp b/PCbuild/installer.bmp deleted file mode 100644 index 1875e194ba2720cf25541c20e0459f16f3f96d72..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 GIT binary patch literal 0 Hc$@ -#include -#include -#include - -#pragma comment(lib, "psapi") - -#ifdef _DEBUG -#define PYTHON_EXE (L"python_d.exe") -#define PYTHON_EXE_LEN (12) -#define KILL_PYTHON_EXE (L"kill_python_d.exe") -#define KILL_PYTHON_EXE_LEN (17) -#else -#define PYTHON_EXE (L"python.exe") -#define PYTHON_EXE_LEN (10) -#define KILL_PYTHON_EXE (L"kill_python.exe") -#define KILL_PYTHON_EXE_LEN (15) -#endif - -int -main(int argc, char **argv) -{ - HANDLE hp, hsp, hsm; /* process, snapshot processes, snapshot modules */ - DWORD dac, our_pid; - size_t len; - wchar_t path[MAX_PATH+1]; - - MODULEENTRY32W me; - PROCESSENTRY32W pe; - - me.dwSize = sizeof(MODULEENTRY32W); - pe.dwSize = sizeof(PROCESSENTRY32W); - - memset(path, 0, MAX_PATH+1); - - our_pid = GetCurrentProcessId(); - - hsm = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, our_pid); - if (hsm == INVALID_HANDLE_VALUE) { - printf("CreateToolhelp32Snapshot[1] failed: %d\n", GetLastError()); - return 1; - } - - if (!Module32FirstW(hsm, &me)) { - printf("Module32FirstW[1] failed: %d\n", GetLastError()); - CloseHandle(hsm); - return 1; - } - - /* - * Enumerate over the modules for the current process in order to find - * kill_process[_d].exe, then take a note of the directory it lives in. - */ - do { - if (_wcsnicmp(me.szModule, KILL_PYTHON_EXE, KILL_PYTHON_EXE_LEN)) - continue; - - len = wcsnlen_s(me.szExePath, MAX_PATH) - KILL_PYTHON_EXE_LEN; - wcsncpy_s(path, MAX_PATH+1, me.szExePath, len); - - break; - - } while (Module32NextW(hsm, &me)); - - CloseHandle(hsm); - - if (path == NULL) { - printf("failed to discern directory of running process\n"); - return 1; - } - - /* - * Take a snapshot of system processes. Enumerate over the snapshot, - * looking for python processes. When we find one, verify it lives - * in the same directory we live in. If it does, kill it. If we're - * unable to kill it, treat this as a fatal error and return 1. - * - * The rationale behind this is that we're called at the start of the - * build process on the basis that we'll take care of killing any - * running instances, such that the build won't encounter permission - * denied errors during linking. If we can't kill one of the processes, - * we can't provide this assurance, and the build shouldn't start. - */ - - hsp = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); - if (hsp == INVALID_HANDLE_VALUE) { - printf("CreateToolhelp32Snapshot[2] failed: %d\n", GetLastError()); - return 1; - } - - if (!Process32FirstW(hsp, &pe)) { - printf("Process32FirstW failed: %d\n", GetLastError()); - CloseHandle(hsp); - return 1; - } - - dac = PROCESS_QUERY_INFORMATION | PROCESS_VM_READ | PROCESS_TERMINATE; - do { - - /* - * XXX TODO: if we really wanted to be fancy, we could check the - * modules for all processes (not just the python[_d].exe ones) - * and see if any of our DLLs are loaded (i.e. python35[_d].dll), - * as that would also inhibit our ability to rebuild the solution. - * Not worth loosing sleep over though; for now, a simple check - * for just the python executable should be sufficient. - */ - - if (_wcsnicmp(pe.szExeFile, PYTHON_EXE, PYTHON_EXE_LEN)) - /* This isn't a python process. */ - continue; - - /* It's a python process, so figure out which directory it's in... */ - hsm = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, pe.th32ProcessID); - if (hsm == INVALID_HANDLE_VALUE) - /* - * If our module snapshot fails (which will happen if we don't own - * the process), just ignore it and continue. (It seems different - * versions of Windows return different values for GetLastError() - * in this situation; it's easier to just ignore it and move on vs. - * stopping the build for what could be a false positive.) - */ - continue; - - if (!Module32FirstW(hsm, &me)) { - printf("Module32FirstW[2] failed: %d\n", GetLastError()); - CloseHandle(hsp); - CloseHandle(hsm); - return 1; - } - - do { - if (_wcsnicmp(me.szModule, PYTHON_EXE, PYTHON_EXE_LEN)) - /* Wrong module, we're looking for python[_d].exe... */ - continue; - - if (_wcsnicmp(path, me.szExePath, len)) - /* Process doesn't live in our directory. */ - break; - - /* Python process residing in the right directory, kill it! */ - hp = OpenProcess(dac, FALSE, pe.th32ProcessID); - if (!hp) { - printf("OpenProcess failed: %d\n", GetLastError()); - CloseHandle(hsp); - CloseHandle(hsm); - return 1; - } - - if (!TerminateProcess(hp, 1)) { - printf("TerminateProcess failed: %d\n", GetLastError()); - CloseHandle(hsp); - CloseHandle(hsm); - CloseHandle(hp); - return 1; - } - - CloseHandle(hp); - break; - - } while (Module32NextW(hsm, &me)); - - CloseHandle(hsm); - - } while (Process32NextW(hsp, &pe)); - - CloseHandle(hsp); - - return 0; -} - -/* vi: set ts=8 sw=4 sts=4 expandtab */ diff --git a/PCbuild/kill_python.vcxproj b/PCbuild/kill_python.vcxproj deleted file mode 100644 --- a/PCbuild/kill_python.vcxproj +++ /dev/null @@ -1,120 +0,0 @@ - - - - - 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 - - - - - - $(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 deleted file mode 100644 --- a/PCbuild/kill_python.vcxproj.filters +++ /dev/null @@ -1,13 +0,0 @@ - - - - - {48606591-c8b6-41a5-95c5-9a0890c5504f} - - - - - Source Files - - - \ No newline at end of file diff --git a/PCbuild/libeay.vcxproj b/PCbuild/libeay.vcxproj new file mode 100644 --- /dev/null +++ b/PCbuild/libeay.vcxproj @@ -0,0 +1,890 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Debug + x64 + + + Release + x64 + + + + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0} + libeay + + + + + + + + StaticLibrary + + + + + + + <_DATEValue>#define DATE "$([System.DateTime]::Now.ToString(`ddd MMM dd HH':'mm':'ss yyyy`))" + <_CFLAGSValue>#define CFLAGS "cl /MD /Ox -W3 -Gs0 -Gy -nologo @(PreprocessorDefinitions->'-D%(Identity)',' ')" + <_PLATFORMValue Condition="$(Platform)=='Win32'">#define PLATFORM "VC-WIN32" + <_PLATFORMValue Condition="$(Platform)=='x64'">#define PLATFORM "VC-WIN64A" + + + + + + + + + + + + $(IntDir);%(AdditionalIncludeDirectories) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/PCbuild/make_buildinfo.vcxproj b/PCbuild/make_buildinfo.vcxproj --- a/PCbuild/make_buildinfo.vcxproj +++ b/PCbuild/make_buildinfo.vcxproj @@ -1,45 +1,63 @@  + + Debug + Win32 + + + Debug + x64 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + Release Win32 + + Release + x64 + {C73F0EC1-358B-4177-940F-0846AC8B04CD} make_buildinfo - Win32Proj + false + - + Application NotSet - + - - - <_ProjectFileVersion>10.0.40219.1 - AllRules.ruleset - - - - + - Disabled - OnlyExplicitInline _CONSOLE;%(PreprocessorDefinitions) - MultiThreaded - $(OutDir)make_buildinfo.exe Console diff --git a/PCbuild/make_versioninfo.vcxproj b/PCbuild/make_versioninfo.vcxproj deleted file mode 100644 --- a/PCbuild/make_versioninfo.vcxproj +++ /dev/null @@ -1,200 +0,0 @@ - - - - - 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 - - - - - - Build PC/pythonnt_rc(_d).h - cd $(SolutionDir) -make_versioninfo.exe > ..\PC\pythonnt_rc.h - - $(SolutionDir)..\PC\pythonnt_rc.h;%(Outputs) - $(SolutionDir)make_versioninfo.exe - - - MaxSpeed - OnlyExplicitInline - true - %(AdditionalIncludeDirectories) - _CONSOLE;%(PreprocessorDefinitions) - true - MultiThreadedDLL - true - Default - - - $(SolutionDir)make_versioninfo.exe - Console - 0x1d000000 - - - - - - - - - - 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) - $(SolutionDir)make_versioninfo_d.exe - - - Disabled - OnlyExplicitInline - false - %(AdditionalIncludeDirectories) - _CONSOLE;%(PreprocessorDefinitions) - true - MultiThreadedDLL - true - Default - - - $(SolutionDir)make_versioninfo_d.exe - Console - 0x1d000000 - - - - - - - - - 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 deleted file mode 100644 --- a/PCbuild/make_versioninfo.vcxproj.filters +++ /dev/null @@ -1,13 +0,0 @@ - - - - - {e4180954-c3a5-4749-b9a4-31b804ee4fa8} - - - - - Source Files - - - \ No newline at end of file diff --git a/PCbuild/openssl.props b/PCbuild/openssl.props new file mode 100644 --- /dev/null +++ b/PCbuild/openssl.props @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_PreprocessorDefinitionList>@(PreprocessorDefinitions) + + + + + + 4244;4267 + $(opensslDir);$(opensslDir)include;$(opensslDir)crypto;$(opensslDir)crypto\asn1;$(opensslDir)crypto\evp;$(opensslDir)crypto\modes + $(_PreprocessorDefinitionList);%(PreprocessorDefinitions) + + + + + + "$(nasmDir)nasm.exe" -f win32 + "$(nasmDir)nasm.exe" -f win64 -DNEAR -Ox -g + + + + + + + + + + + \ No newline at end of file diff --git a/PCbuild/pcbuild.sln b/PCbuild/pcbuild.sln --- a/PCbuild/pcbuild.sln +++ b/PCbuild/pcbuild.sln @@ -1,5 +1,7 @@ -Microsoft Visual Studio Solution File, Format Version 11.00 -# Visual Studio 2010 +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2013 +VisualStudioVersion = 12.0.30501.0 +MinimumVisualStudioVersion = 10.0.40219.1 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{553EC33E-9816-4996-A660-5D6186A0B0B3}" ProjectSection(SolutionItems) = preProject ..\Modules\getbuildinfo.c = ..\Modules\getbuildinfo.c @@ -8,8 +10,6 @@ EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python", "python.vcxproj", "{B11D750F-CD1F-4A96-85CE-E69A5C5259F9}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_versioninfo", "make_versioninfo.vcxproj", "{F0E0541E-F17D-430B-97C4-93ADF0DD284E}" -EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pythoncore", "pythoncore.vcxproj", "{CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pythonw", "pythonw.vcxproj", "{F4229CC3-873C-49AE-9729-DD308ED4CD4A}" @@ -58,10 +58,6 @@ EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_multiprocessing", "_multiprocessing.vcxproj", "{9E48B300-37D1-11DD-8C41-005056C00008}" EndProject -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.vcxproj", "{6DE10744-E396-40A5-B4E2-1B69AA7C8D31}" -EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python3dll", "python3dll.vcxproj", "{885D4898-D08D-4091-9C40-C700CFE3FC5A}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xxlimited", "xxlimited.vcxproj", "{F749B822-B489-4CA5-A3AD-CE078F5F338A}" @@ -80,9 +76,13 @@ EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tcl", "tcl.vcxproj", "{B5FD6F1D-129E-4BFF-9340-03606FAC7283}" EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tix", "tix.vcxproj", "{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}" +EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tk", "tk.vcxproj", "{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tix", "tix.vcxproj", "{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libeay", "libeay.vcxproj", "{E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssleay", "ssleay.vcxproj", "{10615B24-73BF-4EFA-93AA-236916321317}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -112,22 +112,6 @@ {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 @@ -148,20 +132,20 @@ {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.Debug|Win32.Build.0 = Debug|Win32 {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.Debug|x64.ActiveCfg = Debug|x64 {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.Debug|x64.Build.0 = Debug|x64 - {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 - {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 - {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 - {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGInstrument|x64.Build.0 = PGInstrument|x64 - {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 - {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 - {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 - {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGInstrument|Win32.Build.0 = Release|Win32 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGInstrument|x64.ActiveCfg = Release|x64 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGInstrument|x64.Build.0 = Release|x64 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGUpdate|Win32.Build.0 = Release|Win32 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGUpdate|x64.ActiveCfg = Release|x64 + {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.PGUpdate|x64.Build.0 = Release|x64 {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.Release|Win32.ActiveCfg = Release|Win32 {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.Release|Win32.Build.0 = Release|Win32 {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.Release|x64.ActiveCfg = Release|x64 {F4229CC3-873C-49AE-9729-DD308ED4CD4A}.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|Win32.ActiveCfg = Debug|Win32 + {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Debug|Win32.Build.0 = Debug|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 @@ -174,8 +158,8 @@ {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 + {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Release|x64.ActiveCfg = Release|x64 + {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Release|x64.Build.0 = Release|x64 {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 @@ -228,14 +212,14 @@ {9EC7190A-249F-4180-A900-548FDCF3055F}.Debug|Win32.Build.0 = Debug|Win32 {9EC7190A-249F-4180-A900-548FDCF3055F}.Debug|x64.ActiveCfg = Debug|x64 {9EC7190A-249F-4180-A900-548FDCF3055F}.Debug|x64.Build.0 = Debug|x64 - {9EC7190A-249F-4180-A900-548FDCF3055F}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 - {9EC7190A-249F-4180-A900-548FDCF3055F}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 - {9EC7190A-249F-4180-A900-548FDCF3055F}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 - {9EC7190A-249F-4180-A900-548FDCF3055F}.PGInstrument|x64.Build.0 = PGInstrument|x64 - {9EC7190A-249F-4180-A900-548FDCF3055F}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 - {9EC7190A-249F-4180-A900-548FDCF3055F}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 - {9EC7190A-249F-4180-A900-548FDCF3055F}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 - {9EC7190A-249F-4180-A900-548FDCF3055F}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGInstrument|Win32.Build.0 = Release|Win32 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGInstrument|x64.ActiveCfg = Release|x64 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGInstrument|x64.Build.0 = Release|x64 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGUpdate|Win32.Build.0 = Release|Win32 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGUpdate|x64.ActiveCfg = Release|x64 + {9EC7190A-249F-4180-A900-548FDCF3055F}.PGUpdate|x64.Build.0 = Release|x64 {9EC7190A-249F-4180-A900-548FDCF3055F}.Release|Win32.ActiveCfg = Release|Win32 {9EC7190A-249F-4180-A900-548FDCF3055F}.Release|Win32.Build.0 = Release|Win32 {9EC7190A-249F-4180-A900-548FDCF3055F}.Release|x64.ActiveCfg = Release|x64 @@ -340,14 +324,14 @@ {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.Debug|Win32.Build.0 = Debug|Win32 {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.Debug|x64.ActiveCfg = Debug|x64 {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.Debug|x64.Build.0 = Debug|x64 - {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 - {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 - {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 - {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGInstrument|x64.Build.0 = PGInstrument|x64 - {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 - {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 - {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 - {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGInstrument|Win32.Build.0 = Release|Win32 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGInstrument|x64.ActiveCfg = Release|x64 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGInstrument|x64.Build.0 = Release|x64 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGUpdate|Win32.Build.0 = Release|Win32 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGUpdate|x64.ActiveCfg = Release|x64 + {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.PGUpdate|x64.Build.0 = Release|x64 {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.Release|Win32.ActiveCfg = Release|Win32 {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.Release|Win32.Build.0 = Release|Win32 {36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}.Release|x64.ActiveCfg = Release|x64 @@ -448,14 +432,16 @@ {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|Win32.ActiveCfg = Debug|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|Win32.Build.0 = Release|Win32 {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.Release|x64.ActiveCfg = Release|x64 + {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.Release|x64.Build.0 = 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 @@ -504,49 +490,18 @@ {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}.Debug|Win32.ActiveCfg = Debug|Win32 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.Debug|Win32.Build.0 = Debug|Win32 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.Debug|x64.ActiveCfg = Debug|x64 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.Debug|x64.Build.0 = Debug|x64 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.PGInstrument|Win32.ActiveCfg = Debug|Win32 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.PGInstrument|Win32.Build.0 = Debug|Win32 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.PGInstrument|x64.ActiveCfg = Debug|x64 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.PGInstrument|x64.Build.0 = Debug|x64 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.PGUpdate|Win32.ActiveCfg = Debug|Win32 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.PGUpdate|Win32.Build.0 = Debug|Win32 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.PGUpdate|x64.ActiveCfg = Debug|x64 + {885D4898-D08D-4091-9C40-C700CFE3FC5A}.PGUpdate|x64.Build.0 = Debug|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 @@ -569,14 +524,14 @@ {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}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.PGInstrument|Win32.Build.0 = Release|Win32 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.PGInstrument|x64.ActiveCfg = Release|x64 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.PGInstrument|x64.Build.0 = Release|x64 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.PGUpdate|Win32.Build.0 = Release|Win32 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.PGUpdate|x64.ActiveCfg = Release|x64 + {A2697BD3-28C1-4AEC-9106-8B748639FD16}.PGUpdate|x64.Build.0 = Release|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 @@ -585,34 +540,34 @@ {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Debug|Win32.Build.0 = Debug|Win32 {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Debug|x64.ActiveCfg = Debug|x64 {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Debug|x64.Build.0 = Debug|x64 - {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 - {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 - {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGInstrument|x64.ActiveCfg = PGInstrument|Win32 - {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGInstrument|x64.Build.0 = PGInstrument|Win32 - {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 - {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 - {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGUpdate|x64.ActiveCfg = PGUpdate|Win32 - {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGUpdate|x64.Build.0 = PGUpdate|Win32 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGInstrument|Win32.Build.0 = Release|Win32 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGInstrument|x64.ActiveCfg = Release|x64 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGInstrument|x64.Build.0 = Release|x64 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGUpdate|Win32.Build.0 = Release|Win32 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGUpdate|x64.ActiveCfg = Release|x64 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGUpdate|x64.Build.0 = Release|x64 {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Release|Win32.ActiveCfg = Release|Win32 {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Release|Win32.Build.0 = Release|Win32 - {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Release|x64.ActiveCfg = Release|Win32 - {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Release|x64.Build.0 = Release|Win32 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Release|x64.ActiveCfg = Release|x64 + {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Release|x64.Build.0 = Release|x64 {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Debug|Win32.ActiveCfg = Debug|Win32 {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Debug|Win32.Build.0 = Debug|Win32 {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Debug|x64.ActiveCfg = Debug|x64 {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Debug|x64.Build.0 = Debug|x64 - {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 - {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 - {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGInstrument|x64.ActiveCfg = PGInstrument|Win32 - {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGInstrument|x64.Build.0 = PGInstrument|Win32 - {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 - {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 - {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGUpdate|x64.ActiveCfg = PGUpdate|Win32 - {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGUpdate|x64.Build.0 = PGUpdate|Win32 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGInstrument|Win32.Build.0 = Release|Win32 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGInstrument|x64.ActiveCfg = Release|x64 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGInstrument|x64.Build.0 = Release|x64 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGUpdate|Win32.Build.0 = Release|Win32 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGUpdate|x64.ActiveCfg = Release|x64 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGUpdate|x64.Build.0 = Release|x64 {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Release|Win32.ActiveCfg = Release|Win32 {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Release|Win32.Build.0 = Release|Win32 - {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Release|x64.ActiveCfg = Release|Win32 - {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Release|x64.Build.0 = Release|Win32 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Release|x64.ActiveCfg = Release|x64 + {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Release|x64.Build.0 = Release|x64 {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.Debug|Win32.ActiveCfg = Debug|Win32 {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.Debug|x64.ActiveCfg = Debug|x64 {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.PGInstrument|Win32.ActiveCfg = Release|Win32 @@ -620,7 +575,9 @@ {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.PGUpdate|Win32.ActiveCfg = Release|Win32 {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.PGUpdate|x64.ActiveCfg = Release|Win32 {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.Release|Win32.ActiveCfg = Release|Win32 + {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.Release|Win32.Build.0 = Release|Win32 {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.Release|x64.ActiveCfg = Release|x64 + {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.Release|x64.Build.0 = Release|x64 {EB6E69DD-04BF-4543-9B92-49FAABCEAC2E}.Debug|Win32.ActiveCfg = Debug|Win32 {EB6E69DD-04BF-4543-9B92-49FAABCEAC2E}.Debug|Win32.Build.0 = Debug|Win32 {EB6E69DD-04BF-4543-9B92-49FAABCEAC2E}.Debug|x64.ActiveCfg = Debug|x64 @@ -657,48 +614,80 @@ {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Debug|x64.Build.0 = Debug|x64 {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|Win32.ActiveCfg = Release|Win32 {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|Win32.Build.0 = Release|Win32 - {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 - {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|x64.ActiveCfg = Release|x64 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|x64.Build.0 = Release|x64 {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|Win32.ActiveCfg = Release|Win32 {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|Win32.Build.0 = Release|Win32 - {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 - {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|x64.ActiveCfg = Release|x64 + {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|x64.Build.0 = Release|x64 {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Release|Win32.ActiveCfg = Release|Win32 {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Release|Win32.Build.0 = Release|Win32 {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Release|x64.ActiveCfg = Release|x64 {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Release|x64.Build.0 = Release|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|Win32.ActiveCfg = Debug|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|Win32.Build.0 = Debug|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|x64.ActiveCfg = Debug|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|x64.Build.0 = Debug|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|Win32.Build.0 = Release|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|x64.ActiveCfg = Release|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|x64.Build.0 = Release|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|Win32.Build.0 = Release|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|x64.ActiveCfg = Release|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|x64.Build.0 = Release|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|Win32.ActiveCfg = Release|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|Win32.Build.0 = Release|Win32 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|x64.ActiveCfg = Release|x64 + {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|x64.Build.0 = Release|x64 {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Debug|Win32.ActiveCfg = Debug|Win32 {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Debug|Win32.Build.0 = Debug|Win32 {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Debug|x64.ActiveCfg = Debug|x64 {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Debug|x64.Build.0 = Debug|x64 {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|Win32.ActiveCfg = Release|Win32 {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|Win32.Build.0 = Release|Win32 - {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 - {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|x64.Build.0 = PGInstrument|x64 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|x64.ActiveCfg = Release|x64 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|x64.Build.0 = Release|x64 {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|Win32.ActiveCfg = Release|Win32 {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|Win32.Build.0 = Release|Win32 - {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 - {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|x64.Build.0 = PGUpdate|x64 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|x64.ActiveCfg = Release|x64 + {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|x64.Build.0 = Release|x64 {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Release|Win32.ActiveCfg = Release|Win32 {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Release|Win32.Build.0 = Release|Win32 {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Release|x64.ActiveCfg = Release|x64 {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Release|x64.Build.0 = Release|x64 - {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|Win32.ActiveCfg = Debug|Win32 - {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|Win32.Build.0 = Debug|Win32 - {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|x64.ActiveCfg = Debug|x64 - {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|x64.Build.0 = Debug|x64 - {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32 - {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|Win32.Build.0 = PGInstrument|Win32 - {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|x64.ActiveCfg = PGInstrument|x64 - {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|x64.Build.0 = PGInstrument|x64 - {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32 - {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|Win32.Build.0 = PGUpdate|Win32 - {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|x64.ActiveCfg = PGUpdate|x64 - {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|x64.Build.0 = PGUpdate|x64 - {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|Win32.ActiveCfg = Release|Win32 - {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|Win32.Build.0 = Release|Win32 - {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|x64.ActiveCfg = Release|x64 - {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|x64.Build.0 = Release|x64 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Debug|Win32.ActiveCfg = Debug|Win32 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Debug|Win32.Build.0 = Debug|Win32 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Debug|x64.ActiveCfg = Debug|x64 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Debug|x64.Build.0 = Debug|x64 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGInstrument|Win32.Build.0 = Release|Win32 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGInstrument|x64.ActiveCfg = Release|x64 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGInstrument|x64.Build.0 = Release|x64 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGUpdate|Win32.Build.0 = Release|Win32 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGUpdate|x64.ActiveCfg = Release|x64 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGUpdate|x64.Build.0 = Release|x64 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Release|Win32.ActiveCfg = Release|Win32 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Release|Win32.Build.0 = Release|Win32 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Release|x64.ActiveCfg = Release|x64 + {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Release|x64.Build.0 = Release|x64 + {10615B24-73BF-4EFA-93AA-236916321317}.Debug|Win32.ActiveCfg = Debug|Win32 + {10615B24-73BF-4EFA-93AA-236916321317}.Debug|Win32.Build.0 = Debug|Win32 + {10615B24-73BF-4EFA-93AA-236916321317}.Debug|x64.ActiveCfg = Debug|x64 + {10615B24-73BF-4EFA-93AA-236916321317}.Debug|x64.Build.0 = Debug|x64 + {10615B24-73BF-4EFA-93AA-236916321317}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {10615B24-73BF-4EFA-93AA-236916321317}.PGInstrument|Win32.Build.0 = Release|Win32 + {10615B24-73BF-4EFA-93AA-236916321317}.PGInstrument|x64.ActiveCfg = Release|x64 + {10615B24-73BF-4EFA-93AA-236916321317}.PGInstrument|x64.Build.0 = Release|x64 + {10615B24-73BF-4EFA-93AA-236916321317}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {10615B24-73BF-4EFA-93AA-236916321317}.PGUpdate|Win32.Build.0 = Release|Win32 + {10615B24-73BF-4EFA-93AA-236916321317}.PGUpdate|x64.ActiveCfg = Release|x64 + {10615B24-73BF-4EFA-93AA-236916321317}.PGUpdate|x64.Build.0 = Release|x64 + {10615B24-73BF-4EFA-93AA-236916321317}.Release|Win32.ActiveCfg = Release|Win32 + {10615B24-73BF-4EFA-93AA-236916321317}.Release|Win32.Build.0 = Release|Win32 + {10615B24-73BF-4EFA-93AA-236916321317}.Release|x64.ActiveCfg = Release|x64 + {10615B24-73BF-4EFA-93AA-236916321317}.Release|x64.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/PCbuild/pginstrument.props b/PCbuild/pginstrument.props deleted file mode 100644 --- a/PCbuild/pginstrument.props +++ /dev/null @@ -1,38 +0,0 @@ - - - - $(SolutionDir)$(Platform)-pgi - - - <_ProjectFileVersion>10.0.30319.1 - $(OutDirPGI)\ - $(SolutionDir)$(PlatformName)-temp-pgi\$(ProjectName)\ - - - - MaxSpeed - OnlyExplicitInline - false - Size - true - false - true - true - - - false - - - true - false - PGInstrument - $(SolutionDir)$(Platform)-pgi\$(TargetName).pgd - $(OutDirPGI)\$(TargetName).lib - - - - - $(OutDirPGI) - - - diff --git a/PCbuild/pgupdate.props b/PCbuild/pgupdate.props deleted file mode 100644 --- a/PCbuild/pgupdate.props +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - <_ProjectFileVersion>10.0.30319.1 - $(SolutionDir)$(PlatformName)-pgo\ - - - - %(AdditionalManifestDependencies) - PGUpdate - $(OutDir)$(TargetName).lib - - - \ No newline at end of file diff --git a/PCbuild/pyd.props b/PCbuild/pyd.props deleted file mode 100644 --- a/PCbuild/pyd.props +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - <_ProjectFileVersion>10.0.30319.1 - false - false - .pyd - - - - Py_BUILD_CORE_MODULE;%(PreprocessorDefinitions) - MultiThreadedDLL - - - - - - - - - \ No newline at end of file diff --git a/PCbuild/pyd_d.props b/PCbuild/pyd_d.props deleted file mode 100644 --- a/PCbuild/pyd_d.props +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - <_ProjectFileVersion>10.0.30319.1 - false - false - false - .pyd - $(ProjectName)_d - - - - Disabled - Default - false - Py_BUILD_CORE_MODULE;%(PreprocessorDefinitions) - MultiThreadedDebugDLL - - - - - - - - - \ No newline at end of file diff --git a/PCbuild/pyexpat.vcxproj b/PCbuild/pyexpat.vcxproj --- a/PCbuild/pyexpat.vcxproj +++ b/PCbuild/pyexpat.vcxproj @@ -35,186 +35,33 @@ + <_ProjectFileVersion>10.0.30319.1 {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 + + .pyd + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - <_ProjectFileVersion>10.0.30319.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - - + - .\..\Modules\expat;%(AdditionalIncludeDirectories) + $(PySourcePath)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 - - diff --git a/PCbuild/pylauncher.vcxproj b/PCbuild/pylauncher.vcxproj --- a/PCbuild/pylauncher.vcxproj +++ b/PCbuild/pylauncher.vcxproj @@ -37,256 +37,32 @@ {7B2727B5-5A3F-40EE-A866-43A13CD31446} pylauncher + py + ClCompile + false + - + Application - true - MultiByte - - - Application - true - MultiByte - - - Application - false - true - MultiByte - - - Application - false - true - MultiByte - - - Application - false - true - MultiByte - - - Application - false - true - MultiByte - - - Application - false - true - MultiByte - - - Application - false - true MultiByte - + + ClCompile + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - py_d - - - py_d - - - py - - - py - - - py - - - py - - - py - - - py - - + - Level3 - Disabled _CONSOLE;%(PreprocessorDefinitions) - true - version.lib;%(AdditionalDependencies) - false - Console - $(OutDir)$(TargetName)$(TargetExt) - - - - - Level3 - Disabled - _CONSOLE;%(PreprocessorDefinitions) - - - true - version.lib;%(AdditionalDependencies) - false - Console - $(OutDir)$(TargetName)$(TargetExt) - - - - - Level3 - MaxSpeed - true - true - _CONSOLE;NDEBUG;%(PreprocessorDefinitions) - - - true - false - true - false - version.lib;%(AdditionalDependencies) - Console - - - - - Level3 - MaxSpeed - true - true - _CONSOLE;NDEBUG;%(PreprocessorDefinitions) - - - true - false - true - false - version.lib;%(AdditionalDependencies) - Console - - - - - Level3 - MaxSpeed - true - true - _CONSOLE;NDEBUG;%(PreprocessorDefinitions) - - - true - false - true - false - version.lib;%(AdditionalDependencies) - Console - - - - - Level3 - MaxSpeed - true - true - _CONSOLE;NDEBUG;%(PreprocessorDefinitions) - - - true - false - true - false - version.lib;%(AdditionalDependencies) - Console - - - - - Level3 - MaxSpeed - true - true - _CONSOLE;NDEBUG;%(PreprocessorDefinitions) - - - true - false - true - false - version.lib;%(AdditionalDependencies) - Console - - - - - Level3 - MaxSpeed - true - true - _CONSOLE;NDEBUG;%(PreprocessorDefinitions) - - - true - false - true - false version.lib;%(AdditionalDependencies) Console @@ -300,11 +76,6 @@ - - - {f0e0541e-f17d-430b-97c4-93adf0dd284e} - - diff --git a/PCbuild/pyproject.props b/PCbuild/pyproject.props --- a/PCbuild/pyproject.props +++ b/PCbuild/pyproject.props @@ -1,47 +1,46 @@  - + <_ProjectFileVersion>10.0.30319.1 - $(SolutionDir) - $(SolutionDir)$(PlatformName)-temp-$(Configuration)\$(ProjectName)\ - false + 10.0 + $(BuildPath) + $(SolutionDir)obj\$(ArchName)_$(Configuration)\$(ProjectName)\ + $(SolutionDir)obj\$(ArchName)\$(ProjectName)\ + $(ProjectName) + $(TargetName)$(PyDebugExt) + false + false + true - - <_ProjectFileVersion>10.0.30319.1 - <_PropertySheetDisplayName>amd64 - $(SolutionDir)amd64\ - $(SolutionDir)$(PlatformName)-temp-$(Configuration)\$(ProjectName)\ - - - python35$(PyDebugExt) - $(OutDir)python$(PyDebugExt).exe - $(OutDir)kill_python$(PyDebugExt).exe - ..\externals - $(externalsDir)\sqlite-3.8.3.1 - $(externalsDir)\bzip2-1.0.6 - $(externalsDir)\xz-5.0.5 - $(externalsDir)\nasm-2.11.06 - $(externalsDir)\openssl-1.0.1j - $(externalsDir)\tcl-8.6.1.0 - $(externalsDir)\tk-8.6.1.0 - $(externalsDir)\tix-8.4.3.4 - $(externalsDir)\tcltk + + + <_DebugPreprocessorDefinition>NDEBUG; + <_DebugPreprocessorDefinition Condition="$(Configuration) == 'Debug'">_DEBUG; + <_PlatformPreprocessorDefinition>_WIN32; + <_PlatformPreprocessorDefinition Condition="$(Platform) == 'x64'">_WIN64;_M_X64; + <_PydPreprocessorDefinition Condition="$(TargetExt) == '.pyd'">Py_BUILD_CORE_MODULE; + $(PySourcePath)Include;$(PySourcePath)PC;%(AdditionalIncludeDirectories) + WIN32;$(_PlatformPreprocessorDefinition)$(_DebugPreprocessorDefinition)$(_PydPreprocessorDefinition)%(PreprocessorDefinitions) + MaxSpeed - OnlyExplicitInline true - ..\Include; ..\PC;%(AdditionalIncludeDirectories) - _WIN32;%(PreprocessorDefinitions) true - - - MultiThreaded + + MultiThreadedDLL true Level3 ProgramDatabase Default + true + true + + + Disabled + false + MultiThreadedDebugDLL $(OutDir);%(AdditionalLibraryDirectories) @@ -50,51 +49,92 @@ Windows true true + true + LIBC;%(IgnoreSpecificDefaultLibraries) MachineX86 + MachineX64 + $(OutDir)$(TargetName).pgd + UseLinkTimeCodeGeneration + PGInstrument + PGUpdate + + true + true + true + - ..\PC;..\Include;%(AdditionalIncludeDirectories) + $(PySourcePath)PC;$(PySourcePath)Include;%(AdditionalIncludeDirectories) + $(_DebugPreprocessorDefinition)%(PreprocessorDefinitions) + 0x0409 + + $(_DebugPreprocessorDefinition)%(PreprocessorDefinitions) + true + true + Win32 + X64 + $(OutDir)wininst.tlb + + + - - - $(PyDllName) - - - $(PythonExe) - - - $(KillPythonExe) - - - $(externalsDir) - - - $(sqlite3Dir) - - - $(bz2Dir) - - - $(lzmaDir) - - - $(nasmDir) - - - $(opensslDir) - - - $(tclDir) - - - $(tkDir) - - - $(tixDir) - - - $(tcltkDir) - - + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/PCbuild/python.vcxproj b/PCbuild/python.vcxproj --- a/PCbuild/python.vcxproj +++ b/PCbuild/python.vcxproj @@ -36,44 +36,11 @@ {B11D750F-CD1F-4A96-85CE-E69A5C5259F9} + ClCompile + - - Application - false - MultiByte - - - Application - false - MultiByte - - - Application - false - NotSet - - - Application - false - MultiByte - - - Application - false - MultiByte - - - Application - false - MultiByte - - - Application - false - MultiByte - - + Application false MultiByte @@ -81,427 +48,23 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - <_ProjectFileVersion>10.0.30319.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - Link - Link - Link - Link - Link - Link - Link - Link - + - %(AdditionalIncludeDirectories) _CONSOLE;%(PreprocessorDefinitions) - true - MultiThreadedDLL - true - Default - - NDEBUG;%(PreprocessorDefinitions) - 0x0409 - - $(OutDir)python.exe Console 2000000 0x1d000000 - - echo @rem This script invokes the most recently built Python with all arguments> "$(SolutionDir)..\python.bat" -echo @rem passed through to the interpreter. This file is generated by the>> "$(SolutionDir)..\python.bat" -echo @rem build process and any changes *will* be thrown away by the next>> "$(SolutionDir)..\python.bat" -echo @rem rebuild.>> "$(SolutionDir)..\python.bat" -echo @rem This is only meant as a convenience for developing CPython>> "$(SolutionDir)..\python.bat" -echo @rem and using it outside of that context is ill-advised.>> "$(SolutionDir)..\python.bat" -echo @echo Running $(Configuration)^^^|$(Platform) interpreter...>> "$(SolutionDir)..\python.bat" -echo @"$(OutDir)python$(PyDebugExt).exe" %%*>> "$(SolutionDir)..\python.bat" - - - Creating convenience batch file for easily invoking the newly built interpreter. - - - $(SolutionDir)..\python.bat - - - $(OutDir)python$(PyDebugExt).exe;%(Inputs) - - - - - X64 - - - %(AdditionalIncludeDirectories) - _CONSOLE;%(PreprocessorDefinitions) - true - MultiThreadedDLL - true - Default - - - NDEBUG;%(PreprocessorDefinitions) - 0x0409 - - - $(OutDir)python.exe - Console - 2000000 - 0x1d000000 - - - echo @rem This script invokes the most recently built Python with all arguments> "$(SolutionDir)..\python.bat" -echo @rem passed through to the interpreter. This file is generated by the>> "$(SolutionDir)..\python.bat" -echo @rem build process and any changes *will* be thrown away by the next>> "$(SolutionDir)..\python.bat" -echo @rem rebuild.>> "$(SolutionDir)..\python.bat" -echo @rem This is only meant as a convenience for developing CPython>> "$(SolutionDir)..\python.bat" -echo @rem and using it outside of that context is ill-advised.>> "$(SolutionDir)..\python.bat" -echo @echo Running $(Configuration)^^^|$(Platform) interpreter...>> "$(SolutionDir)..\python.bat" -echo @"$(OutDir)python$(PyDebugExt).exe" %%*>> "$(SolutionDir)..\python.bat" - - - Creating convenience batch file for easily invoking the newly built interpreter. - - - $(SolutionDir)..\python.bat - - - $(OutDir)python$(PyDebugExt).exe;%(Inputs) - - - - - Disabled - false - %(AdditionalIncludeDirectories) - _CONSOLE;%(PreprocessorDefinitions) - MultiThreadedDebugDLL - true - Default - - - _DEBUG;%(PreprocessorDefinitions) - 0x0409 - ..\Include;%(AdditionalIncludeDirectories) - - - $(OutDir)python_d.exe - Console - 2000000 - 0x1d000000 - - - echo @rem This script invokes the most recently built Python with all arguments> "$(SolutionDir)..\python.bat" -echo @rem passed through to the interpreter. This file is generated by the>> "$(SolutionDir)..\python.bat" -echo @rem build process and any changes *will* be thrown away by the next>> "$(SolutionDir)..\python.bat" -echo @rem rebuild.>> "$(SolutionDir)..\python.bat" -echo @rem This is only meant as a convenience for developing CPython>> "$(SolutionDir)..\python.bat" -echo @rem and using it outside of that context is ill-advised.>> "$(SolutionDir)..\python.bat" -echo @echo Running $(Configuration)^^^|$(Platform) interpreter...>> "$(SolutionDir)..\python.bat" -echo @"$(OutDir)python$(PyDebugExt).exe" %%*>> "$(SolutionDir)..\python.bat" - - - Creating convenience batch file for easily invoking the newly built interpreter. - - - $(SolutionDir)..\python.bat - - - $(OutDir)python$(PyDebugExt).exe;%(Inputs) - - - - - X64 - - - Disabled - false - %(AdditionalIncludeDirectories) - _CONSOLE;%(PreprocessorDefinitions) - MultiThreadedDebugDLL - true - Default - - - _DEBUG;%(PreprocessorDefinitions) - 0x0409 - ..\Include;%(AdditionalIncludeDirectories) - - - $(OutDir)python_d.exe - Console - 4194304 - 0x1d000000 - - - echo @rem This script invokes the most recently built Python with all arguments> "$(SolutionDir)..\python.bat" -echo @rem passed through to the interpreter. This file is generated by the>> "$(SolutionDir)..\python.bat" -echo @rem build process and any changes *will* be thrown away by the next>> "$(SolutionDir)..\python.bat" -echo @rem rebuild.>> "$(SolutionDir)..\python.bat" -echo @rem This is only meant as a convenience for developing CPython>> "$(SolutionDir)..\python.bat" -echo @rem and using it outside of that context is ill-advised.>> "$(SolutionDir)..\python.bat" -echo @echo Running $(Configuration)^^^|$(Platform) interpreter...>> "$(SolutionDir)..\python.bat" -echo @"$(OutDir)python$(PyDebugExt).exe" %%*>> "$(SolutionDir)..\python.bat" - - - Creating convenience batch file for easily invoking the newly built interpreter. - - - $(SolutionDir)..\python.bat - - - $(OutDir)python$(PyDebugExt).exe;%(Inputs) - - - - - %(AdditionalIncludeDirectories) - _CONSOLE;%(PreprocessorDefinitions) - true - MultiThreadedDLL - true - Default - - - NDEBUG;%(PreprocessorDefinitions) - 0x0409 - - - $(OutDir)python.exe - Console - 2000000 - 0x1d000000 - - - - - echo @rem This script invokes the most recently built Python with all arguments> "$(SolutionDir)..\python.bat" -echo @rem passed through to the interpreter. This file is generated by the>> "$(SolutionDir)..\python.bat" -echo @rem build process and any changes *will* be thrown away by the next>> "$(SolutionDir)..\python.bat" -echo @rem rebuild.>> "$(SolutionDir)..\python.bat" -echo @rem This is only meant as a convenience for developing CPython>> "$(SolutionDir)..\python.bat" -echo @rem and using it outside of that context is ill-advised.>> "$(SolutionDir)..\python.bat" -echo @echo Running $(Configuration)^^^|$(Platform) interpreter...>> "$(SolutionDir)..\python.bat" -echo @"$(OutDir)python$(PyDebugExt).exe" %%*>> "$(SolutionDir)..\python.bat" - - - Creating convenience batch file for easily invoking the newly built interpreter. - - - $(SolutionDir)..\python.bat - - - $(OutDir)python$(PyDebugExt).exe;%(Inputs) - - - - - X64 - - - %(AdditionalIncludeDirectories) - _CONSOLE;%(PreprocessorDefinitions) - true - MultiThreadedDLL - true - Default - - - NDEBUG;%(PreprocessorDefinitions) - 0x0409 - - - $(OutDir)python.exe - Console - 2000000 - 0x1d000000 - - - MachineX64 - - - echo @rem This script invokes the most recently built Python with all arguments> "$(SolutionDir)..\python.bat" -echo @rem passed through to the interpreter. This file is generated by the>> "$(SolutionDir)..\python.bat" -echo @rem build process and any changes *will* be thrown away by the next>> "$(SolutionDir)..\python.bat" -echo @rem rebuild.>> "$(SolutionDir)..\python.bat" -echo @rem This is only meant as a convenience for developing CPython>> "$(SolutionDir)..\python.bat" -echo @rem and using it outside of that context is ill-advised.>> "$(SolutionDir)..\python.bat" -echo @echo Running $(Configuration)^^^|$(Platform) interpreter...>> "$(SolutionDir)..\python.bat" -echo @"$(OutDir)python$(PyDebugExt).exe" %%*>> "$(SolutionDir)..\python.bat" - - - Creating convenience batch file for easily invoking the newly built interpreter. - - - $(SolutionDir)..\python.bat - - - $(OutDir)python$(PyDebugExt).exe;%(Inputs) - - - - - %(AdditionalIncludeDirectories) - _CONSOLE;%(PreprocessorDefinitions) - true - MultiThreadedDLL - true - Default - - - NDEBUG;%(PreprocessorDefinitions) - 0x0409 - - - $(OutDir)python.exe - Console - 2000000 - 0x1d000000 - - - - - echo @rem This script invokes the most recently built Python with all arguments> "$(SolutionDir)..\python.bat" -echo @rem passed through to the interpreter. This file is generated by the>> "$(SolutionDir)..\python.bat" -echo @rem build process and any changes *will* be thrown away by the next>> "$(SolutionDir)..\python.bat" -echo @rem rebuild.>> "$(SolutionDir)..\python.bat" -echo @rem This is only meant as a convenience for developing CPython>> "$(SolutionDir)..\python.bat" -echo @rem and using it outside of that context is ill-advised.>> "$(SolutionDir)..\python.bat" -echo @echo Running $(Configuration)^^^|$(Platform) interpreter...>> "$(SolutionDir)..\python.bat" -echo @"$(OutDir)python$(PyDebugExt).exe" %%*>> "$(SolutionDir)..\python.bat" - - - Creating convenience batch file for easily invoking the newly built interpreter. - - - $(SolutionDir)..\python.bat - - - $(OutDir)python$(PyDebugExt).exe;%(Inputs) - - - - - X64 - - - %(AdditionalIncludeDirectories) - _CONSOLE;%(PreprocessorDefinitions) - true - MultiThreadedDLL - true - Default - - - NDEBUG;%(PreprocessorDefinitions) - 0x0409 - - - $(OutDir)python.exe - Console - 2000000 - 0x1d000000 - - - MachineX64 - - - echo @rem This script invokes the most recently built Python with all arguments> "$(SolutionDir)..\python.bat" -echo @rem passed through to the interpreter. This file is generated by the>> "$(SolutionDir)..\python.bat" -echo @rem build process and any changes *will* be thrown away by the next>> "$(SolutionDir)..\python.bat" -echo @rem rebuild.>> "$(SolutionDir)..\python.bat" -echo @rem This is only meant as a convenience for developing CPython>> "$(SolutionDir)..\python.bat" -echo @rem and using it outside of that context is ill-advised.>> "$(SolutionDir)..\python.bat" -echo @echo Running $(Configuration)^^^|$(Platform) interpreter...>> "$(SolutionDir)..\python.bat" -echo @"$(OutDir)python$(PyDebugExt).exe" %%*>> "$(SolutionDir)..\python.bat" - - - Creating convenience batch file for easily invoking the newly built interpreter. - - - $(SolutionDir)..\python.bat - - - $(OutDir)python$(PyDebugExt).exe;%(Inputs) - @@ -521,4 +84,4 @@ - \ No newline at end of file + diff --git a/PCbuild/python3dll.vcxproj b/PCbuild/python3dll.vcxproj --- a/PCbuild/python3dll.vcxproj +++ b/PCbuild/python3dll.vcxproj @@ -1,6 +1,14 @@  + + Debug + Win32 + + + Debug + x64 + PGInstrument Win32 @@ -30,144 +38,37 @@ {885D4898-D08D-4091-9C40-C700CFE3FC5A} python3dll Win32Proj + python3 + ClCompile + false + - - Makefile - - - Makefile - - - Makefile - true - - - Makefile - - - Makefile - - - Makefile + + DynamicLibrary - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - <_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 -"$(VSInstallDir)\VC\bin\nmake.exe" /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 -"$(VSInstallDir)\VC\bin\nmake.exe" /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 -"$(VSInstallDir)\VC\bin\nmake.exe" /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 -"$(VSInstallDir)\VC\bin\nmake.exe" /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 -"$(VSInstallDir)\VC\bin\nmake.exe" /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 -"$(VSInstallDir)\VC\bin\nmake.exe" /f python3.mak MACHINE=x64 OutDir=$(OutDir) clean - $(OutDir)python3.dll - $(NMakePreprocessorDefinitions) - $(NMakeIncludeSearchPath) - $(NMakeForcedIncludes) - $(NMakeAssemblySearchPath) - $(NMakeForcedUsingAssemblies) + <_Machine>X86 + <_Machine Condition="$(Platform) == 'x64'">X64 + + $(OutDir)$(TargetName).lib + + + lib /def:"$(IntDir)python3stub.def" /out:"$(OutDir)$(TargetName).lib" /MACHINE:$(_Machine) + Rebuilding $(TargetName).lib + $(OutDir)$(TargetName).lib + @@ -181,4 +82,28 @@ + + + + + + <_Pattern>^[\w.]+=.+?\.([^ ]+).*$ + <_Sub>$1 + + + <_Lines Include="LIBRARY "python$(MajorVersionNumber)$(MinorVersionNumber)"" /> + <_Lines Include="EXPORTS" /> + <_Symbols Include="@(DefLines)" Condition="$([System.Text.RegularExpressions.Regex]::IsMatch(`%(Identity)`, `$(_Pattern)`))"> + $([System.Text.RegularExpressions.Regex]::Replace(`%(Identity)`, `$(_Pattern)`, `$(_Sub)`)) + + <_Lines Include="@(_Symbols->'%(Symbol)')" /> + + + + + + + + + \ No newline at end of file diff --git a/PCbuild/pythoncore.vcxproj b/PCbuild/pythoncore.vcxproj --- a/PCbuild/pythoncore.vcxproj +++ b/PCbuild/pythoncore.vcxproj @@ -38,405 +38,48 @@ {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} pythoncore + - - DynamicLibrary - false - - - DynamicLibrary - false - - - DynamicLibrary - false - NotSet - - - DynamicLibrary - false - - - DynamicLibrary - false - - - DynamicLibrary - false - - - DynamicLibrary - false - - + DynamicLibrary false - + + ClCompile + true + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - <_ProjectFileVersion>10.0.30319.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - $(PyDllName) - $(PyDllName) - $(PyDllName) - $(PyDllName) - $(PyDllName) - $(PyDllName) - $(PyDllName) - $(PyDllName) + $(PyDllName) - + + Link + + /Zm200 %(AdditionalOptions) - ..\Python;..\Modules\zlib;%(AdditionalIncludeDirectories) - _USRDLL;Py_BUILD_CORE;Py_ENABLE_SHARED;WIN32;%(PreprocessorDefinitions) - MultiThreadedDLL + $(PySourcePath)Python;$(PySourcePath)Modules\zlib;%(AdditionalIncludeDirectories) + _USRDLL;Py_BUILD_CORE;Py_ENABLE_SHARED;%(PreprocessorDefinitions) - - NDEBUG;%(PreprocessorDefinitions) - 0x0409 - ..\Include;%(AdditionalIncludeDirectories) - - - Generate build information... - "$(SolutionDir)make_buildinfo.exe" Release "$(IntDir)\" - $(IntDir)getbuildinfo.o;ws2_32.lib;%(AdditionalDependencies) - $(OutDir)$(PyDllName).dll - libc;%(IgnoreSpecificDefaultLibraries) 0x1e000000 - - $(KillPythonExe) -IF %ERRORLEVEL% NEQ 0 ( - echo kill_python: war^ning: could not kill running Pythons, exit code %ERRORLEVEL% - exit /b 0 -) - - - Killing any running $(PythonExe) instances... - - - - - X64 - - - /Zm200 %(AdditionalOptions) - ..\Python;..\Modules\zlib;%(AdditionalIncludeDirectories) - _USRDLL;Py_BUILD_CORE;Py_ENABLE_SHARED;WIN32;%(PreprocessorDefinitions) - MultiThreadedDLL - - - NDEBUG;%(PreprocessorDefinitions) - 0x0409 - ..\Include;%(AdditionalIncludeDirectories) - - + + "$(OutDir)make_buildinfo$(PyDebugExt).exe" Debug "$(IntDir.TrimEnd(`\`))" + "$(OutDir)make_buildinfo$(PyDebugExt).exe" Release "$(IntDir.TrimEnd(`\`))" Generate build information... - "$(SolutionDir)make_buildinfo.exe" Release "$(IntDir)\" - - - $(IntDir)getbuildinfo.o;ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1e000000 - - - $(KillPythonExe) -IF %ERRORLEVEL% NEQ 0 ( - echo kill_python: war^ning: could not kill running Pythons, exit code %ERRORLEVEL% - exit /b 0 -) - - - Killing any running $(PythonExe) instances... - - - - - /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;ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1e000000 - - - $(KillPythonExe) -IF %ERRORLEVEL% NEQ 0 ( - echo kill_python: war^ning: could not kill running Pythons, exit code %ERRORLEVEL% - exit /b 0 -) - - - Killing any running $(PythonExe) instances... - - - - - 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;ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1e000000 - - - $(KillPythonExe) -IF %ERRORLEVEL% NEQ 0 ( - echo kill_python: war^ning: could not kill running Pythons, exit code %ERRORLEVEL% - exit /b 0 -) - - - Killing any running $(PythonExe) instances... - - - - - /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;ws2_32.lib;%(AdditionalDependencies) - $(OutDir)$(PyDllName).dll - libc;%(IgnoreSpecificDefaultLibraries) - 0x1e000000 - - - $(KillPythonExe) -IF %ERRORLEVEL% NEQ 0 ( - echo kill_python: war^ning: could not kill running Pythons, exit code %ERRORLEVEL% - exit /b 0 -) - - - Killing any running $(PythonExe) instances... - - - - - 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;ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1e000000 - MachineX64 - - - $(KillPythonExe) -IF %ERRORLEVEL% NEQ 0 ( - echo kill_python: war^ning: could not kill running Pythons, exit code %ERRORLEVEL% - exit /b 0 -) - - - Killing any running $(PythonExe) instances... - - - - - /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;ws2_32.lib;%(AdditionalDependencies) - $(OutDir)$(PyDllName).dll - libc;%(IgnoreSpecificDefaultLibraries) - 0x1e000000 - - - $(KillPythonExe) -IF %ERRORLEVEL% NEQ 0 ( - echo kill_python: war^ning: could not kill running Pythons, exit code %ERRORLEVEL% - exit /b 0 -) - - - Killing any running $(PythonExe) instances... - - - - - 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;ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1e000000 - MachineX64 - - - $(KillPythonExe) -IF %ERRORLEVEL% NEQ 0 ( - echo kill_python: war^ning: could not kill running Pythons, exit code %ERRORLEVEL% - exit /b 0 -) - - - Killing any running $(PythonExe) instances... - + $(IntDir)getbuildinfo.o + false + @@ -754,20 +397,12 @@ - - {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/pythonw.vcxproj b/PCbuild/pythonw.vcxproj --- a/PCbuild/pythonw.vcxproj +++ b/PCbuild/pythonw.vcxproj @@ -36,296 +36,30 @@ {F4229CC3-873C-49AE-9729-DD308ED4CD4A} + ClCompile + false + - - 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 - - - - - 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 diff --git a/PCbuild/pywlauncher.vcxproj b/PCbuild/pywlauncher.vcxproj --- a/PCbuild/pywlauncher.vcxproj +++ b/PCbuild/pywlauncher.vcxproj @@ -37,200 +37,36 @@ {1D4B18D3-7C12-4ECB-9179-8531FF876CE6} pywlauncher + pyw + ClCompile + false + - + Application - true - Unicode - - - Application - true - Unicode - - - Application - false - true - Unicode - - - Application - false - true - Unicode - - - Unicode - - Unicode - + + ClCompile + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - pyw_d - - - pyw_d - - - pyw - - - pyw - - - pyw - - - pyw - - + - Level3 - Disabled _WINDOWS;%(PreprocessorDefinitions) - true - version.lib;%(AdditionalDependencies) - false - Windows - $(OutDir)$(TargetName)$(TargetExt) - - - - - Level3 - Disabled - _WINDOWS;%(PreprocessorDefinitions) - - - true - version.lib;%(AdditionalDependencies) - false - Windows - $(OutDir)$(TargetName)$(TargetExt) - - - - - Level3 - MaxSpeed - true - true - _WINDOWS;NDEBUG;%(PreprocessorDefinitions) - - - true - false - true - false version.lib;%(AdditionalDependencies) Windows - - - Level3 - MaxSpeed - true - true - _WINDOWS;NDEBUG;%(PreprocessorDefinitions) - - - true - false - true - false - version.lib;%(AdditionalDependencies) - Windows - - - - - version.lib;%(AdditionalDependencies) - - - _WINDOWS;NDEBUG;%(PreprocessorDefinitions) - - - - - version.lib;%(AdditionalDependencies) - - - _WINDOWS;NDEBUG;%(PreprocessorDefinitions) - - - - - version.lib;%(AdditionalDependencies) - - - _WINDOWS;NDEBUG;_WIN64;_M_X64;%(PreprocessorDefinitions) - - - - - version.lib;%(AdditionalDependencies) - - - _WINDOWS;NDEBUG;_WIN64;_M_X64;%(PreprocessorDefinitions) - - @@ -240,11 +76,6 @@ - - - {f0e0541e-f17d-430b-97c4-93adf0dd284e} - - diff --git a/PCbuild/release.props b/PCbuild/release.props deleted file mode 100644 --- a/PCbuild/release.props +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - <_ProjectFileVersion>10.0.30319.1 - - - - NDEBUG;%(PreprocessorDefinitions) - - - - - $(PyDebugExt) - - - $(TclDebugExt) - - - \ No newline at end of file diff --git a/PCbuild/select.vcxproj b/PCbuild/select.vcxproj --- a/PCbuild/select.vcxproj +++ b/PCbuild/select.vcxproj @@ -37,188 +37,33 @@ {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 + + .pyd + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + <_ProjectFileVersion>10.0.30319.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - + ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) 0x1D110000 - - - X64 - - - ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1D110000 - - - - - ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1D110000 - - - - - X64 - - - ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1D110000 - - - - - ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1D110000 - - - - - X64 - - - ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1D110000 - MachineX64 - - - - - ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1D110000 - - - - - X64 - - - ws2_32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1D110000 - MachineX64 - - diff --git a/PCbuild/sqlite3.props b/PCbuild/sqlite3.props deleted file mode 100644 --- a/PCbuild/sqlite3.props +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - <_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 --- a/PCbuild/sqlite3.vcxproj +++ b/PCbuild/sqlite3.vcxproj @@ -37,188 +37,31 @@ {A1A295E5-463C-437F-81CA-1F32367685DA} sqlite3 - Win32Proj + .pyd + false + - - 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 - - - - - %(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) + SQLITE_API=__declspec(dllexport);%(PreprocessorDefinitions) + Level1 @@ -228,12 +71,6 @@ - - - {6de10744-e396-40a5-b4e2-1b69aa7c8d31} - false - - diff --git a/PCbuild/ssl.vcxproj b/PCbuild/ssl.vcxproj deleted file mode 100644 --- a/PCbuild/ssl.vcxproj +++ /dev/null @@ -1,251 +0,0 @@ - - - - - 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 - -path %PATH%;$(SolutionDir)$(nasmDir) -cd "$(SolutionDir)$(opensslDir)" -copy /Y crypto\buildinf_x86.h crypto\buildinf.h -copy /Y crypto\opensslconf_x86.h crypto\opensslconf.h -nmake /nologo -f "ms\nt.mak" - - - echo OpenSSL must be cleaned manually if you want to rebuild it. - - $(NMakePreprocessorDefinitions) - $(NMakeIncludeSearchPath) - $(NMakeForcedIncludes) - $(NMakeAssemblySearchPath) - $(NMakeForcedUsingAssemblies) - -path %PATH%;$(SolutionDir)$(nasmDir) -cd "$(SolutionDir)$(opensslDir)" -nasm -f win64 -DNEAR -Ox -g ms\\uptable.asm || echo nasm failed! && exit -copy /Y crypto\buildinf_amd64.h crypto\buildinf.h -copy /Y crypto\opensslconf_amd64.h crypto\opensslconf.h -nmake /nologo -f "ms\nt64.mak" - - - echo OpenSSL must be cleaned manually if you want to rebuild it. - - $(NMakePreprocessorDefinitions) - $(NMakeIncludeSearchPath) - $(NMakeForcedIncludes) - $(NMakeAssemblySearchPath) - $(NMakeForcedUsingAssemblies) - -path %PATH%;$(SolutionDir)$(nasmDir) -cd "$(SolutionDir)$(opensslDir)" -copy /Y crypto\buildinf_x86.h crypto\buildinf.h -copy /Y crypto\opensslconf_x86.h crypto\opensslconf.h -nmake /nologo -f "ms\nt.mak" - - - echo OpenSSL must be cleaned manually if you want to rebuild it. - - $(NMakePreprocessorDefinitions) - $(NMakeIncludeSearchPath) - $(NMakeForcedIncludes) - $(NMakeAssemblySearchPath) - $(NMakeForcedUsingAssemblies) - -path %PATH%;$(SolutionDir)$(nasmDir) -cd "$(SolutionDir)$(opensslDir)" -nasm -f win64 -DNEAR -Ox -g ms\\uptable.asm || echo nasm failed! && exit -copy /Y crypto\buildinf_amd64.h crypto\buildinf.h -copy /Y crypto\opensslconf_amd64.h crypto\opensslconf.h -nmake /nologo -f "ms\nt64.mak" - - - echo OpenSSL must be cleaned manually if you want to rebuild it. - - $(NMakePreprocessorDefinitions) - $(NMakeIncludeSearchPath) - $(NMakeForcedIncludes) - $(NMakeAssemblySearchPath) - $(NMakeForcedUsingAssemblies) - -path %PATH%;$(SolutionDir)$(nasmDir) -cd "$(SolutionDir)$(opensslDir)" -copy /Y crypto\buildinf_x86.h crypto\buildinf.h -copy /Y crypto\opensslconf_x86.h crypto\opensslconf.h -nmake /nologo -f "ms\nt.mak" - - - echo OpenSSL must be cleaned manually if you want to rebuild it. - - $(NMakePreprocessorDefinitions) - $(NMakeIncludeSearchPath) - $(NMakeForcedIncludes) - $(NMakeAssemblySearchPath) - $(NMakeForcedUsingAssemblies) - -path %PATH%;$(SolutionDir)$(nasmDir) -cd "$(SolutionDir)$(opensslDir)" -nasm -f win64 -DNEAR -Ox -g ms\\uptable.asm || echo nasm failed! && exit -copy /Y crypto\buildinf_amd64.h crypto\buildinf.h -copy /Y crypto\opensslconf_amd64.h crypto\opensslconf.h -nmake /nologo -f "ms\nt64.mak" - - - echo OpenSSL must be cleaned manually if you want to rebuild it. - - $(NMakePreprocessorDefinitions) - $(NMakeIncludeSearchPath) - $(NMakeForcedIncludes) - $(NMakeAssemblySearchPath) - $(NMakeForcedUsingAssemblies) - -path %PATH%;$(SolutionDir)$(nasmDir) -cd "$(SolutionDir)$(opensslDir)" -copy /Y crypto\buildinf_x86.h crypto\buildinf.h -copy /Y crypto\opensslconf_x86.h crypto\opensslconf.h -nmake /nologo -f "ms\nt.mak" - - - echo OpenSSL must be cleaned manually if you want to rebuild it. - - $(NMakePreprocessorDefinitions) - $(NMakeIncludeSearchPath) - $(NMakeForcedIncludes) - $(NMakeAssemblySearchPath) - $(NMakeForcedUsingAssemblies) - -path %PATH%;$(SolutionDir)$(nasmDir) -cd "$(SolutionDir)$(opensslDir)" -nasm -f win64 -DNEAR -Ox -g ms\\uptable.asm || echo nasm failed! && exit -copy /Y crypto\buildinf_amd64.h crypto\buildinf.h -copy /Y crypto\opensslconf_amd64.h crypto\opensslconf.h -nmake /nologo -f "ms\nt64.mak" - - - echo OpenSSL must be cleaned manually if you want to rebuild it. - - $(NMakePreprocessorDefinitions) - $(NMakeIncludeSearchPath) - $(NMakeForcedIncludes) - $(NMakeAssemblySearchPath) - $(NMakeForcedUsingAssemblies) - - - - - - - \ No newline at end of file diff --git a/PCbuild/ssleay.vcxproj b/PCbuild/ssleay.vcxproj new file mode 100644 --- /dev/null +++ b/PCbuild/ssleay.vcxproj @@ -0,0 +1,119 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + PGInstrument + Win32 + + + PGInstrument + x64 + + + PGUpdate + Win32 + + + PGUpdate + x64 + + + Debug + x64 + + + Release + x64 + + + + {10615B24-73BF-4EFA-93AA-236916321317} + ssleay + + + + + + + + StaticLibrary + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/PCbuild/tcl.vcxproj b/PCbuild/tcl.vcxproj --- a/PCbuild/tcl.vcxproj +++ b/PCbuild/tcl.vcxproj @@ -5,9 +5,9 @@ Debug Win32 - - Debug - x64 + + Release + Win32 PGInstrument @@ -25,9 +25,9 @@ PGUpdate x64 - - Release - Win32 + + Debug + x64 Release @@ -36,140 +36,50 @@ {B5FD6F1D-129E-4BFF-9340-03606FAC7283} - tcl - MakeFileProj + + - + + + Makefile - NotSet + $(tcltkDir) + $(OutDir)bin\$(tclDLLName) - - Makefile - NotSet + + + + + + + + + symbols + INSTALLDIR="$(OutDir.TrimEnd(`\`))" INSTALL_DIR="$(OutDir.TrimEnd(`\`))" + DEBUGFLAGS="-wd4456 -wd4457 -wd4458 -wd4459 -wd4996" + setlocal +@(ExpectedOutputs->'if not exist "%(FullPath)" goto build',' +') +goto :eof +:build +set VCINSTALLDIR=$(VCInstallDir) +cd /D "$(tclDir)win" +nmake -f makefile.vc MACHINE=$(TclMachine) OPTS=$(TclOpts) $(TclDirs) $(TclVersions) $(DebugFlags) core shell dlls +nmake -f makefile.vc MACHINE=$(TclMachine) OPTS=$(TclOpts) $(TclDirs) $(TclVersions) $(DebugFlags) install-binaries install-libraries + - - Makefile - NotSet - - - Makefile - NotSet - - - Makefile - NotSet - - - Makefile - NotSet - - - Makefile - NotSet - - - Makefile - NotSet - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - <_ProjectFileVersion>10.0.30319.1 - -IF EXIST $(tcltkDir)\include\tcl.h ( - IF EXIST $(tcltkDir)\bin\$(tclDLLName) ( - IF EXIST $(OutDir)$(tclDLLName) ( - echo Tcl is already built and available. - exit /b 0 - ) ELSE ( - echo Copying tcl dll to $(OutDir) - xcopy $(tcltkDir)\bin\$(tclDLLName) $(OutDir) - exit /b 0 - ) - ) -) -IF NOT EXIST $(tclDir) ( - echo error: $(tclDir) doesn't exist. - exit 1 -) - -IF "$(Platform)" EQU "Win32" set TclMachine=IX86 -IF "$(Platform)" EQU "x64" set TclMachine=AMD64 - -IF "$(Configuration)" EQU "Debug" ( - set TclOpts=symbols -) ELSE ( - set TclOpts= -) - -cd $(tclDir)\win - -nmake -f makefile.vc MACHINE=%TclMachine% OPTS=%TclOpts% core shell dlls && nmake -f makefile.vc MACHINE=%TclMachine% OPTS=%TclOpts% INSTALLDIR=$(SolutionDir)$(tcltkDir) install-binaries install-libraries && xcopy /y $(SolutionDir)$(tcltkDir)\bin\$(tclDLLName) $(OutDir) - - del $(OutDir)$(tclDLLName) -echo Tcl must be cleaned manually if you want to rebuild it. - - - - - - - + + + + + \ No newline at end of file diff --git a/PCbuild/tcltk.props b/PCbuild/tcltk.props --- a/PCbuild/tcltk.props +++ b/PCbuild/tcltk.props @@ -1,30 +1,42 @@  - - - Dummy value to avoid patching Tcl/Tk's makefile.vc - tcl86t$(TclDebugExt).dll - tk86t$(TclDebugExt).dll - tix84$(TclDebugExt).dll - $(tcltkDir)\lib\tcl86t$(TclDebugExt).lib;$(tcltkDir)\lib\tk86t$(TclDebugExt).lib + + + 8 + 6 + 1 + 8 + 6 + 1 + 8 + 4 + 3 + 4 + $(ExternalsDir)tcl-$(TclMajorVersion).$(TclMinorVersion).$(TclPatchLevel).0\ + $(ExternalsDir)tk-$(TkMajorVersion).$(TkMinorVersion).$(TkPatchLevel).0\ + $(ExternalsDir)tix-$(TixMajorVersion).$(TixMinorVersion).$(TixPatchLevel).$(TixRevision)\ + $(ExternalsDir)tcltk\ + $(ExternalsDir)tcltk64\ + tcl$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).dll + tcl$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).lib + tclsh$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).exe + tk$(TkMajorVersion)$(TkMinorVersion)t$(TclDebugExt).dll + tk$(TkMajorVersion)$(TkMinorVersion)t$(TclDebugExt).lib + tix$(TixMajorVersion)$(TixMinorVersion)$(TclDebugExt).dll + $(tcltkDir)lib\tix$(TixMajorVersion).$(TixMinorVersion).$(TixPatchLevel)\$(tixDLLName) + $(tcltkDir)lib\tcl$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).lib;$(tcltkDir)lib\tk$(TkMajorVersion)$(TkMinorVersion)t$(TclDebugExt).lib + IX86 + AMD64 + TCL_MAJOR_VERSION=$(TclMajorVersion) TCL_MINOR_VERSION=$(TclMinorVersion) TCL_PATCH_LEVEL=$(TclPatchLevel) + TCL_MAJOR=$(TclMajorVersion) TCL_MINOR=$(TclMinorVersion) TCL_PATCH=$(TclPatchLevel) + TK_MAJOR_VERSION=$(TkMajorVersion) TK_MINOR_VERSION=$(TkMinorVersion) TK_PATCH_LEVEL=$(TkPatchLevel) + + Release + Debug + $(BuildDirTop)_$(TclMachine) + $(BuildDirTop)_VC13 + $(BuildDirTop)_VC12 + $(BuildDirTop)_VC11 + $(BuildDirTop)_VC10 - - - - $(MSDEVDIR) - true - - - $(tclDLLName) - - - $(tkDLLName) - - - $(tixDLLName) - - - $(tcltkLib) - - \ No newline at end of file diff --git a/PCbuild/tix.vcxproj b/PCbuild/tix.vcxproj --- a/PCbuild/tix.vcxproj +++ b/PCbuild/tix.vcxproj @@ -5,9 +5,9 @@ Debug Win32 - - Debug - x64 + + Release + Win32 PGInstrument @@ -25,9 +25,9 @@ PGUpdate x64 - - Release - Win32 + + Debug + x64 Release @@ -37,135 +37,58 @@ {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555} tix - MakeFileProj + + - + + + Makefile - NotSet + $(tcltkDir) + $(tixDLLPath) - - Makefile - NotSet + + + + + + + + + msvcrt + symbols,msvcrt + BUILDDIRTOP="$(BuildDirTop)" TCL_DIR="$(tclDir.TrimEnd(`\`))" TK_DIR="$(tkDir.TrimEnd(`\`))" INSTALL_DIR="$(OutDir.TrimEnd(`\`))" + DEBUG=1 NODEBUG=0 TCL_DBGX=g DEBUGFLAGS="-wd4456 -wd4457 -wd4458 -wd4459 -wd4996" + DEBUG=0 NODEBUG=1 + setlocal +@(ExpectedOutputs->'if not exist "%(FullPath)" goto build',' +') +goto :eof +:build +set VCINSTALLDIR=$(VCInstallDir) +cd /D "$(tixDir)win" +nmake /nologo -f makefile.vc MACHINE=$(TclMachine) $(DebugFlags) $(TclShortVersions) $(TixDirs) all install + + rmdir /q/s "$(OutDir.TrimEnd(`\`))" - - Makefile - NotSet - - - Makefile - NotSet - - - Makefile - NotSet - - - Makefile - NotSet - - - Makefile - NotSet - - - Makefile - NotSet - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - <_ProjectFileVersion>10.0.30319.1 - -IF EXIST $(tcltkDir)\lib\tix8.4.3\$(tixDLLName) ( - echo Tix is already built and available. - exit /b 0 -) - -IF NOT EXIST $(tixDir) ( - echo error: $(tixDir) doesn't exist. - exit 1 -) - -IF "$(Platform)" EQU "Win32" set TclMachine=IX86 -IF "$(Platform)" EQU "x64" set TclMachine=AMD64 - -IF "$(Configuration)" EQU "Debug" ( - set TixDebug=1 -) ELSE ( - set TixDebug=0 -) - -cd $(tixDir)\win -nmake -f python.mak MACHINE=%TclMachine% DEBUG=%TixDebug% TCL_DIR=$(SolutionDir)$(tclDir) TK_DIR=$(SolutionDir)$(tkDir) all && nmake -f python.mak MACHINE=%TclMachine% DEBUG=%TixDebug% TCL_DIR=$(SolutionDir)$(tclDir) TK_DIR=$(SolutionDir)$(tkDir) INSTALL_DIR=$(SolutionDir)$(tcltkDir) install - - echo Tix must be cleaned manually if you want to rebuild it. - - - + {b5fd6f1d-129e-4bff-9340-03606fac7283} + false {7e85eccf-a72c-4da4-9e52-884508e80ba1} + false + - - + + + + + + \ No newline at end of file diff --git a/PCbuild/tk.vcxproj b/PCbuild/tk.vcxproj --- a/PCbuild/tk.vcxproj +++ b/PCbuild/tk.vcxproj @@ -5,9 +5,9 @@ Debug Win32 - - Debug - x64 + + Release + Win32 PGInstrument @@ -25,9 +25,9 @@ PGUpdate x64 - - Release - Win32 + + Debug + x64 Release @@ -37,142 +37,55 @@ {7E85ECCF-A72C-4DA4-9E52-884508E80BA1} tk - MakeFileProj + + - + + + Makefile - NotSet + $(tcltkDir) + $(OutDir)bin\$(tkDLLName) - - Makefile - NotSet + + + + + + + + + msvcrt + symbols,msvcrt + TCLDIR="$(tclDir.TrimEnd(`\`))" INSTALLDIR="$(OutDir.TrimEnd(`\`))" + DEBUGFLAGS="-wd4456 -wd4457 -wd4458 -wd4459 -wd4996" + setlocal +@(ExpectedOutputs->'if not exist "%(FullPath)" goto build',' +') +goto :eof +:build +set VCINSTALLDIR=$(VCInstallDir) +cd /D "$(tkDir)win" +nmake /nologo -f makefile.vc RC=rc MACHINE=$(TclMachine) OPTS=$(TkOpts) $(TkDirs) $(TkVersions) $(DebugFlags) all +nmake /nologo -f makefile.vc RC=rc MACHINE=$(TclMachine) OPTS=$(TkOpts) $(TkDirs) $(TkVersions) $(DebugFlags) install-binaries install-libraries + - - Makefile - NotSet - - - Makefile - NotSet - - - Makefile - NotSet - - - Makefile - NotSet - - - Makefile - NotSet - - - Makefile - NotSet - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - <_ProjectFileVersion>10.0.30319.1 - -IF EXIST $(tcltkDir)\include\tk.h ( - IF EXIST $(tcltkDir)\bin\$(tkDLLName) ( - IF EXIST $(OutDir)$(tkDLLName) ( - echo Tk is already built and available. - exit /b 0 - ) ELSE ( - echo Copying tk dll to $(OutDir) - xcopy $(tcltkDir)\bin\$(tkDLLName) $(OutDir) - exit /b 0 - ) - ) -) - -IF NOT EXIST $(tkDir) ( - echo error: $(tkDir) doesn't exist. - exit 1 -) - -IF "$(Platform)" EQU "Win32" set TclMachine=IX86 -IF "$(Platform)" EQU "x64" set TclMachine=AMD64 - -IF "$(Configuration)" EQU "Debug" ( - set TclOpts=symbols -) ELSE ( - set TclOpts= -) - -cd $(tkDir)\win - -nmake -f makefile.vc MACHINE=%TclMachine% OPTS=%TclOpts% TCLDIR=$(SolutionDir)$(tclDir) all && nmake -f makefile.vc MACHINE=%TclMachine% OPTS=%TclOpts% TCLDIR=$(SolutionDir)$(tclDir) INSTALLDIR=$(SolutionDir)$(tcltkDir) install-binaries install-libraries && xcopy /y $(SolutionDir)$(tcltkDir)\bin\$(tkDLLName) $(OutDir) - - del $(OutDir)$(tkDLLName) -echo Tk must be cleaned manually if you want to rebuild it. - - - {b5fd6f1d-129e-4bff-9340-03606fac7283} + false - - + + + + + + \ No newline at end of file diff --git a/PCbuild/unicodedata.vcxproj b/PCbuild/unicodedata.vcxproj --- a/PCbuild/unicodedata.vcxproj +++ b/PCbuild/unicodedata.vcxproj @@ -39,170 +39,31 @@ unicodedata Win32Proj + - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - + DynamicLibrary NotSet + + .pyd + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + <_ProjectFileVersion>10.0.30319.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - + 0x1D120000 - - - X64 - - - 0x1D120000 - - - - - 0x1D120000 - - - - - X64 - - - 0x1D120000 - - - - - 0x1D120000 - - - - - X64 - - - 0x1D120000 - MachineX64 - - - - - 0x1D120000 - - - - - X64 - - - 0x1D120000 - MachineX64 - - diff --git a/PCbuild/vs9to10.py b/PCbuild/vs9to10.py deleted file mode 100644 --- a/PCbuild/vs9to10.py +++ /dev/null @@ -1,56 +0,0 @@ -#Run this file after automatic conversion of the VisualStudio 2008 solution by VisualStudio 2010. -#This can be done whenever the 2008 solution changes. -#It will make the necessary cleanup and updates to the vcxproj files -#the .props files need to be maintained by hand if the .vsprops files change - -from __future__ import with_statement -import sys -import os -import os.path - -def vs9to10(src, dest): - for name in os.listdir(src): - path, ext = os.path.splitext(name) - if ext.lower() not in ('.vcxproj',): - continue - - filename = os.path.normpath(os.path.join(src, name)) - destname = os.path.normpath(os.path.join(dest, name)) - print("%s -> %s" % (filename, destname)) - - lines = [] - lastline = b"" - importgroup = False - with open(filename, 'rb') as fin: - for line in fin: - #remove redundant linker output info - if b"" in line: - continue - if b"" in line: - continue - if b"" in line and b"" in line: - continue - - #add new property sheet to the pythoncore - if importgroup and "pythoncore" in name.lower(): - if b"" in line: - if b"debug.props" in lastline: - lines.append(b' \r\n') - elif b"pythoncore" not in lastline: - lines.append(b' \r\n') - if b"" in line: - importgroup = False - lines.append(line) - lastline = line - with open(destname, 'wb') as fout: - for line in lines: - fout.write(line) - -if __name__ == "__main__": - src = "." if len(sys.argv) < 2 else sys.argv[1] - name = os.path.basename(os.path.abspath(src)) - dest = os.path.abspath(os.path.join(src, "..", name + "Upd")) - os.makedirs(dest) - vs9to10(src, dest) diff --git a/PCbuild/vs9to8.py b/PCbuild/vs9to8.py deleted file mode 100644 --- a/PCbuild/vs9to8.py +++ /dev/null @@ -1,34 +0,0 @@ -from __future__ import with_statement -import os - -def vs9to8(src, dest): - for name in os.listdir(src): - path, ext = os.path.splitext(name) - if ext.lower() not in ('.sln', '.vcproj', '.vsprops'): - continue - - filename = os.path.normpath(os.path.join(src, name)) - destname = os.path.normpath(os.path.join(dest, name)) - print("%s -> %s" % (filename, destname)) - - with open(filename, 'rU') as fin: - lines = fin.read() - lines = lines.replace('Version="9,00"', 'Version="8.00"') - lines = lines.replace('Version="9.00"', 'Version="8.00"') - lines = lines.replace('Format Version 10.00', 'Format Version 9.00') - lines = lines.replace('Visual Studio 2008', 'Visual Studio 2005') - - lines = lines.replace('wininst-9.0', 'wininst-8.0') - lines = lines.replace('..\\', '..\\..\\') - lines = lines.replace('..\\..\\..\\..\\', '..\\..\\..\\') - - # Bah. VS8.0 does not expand macros in file names. - # Replace them here. - lines = lines.replace('$(sqlite3Dir)', '..\\..\\..\\sqlite-3.6.21') - - with open(destname, 'wb') as fout: - lines = lines.replace("\n", "\r\n").encode() - fout.write(lines) - -if __name__ == "__main__": - vs9to8(src=".", dest="../PC/VS8.0") diff --git a/PCbuild/winsound.vcxproj b/PCbuild/winsound.vcxproj --- a/PCbuild/winsound.vcxproj +++ b/PCbuild/winsound.vcxproj @@ -39,170 +39,31 @@ winsound Win32Proj + - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - + DynamicLibrary NotSet + + .pyd + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + <_ProjectFileVersion>10.0.30319.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - + 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 - - diff --git a/PCbuild/x64.props b/PCbuild/x64.props deleted file mode 100644 --- a/PCbuild/x64.props +++ /dev/null @@ -1,26 +0,0 @@ - - - - $(HOST_PYTHON) - - - $(externalsDir)\tcltk64 - - - - false - _WIN64;_M_X64;%(PreprocessorDefinitions) - - - MachineX64 - - - - - $(PythonExe) - - - $(tcltkDir) - - - \ No newline at end of file diff --git a/PCbuild/xxlimited.vcxproj b/PCbuild/xxlimited.vcxproj --- a/PCbuild/xxlimited.vcxproj +++ b/PCbuild/xxlimited.vcxproj @@ -1,6 +1,14 @@  + + Debug + Win32 + + + Debug + x64 + PGInstrument Win32 @@ -30,159 +38,44 @@ {F749B822-B489-4CA5-A3AD-CE078F5F338A} xxlimited Win32Proj + .pyd + false + - + DynamicLibrary NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true - - - DynamicLibrary - NotSet - true + false - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + <_ProjectFileVersion>10.0.30319.1 - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - AllRules.ruleset - - - + - NDEBUG;_WIN32;_WINDLL;Py_LIMITED_API=0x03040000 + %(PreprocessorDefinitions);Py_LIMITED_API=0x03040000 wsock32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) 0x1D110000 - - - X64 - - - wsock32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1D110000 - - - - - Py_LIMITED_API=0x03040000;%(PreprocessorDefinitions) - - - wsock32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1D110000 - - - - - X64 - - - wsock32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1D110000 - MachineX64 - - - - - Py_LIMITED_API=0x03040000;%(PreprocessorDefinitions) - - - wsock32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1D110000 - - - - - X64 - - - wsock32.lib;%(AdditionalDependencies) - libc;%(IgnoreSpecificDefaultLibraries) - 0x1D110000 - MachineX64 - - + + + {885d4898-d08d-4091-9c40-c700cfe3fc5a} + + diff --git a/Python/importlib.h b/Python/importlib.h --- a/Python/importlib.h +++ b/Python/importlib.h @@ -3809,440 +3809,440 @@ 19,1,114,108,1,0,0,122,16,78,111,32,109,111,100,117, 108,101,32,110,97,109,101,100,32,122,4,123,33,114,125,99, 2,0,0,0,0,0,0,0,8,0,0,0,12,0,0,0, - 67,0,0,0,115,37,1,0,0,100,0,0,125,2,0,124, + 67,0,0,0,115,40,1,0,0,100,0,0,125,2,0,124, 0,0,106,0,0,100,1,0,131,1,0,100,2,0,25,125, - 3,0,124,3,0,114,172,0,124,3,0,116,1,0,106,2, + 3,0,124,3,0,114,175,0,124,3,0,116,1,0,106,2, 0,107,7,0,114,59,0,116,3,0,124,1,0,124,3,0, 131,2,0,1,124,0,0,116,1,0,106,2,0,107,6,0, 114,85,0,116,1,0,106,2,0,124,0,0,25,83,116,1, 0,106,2,0,124,3,0,25,125,4,0,121,13,0,124,4, - 0,106,4,0,125,2,0,87,110,58,0,4,116,5,0,107, - 10,0,114,171,0,1,1,1,116,6,0,100,3,0,23,106, + 0,106,4,0,125,2,0,87,110,61,0,4,116,5,0,107, + 10,0,114,174,0,1,1,1,116,6,0,100,3,0,23,106, 7,0,124,0,0,124,3,0,131,2,0,125,5,0,116,8, - 0,124,5,0,100,4,0,124,0,0,131,1,1,130,1,0, - 89,110,1,0,88,116,9,0,124,0,0,124,2,0,131,2, - 0,125,6,0,124,6,0,100,0,0,107,8,0,114,229,0, - 116,8,0,116,6,0,106,7,0,124,0,0,131,1,0,100, - 4,0,124,0,0,131,1,1,130,1,0,110,12,0,116,10, - 0,124,6,0,131,1,0,125,7,0,124,3,0,114,33,1, - 116,1,0,106,2,0,124,3,0,25,125,4,0,116,11,0, - 124,4,0,124,0,0,106,0,0,100,1,0,131,1,0,100, - 5,0,25,124,7,0,131,3,0,1,124,7,0,83,41,6, - 78,114,116,0,0,0,114,84,0,0,0,122,23,59,32,123, - 33,114,125,32,105,115,32,110,111,116,32,97,32,112,97,99, - 107,97,103,101,114,67,0,0,0,114,115,0,0,0,41,12, - 114,32,0,0,0,114,7,0,0,0,114,73,0,0,0,114, - 114,0,0,0,114,245,0,0,0,114,207,0,0,0,218,8, - 95,69,82,82,95,77,83,71,114,47,0,0,0,114,153,0, - 0,0,114,105,1,0,0,114,3,1,0,0,114,61,0,0, - 0,41,8,114,67,0,0,0,218,7,105,109,112,111,114,116, - 95,114,35,0,0,0,114,232,0,0,0,90,13,112,97,114, - 101,110,116,95,109,111,100,117,108,101,114,171,0,0,0,114, - 176,0,0,0,114,177,0,0,0,114,4,0,0,0,114,4, - 0,0,0,114,5,0,0,0,218,23,95,102,105,110,100,95, - 97,110,100,95,108,111,97,100,95,117,110,108,111,99,107,101, - 100,113,8,0,0,115,42,0,0,0,0,1,6,1,19,1, - 6,1,15,1,13,2,15,1,11,1,13,1,3,1,13,1, - 13,1,22,1,23,1,15,1,12,1,30,2,12,1,6,2, - 13,1,29,1,114,111,1,0,0,99,2,0,0,0,0,0, - 0,0,2,0,0,0,10,0,0,0,67,0,0,0,115,36, - 0,0,0,116,0,0,124,0,0,131,1,0,143,18,0,1, - 116,1,0,124,0,0,124,1,0,131,2,0,83,87,100,1, - 0,81,88,100,1,0,83,41,2,122,54,70,105,110,100,32, - 97,110,100,32,108,111,97,100,32,116,104,101,32,109,111,100, - 117,108,101,44,32,97,110,100,32,114,101,108,101,97,115,101, - 32,116,104,101,32,105,109,112,111,114,116,32,108,111,99,107, - 46,78,41,2,114,103,0,0,0,114,111,1,0,0,41,2, - 114,67,0,0,0,114,110,1,0,0,114,4,0,0,0,114, - 4,0,0,0,114,5,0,0,0,218,14,95,102,105,110,100, - 95,97,110,100,95,108,111,97,100,140,8,0,0,115,4,0, - 0,0,0,2,13,1,114,112,1,0,0,99,3,0,0,0, - 0,0,0,0,5,0,0,0,4,0,0,0,67,0,0,0, - 115,166,0,0,0,116,0,0,124,0,0,124,1,0,124,2, - 0,131,3,0,1,124,2,0,100,1,0,107,4,0,114,46, - 0,116,1,0,124,0,0,124,1,0,124,2,0,131,3,0, - 125,0,0,116,2,0,106,3,0,131,0,0,1,124,0,0, - 116,4,0,106,5,0,107,7,0,114,84,0,116,6,0,124, - 0,0,116,7,0,131,2,0,83,116,4,0,106,5,0,124, - 0,0,25,125,3,0,124,3,0,100,2,0,107,8,0,114, - 152,0,116,2,0,106,8,0,131,0,0,1,100,3,0,106, - 9,0,124,0,0,131,1,0,125,4,0,116,10,0,124,4, - 0,100,4,0,124,0,0,131,1,1,130,1,0,116,11,0, - 124,0,0,131,1,0,1,124,3,0,83,41,5,97,50,1, - 0,0,73,109,112,111,114,116,32,97,110,100,32,114,101,116, - 117,114,110,32,116,104,101,32,109,111,100,117,108,101,32,98, - 97,115,101,100,32,111,110,32,105,116,115,32,110,97,109,101, - 44,32,116,104,101,32,112,97,99,107,97,103,101,32,116,104, - 101,32,99,97,108,108,32,105,115,10,32,32,32,32,98,101, - 105,110,103,32,109,97,100,101,32,102,114,111,109,44,32,97, - 110,100,32,116,104,101,32,108,101,118,101,108,32,97,100,106, - 117,115,116,109,101,110,116,46,10,10,32,32,32,32,84,104, - 105,115,32,102,117,110,99,116,105,111,110,32,114,101,112,114, - 101,115,101,110,116,115,32,116,104,101,32,103,114,101,97,116, - 101,115,116,32,99,111,109,109,111,110,32,100,101,110,111,109, - 105,110,97,116,111,114,32,111,102,32,102,117,110,99,116,105, - 111,110,97,108,105,116,121,10,32,32,32,32,98,101,116,119, - 101,101,110,32,105,109,112,111,114,116,95,109,111,100,117,108, - 101,32,97,110,100,32,95,95,105,109,112,111,114,116,95,95, - 46,32,84,104,105,115,32,105,110,99,108,117,100,101,115,32, - 115,101,116,116,105,110,103,32,95,95,112,97,99,107,97,103, - 101,95,95,32,105,102,10,32,32,32,32,116,104,101,32,108, - 111,97,100,101,114,32,100,105,100,32,110,111,116,46,10,10, - 32,32,32,32,114,84,0,0,0,78,122,40,105,109,112,111, - 114,116,32,111,102,32,123,125,32,104,97,108,116,101,100,59, - 32,78,111,110,101,32,105,110,32,115,121,115,46,109,111,100, - 117,108,101,115,114,67,0,0,0,41,12,114,108,1,0,0, - 114,102,1,0,0,114,106,0,0,0,114,0,1,0,0,114, - 7,0,0,0,114,73,0,0,0,114,112,1,0,0,218,11, - 95,103,99,100,95,105,109,112,111,114,116,114,107,0,0,0, - 114,47,0,0,0,114,153,0,0,0,114,112,0,0,0,41, - 5,114,67,0,0,0,114,100,1,0,0,114,101,1,0,0, - 114,177,0,0,0,114,151,0,0,0,114,4,0,0,0,114, - 4,0,0,0,114,5,0,0,0,114,113,1,0,0,146,8, - 0,0,115,26,0,0,0,0,9,16,1,12,1,18,1,10, - 1,15,1,13,1,13,1,12,1,10,2,15,1,18,1,10, - 1,114,113,1,0,0,99,3,0,0,0,0,0,0,0,6, - 0,0,0,17,0,0,0,67,0,0,0,115,239,0,0,0, - 116,0,0,124,0,0,100,1,0,131,2,0,114,235,0,100, - 2,0,124,1,0,107,6,0,114,83,0,116,1,0,124,1, - 0,131,1,0,125,1,0,124,1,0,106,2,0,100,2,0, - 131,1,0,1,116,0,0,124,0,0,100,3,0,131,2,0, - 114,83,0,124,1,0,106,3,0,124,0,0,106,4,0,131, - 1,0,1,120,149,0,124,1,0,68,93,141,0,125,3,0, - 116,0,0,124,0,0,124,3,0,131,2,0,115,90,0,100, - 4,0,106,5,0,124,0,0,106,6,0,124,3,0,131,2, - 0,125,4,0,121,17,0,116,7,0,124,2,0,124,4,0, - 131,2,0,1,87,113,90,0,4,116,8,0,107,10,0,114, - 230,0,1,125,5,0,1,122,47,0,116,9,0,124,5,0, - 131,1,0,106,10,0,116,11,0,131,1,0,114,209,0,124, - 5,0,106,12,0,124,4,0,107,2,0,114,209,0,119,90, - 0,130,0,0,87,89,100,5,0,100,5,0,125,5,0,126, - 5,0,88,113,90,0,88,113,90,0,87,124,0,0,83,41, - 6,122,238,70,105,103,117,114,101,32,111,117,116,32,119,104, - 97,116,32,95,95,105,109,112,111,114,116,95,95,32,115,104, - 111,117,108,100,32,114,101,116,117,114,110,46,10,10,32,32, - 32,32,84,104,101,32,105,109,112,111,114,116,95,32,112,97, - 114,97,109,101,116,101,114,32,105,115,32,97,32,99,97,108, - 108,97,98,108,101,32,119,104,105,99,104,32,116,97,107,101, - 115,32,116,104,101,32,110,97,109,101,32,111,102,32,109,111, - 100,117,108,101,32,116,111,10,32,32,32,32,105,109,112,111, - 114,116,46,32,73,116,32,105,115,32,114,101,113,117,105,114, - 101,100,32,116,111,32,100,101,99,111,117,112,108,101,32,116, - 104,101,32,102,117,110,99,116,105,111,110,32,102,114,111,109, - 32,97,115,115,117,109,105,110,103,32,105,109,112,111,114,116, - 108,105,98,39,115,10,32,32,32,32,105,109,112,111,114,116, - 32,105,109,112,108,101,109,101,110,116,97,116,105,111,110,32, - 105,115,32,100,101,115,105,114,101,100,46,10,10,32,32,32, - 32,114,245,0,0,0,250,1,42,218,7,95,95,97,108,108, - 95,95,122,5,123,125,46,123,125,78,41,13,114,60,0,0, - 0,114,244,0,0,0,218,6,114,101,109,111,118,101,114,195, - 0,0,0,114,115,1,0,0,114,47,0,0,0,114,57,0, - 0,0,114,114,0,0,0,114,153,0,0,0,114,81,1,0, - 0,114,9,0,0,0,218,15,95,69,82,82,95,77,83,71, - 95,80,82,69,70,73,88,114,67,0,0,0,41,6,114,177, - 0,0,0,218,8,102,114,111,109,108,105,115,116,114,110,1, - 0,0,114,16,0,0,0,90,9,102,114,111,109,95,110,97, - 109,101,114,38,1,0,0,114,4,0,0,0,114,4,0,0, - 0,114,5,0,0,0,218,16,95,104,97,110,100,108,101,95, - 102,114,111,109,108,105,115,116,170,8,0,0,115,34,0,0, - 0,0,10,15,1,12,1,12,1,13,1,15,1,16,1,13, - 1,15,1,21,1,3,1,17,1,18,4,21,1,15,1,3, - 1,26,1,114,119,1,0,0,99,1,0,0,0,0,0,0, - 0,2,0,0,0,2,0,0,0,67,0,0,0,115,72,0, - 0,0,124,0,0,106,0,0,100,1,0,131,1,0,125,1, - 0,124,1,0,100,2,0,107,8,0,114,68,0,124,0,0, - 100,3,0,25,125,1,0,100,4,0,124,0,0,107,7,0, - 114,68,0,124,1,0,106,1,0,100,5,0,131,1,0,100, - 6,0,25,125,1,0,124,1,0,83,41,7,122,167,67,97, - 108,99,117,108,97,116,101,32,119,104,97,116,32,95,95,112, - 97,99,107,97,103,101,95,95,32,115,104,111,117,108,100,32, - 98,101,46,10,10,32,32,32,32,95,95,112,97,99,107,97, - 103,101,95,95,32,105,115,32,110,111,116,32,103,117,97,114, - 97,110,116,101,101,100,32,116,111,32,98,101,32,100,101,102, - 105,110,101,100,32,111,114,32,99,111,117,108,100,32,98,101, - 32,115,101,116,32,116,111,32,78,111,110,101,10,32,32,32, - 32,116,111,32,114,101,112,114,101,115,101,110,116,32,116,104, - 97,116,32,105,116,115,32,112,114,111,112,101,114,32,118,97, - 108,117,101,32,105,115,32,117,110,107,110,111,119,110,46,10, - 10,32,32,32,32,114,248,0,0,0,78,114,57,0,0,0, - 114,245,0,0,0,114,116,0,0,0,114,84,0,0,0,41, - 2,114,93,0,0,0,114,32,0,0,0,41,2,218,7,103, - 108,111,98,97,108,115,114,100,1,0,0,114,4,0,0,0, - 114,4,0,0,0,114,5,0,0,0,218,17,95,99,97,108, - 99,95,95,95,112,97,99,107,97,103,101,95,95,202,8,0, - 0,115,12,0,0,0,0,7,15,1,12,1,10,1,12,1, - 19,1,114,121,1,0,0,99,0,0,0,0,0,0,0,0, - 3,0,0,0,3,0,0,0,67,0,0,0,115,55,0,0, - 0,116,0,0,116,1,0,106,2,0,131,0,0,102,2,0, - 125,0,0,116,3,0,116,4,0,102,2,0,125,1,0,116, - 5,0,116,6,0,102,2,0,125,2,0,124,0,0,124,1, - 0,124,2,0,103,3,0,83,41,1,122,95,82,101,116,117, - 114,110,115,32,97,32,108,105,115,116,32,111,102,32,102,105, - 108,101,45,98,97,115,101,100,32,109,111,100,117,108,101,32, - 108,111,97,100,101,114,115,46,10,10,32,32,32,32,69,97, - 99,104,32,105,116,101,109,32,105,115,32,97,32,116,117,112, - 108,101,32,40,108,111,97,100,101,114,44,32,115,117,102,102, - 105,120,101,115,41,46,10,32,32,32,32,41,7,114,54,1, - 0,0,114,106,0,0,0,218,18,101,120,116,101,110,115,105, - 111,110,95,115,117,102,102,105,120,101,115,114,5,1,0,0, - 114,134,0,0,0,114,4,1,0,0,114,231,0,0,0,41, - 3,90,10,101,120,116,101,110,115,105,111,110,115,90,6,115, - 111,117,114,99,101,90,8,98,121,116,101,99,111,100,101,114, - 4,0,0,0,114,4,0,0,0,114,5,0,0,0,114,239, - 0,0,0,217,8,0,0,115,8,0,0,0,0,5,18,1, - 12,1,12,1,114,239,0,0,0,99,5,0,0,0,0,0, - 0,0,9,0,0,0,5,0,0,0,67,0,0,0,115,227, - 0,0,0,124,4,0,100,1,0,107,2,0,114,27,0,116, - 0,0,124,0,0,131,1,0,125,5,0,110,54,0,124,1, - 0,100,2,0,107,9,0,114,45,0,124,1,0,110,3,0, - 105,0,0,125,6,0,116,1,0,124,6,0,131,1,0,125, - 7,0,116,0,0,124,0,0,124,7,0,124,4,0,131,3, - 0,125,5,0,124,3,0,115,207,0,124,4,0,100,1,0, - 107,2,0,114,122,0,116,0,0,124,0,0,106,2,0,100, - 3,0,131,1,0,100,1,0,25,131,1,0,83,124,0,0, - 115,132,0,124,5,0,83,116,3,0,124,0,0,131,1,0, - 116,3,0,124,0,0,106,2,0,100,3,0,131,1,0,100, - 1,0,25,131,1,0,24,125,8,0,116,4,0,106,5,0, - 124,5,0,106,6,0,100,2,0,116,3,0,124,5,0,106, - 6,0,131,1,0,124,8,0,24,133,2,0,25,25,83,110, - 16,0,116,7,0,124,5,0,124,3,0,116,0,0,131,3, - 0,83,100,2,0,83,41,4,97,214,1,0,0,73,109,112, - 111,114,116,32,97,32,109,111,100,117,108,101,46,10,10,32, - 32,32,32,84,104,101,32,39,103,108,111,98,97,108,115,39, - 32,97,114,103,117,109,101,110,116,32,105,115,32,117,115,101, - 100,32,116,111,32,105,110,102,101,114,32,119,104,101,114,101, - 32,116,104,101,32,105,109,112,111,114,116,32,105,115,32,111, - 99,99,117,114,105,110,103,32,102,114,111,109,10,32,32,32, - 32,116,111,32,104,97,110,100,108,101,32,114,101,108,97,116, - 105,118,101,32,105,109,112,111,114,116,115,46,32,84,104,101, - 32,39,108,111,99,97,108,115,39,32,97,114,103,117,109,101, - 110,116,32,105,115,32,105,103,110,111,114,101,100,46,32,84, - 104,101,10,32,32,32,32,39,102,114,111,109,108,105,115,116, - 39,32,97,114,103,117,109,101,110,116,32,115,112,101,99,105, - 102,105,101,115,32,119,104,97,116,32,115,104,111,117,108,100, - 32,101,120,105,115,116,32,97,115,32,97,116,116,114,105,98, - 117,116,101,115,32,111,110,32,116,104,101,32,109,111,100,117, - 108,101,10,32,32,32,32,98,101,105,110,103,32,105,109,112, - 111,114,116,101,100,32,40,101,46,103,46,32,96,96,102,114, - 111,109,32,109,111,100,117,108,101,32,105,109,112,111,114,116, - 32,60,102,114,111,109,108,105,115,116,62,96,96,41,46,32, - 32,84,104,101,32,39,108,101,118,101,108,39,10,32,32,32, - 32,97,114,103,117,109,101,110,116,32,114,101,112,114,101,115, - 101,110,116,115,32,116,104,101,32,112,97,99,107,97,103,101, - 32,108,111,99,97,116,105,111,110,32,116,111,32,105,109,112, - 111,114,116,32,102,114,111,109,32,105,110,32,97,32,114,101, - 108,97,116,105,118,101,10,32,32,32,32,105,109,112,111,114, - 116,32,40,101,46,103,46,32,96,96,102,114,111,109,32,46, - 46,112,107,103,32,105,109,112,111,114,116,32,109,111,100,96, - 96,32,119,111,117,108,100,32,104,97,118,101,32,97,32,39, - 108,101,118,101,108,39,32,111,102,32,50,41,46,10,10,32, - 32,32,32,114,84,0,0,0,78,114,116,0,0,0,41,8, - 114,113,1,0,0,114,121,1,0,0,114,121,0,0,0,114, - 31,0,0,0,114,7,0,0,0,114,73,0,0,0,114,57, - 0,0,0,114,119,1,0,0,41,9,114,67,0,0,0,114, - 120,1,0,0,218,6,108,111,99,97,108,115,114,118,1,0, - 0,114,101,1,0,0,114,177,0,0,0,90,8,103,108,111, - 98,97,108,115,95,114,100,1,0,0,90,7,99,117,116,95, - 111,102,102,114,4,0,0,0,114,4,0,0,0,114,5,0, - 0,0,218,10,95,95,105,109,112,111,114,116,95,95,228,8, - 0,0,115,26,0,0,0,0,11,12,1,15,2,24,1,12, - 1,18,1,6,3,12,1,23,1,6,1,4,4,35,3,40, - 2,114,124,1,0,0,99,1,0,0,0,0,0,0,0,2, - 0,0,0,3,0,0,0,67,0,0,0,115,53,0,0,0, - 116,0,0,106,1,0,124,0,0,131,1,0,125,1,0,124, - 1,0,100,0,0,107,8,0,114,43,0,116,2,0,100,1, - 0,124,0,0,23,131,1,0,130,1,0,116,3,0,124,1, - 0,131,1,0,83,41,2,78,122,25,110,111,32,98,117,105, - 108,116,45,105,110,32,109,111,100,117,108,101,32,110,97,109, - 101,100,32,41,4,114,7,1,0,0,114,10,1,0,0,114, - 153,0,0,0,114,3,1,0,0,41,2,114,67,0,0,0, - 114,176,0,0,0,114,4,0,0,0,114,4,0,0,0,114, - 5,0,0,0,218,18,95,98,117,105,108,116,105,110,95,102, - 114,111,109,95,110,97,109,101,7,9,0,0,115,8,0,0, - 0,0,1,15,1,12,1,16,1,114,125,1,0,0,99,2, - 0,0,0,0,0,0,0,18,0,0,0,12,0,0,0,67, - 0,0,0,115,208,2,0,0,124,1,0,97,0,0,124,0, - 0,97,1,0,116,1,0,106,2,0,106,3,0,114,33,0, - 116,4,0,97,5,0,110,6,0,116,6,0,97,5,0,116, - 7,0,116,1,0,131,1,0,125,2,0,120,123,0,116,1, - 0,106,8,0,106,9,0,131,0,0,68,93,106,0,92,2, - 0,125,3,0,125,4,0,116,10,0,124,4,0,124,2,0, - 131,2,0,114,67,0,124,3,0,116,1,0,106,11,0,107, - 6,0,114,118,0,116,12,0,125,5,0,110,27,0,116,0, - 0,106,13,0,124,3,0,131,1,0,114,67,0,116,14,0, - 125,5,0,110,3,0,113,67,0,116,15,0,124,4,0,124, - 5,0,131,2,0,125,6,0,116,16,0,124,6,0,124,4, - 0,131,2,0,1,113,67,0,87,116,1,0,106,8,0,116, - 17,0,25,125,7,0,120,73,0,100,26,0,68,93,65,0, - 125,8,0,124,8,0,116,1,0,106,8,0,107,7,0,114, - 233,0,116,18,0,124,8,0,131,1,0,125,9,0,110,13, - 0,116,1,0,106,8,0,124,8,0,25,125,9,0,116,19, - 0,124,7,0,124,8,0,124,9,0,131,3,0,1,113,197, - 0,87,100,5,0,100,6,0,103,1,0,102,2,0,100,7, - 0,100,8,0,100,6,0,103,2,0,102,2,0,102,2,0, - 125,10,0,120,146,0,124,10,0,68,93,126,0,92,2,0, - 125,11,0,125,12,0,116,20,0,100,9,0,100,10,0,132, - 0,0,124,12,0,68,131,1,0,131,1,0,115,93,1,116, - 21,0,130,1,0,124,12,0,100,11,0,25,125,13,0,124, - 11,0,116,1,0,106,8,0,107,6,0,114,135,1,116,1, - 0,106,8,0,124,11,0,25,125,14,0,80,113,50,1,121, - 17,0,116,18,0,124,11,0,131,1,0,125,14,0,80,87, - 113,50,1,4,116,22,0,107,10,0,114,175,1,1,1,1, - 119,50,1,89,113,50,1,88,113,50,1,87,116,22,0,100, - 12,0,131,1,0,130,1,0,116,19,0,124,7,0,100,13, - 0,124,14,0,131,3,0,1,116,19,0,124,7,0,100,14, - 0,124,13,0,131,3,0,1,116,19,0,124,7,0,100,15, - 0,100,16,0,106,23,0,124,12,0,131,1,0,131,3,0, - 1,121,16,0,116,18,0,100,17,0,131,1,0,125,15,0, - 87,110,24,0,4,116,22,0,107,10,0,114,35,2,1,1, - 1,100,18,0,125,15,0,89,110,1,0,88,116,19,0,124, - 7,0,100,17,0,124,15,0,131,3,0,1,116,18,0,100, - 19,0,131,1,0,125,16,0,116,19,0,124,7,0,100,19, - 0,124,16,0,131,3,0,1,124,11,0,100,7,0,107,2, - 0,114,120,2,116,18,0,100,20,0,131,1,0,125,17,0, - 116,19,0,124,7,0,100,21,0,124,17,0,131,3,0,1, - 116,19,0,124,7,0,100,22,0,116,24,0,131,0,0,131, - 3,0,1,116,25,0,106,26,0,116,0,0,106,27,0,131, - 0,0,131,1,0,1,124,11,0,100,7,0,107,2,0,114, - 204,2,116,28,0,106,29,0,100,23,0,131,1,0,1,100, - 24,0,116,25,0,107,6,0,114,204,2,100,25,0,116,30, - 0,95,31,0,100,18,0,83,41,27,122,250,83,101,116,117, - 112,32,105,109,112,111,114,116,108,105,98,32,98,121,32,105, - 109,112,111,114,116,105,110,103,32,110,101,101,100,101,100,32, - 98,117,105,108,116,45,105,110,32,109,111,100,117,108,101,115, - 32,97,110,100,32,105,110,106,101,99,116,105,110,103,32,116, - 104,101,109,10,32,32,32,32,105,110,116,111,32,116,104,101, - 32,103,108,111,98,97,108,32,110,97,109,101,115,112,97,99, - 101,46,10,10,32,32,32,32,65,115,32,115,121,115,32,105, - 115,32,110,101,101,100,101,100,32,102,111,114,32,115,121,115, - 46,109,111,100,117,108,101,115,32,97,99,99,101,115,115,32, - 97,110,100,32,95,105,109,112,32,105,115,32,110,101,101,100, - 101,100,32,116,111,32,108,111,97,100,32,98,117,105,108,116, - 45,105,110,10,32,32,32,32,109,111,100,117,108,101,115,44, - 32,116,104,111,115,101,32,116,119,111,32,109,111,100,117,108, - 101,115,32,109,117,115,116,32,98,101,32,101,120,112,108,105, - 99,105,116,108,121,32,112,97,115,115,101,100,32,105,110,46, - 10,10,32,32,32,32,114,49,0,0,0,114,166,0,0,0, - 218,8,98,117,105,108,116,105,110,115,114,189,0,0,0,90, - 5,112,111,115,105,120,250,1,47,218,2,110,116,250,1,92, - 99,1,0,0,0,0,0,0,0,2,0,0,0,3,0,0, - 0,115,0,0,0,115,33,0,0,0,124,0,0,93,23,0, - 125,1,0,116,0,0,124,1,0,131,1,0,100,0,0,107, - 2,0,86,1,113,3,0,100,1,0,83,41,2,114,29,0, - 0,0,78,41,1,114,31,0,0,0,41,2,114,22,0,0, - 0,114,130,0,0,0,114,4,0,0,0,114,4,0,0,0, - 114,5,0,0,0,114,77,0,0,0,57,9,0,0,115,2, - 0,0,0,6,0,122,25,95,115,101,116,117,112,46,60,108, - 111,99,97,108,115,62,46,60,103,101,110,101,120,112,114,62, - 114,84,0,0,0,122,30,105,109,112,111,114,116,108,105,98, - 32,114,101,113,117,105,114,101,115,32,112,111,115,105,120,32, - 111,114,32,110,116,114,3,0,0,0,114,25,0,0,0,114, - 21,0,0,0,114,30,0,0,0,114,85,0,0,0,78,114, - 111,0,0,0,90,6,119,105,110,114,101,103,114,21,1,0, - 0,114,6,0,0,0,122,4,46,112,121,119,122,6,95,100, - 46,112,121,100,84,41,4,122,3,95,105,111,122,9,95,119, - 97,114,110,105,110,103,115,122,8,98,117,105,108,116,105,110, - 115,122,7,109,97,114,115,104,97,108,41,32,114,106,0,0, - 0,114,7,0,0,0,114,117,0,0,0,114,118,0,0,0, - 114,120,0,0,0,114,231,0,0,0,114,119,0,0,0,114, - 66,0,0,0,114,73,0,0,0,218,5,105,116,101,109,115, - 114,190,0,0,0,114,157,0,0,0,114,7,1,0,0,114, - 162,0,0,0,114,16,1,0,0,114,246,0,0,0,114,252, - 0,0,0,114,57,0,0,0,114,125,1,0,0,114,61,0, - 0,0,218,3,97,108,108,114,100,0,0,0,114,153,0,0, - 0,114,26,0,0,0,114,11,0,0,0,114,57,1,0,0, - 114,195,0,0,0,114,122,1,0,0,114,134,0,0,0,114, - 222,0,0,0,114,20,1,0,0,114,24,1,0,0,41,18, - 218,10,115,121,115,95,109,111,100,117,108,101,218,11,95,105, - 109,112,95,109,111,100,117,108,101,90,11,109,111,100,117,108, - 101,95,116,121,112,101,114,67,0,0,0,114,177,0,0,0, - 114,169,0,0,0,114,176,0,0,0,90,11,115,101,108,102, - 95,109,111,100,117,108,101,90,12,98,117,105,108,116,105,110, - 95,110,97,109,101,90,14,98,117,105,108,116,105,110,95,109, - 111,100,117,108,101,90,10,111,115,95,100,101,116,97,105,108, - 115,90,10,98,117,105,108,116,105,110,95,111,115,114,21,0, - 0,0,114,25,0,0,0,90,9,111,115,95,109,111,100,117, - 108,101,90,13,116,104,114,101,97,100,95,109,111,100,117,108, - 101,90,14,119,101,97,107,114,101,102,95,109,111,100,117,108, - 101,90,13,119,105,110,114,101,103,95,109,111,100,117,108,101, - 114,4,0,0,0,114,4,0,0,0,114,5,0,0,0,218, - 6,95,115,101,116,117,112,14,9,0,0,115,106,0,0,0, - 0,9,6,1,6,2,12,1,9,2,6,3,12,1,28,1, - 15,1,15,1,9,1,15,1,9,2,3,1,15,1,17,3, - 13,1,13,1,15,1,15,2,13,1,20,3,33,1,19,2, - 31,1,10,1,15,1,13,1,4,2,3,1,12,1,5,1, - 13,1,12,2,12,1,16,1,16,1,25,3,3,1,16,1, - 13,2,11,1,16,3,12,1,16,3,12,1,12,1,16,3, - 19,1,19,1,12,1,13,1,12,1,114,134,1,0,0,99, - 2,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0, - 67,0,0,0,115,133,0,0,0,116,0,0,124,0,0,124, - 1,0,131,2,0,1,116,1,0,131,0,0,125,2,0,116, - 2,0,106,3,0,106,4,0,116,5,0,106,6,0,124,2, - 0,140,0,0,103,1,0,131,1,0,1,116,2,0,106,7, - 0,106,8,0,116,9,0,131,1,0,1,116,2,0,106,7, - 0,106,8,0,116,10,0,131,1,0,1,116,11,0,106,12, - 0,100,1,0,107,2,0,114,113,0,116,2,0,106,7,0, - 106,8,0,116,13,0,131,1,0,1,116,2,0,106,7,0, - 106,8,0,116,14,0,131,1,0,1,100,2,0,83,41,3, - 122,50,73,110,115,116,97,108,108,32,105,109,112,111,114,116, - 108,105,98,32,97,115,32,116,104,101,32,105,109,112,108,101, - 109,101,110,116,97,116,105,111,110,32,111,102,32,105,109,112, - 111,114,116,46,114,128,1,0,0,78,41,15,114,134,1,0, - 0,114,239,0,0,0,114,7,0,0,0,114,76,1,0,0, - 114,195,0,0,0,114,85,1,0,0,114,98,1,0,0,114, - 104,1,0,0,114,222,0,0,0,114,7,1,0,0,114,16, - 1,0,0,114,3,0,0,0,114,57,0,0,0,114,20,1, - 0,0,114,71,1,0,0,41,3,114,132,1,0,0,114,133, - 1,0,0,90,17,115,117,112,112,111,114,116,101,100,95,108, - 111,97,100,101,114,115,114,4,0,0,0,114,4,0,0,0, - 114,5,0,0,0,218,8,95,105,110,115,116,97,108,108,100, - 9,0,0,115,16,0,0,0,0,2,13,1,9,1,28,1, - 16,1,16,1,15,1,16,1,114,135,1,0,0,41,3,122, - 3,119,105,110,114,1,0,0,0,114,2,0,0,0,41,98, - 114,59,0,0,0,114,10,0,0,0,114,11,0,0,0,114, - 17,0,0,0,114,19,0,0,0,114,28,0,0,0,114,38, - 0,0,0,114,39,0,0,0,114,43,0,0,0,114,44,0, - 0,0,114,46,0,0,0,114,55,0,0,0,114,65,0,0, - 0,114,68,0,0,0,114,66,0,0,0,218,8,95,95,99, - 111,100,101,95,95,114,191,0,0,0,114,69,0,0,0,114, - 109,0,0,0,114,92,0,0,0,114,99,0,0,0,114,82, - 0,0,0,114,83,0,0,0,114,102,0,0,0,114,103,0, - 0,0,114,105,0,0,0,114,112,0,0,0,114,114,0,0, - 0,114,15,0,0,0,114,183,0,0,0,114,14,0,0,0, - 114,18,0,0,0,90,17,95,82,65,87,95,77,65,71,73, - 67,95,78,85,77,66,69,82,114,125,0,0,0,114,134,0, - 0,0,114,119,0,0,0,114,120,0,0,0,114,132,0,0, - 0,114,135,0,0,0,114,142,0,0,0,114,144,0,0,0, - 114,152,0,0,0,114,156,0,0,0,114,161,0,0,0,114, - 164,0,0,0,114,172,0,0,0,114,178,0,0,0,114,188, - 0,0,0,114,193,0,0,0,114,196,0,0,0,114,201,0, - 0,0,114,210,0,0,0,114,211,0,0,0,114,215,0,0, - 0,114,173,0,0,0,218,6,111,98,106,101,99,116,114,240, - 0,0,0,114,238,0,0,0,114,246,0,0,0,114,252,0, - 0,0,114,254,0,0,0,114,208,0,0,0,114,174,0,0, - 0,114,2,1,0,0,114,3,1,0,0,114,175,0,0,0, - 114,6,1,0,0,114,7,1,0,0,114,16,1,0,0,114, - 20,1,0,0,114,30,1,0,0,114,31,1,0,0,114,46, - 1,0,0,114,5,1,0,0,114,4,1,0,0,114,57,1, - 0,0,114,54,1,0,0,114,58,1,0,0,114,249,0,0, - 0,114,71,1,0,0,114,85,1,0,0,114,99,1,0,0, - 114,102,1,0,0,114,103,1,0,0,114,105,1,0,0,114, - 108,1,0,0,114,117,1,0,0,114,109,1,0,0,114,111, - 1,0,0,114,112,1,0,0,114,113,1,0,0,114,119,1, - 0,0,114,121,1,0,0,114,239,0,0,0,114,124,1,0, - 0,114,125,1,0,0,114,134,1,0,0,114,135,1,0,0, - 114,4,0,0,0,114,4,0,0,0,114,4,0,0,0,114, - 5,0,0,0,218,8,60,109,111,100,117,108,101,62,8,0, - 0,0,115,182,0,0,0,6,17,6,3,12,12,12,5,12, - 5,12,6,12,12,12,10,12,9,12,5,12,7,15,22,12, - 8,12,4,15,4,19,20,6,2,6,3,22,4,19,68,19, - 21,19,19,12,19,12,20,12,115,22,1,18,2,6,2,9, - 2,9,1,9,2,15,27,12,23,12,19,12,12,18,8,12, - 18,12,11,12,11,12,18,12,15,21,55,21,12,18,10,12, - 14,12,36,19,27,19,106,24,22,9,3,12,1,15,63,18, - 45,18,56,12,14,12,17,12,25,12,29,12,23,12,14,15, - 25,19,70,19,71,19,63,19,24,22,110,19,41,25,43,25, - 16,6,3,19,57,19,57,19,38,19,134,19,146,19,13,12, - 9,12,9,15,40,12,17,6,1,10,2,12,27,12,6,18, - 24,12,32,12,15,12,11,24,35,12,7,12,86, + 0,124,5,0,100,4,0,124,0,0,131,1,1,100,0,0, + 130,2,0,89,110,1,0,88,116,9,0,124,0,0,124,2, + 0,131,2,0,125,6,0,124,6,0,100,0,0,107,8,0, + 114,232,0,116,8,0,116,6,0,106,7,0,124,0,0,131, + 1,0,100,4,0,124,0,0,131,1,1,130,1,0,110,12, + 0,116,10,0,124,6,0,131,1,0,125,7,0,124,3,0, + 114,36,1,116,1,0,106,2,0,124,3,0,25,125,4,0, + 116,11,0,124,4,0,124,0,0,106,0,0,100,1,0,131, + 1,0,100,5,0,25,124,7,0,131,3,0,1,124,7,0, + 83,41,6,78,114,116,0,0,0,114,84,0,0,0,122,23, + 59,32,123,33,114,125,32,105,115,32,110,111,116,32,97,32, + 112,97,99,107,97,103,101,114,67,0,0,0,114,115,0,0, + 0,41,12,114,32,0,0,0,114,7,0,0,0,114,73,0, + 0,0,114,114,0,0,0,114,245,0,0,0,114,207,0,0, + 0,218,8,95,69,82,82,95,77,83,71,114,47,0,0,0, + 114,153,0,0,0,114,105,1,0,0,114,3,1,0,0,114, + 61,0,0,0,41,8,114,67,0,0,0,218,7,105,109,112, + 111,114,116,95,114,35,0,0,0,114,232,0,0,0,90,13, + 112,97,114,101,110,116,95,109,111,100,117,108,101,114,171,0, + 0,0,114,176,0,0,0,114,177,0,0,0,114,4,0,0, + 0,114,4,0,0,0,114,5,0,0,0,218,23,95,102,105, + 110,100,95,97,110,100,95,108,111,97,100,95,117,110,108,111, + 99,107,101,100,113,8,0,0,115,42,0,0,0,0,1,6, + 1,19,1,6,1,15,1,13,2,15,1,11,1,13,1,3, + 1,13,1,13,1,22,1,26,1,15,1,12,1,30,2,12, + 1,6,2,13,1,29,1,114,111,1,0,0,99,2,0,0, + 0,0,0,0,0,2,0,0,0,10,0,0,0,67,0,0, + 0,115,36,0,0,0,116,0,0,124,0,0,131,1,0,143, + 18,0,1,116,1,0,124,0,0,124,1,0,131,2,0,83, + 87,100,1,0,81,88,100,1,0,83,41,2,122,54,70,105, + 110,100,32,97,110,100,32,108,111,97,100,32,116,104,101,32, + 109,111,100,117,108,101,44,32,97,110,100,32,114,101,108,101, + 97,115,101,32,116,104,101,32,105,109,112,111,114,116,32,108, + 111,99,107,46,78,41,2,114,103,0,0,0,114,111,1,0, + 0,41,2,114,67,0,0,0,114,110,1,0,0,114,4,0, + 0,0,114,4,0,0,0,114,5,0,0,0,218,14,95,102, + 105,110,100,95,97,110,100,95,108,111,97,100,140,8,0,0, + 115,4,0,0,0,0,2,13,1,114,112,1,0,0,99,3, + 0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,67, + 0,0,0,115,166,0,0,0,116,0,0,124,0,0,124,1, + 0,124,2,0,131,3,0,1,124,2,0,100,1,0,107,4, + 0,114,46,0,116,1,0,124,0,0,124,1,0,124,2,0, + 131,3,0,125,0,0,116,2,0,106,3,0,131,0,0,1, + 124,0,0,116,4,0,106,5,0,107,7,0,114,84,0,116, + 6,0,124,0,0,116,7,0,131,2,0,83,116,4,0,106, + 5,0,124,0,0,25,125,3,0,124,3,0,100,2,0,107, + 8,0,114,152,0,116,2,0,106,8,0,131,0,0,1,100, + 3,0,106,9,0,124,0,0,131,1,0,125,4,0,116,10, + 0,124,4,0,100,4,0,124,0,0,131,1,1,130,1,0, + 116,11,0,124,0,0,131,1,0,1,124,3,0,83,41,5, + 97,50,1,0,0,73,109,112,111,114,116,32,97,110,100,32, + 114,101,116,117,114,110,32,116,104,101,32,109,111,100,117,108, + 101,32,98,97,115,101,100,32,111,110,32,105,116,115,32,110, + 97,109,101,44,32,116,104,101,32,112,97,99,107,97,103,101, + 32,116,104,101,32,99,97,108,108,32,105,115,10,32,32,32, + 32,98,101,105,110,103,32,109,97,100,101,32,102,114,111,109, + 44,32,97,110,100,32,116,104,101,32,108,101,118,101,108,32, + 97,100,106,117,115,116,109,101,110,116,46,10,10,32,32,32, + 32,84,104,105,115,32,102,117,110,99,116,105,111,110,32,114, + 101,112,114,101,115,101,110,116,115,32,116,104,101,32,103,114, + 101,97,116,101,115,116,32,99,111,109,109,111,110,32,100,101, + 110,111,109,105,110,97,116,111,114,32,111,102,32,102,117,110, + 99,116,105,111,110,97,108,105,116,121,10,32,32,32,32,98, + 101,116,119,101,101,110,32,105,109,112,111,114,116,95,109,111, + 100,117,108,101,32,97,110,100,32,95,95,105,109,112,111,114, + 116,95,95,46,32,84,104,105,115,32,105,110,99,108,117,100, + 101,115,32,115,101,116,116,105,110,103,32,95,95,112,97,99, + 107,97,103,101,95,95,32,105,102,10,32,32,32,32,116,104, + 101,32,108,111,97,100,101,114,32,100,105,100,32,110,111,116, + 46,10,10,32,32,32,32,114,84,0,0,0,78,122,40,105, + 109,112,111,114,116,32,111,102,32,123,125,32,104,97,108,116, + 101,100,59,32,78,111,110,101,32,105,110,32,115,121,115,46, + 109,111,100,117,108,101,115,114,67,0,0,0,41,12,114,108, + 1,0,0,114,102,1,0,0,114,106,0,0,0,114,0,1, + 0,0,114,7,0,0,0,114,73,0,0,0,114,112,1,0, + 0,218,11,95,103,99,100,95,105,109,112,111,114,116,114,107, + 0,0,0,114,47,0,0,0,114,153,0,0,0,114,112,0, + 0,0,41,5,114,67,0,0,0,114,100,1,0,0,114,101, + 1,0,0,114,177,0,0,0,114,151,0,0,0,114,4,0, + 0,0,114,4,0,0,0,114,5,0,0,0,114,113,1,0, + 0,146,8,0,0,115,26,0,0,0,0,9,16,1,12,1, + 18,1,10,1,15,1,13,1,13,1,12,1,10,2,15,1, + 18,1,10,1,114,113,1,0,0,99,3,0,0,0,0,0, + 0,0,6,0,0,0,17,0,0,0,67,0,0,0,115,239, + 0,0,0,116,0,0,124,0,0,100,1,0,131,2,0,114, + 235,0,100,2,0,124,1,0,107,6,0,114,83,0,116,1, + 0,124,1,0,131,1,0,125,1,0,124,1,0,106,2,0, + 100,2,0,131,1,0,1,116,0,0,124,0,0,100,3,0, + 131,2,0,114,83,0,124,1,0,106,3,0,124,0,0,106, + 4,0,131,1,0,1,120,149,0,124,1,0,68,93,141,0, + 125,3,0,116,0,0,124,0,0,124,3,0,131,2,0,115, + 90,0,100,4,0,106,5,0,124,0,0,106,6,0,124,3, + 0,131,2,0,125,4,0,121,17,0,116,7,0,124,2,0, + 124,4,0,131,2,0,1,87,113,90,0,4,116,8,0,107, + 10,0,114,230,0,1,125,5,0,1,122,47,0,116,9,0, + 124,5,0,131,1,0,106,10,0,116,11,0,131,1,0,114, + 209,0,124,5,0,106,12,0,124,4,0,107,2,0,114,209, + 0,119,90,0,130,0,0,87,89,100,5,0,100,5,0,125, + 5,0,126,5,0,88,113,90,0,88,113,90,0,87,124,0, + 0,83,41,6,122,238,70,105,103,117,114,101,32,111,117,116, + 32,119,104,97,116,32,95,95,105,109,112,111,114,116,95,95, + 32,115,104,111,117,108,100,32,114,101,116,117,114,110,46,10, + 10,32,32,32,32,84,104,101,32,105,109,112,111,114,116,95, + 32,112,97,114,97,109,101,116,101,114,32,105,115,32,97,32, + 99,97,108,108,97,98,108,101,32,119,104,105,99,104,32,116, + 97,107,101,115,32,116,104,101,32,110,97,109,101,32,111,102, + 32,109,111,100,117,108,101,32,116,111,10,32,32,32,32,105, + 109,112,111,114,116,46,32,73,116,32,105,115,32,114,101,113, + 117,105,114,101,100,32,116,111,32,100,101,99,111,117,112,108, + 101,32,116,104,101,32,102,117,110,99,116,105,111,110,32,102, + 114,111,109,32,97,115,115,117,109,105,110,103,32,105,109,112, + 111,114,116,108,105,98,39,115,10,32,32,32,32,105,109,112, + 111,114,116,32,105,109,112,108,101,109,101,110,116,97,116,105, + 111,110,32,105,115,32,100,101,115,105,114,101,100,46,10,10, + 32,32,32,32,114,245,0,0,0,250,1,42,218,7,95,95, + 97,108,108,95,95,122,5,123,125,46,123,125,78,41,13,114, + 60,0,0,0,114,244,0,0,0,218,6,114,101,109,111,118, + 101,114,195,0,0,0,114,115,1,0,0,114,47,0,0,0, + 114,57,0,0,0,114,114,0,0,0,114,153,0,0,0,114, + 81,1,0,0,114,9,0,0,0,218,15,95,69,82,82,95, + 77,83,71,95,80,82,69,70,73,88,114,67,0,0,0,41, + 6,114,177,0,0,0,218,8,102,114,111,109,108,105,115,116, + 114,110,1,0,0,114,16,0,0,0,90,9,102,114,111,109, + 95,110,97,109,101,114,38,1,0,0,114,4,0,0,0,114, + 4,0,0,0,114,5,0,0,0,218,16,95,104,97,110,100, + 108,101,95,102,114,111,109,108,105,115,116,170,8,0,0,115, + 34,0,0,0,0,10,15,1,12,1,12,1,13,1,15,1, + 16,1,13,1,15,1,21,1,3,1,17,1,18,4,21,1, + 15,1,3,1,26,1,114,119,1,0,0,99,1,0,0,0, + 0,0,0,0,2,0,0,0,2,0,0,0,67,0,0,0, + 115,72,0,0,0,124,0,0,106,0,0,100,1,0,131,1, + 0,125,1,0,124,1,0,100,2,0,107,8,0,114,68,0, + 124,0,0,100,3,0,25,125,1,0,100,4,0,124,0,0, + 107,7,0,114,68,0,124,1,0,106,1,0,100,5,0,131, + 1,0,100,6,0,25,125,1,0,124,1,0,83,41,7,122, + 167,67,97,108,99,117,108,97,116,101,32,119,104,97,116,32, + 95,95,112,97,99,107,97,103,101,95,95,32,115,104,111,117, + 108,100,32,98,101,46,10,10,32,32,32,32,95,95,112,97, + 99,107,97,103,101,95,95,32,105,115,32,110,111,116,32,103, + 117,97,114,97,110,116,101,101,100,32,116,111,32,98,101,32, + 100,101,102,105,110,101,100,32,111,114,32,99,111,117,108,100, + 32,98,101,32,115,101,116,32,116,111,32,78,111,110,101,10, + 32,32,32,32,116,111,32,114,101,112,114,101,115,101,110,116, + 32,116,104,97,116,32,105,116,115,32,112,114,111,112,101,114, + 32,118,97,108,117,101,32,105,115,32,117,110,107,110,111,119, + 110,46,10,10,32,32,32,32,114,248,0,0,0,78,114,57, + 0,0,0,114,245,0,0,0,114,116,0,0,0,114,84,0, + 0,0,41,2,114,93,0,0,0,114,32,0,0,0,41,2, + 218,7,103,108,111,98,97,108,115,114,100,1,0,0,114,4, + 0,0,0,114,4,0,0,0,114,5,0,0,0,218,17,95, + 99,97,108,99,95,95,95,112,97,99,107,97,103,101,95,95, + 202,8,0,0,115,12,0,0,0,0,7,15,1,12,1,10, + 1,12,1,19,1,114,121,1,0,0,99,0,0,0,0,0, + 0,0,0,3,0,0,0,3,0,0,0,67,0,0,0,115, + 55,0,0,0,116,0,0,116,1,0,106,2,0,131,0,0, + 102,2,0,125,0,0,116,3,0,116,4,0,102,2,0,125, + 1,0,116,5,0,116,6,0,102,2,0,125,2,0,124,0, + 0,124,1,0,124,2,0,103,3,0,83,41,1,122,95,82, + 101,116,117,114,110,115,32,97,32,108,105,115,116,32,111,102, + 32,102,105,108,101,45,98,97,115,101,100,32,109,111,100,117, + 108,101,32,108,111,97,100,101,114,115,46,10,10,32,32,32, + 32,69,97,99,104,32,105,116,101,109,32,105,115,32,97,32, + 116,117,112,108,101,32,40,108,111,97,100,101,114,44,32,115, + 117,102,102,105,120,101,115,41,46,10,32,32,32,32,41,7, + 114,54,1,0,0,114,106,0,0,0,218,18,101,120,116,101, + 110,115,105,111,110,95,115,117,102,102,105,120,101,115,114,5, + 1,0,0,114,134,0,0,0,114,4,1,0,0,114,231,0, + 0,0,41,3,90,10,101,120,116,101,110,115,105,111,110,115, + 90,6,115,111,117,114,99,101,90,8,98,121,116,101,99,111, + 100,101,114,4,0,0,0,114,4,0,0,0,114,5,0,0, + 0,114,239,0,0,0,217,8,0,0,115,8,0,0,0,0, + 5,18,1,12,1,12,1,114,239,0,0,0,99,5,0,0, + 0,0,0,0,0,9,0,0,0,5,0,0,0,67,0,0, + 0,115,227,0,0,0,124,4,0,100,1,0,107,2,0,114, + 27,0,116,0,0,124,0,0,131,1,0,125,5,0,110,54, + 0,124,1,0,100,2,0,107,9,0,114,45,0,124,1,0, + 110,3,0,105,0,0,125,6,0,116,1,0,124,6,0,131, + 1,0,125,7,0,116,0,0,124,0,0,124,7,0,124,4, + 0,131,3,0,125,5,0,124,3,0,115,207,0,124,4,0, + 100,1,0,107,2,0,114,122,0,116,0,0,124,0,0,106, + 2,0,100,3,0,131,1,0,100,1,0,25,131,1,0,83, + 124,0,0,115,132,0,124,5,0,83,116,3,0,124,0,0, + 131,1,0,116,3,0,124,0,0,106,2,0,100,3,0,131, + 1,0,100,1,0,25,131,1,0,24,125,8,0,116,4,0, + 106,5,0,124,5,0,106,6,0,100,2,0,116,3,0,124, + 5,0,106,6,0,131,1,0,124,8,0,24,133,2,0,25, + 25,83,110,16,0,116,7,0,124,5,0,124,3,0,116,0, + 0,131,3,0,83,100,2,0,83,41,4,97,214,1,0,0, + 73,109,112,111,114,116,32,97,32,109,111,100,117,108,101,46, + 10,10,32,32,32,32,84,104,101,32,39,103,108,111,98,97, + 108,115,39,32,97,114,103,117,109,101,110,116,32,105,115,32, + 117,115,101,100,32,116,111,32,105,110,102,101,114,32,119,104, + 101,114,101,32,116,104,101,32,105,109,112,111,114,116,32,105, + 115,32,111,99,99,117,114,105,110,103,32,102,114,111,109,10, + 32,32,32,32,116,111,32,104,97,110,100,108,101,32,114,101, + 108,97,116,105,118,101,32,105,109,112,111,114,116,115,46,32, + 84,104,101,32,39,108,111,99,97,108,115,39,32,97,114,103, + 117,109,101,110,116,32,105,115,32,105,103,110,111,114,101,100, + 46,32,84,104,101,10,32,32,32,32,39,102,114,111,109,108, + 105,115,116,39,32,97,114,103,117,109,101,110,116,32,115,112, + 101,99,105,102,105,101,115,32,119,104,97,116,32,115,104,111, + 117,108,100,32,101,120,105,115,116,32,97,115,32,97,116,116, + 114,105,98,117,116,101,115,32,111,110,32,116,104,101,32,109, + 111,100,117,108,101,10,32,32,32,32,98,101,105,110,103,32, + 105,109,112,111,114,116,101,100,32,40,101,46,103,46,32,96, + 96,102,114,111,109,32,109,111,100,117,108,101,32,105,109,112, + 111,114,116,32,60,102,114,111,109,108,105,115,116,62,96,96, + 41,46,32,32,84,104,101,32,39,108,101,118,101,108,39,10, + 32,32,32,32,97,114,103,117,109,101,110,116,32,114,101,112, + 114,101,115,101,110,116,115,32,116,104,101,32,112,97,99,107, + 97,103,101,32,108,111,99,97,116,105,111,110,32,116,111,32, + 105,109,112,111,114,116,32,102,114,111,109,32,105,110,32,97, + 32,114,101,108,97,116,105,118,101,10,32,32,32,32,105,109, + 112,111,114,116,32,40,101,46,103,46,32,96,96,102,114,111, + 109,32,46,46,112,107,103,32,105,109,112,111,114,116,32,109, + 111,100,96,96,32,119,111,117,108,100,32,104,97,118,101,32, + 97,32,39,108,101,118,101,108,39,32,111,102,32,50,41,46, + 10,10,32,32,32,32,114,84,0,0,0,78,114,116,0,0, + 0,41,8,114,113,1,0,0,114,121,1,0,0,114,121,0, + 0,0,114,31,0,0,0,114,7,0,0,0,114,73,0,0, + 0,114,57,0,0,0,114,119,1,0,0,41,9,114,67,0, + 0,0,114,120,1,0,0,218,6,108,111,99,97,108,115,114, + 118,1,0,0,114,101,1,0,0,114,177,0,0,0,90,8, + 103,108,111,98,97,108,115,95,114,100,1,0,0,90,7,99, + 117,116,95,111,102,102,114,4,0,0,0,114,4,0,0,0, + 114,5,0,0,0,218,10,95,95,105,109,112,111,114,116,95, + 95,228,8,0,0,115,26,0,0,0,0,11,12,1,15,2, + 24,1,12,1,18,1,6,3,12,1,23,1,6,1,4,4, + 35,3,40,2,114,124,1,0,0,99,1,0,0,0,0,0, + 0,0,2,0,0,0,3,0,0,0,67,0,0,0,115,53, + 0,0,0,116,0,0,106,1,0,124,0,0,131,1,0,125, + 1,0,124,1,0,100,0,0,107,8,0,114,43,0,116,2, + 0,100,1,0,124,0,0,23,131,1,0,130,1,0,116,3, + 0,124,1,0,131,1,0,83,41,2,78,122,25,110,111,32, + 98,117,105,108,116,45,105,110,32,109,111,100,117,108,101,32, + 110,97,109,101,100,32,41,4,114,7,1,0,0,114,10,1, + 0,0,114,153,0,0,0,114,3,1,0,0,41,2,114,67, + 0,0,0,114,176,0,0,0,114,4,0,0,0,114,4,0, + 0,0,114,5,0,0,0,218,18,95,98,117,105,108,116,105, + 110,95,102,114,111,109,95,110,97,109,101,7,9,0,0,115, + 8,0,0,0,0,1,15,1,12,1,16,1,114,125,1,0, + 0,99,2,0,0,0,0,0,0,0,18,0,0,0,12,0, + 0,0,67,0,0,0,115,208,2,0,0,124,1,0,97,0, + 0,124,0,0,97,1,0,116,1,0,106,2,0,106,3,0, + 114,33,0,116,4,0,97,5,0,110,6,0,116,6,0,97, + 5,0,116,7,0,116,1,0,131,1,0,125,2,0,120,123, + 0,116,1,0,106,8,0,106,9,0,131,0,0,68,93,106, + 0,92,2,0,125,3,0,125,4,0,116,10,0,124,4,0, + 124,2,0,131,2,0,114,67,0,124,3,0,116,1,0,106, + 11,0,107,6,0,114,118,0,116,12,0,125,5,0,110,27, + 0,116,0,0,106,13,0,124,3,0,131,1,0,114,67,0, + 116,14,0,125,5,0,110,3,0,113,67,0,116,15,0,124, + 4,0,124,5,0,131,2,0,125,6,0,116,16,0,124,6, + 0,124,4,0,131,2,0,1,113,67,0,87,116,1,0,106, + 8,0,116,17,0,25,125,7,0,120,73,0,100,26,0,68, + 93,65,0,125,8,0,124,8,0,116,1,0,106,8,0,107, + 7,0,114,233,0,116,18,0,124,8,0,131,1,0,125,9, + 0,110,13,0,116,1,0,106,8,0,124,8,0,25,125,9, + 0,116,19,0,124,7,0,124,8,0,124,9,0,131,3,0, + 1,113,197,0,87,100,5,0,100,6,0,103,1,0,102,2, + 0,100,7,0,100,8,0,100,6,0,103,2,0,102,2,0, + 102,2,0,125,10,0,120,146,0,124,10,0,68,93,126,0, + 92,2,0,125,11,0,125,12,0,116,20,0,100,9,0,100, + 10,0,132,0,0,124,12,0,68,131,1,0,131,1,0,115, + 93,1,116,21,0,130,1,0,124,12,0,100,11,0,25,125, + 13,0,124,11,0,116,1,0,106,8,0,107,6,0,114,135, + 1,116,1,0,106,8,0,124,11,0,25,125,14,0,80,113, + 50,1,121,17,0,116,18,0,124,11,0,131,1,0,125,14, + 0,80,87,113,50,1,4,116,22,0,107,10,0,114,175,1, + 1,1,1,119,50,1,89,113,50,1,88,113,50,1,87,116, + 22,0,100,12,0,131,1,0,130,1,0,116,19,0,124,7, + 0,100,13,0,124,14,0,131,3,0,1,116,19,0,124,7, + 0,100,14,0,124,13,0,131,3,0,1,116,19,0,124,7, + 0,100,15,0,100,16,0,106,23,0,124,12,0,131,1,0, + 131,3,0,1,121,16,0,116,18,0,100,17,0,131,1,0, + 125,15,0,87,110,24,0,4,116,22,0,107,10,0,114,35, + 2,1,1,1,100,18,0,125,15,0,89,110,1,0,88,116, + 19,0,124,7,0,100,17,0,124,15,0,131,3,0,1,116, + 18,0,100,19,0,131,1,0,125,16,0,116,19,0,124,7, + 0,100,19,0,124,16,0,131,3,0,1,124,11,0,100,7, + 0,107,2,0,114,120,2,116,18,0,100,20,0,131,1,0, + 125,17,0,116,19,0,124,7,0,100,21,0,124,17,0,131, + 3,0,1,116,19,0,124,7,0,100,22,0,116,24,0,131, + 0,0,131,3,0,1,116,25,0,106,26,0,116,0,0,106, + 27,0,131,0,0,131,1,0,1,124,11,0,100,7,0,107, + 2,0,114,204,2,116,28,0,106,29,0,100,23,0,131,1, + 0,1,100,24,0,116,25,0,107,6,0,114,204,2,100,25, + 0,116,30,0,95,31,0,100,18,0,83,41,27,122,250,83, + 101,116,117,112,32,105,109,112,111,114,116,108,105,98,32,98, + 121,32,105,109,112,111,114,116,105,110,103,32,110,101,101,100, + 101,100,32,98,117,105,108,116,45,105,110,32,109,111,100,117, + 108,101,115,32,97,110,100,32,105,110,106,101,99,116,105,110, + 103,32,116,104,101,109,10,32,32,32,32,105,110,116,111,32, + 116,104,101,32,103,108,111,98,97,108,32,110,97,109,101,115, + 112,97,99,101,46,10,10,32,32,32,32,65,115,32,115,121, + 115,32,105,115,32,110,101,101,100,101,100,32,102,111,114,32, + 115,121,115,46,109,111,100,117,108,101,115,32,97,99,99,101, + 115,115,32,97,110,100,32,95,105,109,112,32,105,115,32,110, + 101,101,100,101,100,32,116,111,32,108,111,97,100,32,98,117, + 105,108,116,45,105,110,10,32,32,32,32,109,111,100,117,108, + 101,115,44,32,116,104,111,115,101,32,116,119,111,32,109,111, + 100,117,108,101,115,32,109,117,115,116,32,98,101,32,101,120, + 112,108,105,99,105,116,108,121,32,112,97,115,115,101,100,32, + 105,110,46,10,10,32,32,32,32,114,49,0,0,0,114,166, + 0,0,0,218,8,98,117,105,108,116,105,110,115,114,189,0, + 0,0,90,5,112,111,115,105,120,250,1,47,218,2,110,116, + 250,1,92,99,1,0,0,0,0,0,0,0,2,0,0,0, + 3,0,0,0,115,0,0,0,115,33,0,0,0,124,0,0, + 93,23,0,125,1,0,116,0,0,124,1,0,131,1,0,100, + 0,0,107,2,0,86,1,113,3,0,100,1,0,83,41,2, + 114,29,0,0,0,78,41,1,114,31,0,0,0,41,2,114, + 22,0,0,0,114,130,0,0,0,114,4,0,0,0,114,4, + 0,0,0,114,5,0,0,0,114,77,0,0,0,57,9,0, + 0,115,2,0,0,0,6,0,122,25,95,115,101,116,117,112, + 46,60,108,111,99,97,108,115,62,46,60,103,101,110,101,120, + 112,114,62,114,84,0,0,0,122,30,105,109,112,111,114,116, + 108,105,98,32,114,101,113,117,105,114,101,115,32,112,111,115, + 105,120,32,111,114,32,110,116,114,3,0,0,0,114,25,0, + 0,0,114,21,0,0,0,114,30,0,0,0,114,85,0,0, + 0,78,114,111,0,0,0,90,6,119,105,110,114,101,103,114, + 21,1,0,0,114,6,0,0,0,122,4,46,112,121,119,122, + 6,95,100,46,112,121,100,84,41,4,122,3,95,105,111,122, + 9,95,119,97,114,110,105,110,103,115,122,8,98,117,105,108, + 116,105,110,115,122,7,109,97,114,115,104,97,108,41,32,114, + 106,0,0,0,114,7,0,0,0,114,117,0,0,0,114,118, + 0,0,0,114,120,0,0,0,114,231,0,0,0,114,119,0, + 0,0,114,66,0,0,0,114,73,0,0,0,218,5,105,116, + 101,109,115,114,190,0,0,0,114,157,0,0,0,114,7,1, + 0,0,114,162,0,0,0,114,16,1,0,0,114,246,0,0, + 0,114,252,0,0,0,114,57,0,0,0,114,125,1,0,0, + 114,61,0,0,0,218,3,97,108,108,114,100,0,0,0,114, + 153,0,0,0,114,26,0,0,0,114,11,0,0,0,114,57, + 1,0,0,114,195,0,0,0,114,122,1,0,0,114,134,0, + 0,0,114,222,0,0,0,114,20,1,0,0,114,24,1,0, + 0,41,18,218,10,115,121,115,95,109,111,100,117,108,101,218, + 11,95,105,109,112,95,109,111,100,117,108,101,90,11,109,111, + 100,117,108,101,95,116,121,112,101,114,67,0,0,0,114,177, + 0,0,0,114,169,0,0,0,114,176,0,0,0,90,11,115, + 101,108,102,95,109,111,100,117,108,101,90,12,98,117,105,108, + 116,105,110,95,110,97,109,101,90,14,98,117,105,108,116,105, + 110,95,109,111,100,117,108,101,90,10,111,115,95,100,101,116, + 97,105,108,115,90,10,98,117,105,108,116,105,110,95,111,115, + 114,21,0,0,0,114,25,0,0,0,90,9,111,115,95,109, + 111,100,117,108,101,90,13,116,104,114,101,97,100,95,109,111, + 100,117,108,101,90,14,119,101,97,107,114,101,102,95,109,111, + 100,117,108,101,90,13,119,105,110,114,101,103,95,109,111,100, + 117,108,101,114,4,0,0,0,114,4,0,0,0,114,5,0, + 0,0,218,6,95,115,101,116,117,112,14,9,0,0,115,106, + 0,0,0,0,9,6,1,6,2,12,1,9,2,6,3,12, + 1,28,1,15,1,15,1,9,1,15,1,9,2,3,1,15, + 1,17,3,13,1,13,1,15,1,15,2,13,1,20,3,33, + 1,19,2,31,1,10,1,15,1,13,1,4,2,3,1,12, + 1,5,1,13,1,12,2,12,1,16,1,16,1,25,3,3, + 1,16,1,13,2,11,1,16,3,12,1,16,3,12,1,12, + 1,16,3,19,1,19,1,12,1,13,1,12,1,114,134,1, + 0,0,99,2,0,0,0,0,0,0,0,3,0,0,0,3, + 0,0,0,67,0,0,0,115,133,0,0,0,116,0,0,124, + 0,0,124,1,0,131,2,0,1,116,1,0,131,0,0,125, + 2,0,116,2,0,106,3,0,106,4,0,116,5,0,106,6, + 0,124,2,0,140,0,0,103,1,0,131,1,0,1,116,2, + 0,106,7,0,106,8,0,116,9,0,131,1,0,1,116,2, + 0,106,7,0,106,8,0,116,10,0,131,1,0,1,116,11, + 0,106,12,0,100,1,0,107,2,0,114,113,0,116,2,0, + 106,7,0,106,8,0,116,13,0,131,1,0,1,116,2,0, + 106,7,0,106,8,0,116,14,0,131,1,0,1,100,2,0, + 83,41,3,122,50,73,110,115,116,97,108,108,32,105,109,112, + 111,114,116,108,105,98,32,97,115,32,116,104,101,32,105,109, + 112,108,101,109,101,110,116,97,116,105,111,110,32,111,102,32, + 105,109,112,111,114,116,46,114,128,1,0,0,78,41,15,114, + 134,1,0,0,114,239,0,0,0,114,7,0,0,0,114,76, + 1,0,0,114,195,0,0,0,114,85,1,0,0,114,98,1, + 0,0,114,104,1,0,0,114,222,0,0,0,114,7,1,0, + 0,114,16,1,0,0,114,3,0,0,0,114,57,0,0,0, + 114,20,1,0,0,114,71,1,0,0,41,3,114,132,1,0, + 0,114,133,1,0,0,90,17,115,117,112,112,111,114,116,101, + 100,95,108,111,97,100,101,114,115,114,4,0,0,0,114,4, + 0,0,0,114,5,0,0,0,218,8,95,105,110,115,116,97, + 108,108,100,9,0,0,115,16,0,0,0,0,2,13,1,9, + 1,28,1,16,1,16,1,15,1,16,1,114,135,1,0,0, + 41,3,122,3,119,105,110,114,1,0,0,0,114,2,0,0, + 0,41,98,114,59,0,0,0,114,10,0,0,0,114,11,0, + 0,0,114,17,0,0,0,114,19,0,0,0,114,28,0,0, + 0,114,38,0,0,0,114,39,0,0,0,114,43,0,0,0, + 114,44,0,0,0,114,46,0,0,0,114,55,0,0,0,114, + 65,0,0,0,114,68,0,0,0,114,66,0,0,0,218,8, + 95,95,99,111,100,101,95,95,114,191,0,0,0,114,69,0, + 0,0,114,109,0,0,0,114,92,0,0,0,114,99,0,0, + 0,114,82,0,0,0,114,83,0,0,0,114,102,0,0,0, + 114,103,0,0,0,114,105,0,0,0,114,112,0,0,0,114, + 114,0,0,0,114,15,0,0,0,114,183,0,0,0,114,14, + 0,0,0,114,18,0,0,0,90,17,95,82,65,87,95,77, + 65,71,73,67,95,78,85,77,66,69,82,114,125,0,0,0, + 114,134,0,0,0,114,119,0,0,0,114,120,0,0,0,114, + 132,0,0,0,114,135,0,0,0,114,142,0,0,0,114,144, + 0,0,0,114,152,0,0,0,114,156,0,0,0,114,161,0, + 0,0,114,164,0,0,0,114,172,0,0,0,114,178,0,0, + 0,114,188,0,0,0,114,193,0,0,0,114,196,0,0,0, + 114,201,0,0,0,114,210,0,0,0,114,211,0,0,0,114, + 215,0,0,0,114,173,0,0,0,218,6,111,98,106,101,99, + 116,114,240,0,0,0,114,238,0,0,0,114,246,0,0,0, + 114,252,0,0,0,114,254,0,0,0,114,208,0,0,0,114, + 174,0,0,0,114,2,1,0,0,114,3,1,0,0,114,175, + 0,0,0,114,6,1,0,0,114,7,1,0,0,114,16,1, + 0,0,114,20,1,0,0,114,30,1,0,0,114,31,1,0, + 0,114,46,1,0,0,114,5,1,0,0,114,4,1,0,0, + 114,57,1,0,0,114,54,1,0,0,114,58,1,0,0,114, + 249,0,0,0,114,71,1,0,0,114,85,1,0,0,114,99, + 1,0,0,114,102,1,0,0,114,103,1,0,0,114,105,1, + 0,0,114,108,1,0,0,114,117,1,0,0,114,109,1,0, + 0,114,111,1,0,0,114,112,1,0,0,114,113,1,0,0, + 114,119,1,0,0,114,121,1,0,0,114,239,0,0,0,114, + 124,1,0,0,114,125,1,0,0,114,134,1,0,0,114,135, + 1,0,0,114,4,0,0,0,114,4,0,0,0,114,4,0, + 0,0,114,5,0,0,0,218,8,60,109,111,100,117,108,101, + 62,8,0,0,0,115,182,0,0,0,6,17,6,3,12,12, + 12,5,12,5,12,6,12,12,12,10,12,9,12,5,12,7, + 15,22,12,8,12,4,15,4,19,20,6,2,6,3,22,4, + 19,68,19,21,19,19,12,19,12,20,12,115,22,1,18,2, + 6,2,9,2,9,1,9,2,15,27,12,23,12,19,12,12, + 18,8,12,18,12,11,12,11,12,18,12,15,21,55,21,12, + 18,10,12,14,12,36,19,27,19,106,24,22,9,3,12,1, + 15,63,18,45,18,56,12,14,12,17,12,25,12,29,12,23, + 12,14,15,25,19,70,19,71,19,63,19,24,22,110,19,41, + 25,43,25,16,6,3,19,57,19,57,19,38,19,134,19,146, + 19,13,12,9,12,9,15,40,12,17,6,1,10,2,12,27, + 12,6,18,24,12,32,12,15,12,11,24,35,12,7,12,86, }; diff --git a/Tools/ssl/sslspeed.vcxproj b/Tools/ssl/sslspeed.vcxproj new file mode 100644 --- /dev/null +++ b/Tools/ssl/sslspeed.vcxproj @@ -0,0 +1,70 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + + {F068BCCF-C0D6-478D-A2C5-26BA3237C992} + sslspeed + + + + + + + + $(OutDir) + $(MSBuildProjectDirectory)\$(ArchName)\ + $(MSBuildProjectDirectory)\$(ArchName)\obj\ + Application + MultiByte + + + + + + + + + + + + _CONSOLE;%(PreprocessorDefinitions) + $(opensslIncDir);%(AdditionalIncludeDirectories) + + + ws2_32.lib;crypt32.lib;libeay$(PyDebugExt).lib;ssleay$(PyDebugExt).lib;%(AdditionalDependencies) + $(OriginalOutDir);%(AdditionalLibraryDirectories) + Console + + + + + + {10615b24-73bf-4efa-93aa-236916321317} + false + + + {e5b04cc0-eb4c-42ab-b4dc-18ef95f864b0} + false + + + + + \ No newline at end of file diff --git a/Lib/ctypes/util.py b/Lib/ctypes/util.py --- a/Lib/ctypes/util.py +++ b/Lib/ctypes/util.py @@ -19,6 +19,8 @@ i = i + len(prefix) s, rest = sys.version[i:].split(" ", 1) majorVersion = int(s[:-2]) - 6 + if majorVersion >= 13: + majorVersion += 1 minorVersion = int(s[2:3]) / 10.0 # I don't think paths are affected by minor version in version 6 if majorVersion == 6: @@ -36,8 +38,10 @@ return None if version <= 6: clibname = 'msvcrt' + elif version <= 13: + clibname = 'msvcr%d' % (version * 10) else: - clibname = 'msvcr%d' % (version * 10) + clibname = 'appcrt%d' % (version * 10) # If python was built with in debug mode import importlib.machinery diff --git a/Modules/_datetimemodule.c b/Modules/_datetimemodule.c --- a/Modules/_datetimemodule.c +++ b/Modules/_datetimemodule.c @@ -7,6 +7,17 @@ #include +#ifdef _MSC_VER +#if _MSC_VER >= 1900 +/* MSVC 14 redefines these names with a leading underscore, but they are + * otherwise identical. + */ +#define timezone _timezone +#define daylight _daylight +#define tzname _tzname +#endif +#endif + /* Differentiate between building the core module and building extension * modules. */ diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -1046,15 +1046,33 @@ /* The actual size of the structure is determined at runtime. * Only the first items must be present. */ + +#if _MSC_VER >= 1900 + +typedef struct { + CRITICAL_SECTION lock; + intptr_t osfhnd; + __int64 startpos; + char osfile; +} my_ioinfo; + +#define IOINFO_L2E 6 +#define IOINFO_ARRAYS 128 + +#else + typedef struct { intptr_t osfhnd; char osfile; } my_ioinfo; +#define IOINFO_L2E 5 +#define IOINFO_ARRAYS 64 + +#endif + extern __declspec(dllimport) char * __pioinfo[]; -#define IOINFO_L2E 5 #define IOINFO_ARRAY_ELTS (1 << IOINFO_L2E) -#define IOINFO_ARRAYS 64 #define _NHANDLE_ (IOINFO_ARRAYS * IOINFO_ARRAY_ELTS) #define FOPEN 0x01 #define _NO_CONSOLE_FILENO (intptr_t)-2 diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c --- a/Modules/socketmodule.c +++ b/Modules/socketmodule.c @@ -284,6 +284,11 @@ # include # endif +#if defined(_MSC_VER) && _MSC_VER >= 1800 +/* Provides the IsWindows7SP1OrGreater() function */ +#include +#endif + #endif #include @@ -5845,11 +5850,15 @@ #ifdef MS_WINDOWS if (support_wsa_no_inherit == -1) { +#if defined(_MSC_VER) && _MSC_VER >= 1800 + support_wsa_no_inherit = IsWindows7SP1OrGreater(); +#else DWORD version = GetVersion(); DWORD major = (DWORD)LOBYTE(LOWORD(version)); DWORD minor = (DWORD)HIBYTE(LOWORD(version)); /* need Windows 7 SP1, 2008 R2 SP1 or later */ - support_wsa_no_inherit = (major >= 6 && minor >= 1); + support_wsa_no_inherit = major > 6 || (major == 6 && minor >= 1); +#endif } #endif diff --git a/Modules/timemodule.c b/Modules/timemodule.c --- a/Modules/timemodule.c +++ b/Modules/timemodule.c @@ -30,14 +30,19 @@ #endif /* MS_WINDOWS */ #endif /* !__WATCOMC__ || __QNX__ */ +#if defined(_MSC_VER) && _MSC_VER >= 1900 +/* MSVC 14 redefines these names with a leading underscore, but they are +* otherwise identical. +*/ +#define timezone _timezone +#define daylight _daylight +#define tzname _tzname +#endif + /* Forward declarations */ static int floatsleep(double); static PyObject* floattime(_Py_clock_info_t *info); -#ifdef MS_WINDOWS -static OSVERSIONINFOEX winver; -#endif - static PyObject * time_time(PyObject *self, PyObject *unused) { @@ -1359,15 +1364,6 @@ if (PyStructSequence_InitType2(&StructTimeType, &struct_time_type_desc) < 0) return NULL; - -#ifdef MS_WINDOWS - winver.dwOSVersionInfoSize = sizeof(winver); - if (!GetVersionEx((OSVERSIONINFO*)&winver)) { - Py_DECREF(m); - PyErr_SetFromWindowsErr(0); - return NULL; - } -#endif } Py_INCREF(&StructTimeType); #ifdef HAVE_STRUCT_TM_TM_ZONE diff --git a/PC/bdist_wininst/install.c b/PC/bdist_wininst/install.c --- a/PC/bdist_wininst/install.c +++ b/PC/bdist_wininst/install.c @@ -82,6 +82,10 @@ #include #include #include "resource.h" +#if defined(_MSC_VER) && _MSC_VER >= 1800 +/* Provides the IsWindowsXPOrGreater() function */ +#include +#endif #include #include @@ -1216,7 +1220,7 @@ #include -BOOL CALLBACK +INT_PTR CALLBACK IntroDlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) { LPNMHDR lpnm; @@ -1565,7 +1569,7 @@ return old_scheme; } -BOOL CALLBACK +INT_PTR CALLBACK SelectPythonDlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) { LPNMHDR lpnm; @@ -1857,7 +1861,7 @@ fclose(logfile); } -BOOL CALLBACK +INT_PTR CALLBACK InstallFilesDlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) { LPNMHDR lpnm; @@ -2012,7 +2016,7 @@ } -BOOL CALLBACK +INT_PTR CALLBACK FinishedDlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) { LPNMHDR lpnm; @@ -2194,6 +2198,9 @@ // Note that win2k does seem to support ShellExecute with 'runas', // but does *not* support IsUserAnAdmin - so we just pretend things // only work on XP and later. +#if defined(_MSC_VER) && _MSC_VER >= 1800 + return IsWindowsXPOrGreater(); +#else BOOL bIsWindowsXPorLater; OSVERSIONINFO winverinfo; winverinfo.dwOSVersionInfoSize = sizeof(winverinfo); @@ -2203,6 +2210,7 @@ ( (winverinfo.dwMajorVersion > 5) || ( (winverinfo.dwMajorVersion == 5) && (winverinfo.dwMinorVersion >= 1) )); return bIsWindowsXPorLater; +#endif } // Spawn ourself as an elevated application. On failure, a message is diff --git a/PC/pylauncher.rc b/PC/pylauncher.rc --- a/PC/pylauncher.rc +++ b/PC/pylauncher.rc @@ -34,7 +34,7 @@ VALUE "FileDescription", "Python Launcher for Windows (Console)" VALUE "FileVersion", PYTHON_VERSION VALUE "InternalName", "py" - VALUE "LegalCopyright", "Copyright (C) 2011-2012 Python Software Foundation" + VALUE "LegalCopyright", "Copyright (C) 2011-2014 Python Software Foundation" VALUE "OriginalFilename", "py" VALUE "ProductName", "Python Launcher for Windows" VALUE "ProductVersion", PYTHON_VERSION diff --git a/PC/python_nt.rc b/PC/python_nt.rc --- a/PC/python_nt.rc +++ b/PC/python_nt.rc @@ -13,7 +13,7 @@ #endif /* e.g., 3.3.0a1 - * PY_VERSION comes from patchevel.h + * PY_VERSION comes from patchlevel.h */ #define PYTHON_VERSION PY_VERSION "\0" diff --git a/PC/readme.txt b/PC/readme.txt --- a/PC/readme.txt +++ b/PC/readme.txt @@ -76,7 +76,7 @@ Legacy support for older versions of Visual Studio ================================================== -The subdirectories VC6, VS7.1 and VS8.0 contain legacy support older +The subdirectories VS9.0 and VS10.0 contain legacy support for older versions of Microsoft Visual Studio. See PCbuild/readme.txt. Note for Windows 3.x and DOS users diff --git a/PCbuild/build.bat b/PCbuild/build.bat --- a/PCbuild/build.bat +++ b/PCbuild/build.bat @@ -6,29 +6,35 @@ rem -c Set the configuration (default: Release) rem -p Set the platform (x64 or Win32, default: Win32) rem -r Target Rebuild instead of Build +rem -t Set the target manually (Build, Rebuild, Clean, or CleanAll) rem -d Set the configuration to Debug rem -e Pull in external libraries using get_externals.bat +rem -M Disable parallel build setlocal set platf=Win32 +set vs_platf=x86 set conf=Release set target=Build set dir=%~dp0 +set parallel=/m :CheckOpts if '%1'=='-c' (set conf=%2) & shift & shift & goto CheckOpts if '%1'=='-p' (set platf=%2) & shift & shift & goto CheckOpts if '%1'=='-r' (set target=Rebuild) & shift & goto CheckOpts +if '%1'=='-t' (set target=%2) & shift & shift & goto CheckOpts if '%1'=='-d' (set conf=Debug) & shift & goto CheckOpts if '%1'=='-e' call "%dir%get_externals.bat" & shift & goto CheckOpts +if '%1'=='-M' (set parallel=) & shift & goto CheckOpts if '%platf%'=='x64' (set vs_platf=x86_amd64) rem Setup the environment -call "%VS100COMNTOOLS%..\..\VC\vcvarsall.bat" %vs_platf% +call "%dir%env.bat" %vs_platf% rem Call on MSBuild to do the work, echo the command. rem Passing %1-9 is not the preferred option, but argument parsing in rem batch is, shall we say, "lackluster" echo on -msbuild "%dir%pcbuild.sln" /t:%target% /p:Configuration=%conf% /p:Platform=%platf% %1 %2 %3 %4 %5 %6 %7 %8 %9 +msbuild "%dir%pcbuild.proj" /t:%target% %parallel% /p:Configuration=%conf% /p:Platform=%platf% %1 %2 %3 %4 %5 %6 %7 %8 %9 diff --git a/PCbuild/build_pgo.bat b/PCbuild/build_pgo.bat --- a/PCbuild/build_pgo.bat +++ b/PCbuild/build_pgo.bat @@ -7,6 +7,7 @@ setlocal set platf=Win32 +set parallel=/m set dir=%~dp0 rem use the performance testsuite. This is quick and simple @@ -23,26 +24,25 @@ :CheckOpts if "%1"=="-p" (set platf=%2) & shift & shift & goto CheckOpts if "%1"=="-2" (set job=%job2%) & (set clrpath=%path2%) & shift & goto CheckOpts +if "%1"=="-M" (set parallel=) & shift & goto CheckOpts -set PGI=%dir%%platf%-pgi -set PGO=%dir%%platf%-pgo rem We cannot cross compile PGO builds, as the optimization needs to be run natively set vs_platf=x86 -if "%platf%"=="x64" (set vs_platf=amd64) +set PGO=%dir%win32-pgo + +if "%platf%"=="x64" (set vs_platf=amd64) & (set PGO=%dir%amd64-pgo) rem Setup the environment -call "%VS100COMNTOOLS%..\..\VC\vcvarsall.bat" %vs_platf% +call "%dir%env.bat" %vs_platf% + rem build the instrumented version -msbuild "%dir%pcbuild.sln" /t:Build /p:Configuration=PGInstrument /p:Platform=%platf% %1 %2 %3 %4 %5 %6 %7 %8 %9 +msbuild "%dir%pcbuild.proj" %parallel% /t:Build /p:Configuration=PGInstrument /p:Platform=%platf% %1 %2 %3 %4 %5 %6 %7 %8 %9 rem remove .pyc files, .pgc files and execute the job -"%PGI%\python.exe" "%dir%rmpyc.py" %clrpath% -del "%PGI%\*.pgc" -"%PGI%\python.exe" %job% - -rem clean -if exist "%PGO%" del /s /q "%PGO%" +"%PGO%\python.exe" "%dir%rmpyc.py" %clrpath% +del "%PGO%\*.pgc" +"%PGO%\python.exe" %job% rem build optimized version -msbuild "%dir%pcbuild.sln" /t:Build /p:Configuration=PGUpdate /p:Platform=%platf% %1 %2 %3 %4 %5 %6 %7 %8 %9 +msbuild "%dir%pcbuild.proj" %parallel% /t:Build /p:Configuration=PGUpdate /p:Platform=%platf% %1 %2 %3 %4 %5 %6 %7 %8 %9 diff --git a/PCbuild/clean.bat b/PCbuild/clean.bat new file mode 100644 --- /dev/null +++ b/PCbuild/clean.bat @@ -0,0 +1,5 @@ +@echo off +rem A batch program to clean a particular configuration, +rem just for convenience. + +call build.bat -t Clean %* diff --git a/PCbuild/env.bat b/PCbuild/env.bat --- a/PCbuild/env.bat +++ b/PCbuild/env.bat @@ -1,5 +1,9 @@ @echo off -echo Build environments: x86, ia64, amd64, x86_amd64, x86_ia64 +echo Build environments: x86, amd64, x86_amd64 echo. -call "%VS100COMNTOOLS%..\..\VC\vcvarsall.bat" %1 +set VSTOOLS=%VS140COMNTOOLS% +if "%VSTOOLS%"=="" set VSTOOLS=%VS120COMNTOOLS% +if "%VSTOOLS%"=="" set VSTOOLS=%VS110COMNTOOLS% +if "%VSTOOLS%"=="" set VSTOOLS=%VS100COMNTOOLS% +call "%VSTOOLS%..\..\VC\vcvarsall.bat" %* diff --git a/PCbuild/idle.bat b/PCbuild/idle.bat --- a/PCbuild/idle.bat +++ b/PCbuild/idle.bat @@ -4,10 +4,10 @@ rem -d Run Debug build (python_d.exe). Else release build. setlocal -set exe=python -PATH %PATH%;..\..\tcltk\bin +set exe=win32\python +PATH %PATH%;..\externals\tcltk\bin -if "%1"=="-d" (set exe=python_d) & shift +if "%1"=="-d" (set exe=%exe%_d) & shift set cmd=%exe% ../Lib/idlelib/idle.py %1 %2 %3 %4 %5 %6 %7 %8 %9 diff --git a/PCbuild/pcbuild.proj b/PCbuild/pcbuild.proj new file mode 100644 --- /dev/null +++ b/PCbuild/pcbuild.proj @@ -0,0 +1,76 @@ + + + + {CC9B93A2-439D-4058-9D29-6DCF43774405} + Win32 + Release + true + true + true + + + + + $(Platform) + $(Configuration) + + Build + Clean + CleanAll + true + + + + + + + + + + + + + + + + + + + + + + + + + false + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/PCbuild/python.props b/PCbuild/python.props new file mode 100644 --- /dev/null +++ b/PCbuild/python.props @@ -0,0 +1,105 @@ + + + + Win32 + Release + + v140 + v120 + v110 + v100 + + + amd64 + win32 + $(ArchName)-pgo + + + $([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)\..\)) + $(PySourcePath)\ + + + $(PySourcePath)PCBuild\$(ArchName)\ + $(BuildPath)\ + + + $([System.IO.Path]::GetFullPath(`$(PySourcePath)externals\`)) + $(ExternalsDir)sqlite-3.8.3.1\ + $(ExternalsDir)bzip2-1.0.6\ + $(ExternalsDir)xz-5.0.5\ + $(ExternalsDir)openssl-1.0.1j\ + $(externalsDir)\nasm-2.11.06\ + + + _d + + + $(BuildPath)python$(PyDebugExt).exe + + + <_PatchLevelContent>$([System.IO.File]::ReadAllText(`$(PySourcePath)Include\patchlevel.h`)) + $([System.Text.RegularExpressions.Regex]::Match($(_PatchLevelContent), `define\s+PY_MAJOR_VERSION\s+(\d+)`).Groups[1].Value) + $([System.Text.RegularExpressions.Regex]::Match($(_PatchLevelContent), `define\s+PY_MINOR_VERSION\s+(\d+)`).Groups[1].Value) + $([System.Text.RegularExpressions.Regex]::Match($(_PatchLevelContent), `define\s+PY_MICRO_VERSION\s+(\d+)`).Groups[1].Value) + <_ReleaseLevel>$([System.Text.RegularExpressions.Regex]::Match($(_PatchLevelContent), `define\s+PY_RELEASE_LEVEL\s+PY_RELEASE_LEVEL_(\w+)`).Groups[1].Value) + $([System.Text.RegularExpressions.Regex]::Match($(_PatchLevelContent), `define\s+PY_RELEASE_SERIAL\s+(\d+)`).Groups[1].Value) + 10 + 11 + 12 + 15 + a$(ReleaseSerial) + b$(ReleaseSerial) + rc$(ReleaseSerial) + + $(MajorVersionNumber).$(MinorVersionNumber).$(MicroVersionNumber) + $(MajorVersionNumber).$(MinorVersionNumber).$(MicroVersionNumber)$(ReleaseLevelName) + $([msbuild]::BitwiseOr( + $([msbuild]::Multiply($(MajorVersionNumber), 16777216)), + $([msbuild]::BitwiseOr( + $([msbuild]::Multiply($(MinorVersionNumber), 65536)), + $([msbuild]::BitwiseOr( + $([msbuild]::Multiply($(MicroVersionNumber), 256)), + $(ReleaseSerial) + )) + )) + )) + $([msbuild]::Add( + $(ReleaseSerial), + $([msbuild]::Add( + $([msbuild]::Multiply($(ReleaseLevelNumber), 10)), + $([msbuild]::Multiply($(MicroVersionNumber), 1000)) + )) + )) + + + python$(MajorVersionNumber)$(MinorVersionNumber)$(PyDebugExt) + + + + + + + + + + diff --git a/PCbuild/readme.txt b/PCbuild/readme.txt --- a/PCbuild/readme.txt +++ b/PCbuild/readme.txt @@ -1,7 +1,7 @@ Quick Start Guide ----------------- -1. Install Microsoft Visual C++ 2010 SP1, any edition. +1. Install Microsoft Visual Studio 2015, any edition. 2. Install Subversion, and make sure 'svn.exe' is on your PATH. 3. Run "build.bat -e" to build Python in 32-bit Release configuration. 4. (Optional, but recommended) Run the test suite with "rt.bat -q". @@ -11,41 +11,38 @@ ------------------------------------------ This directory is used to build CPython for Microsoft Windows NT version -5.1 or higher (Windows XP, Windows Server 2003, or later) on 32 and 64 +6.0 or higher (Windows Vista, Windows Server 2008, or later) on 32 and 64 bit platforms. Using this directory requires an installation of -Microsoft Visual C++ 2010 (MSVC 10.0) of any edition. The specific +Microsoft Visual C++ 2015 (MSVC 14.0) of any edition. The specific requirements are as follows: -Visual C++ 2010 Express Edition - Required for building 32-bit Debug and Release configuration builds. +Visual Studio Express 2015 for Desktop +Visual Studio Professional 2015 + Either edition is sufficient for building all configurations except + for Profile Guided Optimization. The Python build solution pcbuild.sln makes use of Solution Folders, which this edition does not support. Any time pcbuild.sln is opened - or reloaded by Visual C++, a warning about Solution Folders will be - displayed which can be safely dismissed with no impact on your + or reloaded by Visual CStudio, a warning about Solution Folders will + be displayed, which can be safely dismissed with no impact on your ability to build Python. -Visual Studio 2010 Professional Edition Required for building 64-bit Debug and Release configuration builds -Visual Studio 2010 Premium Edition +Visual Studio Premium 2015 Required for building Release configuration builds that make use of Profile Guided Optimization (PGO), on either platform. -Installing Service Pack 1 for Visual Studio 2010 is highly recommended -to avoid LNK1123 errors. - All you need to do to build is open the solution "pcbuild.sln" in Visual Studio, select the desired combination of configuration and platform, -then build with "Build Solution" or the F7 keyboard shortcut. You can -also build from the command line using the "build.bat" script in this -directory; see below for details. The solution is configured to build -the projects in the correct order. +then build with "Build Solution". You can also build from the command +line using the "build.bat" script in this directory; see below for +details. The solution is configured to build the projects in the correct +order. The solution currently supports two platforms. The Win32 platform is -used to build standard x86-compatible 32-bit binaries, output into this -directory. The x64 platform is used for building 64-bit AMD64 (aka -x86_64 or EM64T) binaries, output into the amd64 sub-directory which -will be created if it doesn't already exist. The Itanium (IA-64) -platform is no longer supported. See the "Building for AMD64" section -below for more information about 64-bit builds. +used to build standard x86-compatible 32-bit binaries, output into the +win32 sub-directory. The x64 platform is used for building 64-bit AMD64 +(aka x86_64 or EM64T) binaries, output into the amd64 sub-directory. +The Itanium (IA-64) platform is no longer supported. See the "Building +for AMD64" section below for more information about 64-bit builds. Four configuration options are supported by the solution: Debug @@ -61,8 +58,8 @@ requires Premium Edition of Visual Studio. See the "Profile Guided Optimization" section below for more information. Build output from each of these configurations lands in its own - sub-directory of this directory. The official Python releases are - built using these configurations. + sub-directory of this directory. The official Python releases may + be built using these configurations. Release Used to build Python as it is meant to be used in production settings, though without PGO. @@ -72,10 +69,10 @@ ---------------------------------------------- In this directory you can find build.bat, a script designed to make -building Python on Windows simpler. The only absolute requirement for -using this script is for the VS100COMNTOOLS environment variable to be -properly set, which should be done by Microsoft Visual C++ 2010 -installation. +building Python on Windows simpler. This script will use the env.bat +script to detect one of Visual Studio 2015, 2013, 2012, or 2010, any of +which may be used to build Python, though only Visual Studio 2015 is +officially supported. By default, build.bat will build Python in Release configuration for the 32-bit Win32 platform. It accepts several arguments to change @@ -86,15 +83,16 @@ -p Set the platform to build for ("Win32" or "x64") -r Rebuild instead of just building -e Use get_externals.bat to fetch external sources + -M Don't build in parallel Up to 9 MSBuild switches can also be passed, though they must be passed after specifying any of the above switches. For example, use: - build.bat -e -d /m + build.bat -e -d /fl -to do a concurrent debug build with externals fetched as needed. If -the MSBuild switch requires an equal sign ("="), the entire switch must -be quoted: +to do a debug build with externals fetched as needed and write detailed +build logs to a file. If the MSBuild switch requires an equal sign +("="), the entire switch must be quoted: build.bat -e -d "/p:externalsDir=P:\cpython-externals" @@ -108,14 +106,18 @@ Visual C++ in the PC directory. The legacy build directories are no longer actively maintained and may not work out of the box. -Currently, the only legacy build directory is PC\VS9.0, for Visual -Studio 2008 (9.0). +The PC\VS9.0 directory is for Visual Studio 2008 (9.0). + +The PC\VS10.0 directory is for Visual Studio 2010 (10.0). This is a copy +of the PCBuild directory prior to adding support for later versions of +Visual Studio, and since Visual Studio 2010 can still be used with the +updated projects, this copy is unlikely to be needed. C Runtime --------- -Visual Studio 2010 uses version 10 of the C runtime (MSVCRT10). The +Visual Studio 2015 uses version 14 of the C runtime (MSVCRT14). The executables no longer use the "Side by Side" assemblies used in previous versions of the compiler. This simplifies distribution of applications. @@ -140,13 +142,12 @@ .dll and .lib python .exe -kill_python - kill_python.exe, a small program designed to kill any instances of - python(_d).exe that are running and live in the build output - directory; this is meant to avoid build issues due to locked files make_buildinfo, make_versioninfo helpers to provide necessary information to the build process +(The old kill_python project is no longer required as pythoncore now +includes the equivalent functionality.) + These sub-projects provide extra executables that are useful for running CPython in different ways: pythonw @@ -163,8 +164,7 @@ purposes, used by test_capi.py These are miscellaneous sub-projects that don't really fit the other -categories. By default, these projects do not build in Debug -configuration: +categories: _freeze_importlib _freeze_importlib.exe, used to regenerate Python\importlib.h after changes have been made to Lib\importlib\_bootstrap.py @@ -225,10 +225,10 @@ need a later version of NASM. If OpenSSL's self tests don't pass, you should first try to update NASM and do a full rebuild of OpenSSL. get_externals.py also downloads a snapshot of NASM, and the - ssl sub-project includes that version of nasm.exe on PATH. + libeay and ssleay sub-projects use that version of nasm.exe. - The ssl sub-project expects your OpenSSL sources to have already - been configured and be ready to build. If you get your sources + The libeay/ssleay sub-projects expect your OpenSSL sources to have + already been configured and be ready to build. If you get your sources from svn.python.org as suggested in the "Getting External Sources" section below, the OpenSSL source will already be ready to go. If you want to build a different version, you will need to run @@ -241,8 +241,11 @@ OpenSSL. ActivePerl is recommended and is available from http://www.activestate.com/activeperl/ - The ssl sub-project does not have the ability to clean the OpenSSL - build; if you need to rebuild, you'll have to clean it by hand. + The libeay and ssleay sub-projects will build the modules of OpenSSL + required by _ssl and _hashlib and may need to be manually updated when + upgrading to a newer version of OpenSSL or when adding new + functionality to _ssl or _hashlib. They will not clean up their output + with the normal Clean target; CleanAll should be used instead. _sqlite3 Wraps SQLite 3.8.3.1, which is itself built by sqlite3.vcxproj Homepage: @@ -262,9 +265,9 @@ into the current output directory, which should ensure that Tkinter is able to load Tcl/Tk without having to change your PATH. - The tcl, tk, and tix sub-projects do not have the ability to clean - their builds; if you need to rebuild, you'll have to clean them by - hand. + The tcl, tk, and tix sub-projects do not clean their builds with + the normal Clean target; if you need to rebuild, you should use the + CleanAll target or manually delete their builds. Getting External Sources @@ -293,9 +296,7 @@ The build process for AMD64 / x64 is very similar to standard builds, you just have to set x64 as platform. In addition, the HOST_PYTHON environment variable must point to a Python interpreter (at least 2.4), -to support cross-compilation from Win32. Note that Visual Studio -requires Professional Edition or better in order to build 64-bit -binaries. +to support cross-compilation from Win32. Profile Guided Optimization @@ -330,31 +331,22 @@ Visual Studio properties ------------------------ -The PCbuild solution makes heavy use of Visual Studio property files -(*.props). The properties can be viewed and altered in the Property -Manager (View -> Other Windows -> Property Manager). +The PCbuild solution makes use of Visual Studio property files (*.props) +to simplify each project. The properties can be viewed in the Property +Manager (View -> Other Windows -> Property Manager) but should be +carefully modified by hand. The property files used are (+-- = "also imports"): - * debug (debug macro: _DEBUG) - * pginstrument (PGO) - * pgupdate (PGO) - +-- pginstrument - * pyd (python extension, release build) - +-- release - +-- pyproject - * pyd_d (python extension, debug build) - +-- debug - +-- pyproject - * pyproject (base settings for all projects, user macros like PyDllName) - * release (release macro: NDEBUG) - * sqlite3 (used only by sqlite3.vcxproj) + * python (versions, directories and build names) + * pyproject (base settings for all projects) + * openssl (used by libeay and ssleay projects) * tcltk (used by _tkinter, tcl, tk and tix projects) - * x64 (AMD64 / x64 platform specific settings) -The pyproject property file defines _WIN32 and x64 defines _WIN64 and -_M_X64 although the macros are set by the compiler, too. The GUI doesn't -always know about the macros and confuse the user with false -information. +The pyproject property file defines all of the build settings for each +project, with some projects overriding certain specific values. The GUI +doesn't always reflect the correct settings and may confuse the user +with false information, especially for settings that automatically adapt +for diffirent configurations. Your Own Extension DLLs diff --git a/PCbuild/rt.bat b/PCbuild/rt.bat --- a/PCbuild/rt.bat +++ b/PCbuild/rt.bat @@ -28,7 +28,7 @@ setlocal set pcbuild=%~dp0 -set prefix=%pcbuild% +set prefix=%pcbuild%win32\ set suffix= set qmode= set dashO= @@ -39,8 +39,9 @@ if "%1"=="-d" (set suffix=_d) & shift & goto CheckOpts if "%1"=="-x64" (set prefix=%pcbuild%amd64\) & shift & goto CheckOpts -set exe=%prefix%python%suffix%.exe -set cmd="%exe%" %dashO% -Wd -E -bb "%pcbuild%..\lib\test\regrtest.py" %1 %2 %3 %4 %5 %6 %7 %8 %9 +set cmd=%exe% %dashO% -Wd -E -bb ../lib/test/regrtest.py %1 %2 %3 %4 %5 %6 %7 %8 %9 +set exe=%prefix%python%suffix% +set cmd=%exe% %dashO% -Wd -E -bb ../lib/test/regrtest.py %* if defined qmode goto Qmode echo Deleting .pyc/.pyo files ... diff --git a/Tools/buildbot/build-amd64.bat b/Tools/buildbot/build-amd64.bat --- a/Tools/buildbot/build-amd64.bat +++ b/Tools/buildbot/build-amd64.bat @@ -1,2 +1,17 @@ @rem Used by the buildbot "compile" step. -call "%~dp0build.bat" -p x64 %* + +@rem Clean up +call "%~dp0clean.bat" x64 + +@rem If you need the buildbots to start fresh (such as when upgrading to +@rem a new version of an external library, especially Tcl/Tk): +@rem 1) uncomment the following line: + +@rem call "%~dp0..\..\PCbuild\get_externals.bat" --clean-only + +@rem 2) commit and push +@rem 3) wait for all Windows bots to start a build with that changeset +@rem 4) re-comment, commit and push again + +@rem Do the build +call "%~dp0..\..\PCbuild\build.bat" -p x64 -e -d %* diff --git a/Tools/buildbot/buildmsi.bat b/Tools/buildbot/buildmsi.bat --- a/Tools/buildbot/buildmsi.bat +++ b/Tools/buildbot/buildmsi.bat @@ -2,6 +2,7 @@ setlocal set cwd=%CD% + @rem build release versions of things call "%~dp0build.bat" -c Release @@ -9,7 +10,7 @@ call "%~dp0..\..\Doc\make.bat" htmlhelp @rem build the MSI file -call "%VS100COMNTOOLS%..\..\VC\vcvarsall.bat" x86 +call "%~dp0..\..\PCBuild\env.bat" x86 cd "%~dp0..\..\PC" nmake /f icons.mak cd ..\Tools\msi diff --git a/Tools/buildbot/clean.bat b/Tools/buildbot/clean.bat --- a/Tools/buildbot/clean.bat +++ b/Tools/buildbot/clean.bat @@ -5,29 +5,25 @@ set root=%~dp0..\.. set pcbuild=%root%\PCbuild -echo.Attempting to kill Pythons... -for %%k in (kill_python.exe - kill_python_d.exe - amd64\kill_python.exe - amd64\kill_python_d.exe - ) do ( - if exist "%pcbuild%\%%k" ( - echo.Calling %pcbuild%\%%k... - "%pcbuild%\%%k" - ) -) if "%1" == "x64" ( set vcvars_target=x86_amd64 - set platform_target=x64 + set platform=x64 ) else ( set vcvars_target=x86 - set platform_target=x86 + set platform=Win32 ) -call "%VS100COMNTOOLS%\..\..\VC\vcvarsall.bat" %vcvars_target% + +call "%pcbuild%\env.bat" %vcvars_target% + +echo.Attempting to kill Pythons... +msbuild /v:m /nologo /target:KillPython "%pcbuild%\pythoncore.vcxproj" /p:Configuration=Release /p:Platform=%platform% + echo Deleting .pyc/.pyo files ... del /s "%root%\Lib\*.pyc" "%root%\Lib\*.pyo" + echo Deleting test leftovers ... rmdir /s /q "%root%\build" -msbuild /target:clean "%pcbuild%\pcbuild.sln" /p:Configuration=Release /p:PlatformTarget=%platform_target% -msbuild /target:clean "%pcbuild%\pcbuild.sln" /p:Configuration=Debug /p:PlatformTarget=%platform_target% +echo Deleting build +msbuild /v:m /nologo /target:clean "%pcbuild%\pcbuild.proj" /p:Configuration=Release /p:Platform=%platform% +msbuild /v:m /nologo /target:clean "%pcbuild%\pcbuild.proj" /p:Configuration=Debug /p:Platform=%platform%