Better support for Compact Framework builds

pull/288/head
Jon Skeet 15 years ago
parent b075ff5c17
commit 55a212d384
  1. 57
      ProtocolBuffers.build
  2. 4
      src/ProtocolBuffers/ProtocolBuffersCF.csproj
  3. 4
      todo.txt

@ -232,18 +232,61 @@
</nunit2>
</target>
<target name="build-all-configs"
description="Builds all versions of the main library">
<msbuild project="${src}/ProtocolBuffers.sln">
<property name="Configuration" value="Debug" />
</msbuild>
<msbuild project="${src}/ProtocolBuffers.sln">
<property name="Configuration" value="Release" />
</msbuild>
<msbuild project="${src}/ProtocolBuffers.sln">
<property name="Configuration" value="Silverlight2" />
</msbuild>
<msbuild project="${src}/ProtocolBuffers/ProtocolBuffersCF.csproj">
<property name="Configuration" value="Release" />
</msbuild>
</target>
<target name="dist"
description="Copies compiled binaries into the output directory">
description="Copies all binaries into the output directory">
<delete dir="${output-dir}" />
<mkdir dir="${output-dir}" />
<copy todir="${output-dir}"
<mkdir dir="${output-dir}/Debug" />
<mkdir dir="${output-dir}/Release" />
<mkdir dir="${output-dir}/Silverlight2" />
<mkdir dir="${output-dir}/CompactFramework35" />
<copy todir="${output-dir}/Debug"
flatten="true">
<fileset basedir="${src}">
<include name="ProtocolBuffers/bin/Debug/Google.ProtocolBuffers.*" />
<include name="ProtoGen/bin/Debug/ProtoGen.*" />
<include name="ProtoMunge/bin/Debug/ProtoMunge.*" />
<include name="ProtoDump/bin/Debug/ProtoDump.*" />
<include name="ProtoBench/bin/Debug/ProtoBench.*" />
</fileset>
</copy>
<copy todir="${output-dir}/Release"
flatten="true">
<fileset basedir="${src}">
<include name="ProtocolBuffers/bin/Release/Google.ProtocolBuffers.*" />
<include name="ProtoGen/bin/Release/ProtoGen.*" />
<include name="ProtoMunge/bin/Release/ProtoMunge.*" />
<include name="ProtoDump/bin/Release/ProtoDump.*" />
<include name="ProtoBench/bin/Release/ProtoBench.*" />
</fileset>
</copy>
<copy todir="${output-dir}/Silverlight2"
flatten="true">
<fileset basedir="${src}">
<include name="ProtocolBuffers/bin/Silverlight2/Google.ProtocolBuffers.dll" />
</fileset>
</copy>
<copy todir="${output-dir}/CompactFramework35"
flatten="true">
<fileset basedir="${src}">
<include name="ProtocolBuffers/bin/${build-configuration}/Google.ProtocolBuffers.dll" />
<include name="ProtoGen/bin/${build-configuration}/ProtoGen.exe" />
<include name="ProtoMunge/bin/${build-configuration}/ProtoMunge.exe" />
<include name="ProtoDump/bin/${build-configuration}/ProtoDump.exe" />
<include name="ProtoBench/bin/${build-configuration}/ProtoBench.exe" />
<include name="ProtocolBuffers/bin/ReleaseCF/Google.ProtocolBuffers.dll" />
</fileset>
</copy>
</target>

@ -23,7 +23,7 @@
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<OutputPath>bin\DebugCF\</OutputPath>
<DefineConstants>COMPACT_FRAMEWORK_35;DEBUG;TRACE;$(PlatformFamilyName)</DefineConstants>
<NoStdLib>true</NoStdLib>
<NoConfig>true</NoConfig>
@ -35,7 +35,7 @@
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<OutputPath>bin\ReleaseCF\</OutputPath>
<DefineConstants>COMPACT_FRAMEWORK_35;TRACE;$(PlatformFamilyName)</DefineConstants>
<NoStdLib>true</NoStdLib>
<NoConfig>true</NoConfig>

@ -8,7 +8,7 @@ Current task list (not in order)
- Avoid using reflection for messages which don't need it (is this
possible?)
- Bring service generation into line with Java
- Build protoc as a dll and use directly from protoge
- Build protoc as a dll and use directly from protogen
- Check copyright is everywhere
- Work out how to unit test Silverlight code
- Reformat code
@ -16,3 +16,5 @@ Current task list (not in order)
- Add regions to copyright
- Investigate command line parsing library
- Investigate calling protoc directly
- Build and publish binaries
- Work out why the Compact Framework 3.5 build fails under VS2010

Loading…
Cancel
Save