mirror of
https://github.com/python/cpython.git
synced 2024-11-24 02:15:30 +08:00
d9bcdda39c
Add a new C extension "_testlimitedcapi" which is only built with the limited C API. Move heaptype_relative.c and vectorcall_limited.c from Modules/_testcapi/ to Modules/_testlimitedcapi/. * configure: add _testlimitedcapi test extension. * Update generate_stdlib_module_names.py. * Update make check-c-globals. Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
160 lines
7.7 KiB
XML
160 lines
7.7 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props"/>
|
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props"/>
|
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets"/>
|
|
<PropertyGroup Label="Globals">
|
|
<ProjectGuid>{CC9B93A2-439D-4058-9D29-6DCF43774405}</ProjectGuid>
|
|
<Platform Condition="'$(Platform)' == ''">Win32</Platform>
|
|
<Configuration Condition="'$(Configuration)' == ''">Release</Configuration>
|
|
<IncludeExtensions Condition="'$(IncludeExtensions)' == ''">true</IncludeExtensions>
|
|
<IncludeExternals Condition="'$(IncludeExternals)' == ''">true</IncludeExternals>
|
|
<IncludeTests Condition="'$(IncludeTest)' == ''">true</IncludeTests>
|
|
<IncludeCTypes Condition="'$(IncludeCTypes)' == ''">true</IncludeCTypes>
|
|
<IncludeSSL Condition="'$(IncludeSSL)' == ''">true</IncludeSSL>
|
|
<IncludeTkinter Condition="'$(IncludeTkinter)' == ''">true</IncludeTkinter>
|
|
<IncludeUwp Condition="'$(IncludeUwp)' == ''">false</IncludeUwp>
|
|
</PropertyGroup>
|
|
|
|
<ItemDefinitionGroup>
|
|
<FreezeProjects>
|
|
<Platform>$(PreferredToolArchitecture)</Platform>
|
|
<Configuration>$(Configuration)</Configuration>
|
|
<Configuration Condition="$(Configuration) == 'PGInstrument'">Release</Configuration>
|
|
<Properties></Properties>
|
|
<BuildTarget>Build</BuildTarget>
|
|
<CleanTarget>Clean</CleanTarget>
|
|
<CleanAllTarget>CleanAll</CleanAllTarget>
|
|
<BuildInParallel>false</BuildInParallel>
|
|
</FreezeProjects>
|
|
<Projects>
|
|
<Platform>$(Platform)</Platform>
|
|
<Configuration>$(Configuration)</Configuration>
|
|
<Properties></Properties>
|
|
<BuildTarget>Build</BuildTarget>
|
|
<CleanTarget>Clean</CleanTarget>
|
|
<CleanAllTarget>CleanAll</CleanAllTarget>
|
|
<BuildInParallel>true</BuildInParallel>
|
|
</Projects>
|
|
<Projects2>
|
|
<Platform>$(Platform)</Platform>
|
|
<Configuration>$(Configuration)</Configuration>
|
|
<Properties></Properties>
|
|
<BuildTarget>Build</BuildTarget>
|
|
<CleanTarget>Clean</CleanTarget>
|
|
<CleanAllTarget>CleanAll</CleanAllTarget>
|
|
<BuildInParallel>false</BuildInParallel>
|
|
</Projects2>
|
|
</ItemDefinitionGroup>
|
|
<ItemGroup>
|
|
<!-- pythonXY.dll -->
|
|
<!--
|
|
Parallel build is explicitly disabled for this project because it
|
|
causes many conflicts between pythoncore and projects that depend
|
|
on pythoncore. Once the core DLL has been built, subsequent
|
|
projects will be built in parallel.
|
|
-->
|
|
<Projects Include="pythoncore.vcxproj">
|
|
<BuildInParallel>false</BuildInParallel>
|
|
</Projects>
|
|
<!-- python3.dll -->
|
|
<Projects Include="python3dll.vcxproj" />
|
|
<!-- py[w].exe -->
|
|
<Projects Include="pylauncher.vcxproj;pywlauncher.vcxproj" />
|
|
<!-- pyshellext.dll -->
|
|
<Projects Include="pyshellext.vcxproj" />
|
|
<!-- Extension modules -->
|
|
<ExtensionModules Include="_asyncio;_zoneinfo;_decimal;_elementtree;_multiprocessing;_overlapped;pyexpat;_queue;select;unicodedata;winsound;_uuid;_wmi" />
|
|
<ExtensionModules Include="_ctypes" Condition="$(IncludeCTypes)" />
|
|
<!-- Extension modules that require external sources -->
|
|
<ExternalModules Include="_bz2;_lzma;_sqlite3" />
|
|
<!-- venv launchers -->
|
|
<Projects Include="venvlauncher.vcxproj;venvwlauncher.vcxproj" />
|
|
<!-- _ssl will build _socket as well, which may cause conflicts in parallel builds -->
|
|
<ExtensionModules Include="_socket" Condition="!$(IncludeSSL) or !$(IncludeExternals)" />
|
|
<ExternalModules Include="_ssl;_hashlib" Condition="$(IncludeSSL)" />
|
|
<ExternalModules Include="_tkinter" Condition="$(IncludeTkinter)" />
|
|
<ExtensionModules Include="@(ExternalModules->'%(Identity)')" Condition="$(IncludeExternals)" />
|
|
<Projects Include="@(ExtensionModules->'%(Identity).vcxproj')" Condition="$(IncludeExtensions)" />
|
|
<!-- Test modules -->
|
|
<TestModules Include="_ctypes_test;_testbuffer;_testcapi;_testlimitedcapi;_testinternalcapi;_testembed;_testimportmultiple;_testmultiphase;_testsinglephase;_testconsole;_testclinic;_testclinic_limited" />
|
|
<TestModules Include="xxlimited" Condition="'$(Configuration)' == 'Release'" />
|
|
<TestModules Include="xxlimited_35" Condition="'$(Configuration)' == 'Release'" />
|
|
<Projects Include="@(TestModules->'%(Identity).vcxproj')" Condition="$(IncludeTests)">
|
|
<!-- Disable parallel build for test modules -->
|
|
<BuildInParallel>false</BuildInParallel>
|
|
</Projects>
|
|
|
|
<!-- _freeze_module -->
|
|
<FreezeProjects Include="_freeze_module.vcxproj" />
|
|
<!-- python[w].exe -->
|
|
<Projects2 Include="python.vcxproj;pythonw.vcxproj" />
|
|
<Projects2 Include="python_uwp.vcxproj;pythonw_uwp.vcxproj" Condition="$(IncludeUwp)" />
|
|
<!-- venv[w]launcher.exe -->
|
|
<Projects2 Include="venvlauncher.vcxproj;venvwlauncher.vcxproj" />
|
|
</ItemGroup>
|
|
|
|
<Target Name="Build">
|
|
<MSBuild Projects="@(FreezeProjects)"
|
|
Properties="Configuration=%(Configuration);Platform=%(Platform);%(Properties)"
|
|
BuildInParallel="%(BuildInParallel)"
|
|
StopOnFirstFailure="true"
|
|
Targets="%(BuildTarget)" />
|
|
<MSBuild Projects="@(Projects)"
|
|
Properties="Configuration=%(Configuration);Platform=%(Platform);%(Properties)"
|
|
BuildInParallel="%(BuildInParallel)"
|
|
StopOnFirstFailure="true"
|
|
Targets="%(BuildTarget)" />
|
|
<MSBuild Projects="@(Projects2)"
|
|
Properties="Configuration=%(Configuration);Platform=%(Platform);%(Properties)"
|
|
BuildInParallel="%(BuildInParallel)"
|
|
StopOnFirstFailure="true"
|
|
Targets="%(BuildTarget)" />
|
|
</Target>
|
|
|
|
<Target Name="Clean">
|
|
<MSBuild Projects="@(Projects2)"
|
|
Properties="Configuration=%(Configuration);Platform=%(Platform);%(Properties)"
|
|
BuildInParallel="%(BuildInParallel)"
|
|
StopOnFirstFailure="false"
|
|
Condition="%(CleanTarget) != ''"
|
|
Targets="%(CleanTarget)" />
|
|
<MSBuild Projects="@(Projects)"
|
|
Properties="Configuration=%(Configuration);Platform=%(Platform);%(Properties)"
|
|
BuildInParallel="%(BuildInParallel)"
|
|
StopOnFirstFailure="false"
|
|
Condition="%(CleanTarget) != ''"
|
|
Targets="%(CleanTarget)" />
|
|
<MSBuild Projects="@(FreezeProjects)"
|
|
Properties="Configuration=%(Configuration);Platform=%(Platform);%(Properties)"
|
|
BuildInParallel="%(BuildInParallel)"
|
|
StopOnFirstFailure="false"
|
|
Condition="%(CleanTarget) != ''"
|
|
Targets="%(CleanTarget)" />
|
|
</Target>
|
|
|
|
<Target Name="CleanAll">
|
|
<MSBuild Projects="@(Projects2)"
|
|
Properties="Configuration=%(Configuration);Platform=%(Platform);%(Properties)"
|
|
BuildInParallel="%(BuildInParallel)"
|
|
StopOnFirstFailure="false"
|
|
Condition="%(CleanAllTarget) != ''"
|
|
Targets="%(CleanAllTarget)" />
|
|
<MSBuild Projects="@(Projects)"
|
|
Properties="Configuration=%(Configuration);Platform=%(Platform);%(Properties)"
|
|
BuildInParallel="%(BuildInParallel)"
|
|
StopOnFirstFailure="false"
|
|
Condition="%(CleanAllTarget) != ''"
|
|
Targets="%(CleanAllTarget)" />
|
|
<MSBuild Projects="@(FreezeProjects)"
|
|
Properties="Configuration=%(Configuration);Platform=%(Platform);%(Properties)"
|
|
BuildInParallel="%(BuildInParallel)"
|
|
StopOnFirstFailure="false"
|
|
Condition="%(CleanTarget) != ''"
|
|
Targets="%(CleanTarget)" />
|
|
</Target>
|
|
|
|
<Target Name="Rebuild" DependsOnTargets="Clean;Build" />
|
|
<Target Name="RebuildAll" DependsOnTargets="CleanAll;Build" />
|
|
</Project>
|