diff options
author | Raymond Hettinger <python@rcn.com> | 2015-09-08 00:36:56 -0400 |
---|---|---|
committer | Raymond Hettinger <python@rcn.com> | 2015-09-08 00:36:56 -0400 |
commit | 6a97f4d4add4a048b03db0576a3da6522a02e176 (patch) | |
tree | a0eb3c2cf7546b895a6f47b5e6b9404a6cc45b62 /PCbuild/pcbuild.proj | |
parent | ba1b338c7060bb018ad015964d7da94621fc18ca (diff) | |
parent | a505c27518b3bc7e2c088dd7d4db802956e1155d (diff) | |
download | cpython-6a97f4d4add4a048b03db0576a3da6522a02e176.tar.gz |
merge
Diffstat (limited to 'PCbuild/pcbuild.proj')
-rw-r--r-- | PCbuild/pcbuild.proj | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/PCbuild/pcbuild.proj b/PCbuild/pcbuild.proj new file mode 100644 index 0000000000..36621c910c --- /dev/null +++ b/PCbuild/pcbuild.proj @@ -0,0 +1,90 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <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> + <IncludeSSL Condition="'$(IncludeSSL)' == ''">true</IncludeSSL> + <IncludeTkinter Condition="'$(IncludeTkinter)' == ''">true</IncludeTkinter> + </PropertyGroup> + + <ItemDefinitionGroup> + <Projects> + <Platform>$(Platform)</Platform> + <Configuration>$(Configuration)</Configuration> + <Properties></Properties> + <BuildTarget>Build</BuildTarget> + <CleanTarget>Clean</CleanTarget> + <CleanAllTarget>CleanAll</CleanAllTarget> + <BuildInParallel>true</BuildInParallel> + </Projects> + </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> + <!-- python[w].exe --> + <Projects Include="python.vcxproj;pythonw.vcxproj" /> + <!-- python3.dll --> + <Projects Include="python3dll.vcxproj" /> + <!-- py[w].exe --> + <Projects Include="pylauncher.vcxproj;pywlauncher.vcxproj" /> + <!-- _freeze_importlib --> + <Projects Include="_freeze_importlib.vcxproj" /> + <!-- Extension modules --> + <ExtensionModules Include="_ctypes;_decimal;_elementtree;_msi;_multiprocessing;_overlapped;pyexpat;select;unicodedata;winsound" /> + <!-- Extension modules that require external sources --> + <ExternalModules Include="_bz2;_lzma;_sqlite3" /> + <!-- _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;tix" Condition="$(IncludeTkinter)" /> + <ExtensionModules Include="@(ExternalModules->'%(Identity)')" Condition="$(IncludeExternals)" /> + <Projects Include="@(ExtensionModules->'%(Identity).vcxproj')" Condition="$(IncludeExtensions)" /> + <!-- Test modules --> + <TestModules Include="_ctypes_test;_testbuffer;_testcapi;_testembed;_testimportmultiple;_testmultiphase" /> + <TestModules Include="xxlimited" Condition="'$(Configuration)' == 'Release'" /> + <Projects Include="@(TestModules->'%(Identity).vcxproj')" Condition="$(IncludeTests)"> + <!-- Disable parallel build for test modules --> + <BuildInParallel>false</BuildInParallel> + </Projects> + </ItemGroup> + + <Target Name="Build"> + <MSBuild Projects="@(Projects)" + Properties="Configuration=%(Configuration);Platform=%(Platform);%(Properties)" + BuildInParallel="%(BuildInParallel)" + Targets="%(BuildTarget)" /> + </Target> + + <Target Name="Clean"> + <MSBuild Projects="@(Projects)" + Properties="Configuration=%(Configuration);Platform=%(Platform);%(Properties)" + BuildInParallel="%(BuildInParallel)" + StopOnFirstFailure="false" + Condition="%(CleanTarget) != ''" + Targets="%(CleanTarget)" /> + </Target> + + <Target Name="CleanAll"> + <MSBuild Projects="@(Projects)" + Properties="Configuration=%(Configuration);Platform=%(Platform);%(Properties)" + BuildInParallel="%(BuildInParallel)" + StopOnFirstFailure="false" + Condition="%(CleanAllTarget) != ''" + Targets="%(CleanAllTarget)" /> + </Target> + + <Target Name="Rebuild" DependsOnTargets="Clean;Build" /> + <Target Name="RebuildAll" DependsOnTargets="CleanAll;Build" /> +</Project>
\ No newline at end of file |