Browse Source

Adding NET Client build. touches #82

Former-commit-id: 9f2e700de084fda8d7d2bb84c15bc416329f0e28
Former-commit-id: c501964d8dbded3c5adc5d62135f2edcdc7d9788
pull/17/head
James South 12 years ago
parent
commit
cb1abd2bb1
  1. 66
      src/ImageProcessor/ImageProcessor.csproj

66
src/ImageProcessor/ImageProcessor.csproj

@ -10,12 +10,16 @@
<RootNamespace>ImageProcessor</RootNamespace>
<AssemblyName>ImageProcessor</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<!-- This establishes a new variable called 'Framework'. Don't confuse this with the actual .net TargetFrameworkVersion.
It is just variable we can use in our conditions. We might as well set it to the main or current target framework if it is ''.-->
<Framework Condition=" '$(Framework)' == '' ">NET45</Framework>
<FileAlignment>512</FileAlignment>
<SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
<RestorePackages>true</RestorePackages>
<TargetFrameworkProfile>
</TargetFrameworkProfile>
</PropertyGroup>
<!-- Here is our 'Debug' 4.5 group -->
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
@ -28,6 +32,24 @@
<Prefer32Bit>false</Prefer32Bit>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
</PropertyGroup>
<!-- Here is our 'Debug' 4.0 group keep reading to see where this is set -->
<PropertyGroup Condition=" '$(Framework)' == 'NET40' And '$(Configuration)|$(Platform)' == 'Debug|AnyCPU'">
<!-- Set the TargetFrameworkVersion here. This is the variable to tell ms build what .net framework to target.-->
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\$(Framework)\</OutputPath>
<DefineConstants>DEBUG;TRACE;NET40</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<DocumentationFile>bin\$(Configuration)\$(Framework)\ImageProcessor.XML</DocumentationFile>
<Prefer32Bit>false</Prefer32Bit>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
</PropertyGroup>
<!-- Here is our 'Release' 4.5 group -->
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
@ -39,6 +61,22 @@
<Prefer32Bit>false</Prefer32Bit>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
</PropertyGroup>
<!-- Here is the 'Release' 4.0 group -->
<PropertyGroup Condition=" '$(Framework)' == 'NET40' And '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<!-- Set the TargetFrameworkVersion here. This is the variable to tell ms build what .net framework to target.-->
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\$(Framework)\</OutputPath>
<DefineConstants>TRACE;NET40</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<DocumentationFile>bin\Release\$(Framework)\ImageProcessor.XML</DocumentationFile>
<Prefer32Bit>false</Prefer32Bit>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
</PropertyGroup>
<!-- Here is our 'All' 4.5 group -->
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'All|AnyCPU'">
<DebugSymbols>true</DebugSymbols>
<OutputPath>bin\All\</OutputPath>
@ -54,6 +92,25 @@
<Prefer32Bit>false</Prefer32Bit>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
</PropertyGroup>
<!-- Here is the 'All' 4.0 group -->
<PropertyGroup Condition=" '$(Framework)' == 'NET40' And '$(Configuration)|$(Platform)' == 'All|AnyCPU' ">
<!-- Set the TargetFrameworkVersion here. This is the variable to tell ms build what .net framework to target.-->
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
<DebugSymbols>true</DebugSymbols>
<OutputPath>bin\All\$(Framework)\</OutputPath>
<DefineConstants>DEBUG;TRACE;NET40</DefineConstants>
<DocumentationFile>bin\Debug\$(Framework)\ImageProcessor.XML</DocumentationFile>
<DebugType>full</DebugType>
<PlatformTarget>AnyCPU</PlatformTarget>
<ErrorReport>prompt</ErrorReport>
<CodeAnalysisIgnoreBuiltInRuleSets>false</CodeAnalysisIgnoreBuiltInRuleSets>
<CodeAnalysisIgnoreBuiltInRules>true</CodeAnalysisIgnoreBuiltInRules>
<WarningLevel>4</WarningLevel>
<Optimize>false</Optimize>
<Prefer32Bit>false</Prefer32Bit>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Configuration" />
@ -175,4 +232,13 @@
<Target Name="AfterBuild">
</Target>
-->
<Target Name="AfterBuild">
<!-- This just allows us to drop a note in the build output -->
<Message Text="Enter After Build TargetFrameworkVersion:$(TargetFrameworkVersion) Framework:$(Framework)" Importance="high" />
<!-- This is the key to the whole process. The second build happens here. We set our 'Framework' variable allowing the above PropertyGroups to run more frameworks. -->
<MSBuild Condition=" '$(Framework)' != 'NET40'" Projects="$(MSBuildProjectFile)" Properties="Framework=NET40" RunEachTargetSeparately="true" />
<!-- You could repeat the above node again here and target another framework if there was a property group that would evaluate to true-->
<!-- Just more logging -->
<Message Text="Exiting After Build TargetFrameworkVersion:$(TargetFrameworkVersion) Framework:$(Framework)" Importance="high" />
</Target>
</Project>
Loading…
Cancel
Save