2019-06-14 08:29:20 -07:00
<?xml version="1.0" encoding="utf-8"?>
2012-05-13 11:19:23 -05:00
<Project DefaultTargets= "Build" ToolsVersion= "4.0" xmlns= "http://schemas.microsoft.com/developer/msbuild/2003" >
<ItemGroup Label= "ProjectConfigurations" >
2019-02-14 08:31:30 -08:00
<ProjectConfiguration Include= "Debug|ARM" >
<Configuration > Debug</Configuration>
<Platform > ARM</Platform>
</ProjectConfiguration>
2019-05-17 10:07:24 -07:00
<ProjectConfiguration Include= "Debug|ARM64" >
<Configuration > Debug</Configuration>
<Platform > ARM64</Platform>
</ProjectConfiguration>
2012-05-13 11:19:23 -05:00
<ProjectConfiguration Include= "Debug|Win32" >
<Configuration > Debug</Configuration>
<Platform > Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include= "Debug|x64" >
<Configuration > Debug</Configuration>
<Platform > x64</Platform>
</ProjectConfiguration>
2019-02-14 08:31:30 -08:00
<ProjectConfiguration Include= "PGInstrument|ARM" >
<Configuration > PGInstrument</Configuration>
<Platform > ARM</Platform>
</ProjectConfiguration>
2019-05-17 10:07:24 -07:00
<ProjectConfiguration Include= "PGInstrument|ARM64" >
<Configuration > PGInstrument</Configuration>
<Platform > ARM64</Platform>
</ProjectConfiguration>
2012-05-13 11:19:23 -05:00
<ProjectConfiguration Include= "PGInstrument|Win32" >
<Configuration > PGInstrument</Configuration>
<Platform > Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include= "PGInstrument|x64" >
<Configuration > PGInstrument</Configuration>
<Platform > x64</Platform>
</ProjectConfiguration>
2019-02-14 08:31:30 -08:00
<ProjectConfiguration Include= "PGUpdate|ARM" >
<Configuration > PGUpdate</Configuration>
<Platform > ARM</Platform>
</ProjectConfiguration>
2019-05-17 10:07:24 -07:00
<ProjectConfiguration Include= "PGUpdate|ARM64" >
<Configuration > PGUpdate</Configuration>
<Platform > ARM64</Platform>
</ProjectConfiguration>
2012-05-13 11:19:23 -05:00
<ProjectConfiguration Include= "PGUpdate|Win32" >
<Configuration > PGUpdate</Configuration>
<Platform > Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include= "PGUpdate|x64" >
<Configuration > PGUpdate</Configuration>
<Platform > x64</Platform>
</ProjectConfiguration>
2019-02-14 08:31:30 -08:00
<ProjectConfiguration Include= "Release|ARM" >
<Configuration > Release</Configuration>
<Platform > ARM</Platform>
</ProjectConfiguration>
2019-05-17 10:07:24 -07:00
<ProjectConfiguration Include= "Release|ARM64" >
<Configuration > Release</Configuration>
2019-05-22 15:16:21 -07:00
<Platform > ARM64</Platform>
2019-05-17 10:07:24 -07:00
</ProjectConfiguration>
2012-05-13 11:19:23 -05:00
<ProjectConfiguration Include= "Release|Win32" >
<Configuration > Release</Configuration>
<Platform > Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include= "Release|x64" >
<Configuration > Release</Configuration>
<Platform > x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label= "Globals" >
<ProjectGuid > {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}</ProjectGuid>
</PropertyGroup>
2014-11-22 12:54:57 -08:00
<Import Project= "python.props" />
2012-05-13 11:19:23 -05:00
<Import Project= "$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
2014-11-22 12:54:57 -08:00
<PropertyGroup Label= "Configuration" >
2024-01-17 21:52:23 +00:00
<TargetName > $(PyExeName)</TargetName>
2012-05-13 11:19:23 -05:00
<ConfigurationType > Application</ConfigurationType>
<UseOfMfc > false</UseOfMfc>
<CharacterSet > MultiByte</CharacterSet>
</PropertyGroup>
<Import Project= "$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label= "ExtensionSettings" >
</ImportGroup>
2014-11-22 12:54:57 -08:00
<ImportGroup Label= "PropertySheets" >
2012-05-13 11:19:23 -05:00
<Import Project= "$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition= "exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label= "LocalAppDataPlatform" />
<Import Project= "pyproject.props" />
2019-06-14 08:29:20 -07:00
<Import Project= "tcltk.props" />
2012-05-13 11:19:23 -05:00
</ImportGroup>
<PropertyGroup Label= "UserMacros" />
<PropertyGroup >
<_ProjectFileVersion > 10.0.30319.1</_ProjectFileVersion>
</PropertyGroup>
2014-11-22 12:54:57 -08:00
<ItemDefinitionGroup >
2012-05-13 11:19:23 -05:00
<ClCompile >
2017-11-15 15:48:08 -08:00
<PreprocessorDefinitions > Py_BUILD_CORE;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
2012-05-13 11:19:23 -05:00
</ClCompile>
<Link >
<SubSystem > Console</SubSystem>
2024-01-16 22:02:20 +00:00
<StackReserveSize > 2000000</StackReserveSize>
2023-11-01 13:13:02 -07:00
<StackReserveSize Condition= "$(Configuration) == 'Debug'" > 12000000</StackReserveSize>
2024-01-16 22:02:20 +00:00
<StackReserveSize Condition= "$(Configuration) == 'PGInstrument'" > 12000000</StackReserveSize>
<!-- HACK: Need additional memory to avoid crashing until gh - 113655 is fixed -->
2024-01-22 21:19:16 +00:00
<StackReserveSize Condition= "$(Configuration) == 'PGUpdate' and $(UseExtraStackReserve) == 'true'" > 3000000</StackReserveSize>
2012-05-13 11:19:23 -05:00
</Link>
</ItemDefinitionGroup>
<ItemGroup >
2024-11-26 19:39:33 +03:00
<None Include= "..\PC\icons\python.ico" />
2012-05-13 11:19:23 -05:00
</ItemGroup>
<ItemGroup >
<ResourceCompile Include= "..\PC\python_exe.rc" />
</ItemGroup>
<ItemGroup >
2014-07-25 21:52:14 +10:00
<ClCompile Include= "..\Programs\python.c" />
2012-05-13 11:19:23 -05:00
</ItemGroup>
<ItemGroup >
<ProjectReference Include= "pythoncore.vcxproj" >
<Project > {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>
<ReferenceOutputAssembly > false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
<Import Project= "$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label= "ExtensionTargets" >
2021-07-05 16:18:14 +01:00
<Import Project= "regen.targets" />
2012-05-13 11:19:23 -05:00
</ImportGroup>
2021-07-05 16:18:14 +01:00
<Target Name= "_TriggerPostRegen" AfterTargets= "Build" DependsOnTargets= "PostBuildRegen" />
2021-12-08 19:25:58 +00:00
<Target Name= "GeneratePyBuildDirTxt" AfterTargets= "Link" >
<Message Text= "Generating $(OutDir)pybuilddir.txt" />
<WriteLinesToFile File= "$(OutDir)pybuilddir.txt" Lines= "%0D%0A" Overwrite= "true" />
</Target>
2019-05-17 10:07:24 -07:00
<Target Name= "ValidateUcrtbase" AfterTargets= "AfterBuild" Condition= "$(Configuration) != 'PGInstrument' and $(Platform) != 'ARM' and $(Platform) != 'ARM64'" >
2016-04-12 20:11:25 -07:00
<PropertyGroup >
<UcrtName > ucrtbase</UcrtName>
<UcrtName Condition= "'$(Configuration)' == 'Debug'" > ucrtbased</UcrtName>
</PropertyGroup>
2016-09-22 17:07:56 -07:00
<Exec Command= 'setlocal
set PYTHONPATH=$(PySourcePath)Lib
2024-01-17 21:52:23 +00:00
"$(OutDir)$(PyExeName)$(PyDebugExt).exe" "$(PySourcePath)PC\validate_ucrtbase.py" $(UcrtName)' ContinueOnError="true" />
2016-04-12 20:11:25 -07:00
</Target>
2026-05-15 14:43:41 +01:00
<Target Name= "CopyFreethreadedBinary" AfterTargets= "AfterBuild"
Condition="$(DisableGil) == 'true' and $(Configuration) != 'PGInstrument'">
<Message Text= "Duplicating $(TargetPath) to $(PyExeName)$(MajorVersionNumber).$(MinorVersionNumber)t$(PyDebugExt).exe for free-threaded compatibility" />
<Copy SourceFiles= "$(TargetPath)"
DestinationFiles="$(OutDir)\$(PyExeName)$(MajorVersionNumber).$(MinorVersionNumber)t$(PyDebugExt).exe"
SkipUnchangedFiles="true"
UseHardLinksIfPossible="true" />
</Target>
2014-11-22 12:54:57 -08:00
<Target Name= "GeneratePythonBat" AfterTargets= "AfterBuild" >
<PropertyGroup >
<_Content > @rem This script invokes the most recently built Python with all arguments
@rem passed through to the interpreter. This file is generated by the
@rem build process and any changes *will* be thrown away by the next
@rem rebuild.
@rem This is only meant as a convenience for developing CPython
@rem and using it outside of that context is ill-advised.
@echo Running $(Configuration)^|$(Platform) interpreter...
2016-09-22 17:07:56 -07:00
@setlocal
@set PYTHONHOME=$(PySourcePath)
2024-01-17 21:52:23 +00:00
@"$(OutDir)$(PyExeName)$(PyDebugExt).exe" %*
2014-11-22 12:54:57 -08:00
</_Content>
<_ExistingContent Condition= "Exists('$(PySourcePath)python.bat')" > $([System.IO.File]::ReadAllText('$(PySourcePath)python.bat'))</_ExistingContent>
</PropertyGroup>
<WriteLinesToFile File= "$(PySourcePath)python.bat" Lines= "$(_Content)" Overwrite= "true" Condition= "'$(_Content)' != '$(_ExistingContent)'" />
</Target>
2022-04-06 11:56:31 +01:00
<Target Name= "CopyPGORT" AfterTargets= "Link" Condition= "$(Configuration) == 'PGInstrument'" >
<ItemGroup >
<_PGORT Include= "$(VCToolsInstallDir)bin\Hostx86\x86\pgort140.dll" Condition= "$(Platform) == 'Win32'" />
<_PGORT Include= "$(VCToolsInstallDir)bin\Hostx64\x64\pgort140.dll" Condition= "$(Platform) == 'x64'" />
<_PGORT Include= "$(VCToolsInstallDir)bin\arm64\pgort140.dll" Condition= "$(Platform) == 'ARM64'" />
</ItemGroup>
<Warning Text= "Unable to locate pgort140.dll for $(Platform)." Condition= "@(_PGORT) == '' or !Exists(@(_PGORT))" />
<Copy SourceFiles= "@(_PGORT)" DestinationFolder= "$(OutDir)" >
<Output TaskParameter= "CopiedFiles" ItemName= "FileWrites" />
</Copy>
</Target>
2017-11-15 15:48:08 -08:00
</Project>