Steve Dower | 65e4cb1 | 2014-11-22 12:54:57 -0800 | [diff] [blame] | 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
| 3 | <PropertyGroup Label="Globals"> |
| 4 | <ProjectGuid>{CC9B93A2-439D-4058-9D29-6DCF43774405}</ProjectGuid> |
| 5 | <Platform Condition="'$(Platform)' == ''">Win32</Platform> |
| 6 | <Configuration Condition="'$(Configuration)' == ''">Release</Configuration> |
| 7 | <IncludeExtensions Condition="'$(IncludeExtensions)' == ''">true</IncludeExtensions> |
| 8 | <IncludeTests Condition="'$(IncludeTest)' == ''">true</IncludeTests> |
| 9 | <IncludeSSL Condition="'$(IncludeSSL)' == ''">true</IncludeSSL> |
| 10 | </PropertyGroup> |
| 11 | |
| 12 | <ItemDefinitionGroup> |
| 13 | <Projects> |
| 14 | <Platform>$(Platform)</Platform> |
| 15 | <Configuration>$(Configuration)</Configuration> |
| 16 | <Properties></Properties> |
| 17 | <BuildTarget>Build</BuildTarget> |
| 18 | <CleanTarget>Clean</CleanTarget> |
| 19 | <CleanAllTarget>CleanAll</CleanAllTarget> |
| 20 | <BuildInParallel>true</BuildInParallel> |
| 21 | </Projects> |
| 22 | </ItemDefinitionGroup> |
| 23 | <ItemGroup> |
| 24 | <!-- pythonXY.dll --> |
| 25 | <!-- |
| 26 | Parallel build is explicitly disabled for this project because it |
| 27 | causes many conflicts between pythoncore and projects that depend |
| 28 | in pythoncore. Once the core DLL has been built, subsequent |
| 29 | projects will be built in parallel. |
| 30 | --> |
| 31 | <Projects Include="pythoncore.vcxproj"> |
| 32 | <BuildInParallel>false</BuildInParallel> |
| 33 | </Projects> |
| 34 | <!-- python[w].exe --> |
| 35 | <Projects Include="python.vcxproj;pythonw.vcxproj" /> |
| 36 | <!-- python3.dll --> |
| 37 | <Projects Include="python3dll.vcxproj" /> |
| 38 | <!-- py[w].exe --> |
| 39 | <Projects Include="pylauncher.vcxproj;pywlauncher.vcxproj" /> |
Steve Dower | 65e4cb1 | 2014-11-22 12:54:57 -0800 | [diff] [blame] | 40 | <!-- _freeze_importlib --> |
| 41 | <Projects Include="_freeze_importlib.vcxproj" /> |
| 42 | <!-- Extension modules --> |
Zachary Ware | bd4b247 | 2015-04-14 10:58:06 -0500 | [diff] [blame] | 43 | <ExtensionModules Include="_bz2;_ctypes;_decimal;_elementtree;_lzma;_msi;_multiprocessing;_overlapped;_sqlite3;_tkinter;tix;pyexpat;select;unicodedata;winsound" /> |
Steve Dower | 65e4cb1 | 2014-11-22 12:54:57 -0800 | [diff] [blame] | 44 | <!-- _ssl will build _socket as well, which may cause conflicts in parallel builds --> |
| 45 | <ExtensionModules Include="_socket" Condition="!$(IncludeSSL)" /> |
| 46 | <ExtensionModules Include="_ssl;_hashlib" Condition="$(IncludeSSL)" /> |
| 47 | <Projects Include="@(ExtensionModules->'%(Identity).vcxproj')" Condition="$(IncludeExtensions)" /> |
| 48 | <!-- Test modules --> |
Steve Dower | 42a059b | 2015-05-23 17:51:54 -0700 | [diff] [blame] | 49 | <TestModules Include="_ctypes_test;_testbuffer;_testcapi;_testembed;_testimportmultiple;_testmultiphase" /> |
Steve Dower | 65e4cb1 | 2014-11-22 12:54:57 -0800 | [diff] [blame] | 50 | <TestModules Include="xxlimited" Condition="'$(Configuration)' == 'Release'" /> |
| 51 | <Projects Include="@(TestModules->'%(Identity).vcxproj')" Condition="$(IncludeTests)"> |
| 52 | <!-- Disable parallel build for test modules --> |
| 53 | <BuildInParallel>false</BuildInParallel> |
| 54 | </Projects> |
| 55 | </ItemGroup> |
| 56 | |
| 57 | <Target Name="Build"> |
| 58 | <MSBuild Projects="@(Projects)" |
| 59 | Properties="Configuration=%(Configuration);Platform=%(Platform);%(Properties)" |
| 60 | BuildInParallel="%(BuildInParallel)" |
| 61 | Targets="%(BuildTarget)" /> |
| 62 | </Target> |
| 63 | |
| 64 | <Target Name="Clean"> |
| 65 | <MSBuild Projects="@(Projects)" |
| 66 | Properties="Configuration=%(Configuration);Platform=%(Platform);%(Properties)" |
| 67 | BuildInParallel="%(BuildInParallel)" |
| 68 | StopOnFirstFailure="false" |
| 69 | Condition="%(CleanTarget) != ''" |
| 70 | Targets="%(CleanTarget)" /> |
| 71 | </Target> |
| 72 | |
| 73 | <Target Name="CleanAll"> |
| 74 | <MSBuild Projects="@(Projects)" |
| 75 | Properties="Configuration=%(Configuration);Platform=%(Platform);%(Properties)" |
| 76 | BuildInParallel="%(BuildInParallel)" |
| 77 | StopOnFirstFailure="false" |
| 78 | Condition="%(CleanAllTarget) != ''" |
| 79 | Targets="%(CleanAllTarget)" /> |
| 80 | </Target> |
| 81 | |
| 82 | <Target Name="Rebuild" DependsOnTargets="Clean;Build" /> |
| 83 | <Target Name="RebuildAll" DependsOnTargets="CleanAll;Build" /> |
| 84 | </Project> |