diff options
author | Andrew Arnott <andrewarnott@gmail.com> | 2012-01-29 14:32:45 -0800 |
---|---|---|
committer | Andrew Arnott <andrewarnott@gmail.com> | 2012-01-29 14:32:45 -0800 |
commit | 5fec515095ee10b522f414a03e78f282aaf520dc (patch) | |
tree | 204c75486639c23cdda2ef38b34d7e5050a1a2e3 /nuget/nuget.proj | |
parent | f1a4155398635a4fd9f485eec817152627682704 (diff) | |
parent | 8f4165ee515728aca3faaa26e8354a40612e85e4 (diff) | |
download | DotNetOpenAuth-5fec515095ee10b522f414a03e78f282aaf520dc.zip DotNetOpenAuth-5fec515095ee10b522f414a03e78f282aaf520dc.tar.gz DotNetOpenAuth-5fec515095ee10b522f414a03e78f282aaf520dc.tar.bz2 |
Merge branch 'splitDlls'.
DNOA now builds and (in some cases) ships as many distinct assemblies.
Diffstat (limited to 'nuget/nuget.proj')
-rw-r--r-- | nuget/nuget.proj | 88 |
1 files changed, 44 insertions, 44 deletions
diff --git a/nuget/nuget.proj b/nuget/nuget.proj index f8b8e93..efa8845 100644 --- a/nuget/nuget.proj +++ b/nuget/nuget.proj @@ -3,60 +3,60 @@ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), EnlistmentInfo.props))\EnlistmentInfo.props" Condition=" '$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), EnlistmentInfo.props))' != '' " /> <Import Project="$(MSBuildProjectDirectory)\..\tools\DotNetOpenAuth.automated.props"/> - <Target Name="Layout" DependsOnTargets="BuildUnifiedProduct;ReSignDelaySignedAssemblies"> - <PropertyGroup> - <NuGetLayoutPath>$(DropsRoot)NuGet\$(BuildVersion)\</NuGetLayoutPath> - </PropertyGroup> + <Target Name="BuildIntermediates"> + <ItemGroup> + <ProductTargets Include="BuildUnifiedProduct;ReSignDelaySignedAssemblies" Condition=" '$(SkipNugetDependenciesBuild)' != 'true' " /> + <ProductTargets Include="GetOutputPath" /> + </ItemGroup> - <MSBuild Projects="$(ProjectRoot)src\DotNetOpenAuth\DotNetOpenAuth.csproj" Targets="DocumentationProjectOutputGroup" BuildInParallel="$(BuildInParallel)"> - <Output TaskParameter="TargetOutputs" ItemName="NuGetSource"/> + <!-- We build the entire unified, signed product targeting both CLRs, since NuGet supports packages that contain both, + and by building against CLR 4, several assembly references fall away from dotnetopenauth.dll, which makes some folks happy. --> + <MSBuild + Projects="$(ProjectRoot)src\DotNetOpenAuth\DotNetOpenAuth.proj" + Targets="@(ProductTargets)" + Properties="TargetFrameworkVersion=v3.5" + BuildInParallel="$(BuildInParallel)"> + <Output TaskParameter="TargetOutputs" ItemName="TargetOutputs35"/> + </MSBuild> + <MSBuild + Projects="$(ProjectRoot)src\DotNetOpenAuth\DotNetOpenAuth.proj" + Targets="@(ProductTargets)" + Properties="TargetFrameworkVersion=v4.0" + BuildInParallel="$(BuildInParallel)"> + <Output TaskParameter="TargetOutputs" ItemName="TargetOutputs40"/> </MSBuild> - <!-- IMPORTANT: These must appear as separate ItemGroups or else batching screws it up. --> <ItemGroup> - <NuGetSource Include="%(ResignedAssembliesOutputs.Identity)" Condition=" '%(FileName)%(Extension)' == 'DotNetOpenAuth.dll' "/> - <NuGetSource> - <TargetPath>$(NuGetLayoutPath)lib\%(FileName)%(Extension)</TargetPath> - </NuGetSource> + <ResignedAssembliesOutputs Include="@(TargetOutputs35)" Condition=" '%(MSBuildSourceTargetName)' == 'Sign' "> + <TargetFramework>v3.5</TargetFramework> + </ResignedAssembliesOutputs> + <ResignedAssembliesOutputs Include="@(TargetOutputs40)" Condition=" '%(MSBuildSourceTargetName)' == 'Sign' "> + <TargetFramework>v4.0</TargetFramework> + </ResignedAssembliesOutputs> </ItemGroup> - <ItemGroup> - <NuGetContentSource Include="$(ProjectRoot)NuGet\content\**"/> - </ItemGroup> - <ItemGroup> - <NuGetSource Include="@(NuGetContentSource)"> - <TargetPath>$(NuGetLayoutPath)content\%(RecursiveDir)%(FileName)%(Extension)</TargetPath> - </NuGetSource> - - <NuSpecSource Include="DotNetOpenAuth.nuspec"> - <LayoutPath>$(NuGetLayoutPath)</LayoutPath> - <BeforeTokens>$version$</BeforeTokens> - <AfterTokens>$(BuildVersion)</AfterTokens> - </NuSpecSource> + <PropertyGroup> + <OutputPath35 Condition=" '%(MSBuildSourceTargetName)' == 'GetOutputPath' ">@(TargetOutputs35)</OutputPath35> + <OutputPath40 Condition=" '%(MSBuildSourceTargetName)' == 'GetOutputPath' ">@(TargetOutputs40)</OutputPath40> + </PropertyGroup> + </Target> - <NuSpecTarget Include="@(NuSpecSource->'$(NuGetLayoutPath)%(FileName)%(Extension)')" /> - </ItemGroup> + <Target Name="Build" DependsOnTargets="BuildIntermediates"> <ItemGroup> - <NuGetContentsTarget Include="%(NuGetSource.TargetPath)" /> - </ItemGroup> + <NuGetPackages Include="*.nuspec" Exclude="DotNetOpenAuth.Ultimate.nuspec"> + <Symbols>true</Symbols> + </NuGetPackages> + <NuGetPackages Include="DotNetOpenAuth.Ultimate.nuspec" /> - <CopyWithTokenSubstitution - SourceFiles="@(NuSpecSource)" - DestinationFiles="@(NuSpecTarget)" - /> - - <Copy - SourceFiles="@(NuGetSource)" - DestinationFiles="@(NuGetContentsTarget)" - SkipUnchangedFiles="true" /> - - <Purge Directories="$(NuGetLayoutPath)" IntendedFiles="@(NuGetContentsTarget);@(NuSpecTarget)" /> - </Target> - - <Target Name="Build" DependsOnTargets="Layout"> + <NuGetProperties Include="version=$(NuGetPackageVersion)" /> + <NuGetProperties Include="oauth2version=0.11.0-draft" /> + <NuGetProperties Include="OutputPath35=$(OutputPath35)" /> + <NuGetProperties Include="OutputPath40=$(OutputPath40)" /> + </ItemGroup> <NuGetPack - NuSpec="%(NuSpecTarget.Identity)" - BaseDirectory="%(NuSpecTarget.LayoutPath)" + NuSpec="%(NuGetPackages.Identity)" OutputPackageDirectory="$(DropsRoot)" + Properties="@(NuGetProperties)" + Symbols="%(NuGetPackages.Symbols)" ToolPath="$(NuGetToolPath)" /> </Target> |