summaryrefslogtreecommitdiffstats
path: root/tools/drop.proj
diff options
context:
space:
mode:
Diffstat (limited to 'tools/drop.proj')
-rw-r--r--tools/drop.proj104
1 files changed, 84 insertions, 20 deletions
diff --git a/tools/drop.proj b/tools/drop.proj
index 6b00229..13b8f68 100644
--- a/tools/drop.proj
+++ b/tools/drop.proj
@@ -3,20 +3,61 @@
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), EnlistmentInfo.props))\EnlistmentInfo.props" Condition=" '$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), EnlistmentInfo.props))' != '' " />
<Import Project="$(MSBuildProjectDirectory)\DotNetOpenAuth.automated.props"/>
- <Target Name="Layout" DependsOnTargets="BuildUnifiedProduct;ReSignDelaySignedAssemblies">
+ <Target Name="LayoutDependencies">
+ <MSBuild Projects="$(ProjectRoot)src\$(ProductName)\$(ProductName).proj"
+ Properties="TargetFrameworkVersion=v3.5"
+ Targets="BuildUnifiedProduct"
+ BuildInParallel="$(BuildInParallel)" />
+ <MSBuild Projects="$(ProjectRoot)src\$(ProductName)\$(ProductName).proj"
+ Properties="TargetFrameworkVersion=v4.0"
+ Targets="BuildUnifiedProduct"
+ BuildInParallel="$(BuildInParallel)" />
+ <MSBuild Projects="$(ProjectRoot)src\$(ProductName)\$(ProductName).proj"
+ Properties="TargetFrameworkVersion=v4.5"
+ Targets="BuildUnifiedProduct"
+ BuildInParallel="$(BuildInParallel)" />
+ <MSBuild Projects="@(DelaySignedProjects)"
+ Properties="TargetFrameworkVersion=v3.5"
+ Targets="Sign"
+ BuildInParallel="$(BuildInParallel)"
+ Condition=" '%(DelaySignedProjects.Nonshipping)' != 'true' and '%(DelaySignedProjects.TargetFrameworkVersion)' != 'v4.0' " />
+ <MSBuild Projects="@(DelaySignedProjects)"
+ Properties="TargetFrameworkVersion=v4.0"
+ Targets="Sign"
+ BuildInParallel="$(BuildInParallel)"
+ Condition=" '%(DelaySignedProjects.Nonshipping)' != 'true' " />
+ <MSBuild Projects="@(DelaySignedProjects)"
+ Properties="TargetFrameworkVersion=v4.5"
+ Targets="Sign"
+ BuildInParallel="$(BuildInParallel)"
+ Condition=" '%(DelaySignedProjects.Nonshipping)' != 'true' " />
+ </Target>
+
+ <Target Name="Layout" DependsOnTargets="LayoutDependencies">
<!-- Note that we use an MSBuild task for these dependencies rather than individual DependsOnTargets entries
so that these builds can be executed in parallel. -->
- <MSBuild BuildInParallel="$(BuildInParallel)"
- Projects="
- $(ProjectRoot)samples\samples.proj;
- $(ProjectRoot)vsi\vsi.proj;
- $(ProjectRoot)vsix\vsix.proj;
- $(ProjectRoot)doc\doc.proj;
- ">
+ <ItemGroup>
+ <ProjectsToBuild Include="
+ $(ProjectRoot)vsix\vsix.proj;
+ $(ProjectRoot)samples\samples.proj;
+ ">
+ <Properties>TargetFrameworkVersion=v4.0</Properties>
+ </ProjectsToBuild>
+
+ <!-- Sandcastle doesn't seem to be able to handle .NET 4.0 dependencies right now. -->
+ <ProjectsToBuild Include="$(ProjectRoot)doc\doc.proj">
+ <Properties>TargetFrameworkVersion=v3.5</Properties>
+ </ProjectsToBuild>
+ </ItemGroup>
+ <MSBuild Projects="@(ProjectsToBuild)"
+ Properties="%(ProjectsToBuild.Properties)"
+ BuildInParallel="$(BuildInParallel)">
<Output TaskParameter="TargetOutputs" ItemName="DropLayoutDependencies"/>
</MSBuild>
<PropertyGroup>
- <DropBinDirectory>$(DropDirectory)Bin\</DropBinDirectory>
+ <DropBin35Directory>$(DropDirectory)Bin-net3.5\</DropBin35Directory>
+ <DropBin40Directory>$(DropDirectory)Bin-net4.0\</DropBin40Directory>
+ <DropBin45Directory>$(DropDirectory)Bin-net4.5\</DropBin45Directory>
<DropLibDirectory>$(DropDirectory)Lib\</DropLibDirectory>
<DropProjectTemplatesDirectory>$(DropDirectory)Project Templates\</DropProjectTemplatesDirectory>
<DropSamplesDirectory>$(DropDirectory)Samples\</DropSamplesDirectory>
@@ -30,7 +71,9 @@
<ProjectTemplatesVsi Include="@(DropLayoutDependencies)" Condition=" '%(DropLayoutDependencies.MSBuildSourceProjectFile)' == '$(ProjectRoot)vsi\vsi.proj' " />
<DropDirectories Include="
$(DropDirectory);
- $(DropBinDirectory);
+ $(DropBin35Directory);
+ $(DropBin40Directory);
+ $(DropBin45Directory);
$(DropLibDirectory);
$(DropProjectTemplatesDirectory);
$(DropSamplesDirectory);
@@ -44,11 +87,27 @@
$(ProjectRoot)CONTRIB.txt;
"
Exclude="$(ProjectRoot)Doc\README.*.html;" />
- <DropBinSourceFiles Include="
- $(ILMergeOutputAssemblyDirectory)$(SignedSubPath)$(ProductName).dll;
- $(ILMergeOutputAssemblyDirectory)$(ProductName).pdb;
- $(ILMergeOutputAssemblyDirectory)$(ProductName).xml;
- $(OutputPath)CodeContracts\$(SignedSubPath)$(ProductName).Contracts.???;
+ <DropBin35SourceFiles Include="
+ $(ILMergeOutputAssembly35Directory)$(SignedSubPath)$(ProductName).dll;
+ $(ILMergeOutputAssembly35Directory)$(ProductName).pdb;
+ $(ILMergeOutputAssembly35Directory)$(ProductName).xml;
+ $(OutputPath35)CodeContracts\$(SignedSubPath)$(ProductName).Contracts.???;
+ $(ProjectRoot)Doc\README.Bin.html;
+ $(ProjectRoot)src\$(ProductName).Core\Configuration\$(ProductName).xsd;
+ " />
+ <DropBin40SourceFiles Include="
+ $(ILMergeOutputAssembly40Directory)$(SignedSubPath)$(ProductName).dll;
+ $(ILMergeOutputAssembly40Directory)$(ProductName).pdb;
+ $(ILMergeOutputAssembly40Directory)$(ProductName).xml;
+ $(OutputPath40)CodeContracts\$(SignedSubPath)$(ProductName).Contracts.???;
+ $(ProjectRoot)Doc\README.Bin.html;
+ $(ProjectRoot)src\$(ProductName).Core\Configuration\$(ProductName).xsd;
+ " />
+ <DropBin45SourceFiles Include="
+ $(ILMergeOutputAssembly45Directory)$(SignedSubPath)$(ProductName).dll;
+ $(ILMergeOutputAssembly45Directory)$(ProductName).pdb;
+ $(ILMergeOutputAssembly45Directory)$(ProductName).xml;
+ $(OutputPath45)CodeContracts\$(SignedSubPath)$(ProductName).Contracts.???;
$(ProjectRoot)Doc\README.Bin.html;
$(ProjectRoot)src\$(ProductName).Core\Configuration\$(ProductName).xsd;
" />
@@ -92,7 +151,9 @@
<DropSpecsSourceFiles Include="$(ProjectRoot)Doc\specs\*.htm*" />
<DropFiles Include="@(DropSourceFiles->'$(DropDirectory)%(RecursiveDir)%(FileName)%(Extension)')"/>
- <DropBinFiles Include="@(DropBinSourceFiles->'$(DropBinDirectory)%(RecursiveDir)%(FileName)%(Extension)')"/>
+ <DropBin35Files Include="@(DropBin35SourceFiles->'$(DropBin35Directory)%(RecursiveDir)%(FileName)%(Extension)')"/>
+ <DropBin40Files Include="@(DropBin40SourceFiles->'$(DropBin40Directory)%(RecursiveDir)%(FileName)%(Extension)')"/>
+ <DropBin45Files Include="@(DropBin45SourceFiles->'$(DropBin45Directory)%(RecursiveDir)%(FileName)%(Extension)')"/>
<DropSatelliteFiles Include="@(DropSatelliteSourceFiles->'$(DropBinDirectory)%(CultureDir)%(FileName)%(Extension)')" />
<DropLibFiles Include="@(DropLibSourceFiles->'$(DropLibDirectory)%(RecursiveDir)%(FileName)%(Extension)')"/>
<DropProjectTemplatesFiles Include="@(DropProjectTemplatesSourceFiles->'$(DropProjectTemplatesDirectory)%(FileName)%(Extension)')" />
@@ -104,7 +165,9 @@
<AllDropSources Include="
@(DropSourceFiles);
- @(DropBinSourceFiles);
+ @(DropBin35SourceFiles);
+ @(DropBin40SourceFiles);
+ @(DropBin45SourceFiles);
@(DropSatelliteSourceFiles);
@(DropLibSourceFiles);
@(DropProjectTemplatesSourceFiles);
@@ -117,7 +180,9 @@
<AllDropTargets Include="
@(DropFiles);
- @(DropBinFiles);
+ @(DropBin35Files);
+ @(DropBin40Files);
+ @(DropBin45Files);
@(DropSatelliteFiles);
@(DropLibFiles);
@(DropProjectTemplatesFiles);
@@ -152,8 +217,7 @@
<SampleSolutionTargets Include="$(DropSamplesDirectory)**\*.sln" />
</ItemGroup>
<FixupShippingToolSamples Projects="@(DropSamplesToolsProjects)"
- RemoveImportsStartingWith="%24(ProjectRoot)tools\"
- AddReferences="Microsoft.Contracts"/>
+ RemoveImportsStartingWith="%24(ProjectRoot)tools\" />
<ChangeProjectReferenceToAssemblyReference Projects="@(SampleProjectTargets)"
ProjectReferences="@(ProjectReferencesToRemove)" References="@(AssemblyReferencesToReplaceWith)" />
<RegexFileReplace