Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/corefx.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric St. John <ericstj@microsoft.com>2017-02-03 02:15:10 +0300
committerEric St. John <ericstj@microsoft.com>2017-02-03 19:30:56 +0300
commit33e27ef1252d6c1c813e5a33807bcc686c74e3a2 (patch)
treedfac02b4a7ca0e97f26c2bc50b918d8bf43118d6 /buildvertical.targets
parent179336006d4e137d6f897ce041a408f63bbee631 (diff)
Don't reorder projects when specifying BuildAllConfigurations
Previously our transform was also applying metadata, which caused MSBuild to batch when creating the item and reorder the items based on that batching (common Configurations were grouped together). To avoid this batching, first apply the metadata, then transform.
Diffstat (limited to 'buildvertical.targets')
-rw-r--r--buildvertical.targets12
1 files changed, 8 insertions, 4 deletions
diff --git a/buildvertical.targets b/buildvertical.targets
index 6246f0b53d..3c841f0a7e 100644
--- a/buildvertical.targets
+++ b/buildvertical.targets
@@ -22,15 +22,19 @@
</MSBuild>
<ItemGroup>
+ <!-- assign configuration as a seperate step to prevent batching during the transform which can reorder the list.
+ order or projects matters here since this applies to traversal projects which build projects serially. -->
+ <_projectBuildConfigurations>
+ <AdditionalProperties>Configuration=%(Identity);%(_projectBuildConfigurations.AdditionalProperties)</AdditionalProperties>
+ </_projectBuildConfigurations>
+
<!-- transform back to project -->
- <_ProjectWithConfiguration Include="@(_projectBuildConfigurations->'%(OriginalItemSpec)')">
- <AdditionalProperties>Configuration=%(Identity);%(_ProjectBestConfigurations.AdditionalProperties)</AdditionalProperties>
- </_ProjectWithConfiguration>
+ <_projectWithConfiguration Include="@(_projectBuildConfigurations->'%(OriginalItemSpec)')" />
</ItemGroup>
<ItemGroup>
<Project Remove="@(Project)" />
- <Project Include="@(_ProjectWithConfiguration)" />
+ <Project Include="@(_projectWithConfiguration)" />
</ItemGroup>
</Target>