diff options
author | csharptest <roger@csharptest.net> | 2010-12-15 20:59:36 -0600 |
---|---|---|
committer | csharptest <roger@csharptest.net> | 2010-12-15 20:59:36 -0600 |
commit | 7691473a71a15b75d7e7317af7a9db60365f30df (patch) | |
tree | bb439b33ccde85b5ac3b38ce460c4f6ee1a27920 /build/Common.targets | |
parent | 30d3fa320573ae7be306b97cccb52c1d281d3d03 (diff) | |
download | protobuf-7691473a71a15b75d7e7317af7a9db60365f30df.tar.gz protobuf-7691473a71a15b75d7e7317af7a9db60365f30df.tar.bz2 protobuf-7691473a71a15b75d7e7317af7a9db60365f30df.zip |
Completion of 3.5 build integration and Lite runtime build changes.
Diffstat (limited to 'build/Common.targets')
-rw-r--r-- | build/Common.targets | 50 |
1 files changed, 27 insertions, 23 deletions
diff --git a/build/Common.targets b/build/Common.targets index b6bac888..6b7283fe 100644 --- a/build/Common.targets +++ b/build/Common.targets @@ -2,19 +2,26 @@ <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> - <Target Name="_Clean"> + <Target Name="_BuildSolution"> + <Message Text="Running $(SolutionTarget) $(BuildConfiguration) with $(BuildTools) on $(SolutionFile)" Importance="normal" /> + <MSBuild Targets="$(SolutionTarget)" Projects="$(SolutionFile)" ToolsVersion="$(BuildTools)" + Properties="Configuration=$(BuildConfiguration);$(ForcedFrameworkVersion)TreatWarningsAsErrors=true;" + /> + </Target> + + <Target Name="_Clean"> <RemoveDir Directories="@(WorkingDirectories)" Condition="Exists(%(WorkingDirectories.Identity))" /> <MakeDir Directories="@(WorkingDirectories)" /> - </Target> - <Target Name="_Compile" DependsOnTargets="_Clean"> - <MSBuild Projects="$(SolutionFile)" Properties="Configuration=$(BuildConfiguration)" BuildInParallel="true" Condition=" '$(BuildTools)' == '' " /> - <MSBuild Projects="$(SolutionFile)" Properties="Configuration=$(BuildConfiguration);TargetFrameworkVersion=v2.0" Condition=" '$(BuildTools)' == 'v3.5' " /> + <MSBuild Projects="$(MSBuildProjectFullPath)" Properties="SolutionTarget=Clean;BuildConfiguration=$(BuildConfiguration)" Targets="_BuildSolution" ContinueOnError="true" /> </Target> - <Target Name="_CompileGeneratedSource" DependsOnTargets="_CopyGeneratedSource"> - <MSBuild Projects="$(SolutionFile)" Properties="Configuration=$(BuildConfiguration)" BuildInParallel="true" Condition=" '$(BuildTools)' == '' " /> - <MSBuild Projects="$(SolutionFile)" Properties="Configuration=$(BuildConfiguration);TargetFrameworkVersion=v2.0" Condition=" '$(BuildTools)' == 'v3.5' " /> + <Target Name="_Compile"> + <MSBuild Projects="$(MSBuildProjectFullPath)" Properties="SolutionTarget=Rebuild;BuildConfiguration=$(BuildConfiguration)" Targets="_BuildSolution" /> + </Target> + + <Target Name="_CompileGeneratedSource" DependsOnTargets="_CopyGeneratedSource"> + <MSBuild Projects="$(MSBuildProjectFullPath)" Properties="Step=Two;SolutionTarget=Build;BuildConfiguration=$(BuildConfiguration)" Targets="_BuildSolution" /> </Target> <Target Name="_GenerateSource"> @@ -24,19 +31,20 @@ <Target Name="_CopyGeneratedSource" DependsOnTargets="_GenerateSource"> <Copy SourceFiles="%(GeneratedSource.Identity)" DestinationFiles="%(GeneratedSource.TargetDirectory)\%(GeneratedSource.Filename)%(GeneratedSource.Extension)" /> - </Target> + </Target> + + <Target Name="_Test" DependsOnTargets="_CompileGeneratedSource" Condition="$(BuildConfiguration)=='Debug' or $(BuildConfiguration)=='Release'"> + <CallTarget Targets="_RunTests" /> + </Target> - <Target Name="_Test" DependsOnTargets="_CompileGeneratedSource" Condition="$(BuildConfiguration)=='Debug' or $(BuildConfiguration)=='Release'"> - <Exec Command=""$(NUnitExePath)" %(TestContainer.Identity) /xml:$(BuildTempDirectory)\..\%(TestContainer.Filename).$(BuildConfiguration).xml" /> + <Target Name="_RunTests"> + <Exec Command=""$(NUnitExePath)" /noshadow %(TestContainer.Identity) /xml:$(BuildTempDirectory)\..\%(TestContainer.Filename).$(BuildConfiguration).xml" /> </Target> <!--## Package Generation ##--> <Target Name="_CleanOutputDirectory"> - <ItemGroup><DirectoriesToDelete Include="$([System.IO.Directory]::GetDirectories('$(BuildOutputDirectory)'))" /></ItemGroup> - <RemoveDir Directories="@(DirectoriesToDelete)" ContinueOnError="true" /> - - <ItemGroup><FilesToDelete Include="$(BuildOutputDirectory)\**\*.*" /></ItemGroup> - <Delete Files="@(FilesToDelete)" /> + <RemoveDir Directories="$(BuildOutputDirectory)" ContinueOnError="true" /> + <MakeDir Directories="$(BuildOutputDirectory)" ContinueOnError="true" /> </Target> <Target Name="_PreparePackageComponent"> @@ -47,11 +55,6 @@ <Copy SourceFiles="@(StaticPackageItem)" DestinationFolder="$(BuildOutputDirectory)\%(StaticPackageItem.TargetDirectory)\%(StaticPackageItem.RecursiveDir)" /> <Exec Command=""$(ZipExePath)" a -tzip $(PackageName) * -r" WorkingDirectory="$(BuildOutputDirectory)" /> - <ItemGroup><DirectoriesToDelete Include="$([System.IO.Directory]::GetDirectories('$(BuildOutputDirectory)'))" /></ItemGroup> - <ItemGroup><FilesToDelete Include="$(BuildOutputDirectory)\**\*.*" Exclude="$(BuildOutputDirectory)\$(PackageName)" /></ItemGroup> - - <Delete Files="@(FilesToDelete)" /> - <RemoveDir Directories="@(DirectoriesToDelete)" ContinueOnError="true" /> </Target> <!--## Benchmark ##--> @@ -67,7 +70,8 @@ <Target Name="_CompileBenchmarkAssembly" DependsOnTargets="_GenerateBenchmarkSource"> <ItemGroup> <BenchmarkSources Include="$(BuildTempDirectory)\GoogleSizeProtoFile.cs" /> - <BenchmarkSources Include="$(BuildTempDirectory)\GoogleSpeedProtoFile.cs" /> + <BenchmarkSources Include="$(BuildTempDirectory)\GoogleSpeedProtoFile.cs" /> + <BenchmarkSources Include="$(SourceDirectory)\ProtoBench\Properties\AssemblyInfo.cs" /> </ItemGroup> <Csc TargetType="library" OutputAssembly="$(BuildTempDirectory)\BenchmarkTypes.dll" Optimize="true" Sources="@(BenchmarkSources)" References="$(SourceDirectory)\ProtocolBuffers\bin\$(BuildConfiguration)\Google.ProtocolBuffers.dll" /> @@ -101,7 +105,7 @@ <Args>$(BenchmarkParameterList.Replace(`;`,` `))</Args> </PropertyGroup> - <Exec Command=""$(ProtoBenchExePath)" $(Args) > "$(BuildTempDirectory)\..\BenchmarkResults.txt"" WorkingDirectory="$(BuildTempDirectory)" /> + <Exec Command=""$(ProtoBenchExePath)" @(BenchmarkParameter->'%(Identity)', ' ') > "$(BuildTempDirectory)\..\BenchmarkResults.txt"" WorkingDirectory="$(BuildTempDirectory)" /> </Target> </Project>
\ No newline at end of file |