aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--build/Common.targets23
-rw-r--r--build/build.csproj9
-rw-r--r--build/build35.bat6
3 files changed, 21 insertions, 17 deletions
diff --git a/build/Common.targets b/build/Common.targets
index a66bcf06..b6bac888 100644
--- a/build/Common.targets
+++ b/build/Common.targets
@@ -7,17 +7,18 @@
<MakeDir Directories="@(WorkingDirectories)" />
</Target>
- <Target Name="_Compile" DependsOnTargets="_Clean">
- <MSBuild Projects="$(SolutionFile)" Properties="Configuration=$(BuildConfiguration)" BuildInParallel="true" />
- </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' " />
+ </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>
+
<Target Name="_GenerateSource">
- <PropertyGroup>
- <ProtosList>@(Protos)</ProtosList>
- <Args>$(ProtosList.Replace(`;`,` `))</Args>
- </PropertyGroup>
-
- <Exec Command="$(ProtocExePath) --proto_path=$(ProtosDirectory) --descriptor_set_out=compiled.pb $(Args)" WorkingDirectory="$(BuildTempDirectory)" />
+ <Exec Command="$(ProtocExePath) --proto_path=$(ProtosDirectory) --descriptor_set_out=compiled.pb @(Protos->'%(RelativeDir)%(Filename)%(Extension)', ' ')" WorkingDirectory="$(BuildTempDirectory)" />
<Exec Command="$(ProtogenExePath) compiled.pb" WorkingDirectory="$(BuildTempDirectory)" />
</Target>
@@ -25,10 +26,6 @@
<Copy SourceFiles="%(GeneratedSource.Identity)" DestinationFiles="%(GeneratedSource.TargetDirectory)\%(GeneratedSource.Filename)%(GeneratedSource.Extension)" />
</Target>
- <Target Name="_CompileGeneratedSource" DependsOnTargets="_CopyGeneratedSource">
- <MSBuild Projects="$(SolutionFile)" Properties="Configuration=$(BuildConfiguration)" BuildInParallel="true" />
- </Target>
-
<Target Name="_Test" DependsOnTargets="_CompileGeneratedSource" Condition="$(BuildConfiguration)=='Debug' or $(BuildConfiguration)=='Release'">
<Exec Command="&quot;$(NUnitExePath)&quot; %(TestContainer.Identity) /xml:$(BuildTempDirectory)\..\%(TestContainer.Filename).$(BuildConfiguration).xml" />
</Target>
diff --git a/build/build.csproj b/build/build.csproj
index c3b0ed27..22084bd0 100644
--- a/build/build.csproj
+++ b/build/build.csproj
@@ -6,7 +6,7 @@
<BuildConfiguration></BuildConfiguration>
<!--Directory Paths-->
- <ProjectDirectory>$(MSBuildProjectDirectory)\..</ProjectDirectory>
+ <ProjectDirectory>$(MSBuildProjectDirectory)\..</ProjectDirectory>
<SourceDirectory>$(ProjectDirectory)\src</SourceDirectory>
<LibDirectory>$(ProjectDirectory)\lib</LibDirectory>
<ProtosDirectory>$(ProjectDirectory)\protos</ProtosDirectory>
@@ -15,9 +15,10 @@
<BuildOutputDirectory>$(ProjectDirectory)\build_output\$(BuildConfiguration)</BuildOutputDirectory>
<!--File Paths-->
- <SolutionFile>$(SourceDirectory)\ProtocolBuffers.sln</SolutionFile>
-
- <!--Tool Paths-->
+ <SolutionFile Condition=" '$(BuildTools)' == '' ">$(SourceDirectory)\ProtocolBuffers.sln</SolutionFile>
+ <SolutionFile Condition=" '$(BuildTools)' == 'v3.5' ">$(SourceDirectory)\ProtocolBuffers2008.sln</SolutionFile>
+
+ <!--Tool Paths-->
<ProtocExePath>$(LibDirectory)\protoc.exe</ProtocExePath>
<ProtogenExePath>$(SourceDirectory)\ProtoGen\bin\$(BuildConfiguration)\protogen.exe</ProtogenExePath>
<ProtoBenchExePath>$(BuildTempDirectory)\ProtoBench.exe</ProtoBenchExePath>
diff --git a/build/build35.bat b/build/build35.bat
new file mode 100644
index 00000000..052b782b
--- /dev/null
+++ b/build/build35.bat
@@ -0,0 +1,6 @@
+@echo off
+SET START_DIR=%CD%
+CD %~dp0
+%WINDIR%\Microsoft.NET\Framework\v3.5\MSBuild.exe build.csproj /t:Build /p:BuildConfiguration=Debug /p:Platform="Any CPU" /p:TargetFramework="v2.0" /p:BuildTools="v3.5" /toolsversion:3.5
+CD %START_DIR%
+SET START_DIR=