summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Arnott <andrewarnott@gmail.com>2010-02-16 19:56:46 -0800
committerAndrew Arnott <andrewarnott@gmail.com>2010-02-16 19:56:46 -0800
commitbc6db89033c0b1123c1fe70485108f01f31b3c61 (patch)
treea5b1bb8d2f7378261904652cec2fa1d2ca13e36a
parent8564a69eea659f225f30b5e21fa8fbe6888dfda6 (diff)
downloadDotNetOpenAuth-bc6db89033c0b1123c1fe70485108f01f31b3c61.zip
DotNetOpenAuth-bc6db89033c0b1123c1fe70485108f01f31b3c61.tar.gz
DotNetOpenAuth-bc6db89033c0b1123c1fe70485108f01f31b3c61.tar.bz2
Split up the drop and tools builds.
-rw-r--r--build.proj187
-rw-r--r--samples/tools.proj53
-rw-r--r--src/DotNetOpenAuth.BuildTasks/DotNetOpenAuth.BuildTasks.sln2
-rw-r--r--tools/drop.proj139
4 files changed, 201 insertions, 180 deletions
diff --git a/build.proj b/build.proj
index 791f77a..e2049f1 100644
--- a/build.proj
+++ b/build.proj
@@ -3,6 +3,11 @@
<Import Project="$(ProjectRoot)tools\Translation.targets"/>
<ItemGroup>
+ <ProjectsInDrop Include="
+ samples\tools.proj;
+ tools\drop.proj;
+ " />
+
<ProjectsToClean Include="
$(SolutionPath);
projecttemplates\projecttemplates.proj;
@@ -37,53 +42,6 @@
<MSBuild Projects="$(SolutionPath)" Targets="Rebuild" BuildInParallel="$(BuildInParallel)" />
</Target>
- <Target Name="ToolsLayout" DependsOnTargets="BuildUnifiedProduct">
- <PropertyGroup>
- <ToolsDirectoryNoSlash>$(DropsRoot)$(ProductName)-Tools-$(BuildVersion)</ToolsDirectoryNoSlash>
- <ToolsDirectory>$(ToolsDirectoryNoSlash)\</ToolsDirectory>
- </PropertyGroup>
-
- <ItemGroup>
- <ToolProjects Include="$(ProjectRoot)Samples\OpenIdOfflineProvider\OpenIdOfflineProvider.csproj" />
- </ItemGroup>
-
- <MSBuild Projects="@(ToolProjects)" BuildInParallel="$(BuildInParallel)" />
-
- <ItemGroup>
- <OfflineProvider Include="
- $(OutputPath)**\*.dll;
- $(OutputPath)OpenIdOfflineProvider.exe"
- Exclude="
- $(OutputPath)$(ProductName).*;
- $(ILMergeOutputAssembly);
- "/>
- <OfflineProviderTargets Include="
- @(OfflineProvider->'$(ToolsDirectory)%(RecursiveDir)%(FileName)%(Extension)')"/>
- <OfflineProvider Include="$(ILMergeOutputAssembly)" />
- <OfflineProviderTargets Include="$(ToolsDirectory)$(ProductName).dll" />
-
- <AllToolSources Include="@(OfflineProvider)" />
- <AllToolTargets Include="@(OfflineProviderTargets)" />
- </ItemGroup>
-
- <MakeDir Directories="@(ToolsDirectory)" />
- <Copy SourceFiles="@(AllToolSources)" DestinationFiles="@(AllToolTargets)" SkipUnchangedFiles="true" />
-
- <!-- remove files that shouldn't be in the directory (perhaps from a previous version). -->
- <Purge Directories="$(ToolsDirectory)" IntendedFiles="@(AllToolTargets)" />
- </Target>
-
- <Target Name="Tools" DependsOnTargets="ToolsLayout">
- <PropertyGroup>
- <ToolsZip>$(ToolsDirectoryNoSlash).zip</ToolsZip>
- </PropertyGroup>
-
- <Zip ZipFileName="$(ToolsZip)"
- Files="@(AllToolTargets)"
- WorkingDirectory="$(ToolsDirectory)"
- ZipLevel="$(ZipLevel)" />
- </Target>
-
<Target Name="Test" DependsOnTargets="BuildTests"
Inputs="$(OutputPath)$(ProductName).Test.dll"
Outputs='$(OutputPath)Test-result.xml'>
@@ -97,140 +55,9 @@
ExcludeCategory="$(NUnitExcludeCategories)"/>
</Target>
- <Target Name="DropLayout" DependsOnTargets="BuildUnifiedProduct;ReSignDelaySignedAssemblies">
- <!-- 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="
- samples\samples.proj;
- vsi\vsi.proj;
- vsix\vsix.proj;
- doc\doc.proj;
- ">
- <Output TaskParameter="TargetOutputs" ItemName="DropLayoutDependencies"/>
- </MSBuild>
- <PropertyGroup>
- <DropBinDirectory>$(DropDirectory)Bin\</DropBinDirectory>
- <DropLibDirectory>$(DropDirectory)Lib\</DropLibDirectory>
- <DropProjectTemplatesDirectory>$(DropDirectory)Project Templates\</DropProjectTemplatesDirectory>
- <DropSamplesDirectory>$(DropDirectory)Samples\</DropSamplesDirectory>
- <DropSpecsDirectory>$(DropDirectory)Specs\</DropSpecsDirectory>
- </PropertyGroup>
- <ItemGroup>
- <ExtensionVsix Include="@(DropLayoutDependencies)" Condition=" '%(DropLayoutDependencies.MSBuildSourceProjectFile)' == '$(ProjectRoot)vsix\vsix.proj' " />
- <ProjectTemplatesVsi Include="@(DropLayoutDependencies)" Condition=" '%(DropLayoutDependencies.MSBuildSourceProjectFile)' == '$(ProjectRoot)vsi\vsi.proj' " />
- <DropDirectories Include="
- $(DropDirectory);
- $(DropBinDirectory);
- $(DropLibDirectory);
- $(DropProjectTemplatesDirectory);
- $(DropSamplesDirectory);
- $(DropSpecsDirectory);
- " />
-
- <DropSourceFiles Include="
- $(ProjectRoot)Doc\$(ProductName).chm;
- $(ProjectRoot)Doc\*.htm*;
- $(ProjectRoot)LICENSE.txt;
- $(ProjectRoot)CONTRIB.txt;
- "
- Exclude="$(ProjectRoot)Doc\README.*.html;" />
- <DropBinSourceFiles Include="
- $(ILMergeOutputAssemblyDirectory)$(ProductName).???;
- $(OutputPath)**\$(ProductName).resources.dll;
- $(OutputPath)$(ProductName).xml;
- $(OutputPath)$(ProductName).Contracts.???;
- $(ProjectRoot)Doc\README.Bin.html;
- $(ProjectRoot)src\$(ProductName)\Configuration\$(ProductName).xsd;
- " />
- <DropLibSourceFiles Include="
- $(ProjectRoot)Lib\log4net.*;
- " />
- <DropProjectTemplatesSourceFiles Include="@(ProjectTemplatesVsi)" />
- <DropVsixSourceFiles Include="@(ExtensionVsix)" Condition=" '%(ExtensionVsix.IncludeInDrop)' == 'true' " />
- <DropSamplesSourceFiles Include="$(ProjectRoot)Samples\**" Exclude="
- $(ProjectRoot)**\obj\**;
- $(ProjectRoot)**\*.sln.cache;
- $(ProjectRoot)**\*.suo;
- $(ProjectRoot)**\*.user;
- $(ProjectRoot)**\*.gitignore;
- $(ProjectRoot)**\*.ldf;
- $(ProjectRoot)**\*.log*;
- $(ProjectRoot)**\*~;
- $(ProjectRoot)**\Debug\**;
- $(ProjectRoot)**\Settings.StyleCop;
- $(ProjectRoot)**\StyleCop.Cache;
- $(ProjectRoot)Samples\**\DotNetOpenAuth.???;
- $(ProjectRoot)Samples\**\log4net.???;
- $(ProjectRoot)Samples\**\PresentationCore.dll;
- $(ProjectRoot)Samples\**\System.Printing.dll;
- $(ProjectRoot)Samples\**\*.refresh_;
- $(ProjectRoot)Samples\Samples.proj;
- " />
- <!-- Some .refresh files are only applicable to drop builds, so we rename them from *.refresh_ -->
- <DropSamplesRefreshSourceFiles Include="$(ProjectRoot)Samples\**\*.refresh_" />
- <DropSpecsSourceFiles Include="$(ProjectRoot)Doc\specs\*.htm*" />
-
- <DropFiles Include="@(DropSourceFiles->'$(DropDirectory)%(RecursiveDir)%(FileName)%(Extension)')"/>
- <DropBinFiles Include="@(DropBinSourceFiles->'$(DropBinDirectory)%(RecursiveDir)%(FileName)%(Extension)')"/>
- <DropLibFiles Include="@(DropLibSourceFiles->'$(DropLibDirectory)%(RecursiveDir)%(FileName)%(Extension)')"/>
- <DropProjectTemplatesFiles Include="@(DropProjectTemplatesSourceFiles->'$(DropProjectTemplatesDirectory)%(FileName)%(Extension)')" />
- <DropVsixFiles Include="@(DropVsixSourceFiles->'$(DropProjectTemplatesDirectory)%(FileName)%(Extension)')" />
- <DropSamplesFiles Include="@(DropSamplesSourceFiles->'$(DropSamplesDirectory)%(RecursiveDir)%(FileName)%(Extension)')"/>
- <DropSamplesRefreshFiles Include="@(DropSamplesRefreshSourceFiles->'$(DropSamplesDirectory)%(RecursiveDir)%(FileName).refresh')"/>
- <DropSamplesToolsProjects Include="$(DropSamplesDirectory)OpenIdOfflineProvider\OpenIdOfflineProvider.csproj" />
- <DropSpecsFiles Include="@(DropSpecsSourceFiles->'$(DropSpecsDirectory)%(RecursiveDir)%(FileName)%(Extension)')"/>
-
- <AllDropSources Include="
- @(DropSourceFiles);
- @(DropBinSourceFiles);
- @(DropLibSourceFiles);
- @(DropProjectTemplatesSourceFiles);
- @(DropVsixSourceFiles);
- @(DropSamplesSourceFiles);
- @(DropSamplesRefreshSourceFiles);
- @(DropDocSourceFiles);
- @(DropSpecsSourceFiles);
- " />
-
- <AllDropTargets Include="
- @(DropFiles);
- @(DropBinFiles);
- @(DropLibFiles);
- @(DropProjectTemplatesFiles);
- @(DropVsixFiles);
- @(DropSamplesFiles);
- @(DropSamplesRefreshFiles);
- @(DropDocFiles);
- @(DropSpecsFiles)
- " />
- </ItemGroup>
-
- <!-- clean up any previous drop with the same name so we don't aggregate files. -->
- <MakeDir Directories="@(DropDirectories)" />
- <Copy SourceFiles="@(AllDropSources)" DestinationFiles="@(AllDropTargets)" SkipUnchangedFiles="true" />
- <Purge Directories="$(DropDirectory)" IntendedFiles="@(AllDropTargets)" />
- <!-- fix up the samples so that they will compile right out of the drop -->
- <ItemGroup>
- <SampleProjectTargets Include="$(DropSamplesDirectory)**\*.*proj" />
- <SampleSolutionTargets Include="$(DropSamplesDirectory)**\*.sln" />
- </ItemGroup>
- <FixupShippingToolSamples Projects="@(DropSamplesToolsProjects)"
- RemoveImportsStartingWith="%24(ProjectRoot)tools\"
- AddReferences="Microsoft.Contracts"/>
- <ChangeProjectReferenceToAssemblyReference Projects="@(SampleProjectTargets)"
- ProjectReferences="..\..\src\$(ProductName)\$(ProductName).csproj" References="..\..\Bin\$(ProductName).dll" />
- <DowngradeProjects Projects="@(SampleProjectTargets);@(SampleSolutionTargets)" DowngradeMvc2ToMvc1="true" />
+ <Target Name="Nightly">
+ <MSBuild Projects="@(ProjectsInDrop)" Targets="%(ProjectsInDrop.Targets)" BuildInParallel="$(BuildInParallel)" />
</Target>
- <Target Name="Drop" DependsOnTargets="DropLayout">
- <PropertyGroup>
- <DropZip>$(DropDirectoryNoSlash).zip</DropZip>
- </PropertyGroup>
- <Zip Files="@(AllDropTargets)" ZipFileName="$(DropZip)" WorkingDirectory="$(DropsRoot)" ZipLevel="$(ZipLevel)" />
- </Target>
-
- <Target Name="Nightly" DependsOnTargets="Drop;Tools" />
-
<Import Project="$(ProjectRoot)tools\DotNetOpenAuth.automated.targets"/>
</Project>
diff --git a/samples/tools.proj b/samples/tools.proj
new file mode 100644
index 0000000..c6c63c4
--- /dev/null
+++ b/samples/tools.proj
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <Import Project="$(MSBuildProjectDirectory)\..\tools\DotNetOpenAuth.automated.props"/>
+
+ <Target Name="Layout" DependsOnTargets="BuildUnifiedProduct">
+ <PropertyGroup>
+ <ToolsDirectoryNoSlash>$(DropsRoot)$(ProductName)-Tools-$(BuildVersion)</ToolsDirectoryNoSlash>
+ <ToolsDirectory>$(ToolsDirectoryNoSlash)\</ToolsDirectory>
+ </PropertyGroup>
+
+ <ItemGroup>
+ <ToolProjects Include="$(ProjectRoot)Samples\OpenIdOfflineProvider\OpenIdOfflineProvider.csproj" />
+ </ItemGroup>
+
+ <MSBuild Projects="@(ToolProjects)" BuildInParallel="$(BuildInParallel)" />
+
+ <ItemGroup>
+ <OfflineProvider Include="
+ $(OutputPath)**\*.dll;
+ $(OutputPath)OpenIdOfflineProvider.exe"
+ Exclude="
+ $(OutputPath)$(ProductName).*;
+ $(ILMergeOutputAssembly);
+ "/>
+ <OfflineProviderTargets Include="
+ @(OfflineProvider->'$(ToolsDirectory)%(RecursiveDir)%(FileName)%(Extension)')"/>
+ <OfflineProvider Include="$(ILMergeOutputAssembly)" />
+ <OfflineProviderTargets Include="$(ToolsDirectory)$(ProductName).dll" />
+
+ <AllToolSources Include="@(OfflineProvider)" />
+ <AllToolTargets Include="@(OfflineProviderTargets)" />
+ </ItemGroup>
+
+ <MakeDir Directories="@(ToolsDirectory)" />
+ <Copy SourceFiles="@(AllToolSources)" DestinationFiles="@(AllToolTargets)" SkipUnchangedFiles="true" />
+
+ <!-- remove files that shouldn't be in the directory (perhaps from a previous version). -->
+ <Purge Directories="$(ToolsDirectory)" IntendedFiles="@(AllToolTargets)" />
+ </Target>
+
+ <Target Name="Build" DependsOnTargets="Layout">
+ <PropertyGroup>
+ <ToolsZip>$(ToolsDirectoryNoSlash).zip</ToolsZip>
+ </PropertyGroup>
+
+ <Zip ZipFileName="$(ToolsZip)"
+ Files="@(AllToolTargets)"
+ WorkingDirectory="$(ToolsDirectory)"
+ ZipLevel="$(ZipLevel)" />
+ </Target>
+
+ <Import Project="$(ProjectRoot)tools\DotNetOpenAuth.automated.targets"/>
+</Project> \ No newline at end of file
diff --git a/src/DotNetOpenAuth.BuildTasks/DotNetOpenAuth.BuildTasks.sln b/src/DotNetOpenAuth.BuildTasks/DotNetOpenAuth.BuildTasks.sln
index b91c8ef..f3e3982 100644
--- a/src/DotNetOpenAuth.BuildTasks/DotNetOpenAuth.BuildTasks.sln
+++ b/src/DotNetOpenAuth.BuildTasks/DotNetOpenAuth.BuildTasks.sln
@@ -12,8 +12,10 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
..\..\tools\DotNetOpenAuth.props = ..\..\tools\DotNetOpenAuth.props
..\..\tools\DotNetOpenAuth.targets = ..\..\tools\DotNetOpenAuth.targets
..\..\tools\DotNetOpenAuth.Versioning.targets = ..\..\tools\DotNetOpenAuth.Versioning.targets
+ ..\..\tools\drop.proj = ..\..\tools\drop.proj
..\..\projecttemplates\projecttemplates.proj = ..\..\projecttemplates\projecttemplates.proj
..\..\samples\Samples.proj = ..\..\samples\Samples.proj
+ ..\..\samples\tools.proj = ..\..\samples\tools.proj
..\..\vsi\vsi.proj = ..\..\vsi\vsi.proj
..\..\vsix\vsix.proj = ..\..\vsix\vsix.proj
EndProjectSection
diff --git a/tools/drop.proj b/tools/drop.proj
new file mode 100644
index 0000000..143d3b5
--- /dev/null
+++ b/tools/drop.proj
@@ -0,0 +1,139 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <Import Project="$(MSBuildProjectDirectory)\DotNetOpenAuth.automated.props"/>
+
+ <Target Name="Layout" DependsOnTargets="BuildUnifiedProduct;ReSignDelaySignedAssemblies">
+ <!-- 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;
+ ">
+ <Output TaskParameter="TargetOutputs" ItemName="DropLayoutDependencies"/>
+ </MSBuild>
+ <PropertyGroup>
+ <DropBinDirectory>$(DropDirectory)Bin\</DropBinDirectory>
+ <DropLibDirectory>$(DropDirectory)Lib\</DropLibDirectory>
+ <DropProjectTemplatesDirectory>$(DropDirectory)Project Templates\</DropProjectTemplatesDirectory>
+ <DropSamplesDirectory>$(DropDirectory)Samples\</DropSamplesDirectory>
+ <DropSpecsDirectory>$(DropDirectory)Specs\</DropSpecsDirectory>
+ </PropertyGroup>
+ <ItemGroup>
+ <ExtensionVsix Include="@(DropLayoutDependencies)" Condition=" '%(DropLayoutDependencies.MSBuildSourceProjectFile)' == '$(ProjectRoot)vsix\vsix.proj' " />
+ <ProjectTemplatesVsi Include="@(DropLayoutDependencies)" Condition=" '%(DropLayoutDependencies.MSBuildSourceProjectFile)' == '$(ProjectRoot)vsi\vsi.proj' " />
+ <DropDirectories Include="
+ $(DropDirectory);
+ $(DropBinDirectory);
+ $(DropLibDirectory);
+ $(DropProjectTemplatesDirectory);
+ $(DropSamplesDirectory);
+ $(DropSpecsDirectory);
+ " />
+
+ <DropSourceFiles Include="
+ $(ProjectRoot)Doc\$(ProductName).chm;
+ $(ProjectRoot)Doc\*.htm*;
+ $(ProjectRoot)LICENSE.txt;
+ $(ProjectRoot)CONTRIB.txt;
+ "
+ Exclude="$(ProjectRoot)Doc\README.*.html;" />
+ <DropBinSourceFiles Include="
+ $(ILMergeOutputAssemblyDirectory)$(ProductName).???;
+ $(OutputPath)**\$(ProductName).resources.dll;
+ $(OutputPath)$(ProductName).xml;
+ $(OutputPath)$(ProductName).Contracts.???;
+ $(ProjectRoot)Doc\README.Bin.html;
+ $(ProjectRoot)src\$(ProductName)\Configuration\$(ProductName).xsd;
+ " />
+ <DropLibSourceFiles Include="
+ $(ProjectRoot)Lib\log4net.*;
+ " />
+ <DropProjectTemplatesSourceFiles Include="@(ProjectTemplatesVsi)" />
+ <DropVsixSourceFiles Include="@(ExtensionVsix)" Condition=" '%(ExtensionVsix.IncludeInDrop)' == 'true' " />
+ <DropSamplesSourceFiles Include="$(ProjectRoot)Samples\**" Exclude="
+ $(ProjectRoot)**\obj\**;
+ $(ProjectRoot)**\*.sln.cache;
+ $(ProjectRoot)**\*.suo;
+ $(ProjectRoot)**\*.user;
+ $(ProjectRoot)**\*.gitignore;
+ $(ProjectRoot)**\*.ldf;
+ $(ProjectRoot)**\*.log*;
+ $(ProjectRoot)**\*~;
+ $(ProjectRoot)**\Debug\**;
+ $(ProjectRoot)**\Settings.StyleCop;
+ $(ProjectRoot)**\StyleCop.Cache;
+ $(ProjectRoot)Samples\**\DotNetOpenAuth.???;
+ $(ProjectRoot)Samples\**\log4net.???;
+ $(ProjectRoot)Samples\**\PresentationCore.dll;
+ $(ProjectRoot)Samples\**\System.Printing.dll;
+ $(ProjectRoot)Samples\**\*.refresh_;
+ $(ProjectRoot)Samples\*.proj;
+ " />
+ <!-- Some .refresh files are only applicable to drop builds, so we rename them from *.refresh_ -->
+ <DropSamplesRefreshSourceFiles Include="$(ProjectRoot)Samples\**\*.refresh_" />
+ <DropSpecsSourceFiles Include="$(ProjectRoot)Doc\specs\*.htm*" />
+
+ <DropFiles Include="@(DropSourceFiles->'$(DropDirectory)%(RecursiveDir)%(FileName)%(Extension)')"/>
+ <DropBinFiles Include="@(DropBinSourceFiles->'$(DropBinDirectory)%(RecursiveDir)%(FileName)%(Extension)')"/>
+ <DropLibFiles Include="@(DropLibSourceFiles->'$(DropLibDirectory)%(RecursiveDir)%(FileName)%(Extension)')"/>
+ <DropProjectTemplatesFiles Include="@(DropProjectTemplatesSourceFiles->'$(DropProjectTemplatesDirectory)%(FileName)%(Extension)')" />
+ <DropVsixFiles Include="@(DropVsixSourceFiles->'$(DropProjectTemplatesDirectory)%(FileName)%(Extension)')" />
+ <DropSamplesFiles Include="@(DropSamplesSourceFiles->'$(DropSamplesDirectory)%(RecursiveDir)%(FileName)%(Extension)')"/>
+ <DropSamplesRefreshFiles Include="@(DropSamplesRefreshSourceFiles->'$(DropSamplesDirectory)%(RecursiveDir)%(FileName).refresh')"/>
+ <DropSamplesToolsProjects Include="$(DropSamplesDirectory)OpenIdOfflineProvider\OpenIdOfflineProvider.csproj" />
+ <DropSpecsFiles Include="@(DropSpecsSourceFiles->'$(DropSpecsDirectory)%(RecursiveDir)%(FileName)%(Extension)')"/>
+
+ <AllDropSources Include="
+ @(DropSourceFiles);
+ @(DropBinSourceFiles);
+ @(DropLibSourceFiles);
+ @(DropProjectTemplatesSourceFiles);
+ @(DropVsixSourceFiles);
+ @(DropSamplesSourceFiles);
+ @(DropSamplesRefreshSourceFiles);
+ @(DropDocSourceFiles);
+ @(DropSpecsSourceFiles);
+ " />
+
+ <AllDropTargets Include="
+ @(DropFiles);
+ @(DropBinFiles);
+ @(DropLibFiles);
+ @(DropProjectTemplatesFiles);
+ @(DropVsixFiles);
+ @(DropSamplesFiles);
+ @(DropSamplesRefreshFiles);
+ @(DropDocFiles);
+ @(DropSpecsFiles)
+ " />
+ </ItemGroup>
+
+ <!-- clean up any previous drop with the same name so we don't aggregate files. -->
+ <MakeDir Directories="@(DropDirectories)" />
+ <Copy SourceFiles="@(AllDropSources)" DestinationFiles="@(AllDropTargets)" SkipUnchangedFiles="true" />
+ <Purge Directories="$(DropDirectory)" IntendedFiles="@(AllDropTargets)" />
+ <!-- fix up the samples so that they will compile right out of the drop -->
+ <ItemGroup>
+ <SampleProjectTargets Include="$(DropSamplesDirectory)**\*.*proj" />
+ <SampleSolutionTargets Include="$(DropSamplesDirectory)**\*.sln" />
+ </ItemGroup>
+ <FixupShippingToolSamples Projects="@(DropSamplesToolsProjects)"
+ RemoveImportsStartingWith="%24(ProjectRoot)tools\"
+ AddReferences="Microsoft.Contracts"/>
+ <ChangeProjectReferenceToAssemblyReference Projects="@(SampleProjectTargets)"
+ ProjectReferences="..\..\src\$(ProductName)\$(ProductName).csproj" References="..\..\Bin\$(ProductName).dll" />
+ <DowngradeProjects Projects="@(SampleProjectTargets);@(SampleSolutionTargets)" DowngradeMvc2ToMvc1="true" />
+ </Target>
+
+ <Target Name="Build" DependsOnTargets="Layout">
+ <PropertyGroup>
+ <DropZip>$(DropDirectoryNoSlash).zip</DropZip>
+ </PropertyGroup>
+ <Zip Files="@(AllDropTargets)" ZipFileName="$(DropZip)" WorkingDirectory="$(DropsRoot)" ZipLevel="$(ZipLevel)" />
+ </Target>
+
+ <Import Project="$(ProjectRoot)tools\DotNetOpenAuth.automated.targets"/>
+</Project> \ No newline at end of file