http://git-wip-us.apache.org/repos/asf/logging-log4net/blob/94aa25ed/log4net.build
----------------------------------------------------------------------
diff --git a/log4net.build b/log4net.build
index 230d6a8..f736aaa 100644
--- a/log4net.build
+++ b/log4net.build
@@ -1,4 +1,4 @@
-<?xml version="1.0" ?>
+<?xml version="1.0"?>
 <!--
 Licensed to the Apache Software Foundation (ASF) under one or more 
 contributor license agreements. See the NOTICE file distributed with
@@ -17,1561 +17,1560 @@ limitations under the License.
 -->
 <project name="log4net" default="compile-all" 
xmlnds="http://tempuri.org/nant-vs.xsd";>
   <!-- Global project settings -->
-  <property name="log4net.basedir" value="." />
-  <property name="project.build.config" value="debug" />
-  <property name="project.build.package" value="false" />
+  <property name="log4net.basedir" value="."/>
+  <property name="project.build.config" value="debug"/>
+  <property name="project.build.package" value="false"/>
   <property name="package.version" value="2.0.9"/>
-
   <!-- Include log4net helpers -->
-  <include buildfile="${log4net.basedir}/log4net.include" />
+  <include buildfile="${log4net.basedir}/log4net.include"/>
   <!-- Targets that should always be executed -->
-  <call target="set-build-configuration" />
-  <call target="set-framework-configuration" />
+  <call target="set-build-configuration"/>
+  <call target="set-framework-configuration"/>
   <!-- Targets that check settings -->
   <target name="check-htmlhelp-compiler">
     <if test="${not property::exists('htmlhelp.compiler')}">
-      <readregistry
-          property="htmlhelp.workshop.installroot"
-          key="SOFTWARE\Microsoft\HTML Help Workshop\InstallDir"
-          hive="CurrentUser"
-          failonerror="false" />
+      <readregistry property="htmlhelp.workshop.installroot" 
key="SOFTWARE\Microsoft\HTML Help Workshop\InstallDir" hive="CurrentUser" 
failonerror="false"/>
       <if test="${property::exists('htmlhelp.workshop.installroot')}">
-        <property 
-            name="htmlhelp.compiler"
-            value="${htmlhelp.workshop.installroot}/hhc.exe" />
+        <property name="htmlhelp.compiler" 
value="${htmlhelp.workshop.installroot}/hhc.exe"/>
       </if>
     </if>
     <if test="${not property::exists('htmlhelp.compiler')}">
       <!-- sysinfo task fails under x64 due to invalid property names - 
https://sourceforge.net/tracker/?func=detail&atid=402868&aid=1213185&group_id=31650
 -->
-      <sysinfo failonerror="false" />
-      <property 
-          name="htmlhelp.compiler"
-          value="${sys.os.folder.programfiles}/HTML Help Worshop/hhc.exe" />
+      <sysinfo failonerror="false"/>
+      <property name="htmlhelp.compiler" 
value="${sys.os.folder.programfiles}/HTML Help Worshop/hhc.exe"/>
     </if>
   </target>
   <!-- Displays configuration info, usefull for working out why log4net 
doesn't build -->
   <target name="display-setup" depends="check-htmlhelp-compiler">
     <!-- .NET Framework 1.0 -->
     <if test="${framework::exists('net-1.0')}">
-      <property name="nant.settings.currentframework" value="net-1.0" />
-      <call target="display-target-framework" />
+      <property name="nant.settings.currentframework" value="net-1.0"/>
+      <call target="display-target-framework"/>
     </if>
     <if test="${not framework::exists('net-1.0')}">
-      <echo message=".NET Framework 1.0 runtime is not available." />
+      <echo message=".NET Framework 1.0 runtime is not available."/>
     </if>
     <!-- .NET Framework 1.1 -->
     <if test="${framework::exists('net-1.1')}">
-      <property name="nant.settings.currentframework" value="net-1.1" />
-      <call target="display-target-framework" />
+      <property name="nant.settings.currentframework" value="net-1.1"/>
+      <call target="display-target-framework"/>
     </if>
     <if test="${not framework::exists('net-1.1')}">
-      <echo message=".NET Framework 1.1 runtime is not available." />
+      <echo message=".NET Framework 1.1 runtime is not available."/>
     </if>
     <!-- .NET Framework 2.0 -->
     <if test="${framework::exists('net-2.0')}">
-      <property name="nant.settings.currentframework" value="net-2.0" />
-      <call target="display-target-framework" />
+      <property name="nant.settings.currentframework" value="net-2.0"/>
+      <call target="display-target-framework"/>
     </if>
     <if test="${not framework::exists('net-2.0')}">
-      <echo message=".NET Framework 2.0 runtime is not available." />
+      <echo message=".NET Framework 2.0 runtime is not available."/>
     </if>
     <!-- .NET Framework 3.5 -->
     <if test="${framework::exists('net-3.5')}">
-      <property name="nant.settings.currentframework" value="net-3.5" />
-      <call target="display-target-framework" />
+      <property name="nant.settings.currentframework" value="net-3.5"/>
+      <call target="display-target-framework"/>
     </if>
     <if test="${not framework::exists('net-3.5')}">
-      <echo message=".NET Framework 3.5 runtime is not available." />
+      <echo message=".NET Framework 3.5 runtime is not available."/>
     </if>
     <!-- .NET Framework 4.0 -->
     <if test="${framework::exists('net-4.0')}">
-      <property name="nant.settings.currentframework" value="net-4.0" />
-      <call target="display-target-framework" />
+      <property name="nant.settings.currentframework" value="net-4.0"/>
+      <call target="display-target-framework"/>
     </if>
     <if test="${not framework::exists('net-4.0')}">
-      <echo message=".NET Framework 4.0 runtime is not available." />
+      <echo message=".NET Framework 4.0 runtime is not available."/>
     </if>
     <!-- .NET Compact Framework 1.0 -->
     <if test="${framework::exists('netcf-1.0')}">
-      <property name="nant.settings.currentframework" value="netcf-1.0" />
-      <call target="display-target-framework" />
+      <property name="nant.settings.currentframework" value="netcf-1.0"/>
+      <call target="display-target-framework"/>
     </if>
     <if test="${not framework::exists('netcf-1.0')}">
-      <echo message=".NET Compact Framework 1.0 runtime is not available." />
+      <echo message=".NET Compact Framework 1.0 runtime is not available."/>
     </if>
     <!-- .NET Compact Framework 2.0 -->
     <if test="${framework::exists('netcf-2.0')}">
-      <property name="nant.settings.currentframework" value="netcf-2.0" />
-      <call target="display-target-framework" />
+      <property name="nant.settings.currentframework" value="netcf-2.0"/>
+      <call target="display-target-framework"/>
     </if>
     <if test="${not framework::exists('netcf-2.0')}">
-      <echo message=".NET Compact Framework 2.0 runtime is not available." />
+      <echo message=".NET Compact Framework 2.0 runtime is not available."/>
     </if>
     <!-- Mono 1.0 -->
     <if test="${framework::exists('mono-1.0')}">
-      <property name="nant.settings.currentframework" value="mono-1.0" />
-      <call target="display-target-framework" />
+      <property name="nant.settings.currentframework" value="mono-1.0"/>
+      <call target="display-target-framework"/>
     </if>
     <if test="${not framework::exists('mono-1.0')}">
-      <echo message="Mono 1.0 runtime is not available." />
+      <echo message="Mono 1.0 runtime is not available."/>
     </if>
     <!-- Mono 2.0 -->
     <if test="${framework::exists('mono-2.0')}">
-      <property name="nant.settings.currentframework" value="mono-2.0" />
-      <call target="display-target-framework" />
+      <property name="nant.settings.currentframework" value="mono-2.0"/>
+      <call target="display-target-framework"/>
     </if>
     <if test="${not framework::exists('mono-2.0')}">
-      <echo message="Mono 2.0 runtime is not available." />
+      <echo message="Mono 2.0 runtime is not available."/>
     </if>
     <!-- Mono 3.5 -->
     <if test="${framework::exists('mono-3.5')}">
-      <property name="nant.settings.currentframework" value="mono-3.5" />
-      <call target="display-target-framework" />
+      <property name="nant.settings.currentframework" value="mono-3.5"/>
+      <call target="display-target-framework"/>
     </if>
     <if test="${not framework::exists('mono-3.5')}">
-      <echo message="Mono 3.5 runtime is not available." />
+      <echo message="Mono 3.5 runtime is not available."/>
     </if>
     <!-- Mono 4.0 -->
     <if test="${framework::exists('mono-4.0')}">
-      <property name="nant.settings.currentframework" value="mono-4.0" />
-      <call target="display-target-framework" />
+      <property name="nant.settings.currentframework" value="mono-4.0"/>
+      <call target="display-target-framework"/>
     </if>
     <if test="${not framework::exists('mono-4.0')}">
-      <echo message="Mono 4.0 runtime is not available." />
+      <echo message="Mono 4.0 runtime is not available."/>
     </if>
     <!-- SSCLI 1.0 -->
     <if test="${framework::exists('sscli-1.0')}">
-      <property name="nant.settings.currentframework" value="sscli-1.0" />
-      <call target="display-target-framework" />
+      <property name="nant.settings.currentframework" value="sscli-1.0"/>
+      <call target="display-target-framework"/>
     </if>
     <if test="${not framework::exists('sscli-1.0')}">
-      <echo message="SSCLI 1.0 runtime is not available." />
+      <echo message="SSCLI 1.0 runtime is not available."/>
     </if>
     <!-- HTML Help Compiler -->
-    <echo message="htmlhelp.compiler: ${htmlhelp.compiler}" />
+    <echo message="htmlhelp.compiler: ${htmlhelp.compiler}"/>
   </target>
   <target name="display-target-framework">
-    <echo message="" />
-    <echo message="----------------------------------------------------------" 
/>
-    <echo message=" 
${framework::get-description(framework::get-target-framework())}" />
-    <echo message="----------------------------------------------------------" 
/>
-    <echo message="" />
-    <echo message="framework : ${framework::get-target-framework()}" />
-    <echo message="description : 
${framework::get-description(framework::get-target-framework())}" />
+    <echo message=""/>
+    <echo 
message="----------------------------------------------------------"/>
+    <echo message=" 
${framework::get-description(framework::get-target-framework())}"/>
+    <echo 
message="----------------------------------------------------------"/>
+    <echo message=""/>
+    <echo message="framework : ${framework::get-target-framework()}"/>
+    <echo message="description : 
${framework::get-description(framework::get-target-framework())}"/>
     <if test="${framework::sdk-exists(framework::get-target-framework())}">
-      <echo message="sdk directory : 
${framework::get-sdk-directory(framework::get-target-framework())}" />
+      <echo message="sdk directory : 
${framework::get-sdk-directory(framework::get-target-framework())}"/>
     </if>
     <if test="${not framework::sdk-exists(framework::get-target-framework())}">
-      <echo message="sdk directory : &lt;not configured/available&gt;" />
+      <echo message="sdk directory : &lt;not configured/available&gt;"/>
     </if>
-    <echo message="framework directory : 
${framework::get-framework-directory(framework::get-target-framework())}" />
-    <echo message="assembly directory : 
${framework::get-assembly-directory(framework::get-target-framework())}" />
-    <echo message="" />
+    <echo message="framework directory : 
${framework::get-framework-directory(framework::get-target-framework())}"/>
+    <echo message="assembly directory : 
${framework::get-assembly-directory(framework::get-target-framework())}"/>
+    <echo message=""/>
   </target>
   <!-- Target for setting the package configuration -->
   <target name="set-package-configuration">
-    <property name="current.package.name" 
value="${project::get-name()}-${package.version}" />
-    <property name="current.package.src.dir" 
value="build/${current.package.name}-src" />
-    <property name="current.package.src.zipfile" 
value="${project::get-name()}-${package.version}-src.zip" />
-    <delete dir="${current.package.src.dir}" 
if="${directory::exists(current.package.src.dir)}" />
-    <mkdir dir="${current.package.src.dir}" />
-    <property name="current.package.bin.dir" 
value="build/${current.package.name}-bin" />
-    <property name="current.package.bin.zipfile" 
value="${project::get-name()}-${package.version}-bin.zip" />
-    <delete dir="${current.package.bin.dir}" 
if="${directory::exists(current.package.bin.dir)}" />
-    <mkdir dir="${current.package.bin.dir}" />
+    <property name="current.package.name" 
value="${project::get-name()}-${package.version}"/>
+    <property name="current.package.src.dir" 
value="build/${current.package.name}-src"/>
+    <property name="current.package.src.zipfile" 
value="${project::get-name()}-${package.version}-src.zip"/>
+    <delete dir="${current.package.src.dir}" 
if="${directory::exists(current.package.src.dir)}"/>
+    <mkdir dir="${current.package.src.dir}"/>
+    <property name="current.package.bin.dir" 
value="build/${current.package.name}-bin"/>
+    <property name="current.package.bin.zipfile" 
value="${project::get-name()}-${package.version}-bin.zip"/>
+    <delete dir="${current.package.bin.dir}" 
if="${directory::exists(current.package.bin.dir)}"/>
+    <mkdir dir="${current.package.bin.dir}"/>
   </target>
   <!-- Target for compiling all build configurations for all runtime 
configurations -->
-  <target name="compile-all" description="Compile all build configurations for 
all runtime configurations"
-          depends="generate-assembly-description">
-    <echo message="Compiling all build configurations for all runtime 
configurations." />
-    <call target="set-debug-build-configuration" />
-    <call target="compile-build" />
-    <call target="set-release-build-configuration" />
-    <call target="compile-build" />
+  <target name="compile-all" description="Compile all build configurations for 
all runtime configurations" depends="generate-assembly-description">
+    <echo message="Compiling all build configurations for all runtime 
configurations."/>
+    <call target="set-debug-build-configuration"/>
+    <call target="compile-build"/>
+    <call target="set-release-build-configuration"/>
+    <call target="compile-build"/>
   </target>
   <!-- Target for compiling all build configurations for the current runtime 
configurations -->
   <target name="compile-runtime" description="Compile all build configurations 
for the current target framework">
-    <echo message="Compiling all build configurations for 
${framework::get-description(framework::get-target-framework())}." />
-    <call target="set-debug-build-configuration" />
+    <echo message="Compiling all build configurations for 
${framework::get-description(framework::get-target-framework())}."/>
+    <call target="set-debug-build-configuration"/>
     <!-- make sure that the runtime properties that rely on build 
configuration information are refreshed -->
-    <call target="set-runtime-configuration" />
-    <call target="compile-${framework::get-target-framework()}" />
-    <call target="set-release-build-configuration" />
+    <call target="set-runtime-configuration"/>
+    <call target="compile-${framework::get-target-framework()}"/>
+    <call target="set-release-build-configuration"/>
     <!-- make sure that the runtime properties that rely on build 
configuration information are refreshed -->
-    <call target="set-runtime-configuration" />
-    <call target="compile-${framework::get-target-framework()}" />
+    <call target="set-runtime-configuration"/>
+    <call target="compile-${framework::get-target-framework()}"/>
   </target>
   <!-- Target for compiling all runtime configurations in the current build 
configuration -->
   <target name="compile-build" description="Compile current build 
configurations for all runtime configurations">
-    <echo message="Compiling all framework versions for the 
${current.build.config} build configuration." />
+    <echo message="Compiling all framework versions for the 
${current.build.config} build configuration."/>
     <!-- NETCF_1_0 -->
-    <if test="${framework::exists('netcf-1.0')}">
-      <call target="compile-netcf-1.0" />
-    </if>
-    <!--if test="${not framework::exists('netcf-1.0')}">
-      <if test="${property::exists('project.build.package') and 
project.build.package}">
-        <fail message="The .NET Compact Framework 1.0 is not available." />
-      </if>
-      <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
-        <echo 
-            message="The .NET Compact Framework 1.0 is not available. Build 
skipped." />
-      </if>
-    </if-->
+    <call target="compile-netcf-1.0"/>
     <!-- NETCF_2_0 -->
-    <if test="${framework::exists('netcf-2.0')}">
-      <call target="compile-netcf-2.0" />
-    </if>
-    <!--if test="${not framework::exists('netcf-2.0')}">
-      <if test="${property::exists('project.build.package') and 
project.build.package and not(directory::exists(path::combine(bin.dir, 
'netcf/2.0/debug')) and directory::exists(path::combine(bin.dir, 
'netcf/2.0/release')) and directory::exists(path::combine(bin.dir, 
'netcf/2.0/oldkey')))}">
-        <fail message="The .NET Compact Framework 2.0 is not available." />
-      </if>
-      <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
-        <echo 
-            message="The .NET Compact Framework 2.0 is not available. Build 
skipped." />
-      </if>
-    </if-->
+    <call target="compile-netcf-2.0"/>
     <!-- NET_1_0 -->
-    <if test="${framework::exists('net-1.0')}">
-      <call target="compile-net-1.0" />
-      <call target="compile-cli-1.0" />
-    </if>
-    <if test="${not framework::exists('net-1.0')}">
-        <echo message="The .NET Framework 1.0 is not available. Build 
skipped." />
-    </if>
+    <call target="compile-net-1.0"/>
+    <call target="compile-cli-1.0"/>
     <!-- NET_1_1 -->
-    <if test="${framework::exists('net-1.1')}">
-      <call target="compile-net-1.1" />
-    </if>
-    <if test="${not framework::exists('net-1.1')}">
-        <echo message="The .NET Framework 1.1 is not available. Build 
skipped." />
-    </if>
+    <call target="compile-net-1.1"/>
     <!-- NET_2_0 -->
-    <if test="${framework::exists('net-2.0')}">
-      <call target="compile-net-2.0" />
-    </if>
-    <if test="${not framework::exists('net-2.0')}">
-        <echo message="The .NET Framework 2.0 is not available. Build 
skipped." />
-    </if>
+    <call target="compile-net-2.0"/>
     <!-- NET_3_5 -->
-    <if test="${framework::exists('net-3.5')}">
-      <call target="compile-net-3.5" />
-      <call target="compile-net-3.5-cp" />
-    </if>
-    <if test="${not framework::exists('net-3.5')}">
-      <if test="${property::exists('project.build.package') and 
project.build.package and not(directory::exists(path::combine(bin.dir, 
'net/3.5/debug')) and directory::exists(path::combine(bin.dir, 
'net/3.5/release')) and directory::exists(path::combine(bin.dir, 
'net/3.5/oldkey')) and directory::exists(path::combine(bin.dir, 
'net-cp/3.5/debug')) and directory::exists(path::combine(bin.dir, 
'net-cp/3.5/release')) and directory::exists(path::combine(bin.dir, 
'net-cp/3.5/oldkey')))}">
-        <fail message="The .NET Framework 3.5 is not available." />
-      </if>
-      <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
-        <echo message="The .NET Framework 3.5 is not available. Build 
skipped." />
-      </if>
-    </if>
+    <call target="compile-net-3.5"/>
+    <call target="compile-net-3.5-cp"/>
     <!-- NET_4_0 -->
-    <if test="${framework::exists('net-4.0')}">
-      <call target="compile-net-4.0" />
-      <call target="compile-net-4.0-cp" />
-      <call target="compile-net-4.5" />
-    </if>
-    <if test="${not framework::exists('net-4.0')}">
-      <if test="${property::exists('project.build.package') and 
project.build.package and not(directory::exists(path::combine(bin.dir, 
'net/4.0/debug')) and directory::exists(path::combine(bin.dir, 
'net/4.0/release')) and directory::exists(path::combine(bin.dir, 
'net/4.0/oldkey')) and directory::exists(path::combine(bin.dir, 
'net-cp/4.0/debug')) and directory::exists(path::combine(bin.dir, 
'net-cp/4.0/release')) and directory::exists(path::combine(bin.dir, 
'net-cp/4.0/oldkey')))}">
-        <fail message="The .NET Framework 4.0 is not available." />
-      </if>
-      <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
-        <echo message="The .NET Framework 4.0 is not available. Build 
skipped." />
-      </if>
-    </if>
+    <call target="compile-net-4.0"/>
+    <call target="compile-net-4.0-cp"/>
+    <call target="compile-net-4.5"/>
     <!-- MONO_1_0 -->
-    <if test="${framework::exists('mono-1.0')}">
-      <call target="compile-mono-1.0" />
-    </if>
-    <if test="${not framework::exists('mono-1.0')}">
-      <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
-        <echo message="Mono 1.0 is not available. Build skipped." />
-      </if>
-    </if>
+    <call target="compile-mono-1.0"/>
     <!-- MONO_2_0 -->
-    <if test="${framework::exists('mono-2.0')}">
-      <call target="compile-mono-2.0" />
-    </if>
-    <if test="${not framework::exists('mono-2.0')}">
-      <if test="${property::exists('project.build.package') and 
project.build.package and not(directory::exists(path::combine(bin.dir, 
'mono/2.0/debug')) and directory::exists(path::combine(bin.dir, 
'mono/2.0/release')) and directory::exists(path::combine(bin.dir, 
'mono/2.0/oldkey')))}">
-        <fail message="Mono 2.0 is not available." />
-      </if>
-      <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
-        <echo message="Mono 2.0 is not available. Build skipped." />
-      </if>
-    </if>
+    <call target="compile-mono-2.0"/>
     <!-- MONO_3_5 -->
-    <if test="${framework::exists('mono-3.5')}">
-      <call target="compile-mono-3.5" />
-    </if>
-    <if test="${not framework::exists('mono-3.5')}">
-      <if test="${property::exists('project.build.package') and 
project.build.package and not(directory::exists(path::combine(bin.dir, 
'mono/3.5/debug')) and directory::exists(path::combine(bin.dir, 
'mono/3.5/release')) and directory::exists(path::combine(bin.dir, 
'mono/3.5/oldkey')))}">
-        <fail message="Mono 3.5 is not available." />
-      </if>
-      <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
-        <echo message="Mono 3.5 is not available. Build skipped." />
-      </if>
-    </if>
+    <call target="compile-mono-3.5"/>
     <!-- MONO_4_0 -->
-    <if test="${framework::exists('mono-4.0')}">
-      <call target="compile-mono-4.0" />
-    </if>
-    <if test="${not framework::exists('mono-4.0')}">
-      <if test="${property::exists('project.build.package') and 
project.build.package and not(directory::exists(path::combine(bin.dir, 
'mono/4.0/debug')) and directory::exists(path::combine(bin.dir, 
'mono/4.0/release')) and directory::exists(path::combine(bin.dir, 
'mono/4.0/oldkey')))}">
-        <fail message="Mono 4.0 is not available." />
-      </if>
-      <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
-        <echo message="Mono 4.0 is not available. Build skipped." />
-      </if>
-    </if>
+    <call target="compile-mono-4.0"/>
     <!-- SSCLI_1_0 -->
-    <if test="${framework::exists('sscli-1.0')}">
-      <call target="compile-sscli-1.0" />
-    </if>
-    <!--if test="${not framework::exists('sscli-1.0')}">
-      <if test="${property::exists('project.build.package') and 
project.build.package}">
-        <fail message="SSCLI 1.0 is not available." />
-      </if>
-      <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
-        <echo message="SSCLI 1.0 is not available. Build skipped." />
-      </if>
-    </if-->
-    <call target="compile-netstandard" />
+    <call target="compile-sscli-1.0"/>
+    <!-- netstandard -->
+    <call target="compile-netstandard"/>
   </target>
   <target name="compile" description="Builds the current build configuration 
for the current target framework." depends="check-current-build-config">
-    <call target="compile-${framework::get-target-framework()}" />
+    <call target="compile-${framework::get-target-framework()}"/>
   </target>
-  <target name="compile-netcf-1.0" description="Builds .NET Compact Framework 
1.0 version" depends="set-netcf-1.0-runtime-configuration, 
check-log4net-basedir, clean-current-bin-dir">
-    <!-- initialize the temp.build.skip property to false -->
-    <property name="temp.build.skip" value="false" />
-    <if test="${current.build.config.release}">
-      <!-- check if the log4net key file is available -->
-      <if test="${not file::exists(log4net.basedir + '/log4net.snk')}">
-        <if test="${property::exists('project.build.package') and 
project.build.package}">
-          <fail message="Key file not found." />
+  <target name="compile-netcf-1.0" description="Builds .NET Compact Framework 
1.0 version">
+    <if test="${not framework::exists('netcf-1.0')}">
+      <echo message="Skipping build; required framework is not available: .NET 
Compact Framework 1.0"/>
+    </if>
+    <if test="${framework::exists('netcf-1.0')}">
+      <call target="set-netcf-1.0-runtime-configuration"/>
+      <call target="check-log4net-basedir"/>
+      <call target="clean-current-bin-dir"/>
+      <!-- initialize the temp.build.skip property to false -->
+      <property name="temp.build.skip" value="false"/>
+      <if test="${current.build.config.release}">
+        <!-- check if the log4net key file is available -->
+        <if test="${not file::exists(log4net.basedir + '/log4net.snk')}">
+          <if test="${property::exists('project.build.package') and 
project.build.package}">
+            <fail message="Key file not found."/>
+          </if>
+          <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
+            <echo message="Key file not found. You can generate a key file by 
running 'sn -k log4net.snk'."/>
+            <echo message="The generated key file should be stored in the 
log4net base directory."/>
+            <echo message="The release build will be skipped."/>
+            <property name="temp.build.skip" value="true"/>
+          </if>
         </if>
-        <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
-          <echo message="Key file not found. You can generate a key file by 
running 'sn -k log4net.snk'." />
-          <echo message="The generated key file should be stored in the 
log4net base directory." />
-          <echo message="The release build will be skipped." />
-          <property name="temp.build.skip" value="true" />
+        <if test="${file::exists(log4net.basedir + '/log4net.snk')}">
+          <!-- copy the log4net key file to the location where the compiler 
expects it to be -->
+          <copy file="${log4net.basedir}/log4net.snk" 
todir="${current.bin.dir}/../../../"/>
         </if>
       </if>
-      <if test="${file::exists(log4net.basedir + '/log4net.snk')}">
-        <!-- copy the log4net key file to the location where the compiler 
expects it to be -->
-        <copy file="${log4net.basedir}/log4net.snk" 
todir="${current.bin.dir}/../../../" />
+      <if test="${not temp.build.skip}">
+        <csc warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" output="${current.bin.dir}/log4net.dll" 
doc="${current.bin.dir}/log4net.xml">
+          <nowarn>
+            <!-- informational assembly version uses a free form text -->
+            <warning number="1607"/>
+          </nowarn>
+          <sources basedir="${log4net.basedir}/src">
+            <include name="**/*.cs"/>
+          </sources>
+          <resources failonempty="true">
+            <include name="${log4net.basedir}/NOTICE"/>
+            <include name="${log4net.basedir}/LICENSE"/>
+          </resources>
+          <references>
+            <include name="mscorlib.dll"/>
+            <include name="System.dll"/>
+            <include name="System.Data.dll"/>
+            <include name="System.Xml.dll"/>
+            <!-- allow for third party assemblies to be referenced by just 
storing them in the lib/<framework family>/<framework version>/<build 
configuration> directory -->
+            <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"/>
+          </references>
+        </csc>
       </if>
     </if>
-    <if test="${not temp.build.skip}">
-      <csc warnaserror="true" target="library" debug="${current.build.debug}" 
optimize="${current.build.optimize}" define="${current.build.defines.csc}" 
output="${current.bin.dir}/log4net.dll" doc="${current.bin.dir}/log4net.xml">
+  </target>
+  <target name="compile-netcf-2.0" description="Builds .NET Compact Framework 
2.0 version">
+    <if test="${not framework::exists('netcf-2.0')}">
+      <echo message="Skipping build; required framework is not available: .NET 
Compact Framework 2.0"/>
+    </if>
+    <if test="${framework::exists('netcf-2.0')}">
+      <call target="set-netcf-2.0-runtime-configuration"/>
+      <call target="check-log4net-basedir"/>
+      <call target="clean-current-bin-dir"/>
+      <!-- initialize the temp.build.skip property to false -->
+      <property name="temp.build.skip" value="false"/>
+      <if test="${current.build.config.release}">
+        <!-- check if the old log4net key file is available -->
+        <if test="${not file::exists(log4net.basedir + '/old-log4net.snk')}">
+          <if test="${property::exists('project.build.package') and 
project.build.package}">
+            <fail message="Old key file not found."/>
+          </if>
+          <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
+            <echo message="Old key file not found."/>
+            <echo message="The release build using the old key will be 
skipped."/>
+            <property name="temp.build.skip" value="true"/>
+          </if>
+        </if>
+      </if>
+      <if test="${not temp.build.skip}">
+        <csc if="${current.build.config.release}" 
keyfile="${path::combine(log4net.basedir, 'old-log4net.snk')}" 
warnaserror="true" target="library" debug="${current.build.debug}" 
optimize="${current.build.optimize}" define="${current.build.defines.csc}" 
output="${current.bin.dir}/../oldkey/log4net.dll" 
doc="${current.bin.dir}/../oldkey/log4net.xml">
+          <nowarn>
+            <!-- informational assembly version uses a free form text -->
+            <warning number="1607"/>
+          </nowarn>
+          <sources basedir="${log4net.basedir}/src">
+            <include name="**/*.cs"/>
+          </sources>
+          <resources failonempty="true">
+            <include name="${log4net.basedir}/NOTICE"/>
+            <include name="${log4net.basedir}/LICENSE"/>
+          </resources>
+          <references>
+            <include name="mscorlib.dll"/>
+            <include name="System.dll"/>
+            <include name="System.Data.dll"/>
+            <include name="System.Xml.dll"/>
+            <!-- allow for third party assemblies to be referenced by just 
storing them in the lib/<framework family>/<framework version>/<build 
configuration> directory -->
+            <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"/>
+          </references>
+        </csc>
+      </if>
+      <csc if="${current.build.config.release}" 
keyfile="${path::combine(log4net.basedir, 'log4net.snk')}" warnaserror="true" 
target="library" debug="${current.build.debug}" 
optimize="${current.build.optimize}" define="${current.build.defines.csc}" 
output="${current.bin.dir}/log4net.dll" doc="${current.bin.dir}/log4net.xml">
         <nowarn>
           <!-- informational assembly version uses a free form text -->
-          <warning number="1607" />
+          <warning number="1607"/>
         </nowarn>
         <sources basedir="${log4net.basedir}/src">
-          <include name="**/*.cs" />
+          <include name="**/*.cs"/>
         </sources>
         <resources failonempty="true">
-          <include name="${log4net.basedir}/NOTICE" />
-          <include name="${log4net.basedir}/LICENSE" />
+          <include name="${log4net.basedir}/NOTICE"/>
+          <include name="${log4net.basedir}/LICENSE"/>
         </resources>
         <references>
-          <include name="mscorlib.dll" />
-          <include name="System.dll" />
-          <include name="System.Data.dll" />
-          <include name="System.Xml.dll" />
+          <include name="mscorlib.dll"/>
+          <include name="System.dll"/>
+          <include name="System.Data.dll"/>
+          <include name="System.Xml.dll"/>
           <!-- allow for third party assemblies to be referenced by just 
storing them in the lib/<framework family>/<framework version>/<build 
configuration> directory -->
-          <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"
 />
+          <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"/>
         </references>
       </csc>
-    </if>
-  </target>
-  <target name="compile-netcf-2.0" description="Builds .NET Compact Framework 
2.0 version" depends="set-netcf-2.0-runtime-configuration, 
check-log4net-basedir, clean-current-bin-dir">
-    <!-- initialize the temp.build.skip property to false -->
-    <property name="temp.build.skip" value="false" />
-    <if test="${current.build.config.release}">
-      <!-- check if the old log4net key file is available -->
-      <if test="${not file::exists(log4net.basedir + '/old-log4net.snk')}">
-        <if test="${property::exists('project.build.package') and 
project.build.package}">
-          <fail message="Old key file not found." />
-        </if>
-        <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
-          <echo message="Old key file not found."/>
-          <echo message="The release build using the old key will be skipped." 
/>
-          <property name="temp.build.skip" value="true" />
-        </if>
-      </if>
-    </if>
-    <if test="${not temp.build.skip}">
-      <csc if="${current.build.config.release}" 
keyfile="${path::combine(log4net.basedir, 'old-log4net.snk')}" 
warnaserror="true" target="library" debug="${current.build.debug}" 
optimize="${current.build.optimize}" define="${current.build.defines.csc}" 
output="${current.bin.dir}/../oldkey/log4net.dll" 
doc="${current.bin.dir}/../oldkey/log4net.xml">
+      <csc if="${current.build.config.debug}" warnaserror="true" 
target="library" debug="${current.build.debug}" 
optimize="${current.build.optimize}" define="${current.build.defines.csc}" 
output="${current.bin.dir}/log4net.dll" doc="${current.bin.dir}/log4net.xml">
         <nowarn>
           <!-- informational assembly version uses a free form text -->
-          <warning number="1607" />
+          <warning number="1607"/>
         </nowarn>
         <sources basedir="${log4net.basedir}/src">
-          <include name="**/*.cs" />
+          <include name="**/*.cs"/>
         </sources>
         <resources failonempty="true">
-          <include name="${log4net.basedir}/NOTICE" />
-          <include name="${log4net.basedir}/LICENSE" />
+          <include name="${log4net.basedir}/NOTICE"/>
+          <include name="${log4net.basedir}/LICENSE"/>
         </resources>
         <references>
-          <include name="mscorlib.dll" />
-          <include name="System.dll" />
-          <include name="System.Data.dll" />
-          <include name="System.Xml.dll" />
+          <include name="mscorlib.dll"/>
+          <include name="System.dll"/>
+          <include name="System.Data.dll"/>
+          <include name="System.Xml.dll"/>
           <!-- allow for third party assemblies to be referenced by just 
storing them in the lib/<framework family>/<framework version>/<build 
configuration> directory -->
-          <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"
 />
+          <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"/>
         </references>
       </csc>
     </if>
-    <csc if="${current.build.config.release}" 
keyfile="${path::combine(log4net.basedir, 'log4net.snk')}" warnaserror="true" 
target="library" debug="${current.build.debug}" 
optimize="${current.build.optimize}" define="${current.build.defines.csc}" 
output="${current.bin.dir}/log4net.dll" doc="${current.bin.dir}/log4net.xml">
-      <nowarn>
-        <!-- informational assembly version uses a free form text -->
-        <warning number="1607" />
-      </nowarn>
-      <sources basedir="${log4net.basedir}/src">
-        <include name="**/*.cs" />
-      </sources>
-      <resources failonempty="true">
-        <include name="${log4net.basedir}/NOTICE" />
-        <include name="${log4net.basedir}/LICENSE" />
-      </resources>
-      <references>
-        <include name="mscorlib.dll" />
-        <include name="System.dll" />
-        <include name="System.Data.dll" />
-        <include name="System.Xml.dll" />
-        <!-- allow for third party assemblies to be referenced by just storing 
them in the lib/<framework family>/<framework version>/<build configuration> 
directory -->
-        <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"
 />
-      </references>
-    </csc>
-    <csc if="${current.build.config.debug}" warnaserror="true" 
target="library" debug="${current.build.debug}" 
optimize="${current.build.optimize}" define="${current.build.defines.csc}" 
output="${current.bin.dir}/log4net.dll" doc="${current.bin.dir}/log4net.xml">
-      <nowarn>
-        <!-- informational assembly version uses a free form text -->
-        <warning number="1607" />
-      </nowarn>
-      <sources basedir="${log4net.basedir}/src">
-        <include name="**/*.cs" />
-      </sources>
-      <resources failonempty="true">
-        <include name="${log4net.basedir}/NOTICE" />
-        <include name="${log4net.basedir}/LICENSE" />
-      </resources>
-      <references>
-        <include name="mscorlib.dll" />
-        <include name="System.dll" />
-        <include name="System.Data.dll" />
-        <include name="System.Xml.dll" />
-        <!-- allow for third party assemblies to be referenced by just storing 
them in the lib/<framework family>/<framework version>/<build configuration> 
directory -->
-        <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"
 />
-      </references>
-    </csc>
   </target>
-  <target name="compile-net-1.0" description="Builds .NET Framework 1.0 
version" depends="set-net-1.0-runtime-configuration, check-log4net-basedir, 
clean-current-bin-dir">
-    <!-- initialize the temp.build.skip property to false -->
-    <property name="temp.build.skip" value="false" />
-    <if test="${current.build.config.release}">
-      <!-- check if the log4net key file is available -->
-      <if test="${not file::exists(log4net.basedir + '/log4net.snk')}">
-        <if test="${property::exists('project.build.package') and 
project.build.package}">
-          <fail message="Old key file not found." />
+  <target name="compile-net-1.0" description="Builds .NET Framework 1.0 
version">
+    <if test="${not framework::exists('net-1.0')}">
+      <echo message="Skipping build; required framework is not available: .NET 
Framework 1.0"/>
+    </if>
+    <if test="${framework::exists('net-1.0')}">
+      <!-- initialize the temp.build.skip property to false -->
+      <property name="temp.build.skip" value="false"/>
+      <if test="${current.build.config.release}">
+        <call target="set-net-1.0-runtime-configuration"/>
+        <call target="check-log4net-basedir"/>
+        <call target="clean-current-bin-dir"/>
+        <!-- check if the log4net key file is available -->
+        <if test="${not file::exists(log4net.basedir + '/log4net.snk')}">
+          <if test="${property::exists('project.build.package') and 
project.build.package}">
+            <fail message="Old key file not found."/>
+          </if>
+          <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
+            <echo message="Old key file not found."/>
+            <echo message="The release build using the old key will be 
skipped."/>
+            <property name="temp.build.skip" value="true"/>
+          </if>
         </if>
-        <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
-          <echo message="Old key file not found."/>
-          <echo message="The release build using the old key will be skipped." 
/>
-          <property name="temp.build.skip" value="true" />
+        <if test="${file::exists(log4net.basedir + '/old-log4net.snk')}">
+          <!-- copy the log4net key file to the location where
+             the compiler expects it to be -->
+          <copy file="${log4net.basedir}/old-log4net.snk" 
tofile="${current.bin.dir}/../../../log4net.snk" overwrite="true"/>
         </if>
       </if>
-      <if test="${file::exists(log4net.basedir + '/old-log4net.snk')}">
-        <!-- copy the log4net key file to the location where
-             the compiler expects it to be -->
-        <copy file="${log4net.basedir}/old-log4net.snk"
-              tofile="${current.bin.dir}/../../../log4net.snk"
-              overwrite="true"/>
+      <if test="${not temp.build.skip}">
+        <csc if="${current.build.config.release}" nostdlib="true" 
noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" 
output="${current.bin.dir}/../oldkey/log4net.dll" 
doc="${current.bin.dir}/../oldkey/log4net.xml">
+          <nowarn>
+            <!-- informational assembly version uses a free form text -->
+            <warning number="1607"/>
+          </nowarn>
+          <sources basedir="${log4net.basedir}/src">
+            <include name="**/*.cs"/>
+          </sources>
+          <resources failonempty="true">
+            <include name="${log4net.basedir}/NOTICE"/>
+            <include name="${log4net.basedir}/LICENSE"/>
+          </resources>
+          <references>
+            <include name="mscorlib.dll"/>
+            <include name="System.dll"/>
+            <include name="System.Data.dll"/>
+            <include name="System.Web.dll"/>
+            <include name="System.Xml.dll"/>
+            <!-- allow for third party assemblies to be referenced by just 
storing them in the lib/<framework family>/<framework version>/<build 
configuration> directory -->
+            <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"/>
+          </references>
+        </csc>
       </if>
-    </if>
-    <if test="${not temp.build.skip}">
-      <csc if="${current.build.config.release}" nostdlib="true" 
noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" 
output="${current.bin.dir}/../oldkey/log4net.dll" 
doc="${current.bin.dir}/../oldkey/log4net.xml">
+      <copy file="${log4net.basedir}/log4net.snk" 
todir="${current.bin.dir}/../../../" overwrite="true"/>
+      <csc nostdlib="true" noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" output="${current.bin.dir}/log4net.dll" 
doc="${current.bin.dir}/log4net.xml">
         <nowarn>
           <!-- informational assembly version uses a free form text -->
-          <warning number="1607" />
+          <warning number="1607"/>
         </nowarn>
         <sources basedir="${log4net.basedir}/src">
-          <include name="**/*.cs" />
+          <include name="**/*.cs"/>
         </sources>
         <resources failonempty="true">
-          <include name="${log4net.basedir}/NOTICE" />
-          <include name="${log4net.basedir}/LICENSE" />
+          <include name="${log4net.basedir}/NOTICE"/>
+          <include name="${log4net.basedir}/LICENSE"/>
         </resources>
         <references>
-          <include name="mscorlib.dll" />
-          <include name="System.dll" />
-          <include name="System.Data.dll" />
-          <include name="System.Web.dll" />
-          <include name="System.Xml.dll" />
+          <include name="mscorlib.dll"/>
+          <include name="System.dll"/>
+          <include name="System.Data.dll"/>
+          <include name="System.Web.dll"/>
+          <include name="System.Xml.dll"/>
           <!-- allow for third party assemblies to be referenced by just 
storing them in the lib/<framework family>/<framework version>/<build 
configuration> directory -->
-          <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"
 />
+          <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"/>
         </references>
       </csc>
     </if>
-    <copy file="${log4net.basedir}/log4net.snk"
-          todir="${current.bin.dir}/../../../"
-          overwrite="true"/>
-    <csc nostdlib="true" noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" output="${current.bin.dir}/log4net.dll" 
doc="${current.bin.dir}/log4net.xml">
-      <nowarn>
-        <!-- informational assembly version uses a free form text -->
-        <warning number="1607" />
-      </nowarn>
-      <sources basedir="${log4net.basedir}/src">
-        <include name="**/*.cs" />
-      </sources>
-      <resources failonempty="true">
-        <include name="${log4net.basedir}/NOTICE" />
-        <include name="${log4net.basedir}/LICENSE" />
-      </resources>
-      <references>
-        <include name="mscorlib.dll" />
-        <include name="System.dll" />
-        <include name="System.Data.dll" />
-        <include name="System.Web.dll" />
-        <include name="System.Xml.dll" />
-        <!-- allow for third party assemblies to be referenced by just storing 
them in the lib/<framework family>/<framework version>/<build configuration> 
directory -->
-        <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"
 />
-      </references>
-    </csc>
   </target>
-  <target name="compile-net-1.1" description="Builds .NET Framework 1.1 
version" depends="set-net-1.1-runtime-configuration, check-log4net-basedir, 
clean-current-bin-dir">
-    <!-- initialize the temp.build.skip property to false -->
-    <property name="temp.build.skip" value="false" />
-    <if test="${current.build.config.release}">
-      <!-- check if the log4net key file is available -->
-      <if test="${not file::exists(log4net.basedir + '/log4net.snk')}">
-        <if test="${property::exists('project.build.package') and 
project.build.package}">
-          <fail message="Old key file not found." />
+  <target name="compile-net-1.1" description="Builds .NET Framework 1.1 
version">
+    <if test="${not framework::exists('net-1.1')}">
+      <echo message="Skipping build; required framework is not available: .NET 
Framework 1.1"/>
+    </if>
+    <if test="${framework::exists('net-1.1')}">
+      <!-- initialize the temp.build.skip property to false -->
+      <property name="temp.build.skip" value="false"/>
+      <if test="${current.build.config.release}">
+        <call target="set-net-1.1-runtime-configuration"/>
+        <call target="check-log4net-basedir"/>
+        <call target="clean-current-bin-dir"/>
+        <!-- check if the log4net key file is available -->
+        <if test="${not file::exists(log4net.basedir + '/log4net.snk')}">
+          <if test="${property::exists('project.build.package') and 
project.build.package}">
+            <fail message="Old key file not found."/>
+          </if>
+          <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
+            <echo message="Old key file not found."/>
+            <echo message="The release build using the old key will be 
skipped."/>
+            <property name="temp.build.skip" value="true"/>
+          </if>
         </if>
-        <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
-          <echo message="Old key file not found."/>
-          <echo message="The release build using the old key will be skipped." 
/>
-          <property name="temp.build.skip" value="true" />
+        <if test="${file::exists(log4net.basedir + '/old-log4net.snk')}">
+          <!-- copy the log4net key file to the location where
+             the compiler expects it to be -->
+          <copy file="${log4net.basedir}/old-log4net.snk" 
tofile="${current.bin.dir}/../../../log4net.snk" overwrite="true"/>
         </if>
       </if>
-      <if test="${file::exists(log4net.basedir + '/old-log4net.snk')}">
-        <!-- copy the log4net key file to the location where
-             the compiler expects it to be -->
-        <copy file="${log4net.basedir}/old-log4net.snk"
-              tofile="${current.bin.dir}/../../../log4net.snk"
-              overwrite="true"/>
+      <if test="${not temp.build.skip}">
+        <csc if="${current.build.config.release}" nostdlib="true" 
noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" 
output="${current.bin.dir}/../oldkey/log4net.dll" 
doc="${current.bin.dir}/../oldkey/log4net.xml">
+          <nowarn>
+            <!-- informational assembly version uses a free form text -->
+            <warning number="1607"/>
+          </nowarn>
+          <sources basedir="${log4net.basedir}/src">
+            <include name="**/*.cs"/>
+          </sources>
+          <resources failonempty="true">
+            <include name="${log4net.basedir}/NOTICE"/>
+            <include name="${log4net.basedir}/LICENSE"/>
+          </resources>
+          <references>
+            <include name="mscorlib.dll"/>
+            <include name="System.dll"/>
+            <include name="System.Data.dll"/>
+            <include name="System.Web.dll"/>
+            <include name="System.Xml.dll"/>
+            <!-- allow for third party assemblies to be referenced by just 
storing them in the lib/<framework family>/<framework version>/<build 
configuration> directory -->
+            <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"/>
+          </references>
+        </csc>
       </if>
-    </if>
-    <if test="${not temp.build.skip}">
-      <csc if="${current.build.config.release}" nostdlib="true" 
noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" 
output="${current.bin.dir}/../oldkey/log4net.dll" 
doc="${current.bin.dir}/../oldkey/log4net.xml">
+      <copy file="${log4net.basedir}/log4net.snk" 
todir="${current.bin.dir}/../../../" overwrite="true"/>
+      <csc nostdlib="true" noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" output="${current.bin.dir}/log4net.dll" 
doc="${current.bin.dir}/log4net.xml">
         <nowarn>
           <!-- informational assembly version uses a free form text -->
-          <warning number="1607" />
+          <warning number="1607"/>
         </nowarn>
         <sources basedir="${log4net.basedir}/src">
-          <include name="**/*.cs" />
+          <include name="**/*.cs"/>
         </sources>
         <resources failonempty="true">
-          <include name="${log4net.basedir}/NOTICE" />
-          <include name="${log4net.basedir}/LICENSE" />
+          <include name="${log4net.basedir}/NOTICE"/>
+          <include name="${log4net.basedir}/LICENSE"/>
         </resources>
         <references>
-          <include name="mscorlib.dll" />
-          <include name="System.dll" />
-          <include name="System.Data.dll" />
-          <include name="System.Web.dll" />
-          <include name="System.Xml.dll" />
+          <include name="mscorlib.dll"/>
+          <include name="System.dll"/>
+          <include name="System.Data.dll"/>
+          <include name="System.Web.dll"/>
+          <include name="System.Xml.dll"/>
           <!-- allow for third party assemblies to be referenced by just 
storing them in the lib/<framework family>/<framework version>/<build 
configuration> directory -->
-          <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"
 />
+          <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"/>
         </references>
       </csc>
     </if>
-    <copy file="${log4net.basedir}/log4net.snk"
-          todir="${current.bin.dir}/../../../"
-          overwrite="true"/>
-    <csc nostdlib="true" noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" output="${current.bin.dir}/log4net.dll" 
doc="${current.bin.dir}/log4net.xml">
-      <nowarn>
-        <!-- informational assembly version uses a free form text -->
-        <warning number="1607" />
-      </nowarn>
-      <sources basedir="${log4net.basedir}/src">
-        <include name="**/*.cs" />
-      </sources>
-      <resources failonempty="true">
-        <include name="${log4net.basedir}/NOTICE" />
-        <include name="${log4net.basedir}/LICENSE" />
-      </resources>
-      <references>
-        <include name="mscorlib.dll" />
-        <include name="System.dll" />
-        <include name="System.Data.dll" />
-        <include name="System.Web.dll" />
-        <include name="System.Xml.dll" />
-        <!-- allow for third party assemblies to be referenced by just storing 
them in the lib/<framework family>/<framework version>/<build configuration> 
directory -->
-        <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"
 />
-      </references>
-    </csc>
   </target>
-  <target name="compile-net-2.0" description="Builds .NET Framework 2.0 
version" depends="set-net-2.0-runtime-configuration, check-log4net-basedir, 
clean-current-bin-dir">
-    <!-- initialize the temp.build.skip property to false -->
-    <property name="temp.build.skip" value="false" />
-    <if test="${current.build.config.release}">
-      <!-- check if the old log4net key file is available -->
-      <if test="${not file::exists(log4net.basedir + '/old-log4net.snk')}">
-        <if test="${property::exists('project.build.package') and 
project.build.package}">
-          <fail message="Old key file not found." />
-        </if>
-        <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
-          <echo message="Old key file not found."/>
-          <echo message="The release build using the old key will be skipped." 
/>
-          <property name="temp.build.skip" value="true" />
+  <target name="compile-net-2.0" description="Builds .NET Framework 2.0 
version">
+    <if test="${not framework::exists('net-2.0')}">
+      <echo message="Skipping build; required framework is not available: .NET 
Framework 2.0"/>
+    </if>
+    <if test="${framework::exists('net-2.0')}">
+      <!-- initialize the temp.build.skip property to false -->
+      <property name="temp.build.skip" value="false"/>
+      <if test="${current.build.config.release}">
+        <call target="set-net-2.0-runtime-configuration"/>
+        <call target="check-log4net-basedir"/>
+        <call target="clean-current-bin-dir"/>
+        <!-- check if the old log4net key file is available -->
+        <if test="${not file::exists(log4net.basedir + '/old-log4net.snk')}">
+          <if test="${property::exists('project.build.package') and 
project.build.package}">
+            <fail message="Old key file not found."/>
+          </if>
+          <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
+            <echo message="Old key file not found."/>
+            <echo message="The release build using the old key will be 
skipped."/>
+            <property name="temp.build.skip" value="true"/>
+          </if>
         </if>
       </if>
-    </if>
-    <if test="${not temp.build.skip}">
-      <csc if="${current.build.config.release}" 
keyfile="${path::combine(log4net.basedir, 'old-log4net.snk')}" nostdlib="true" 
noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" 
output="${current.bin.dir}/../oldkey/log4net.dll" 
doc="${current.bin.dir}/../oldkey/log4net.xml">
+      <if test="${not temp.build.skip}">
+        <csc if="${current.build.config.release}" 
keyfile="${path::combine(log4net.basedir, 'old-log4net.snk')}" nostdlib="true" 
noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" 
output="${current.bin.dir}/../oldkey/log4net.dll" 
doc="${current.bin.dir}/../oldkey/log4net.xml">
+          <nowarn>
+            <!-- informational assembly version uses a free form text -->
+            <warning number="1607"/>
+          </nowarn>
+          <sources basedir="${log4net.basedir}/src">
+            <include name="**/*.cs"/>
+          </sources>
+          <resources failonempty="true">
+            <include name="${log4net.basedir}/NOTICE"/>
+            <include name="${log4net.basedir}/LICENSE"/>
+          </resources>
+          <references>
+            <include name="mscorlib.dll"/>
+            <include name="System.dll"/>
+            <include name="System.Data.dll"/>
+            <include name="System.Web.dll"/>
+            <include name="System.Xml.dll"/>
+            <include name="System.Configuration.dll"/>
+            <!-- allow for third party assemblies to be referenced by just 
storing them in the lib/<framework family>/<framework version>/<build 
configuration> directory -->
+            <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"/>
+          </references>
+        </csc>
+      </if>
+      <csc if="${current.build.config.release}" 
keyfile="${path::combine(log4net.basedir, 'log4net.snk')}" nostdlib="true" 
noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" output="${current.bin.dir}/log4net.dll" 
doc="${current.bin.dir}/log4net.xml">
         <nowarn>
           <!-- informational assembly version uses a free form text -->
-          <warning number="1607" />
+          <warning number="1607"/>
         </nowarn>
         <sources basedir="${log4net.basedir}/src">
-          <include name="**/*.cs" />
+          <include name="**/*.cs"/>
         </sources>
         <resources failonempty="true">
-          <include name="${log4net.basedir}/NOTICE" />
-          <include name="${log4net.basedir}/LICENSE" />
+          <include name="${log4net.basedir}/NOTICE"/>
+          <include name="${log4net.basedir}/LICENSE"/>
         </resources>
         <references>
-          <include name="mscorlib.dll" />
-          <include name="System.dll" />
-          <include name="System.Data.dll" />
-          <include name="System.Web.dll" />
-          <include name="System.Xml.dll" />
-          <include name="System.Configuration.dll" />
+          <include name="mscorlib.dll"/>
+          <include name="System.dll"/>
+          <include name="System.Data.dll"/>
+          <include name="System.Web.dll"/>
+          <include name="System.Xml.dll"/>
+          <include name="System.Configuration.dll"/>
           <!-- allow for third party assemblies to be referenced by just 
storing them in the lib/<framework family>/<framework version>/<build 
configuration> directory -->
-          <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"
 />
+          <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"/>
         </references>
       </csc>
-    </if>
-    <csc if="${current.build.config.release}" 
keyfile="${path::combine(log4net.basedir, 'log4net.snk')}" nostdlib="true" 
noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" output="${current.bin.dir}/log4net.dll" 
doc="${current.bin.dir}/log4net.xml">
-      <nowarn>
-        <!-- informational assembly version uses a free form text -->
-        <warning number="1607" />
-      </nowarn>
-      <sources basedir="${log4net.basedir}/src">
-        <include name="**/*.cs" />
-      </sources>
-      <resources failonempty="true">
-        <include name="${log4net.basedir}/NOTICE" />
-        <include name="${log4net.basedir}/LICENSE" />
-      </resources>
-      <references>
-        <include name="mscorlib.dll" />
-        <include name="System.dll" />
-        <include name="System.Data.dll" />
-        <include name="System.Web.dll" />
-        <include name="System.Xml.dll" />
-        <include name="System.Configuration.dll" />
-        <!-- allow for third party assemblies to be referenced by just storing 
them in the lib/<framework family>/<framework version>/<build configuration> 
directory -->
-        <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"
 />
-      </references>
-    </csc>
-    <csc if="${current.build.config.debug}" nostdlib="true" noconfig="true" 
warnaserror="true" target="library" debug="${current.build.debug}" 
optimize="${current.build.optimize}" define="${current.build.defines.csc}" 
output="${current.bin.dir}/log4net.dll" doc="${current.bin.dir}/log4net.xml">
-      <nowarn>
-        <!-- informational assembly version uses a free form text -->
-        <warning number="1607" />
-      </nowarn>
-      <sources basedir="${log4net.basedir}/src">
-        <include name="**/*.cs" />
-      </sources>
-      <resources failonempty="true">
-        <include name="${log4net.basedir}/NOTICE" />
-        <include name="${log4net.basedir}/LICENSE" />
-      </resources>
-      <references>
-        <include name="mscorlib.dll" />
-        <include name="System.dll" />
-        <include name="System.Data.dll" />
-        <include name="System.Web.dll" />
-        <include name="System.Xml.dll" />
-        <include name="System.Configuration.dll" />
-        <!-- allow for third party assemblies to be referenced by just storing 
them in the lib/<framework family>/<framework version>/<build configuration> 
directory -->
-        <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"
 />
-      </references>
-    </csc>
-  </target>
-  <target name="compile-net-3.5" description="Builds .NET Framework 3.5 
version" depends="set-net-3.5-runtime-configuration, check-log4net-basedir, 
clean-current-bin-dir">
-    <!-- initialize the temp.build.skip property to false -->
-    <property name="temp.build.skip" value="false" />
-    <if test="${current.build.config.release}">
-      <!-- check if the old log4net key file is available -->
-      <if test="${not file::exists(log4net.basedir + '/old-log4net.snk')}">
-        <if test="${property::exists('project.build.package') and 
project.build.package}">
-          <fail message="Old key file not found." />
-        </if>
-        <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
-          <echo message="old key file not found."/>
-          <echo message="The release build using the old key will be skipped." 
/>
-          <property name="temp.build.skip" value="true" />
-        </if>
-      </if>
-    </if>
-    <if test="${not temp.build.skip}">
-      <csc if="${current.build.config.release}" 
keyfile="${path::combine(log4net.basedir, 'old-log4net.snk')}" nostdlib="true" 
noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" 
output="${current.bin.dir}/../oldkey/log4net.dll" 
doc="${current.bin.dir}/../oldkey/log4net.xml">
+      <csc if="${current.build.config.debug}" nostdlib="true" noconfig="true" 
warnaserror="true" target="library" debug="${current.build.debug}" 
optimize="${current.build.optimize}" define="${current.build.defines.csc}" 
output="${current.bin.dir}/log4net.dll" doc="${current.bin.dir}/log4net.xml">
         <nowarn>
           <!-- informational assembly version uses a free form text -->
-          <warning number="1607" />
+          <warning number="1607"/>
         </nowarn>
         <sources basedir="${log4net.basedir}/src">
-          <include name="**/*.cs" />
+          <include name="**/*.cs"/>
         </sources>
         <resources failonempty="true">
-          <include name="${log4net.basedir}/NOTICE" />
-          <include name="${log4net.basedir}/LICENSE" />
+          <include name="${log4net.basedir}/NOTICE"/>
+          <include name="${log4net.basedir}/LICENSE"/>
         </resources>
         <references>
-          <include name="mscorlib.dll" />
-          <include name="System.dll" />
-          <include name="System.Core.dll" />
-          <include name="System.Data.dll" />
-          <include name="System.Web.dll" />
-          <include name="System.Xml.dll" />
-          <include name="System.Configuration.dll" />
+          <include name="mscorlib.dll"/>
+          <include name="System.dll"/>
+          <include name="System.Data.dll"/>
+          <include name="System.Web.dll"/>
+          <include name="System.Xml.dll"/>
+          <include name="System.Configuration.dll"/>
           <!-- allow for third party assemblies to be referenced by just 
storing them in the lib/<framework family>/<framework version>/<build 
configuration> directory -->
-          <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"
 />
+          <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"/>
         </references>
       </csc>
     </if>
-    <csc if="${current.build.config.release}" 
keyfile="${path::combine(log4net.basedir, 'log4net.snk')}" nostdlib="true" 
noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" output="${current.bin.dir}/log4net.dll" 
doc="${current.bin.dir}/log4net.xml">
-      <nowarn>
-        <!-- informational assembly version uses a free form text -->
-        <warning number="1607" />
-      </nowarn>
-      <sources basedir="${log4net.basedir}/src">
-        <include name="**/*.cs" />
-      </sources>
-      <resources failonempty="true">
-        <include name="${log4net.basedir}/NOTICE" />
-        <include name="${log4net.basedir}/LICENSE" />
-      </resources>
-      <references>
-        <include name="mscorlib.dll" />
-        <include name="System.dll" />
-        <include name="System.Core.dll" />
-        <include name="System.Data.dll" />
-        <include name="System.Web.dll" />
-        <include name="System.Xml.dll" />
-        <include name="System.Configuration.dll" />
-        <!-- allow for third party assemblies to be referenced by just storing 
them in the lib/<framework family>/<framework version>/<build configuration> 
directory -->
-        <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"
 />
-      </references>
-    </csc>
-    <csc if="${current.build.config.debug}" nostdlib="true" noconfig="true" 
warnaserror="true" target="library" debug="${current.build.debug}" 
optimize="${current.build.optimize}" define="${current.build.defines.csc}" 
output="${current.bin.dir}/log4net.dll" doc="${current.bin.dir}/log4net.xml">
-      <nowarn>
-        <!-- informational assembly version uses a free form text -->
-        <warning number="1607" />
-      </nowarn>
-      <sources basedir="${log4net.basedir}/src">
-        <include name="**/*.cs" />
-      </sources>
-      <resources failonempty="true">
-        <include name="${log4net.basedir}/NOTICE" />
-        <include name="${log4net.basedir}/LICENSE" />
-      </resources>
-      <references>
-        <include name="mscorlib.dll" />
-        <include name="System.dll" />
-        <include name="System.Core.dll" />
-        <include name="System.Data.dll" />
-        <include name="System.Web.dll" />
-        <include name="System.Xml.dll" />
-        <include name="System.Configuration.dll" />
-        <!-- allow for third party assemblies to be referenced by just storing 
them in the lib/<framework family>/<framework version>/<build configuration> 
directory -->
-        <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"
 />
-      </references>
-    </csc>
   </target>
-  <target name="compile-net-3.5-cp" description="Builds .NET Framework 3.5 
Client Profile version" depends="set-net-3.5-cp-runtime-configuration, 
check-log4net-basedir, clean-current-bin-dir">
-    <!-- initialize the temp.build.skip property to false -->
-    <property name="temp.build.skip" value="false" />
-    <if test="${current.build.config.release}">
-      <!-- check if the old log4net key file is available -->
-      <if test="${not file::exists(log4net.basedir + '/old-log4net.snk')}">
-        <if test="${property::exists('project.build.package') and 
project.build.package}">
-          <fail message="Old key file not found." />
-        </if>
-        <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
-          <echo message="Old key file not found."/>
-          <echo message="The release build using the old key will be skipped." 
/>
-          <property name="temp.build.skip" value="true" />
+  <target name="compile-net-3.5" description="Builds .NET Framework 3.5 
version">
+    <if test="${not framework::exists('net-3.5')}">
+      <echo message="Skipping build; required framework is not available: .NET 
Framework 3.5"/>
+    </if>
+    <if test="${framework::exists('net-3.5')}">
+      <call target="set-net-3.5-runtime-configuration"/>
+      <call target="check-log4net-basedir"/>
+      <call target="clean-current-bin-dir"/>
+      <!-- initialize the temp.build.skip property to false -->
+      <property name="temp.build.skip" value="false"/>
+      <if test="${current.build.config.release}">
+        <!-- check if the old log4net key file is available -->
+        <if test="${not file::exists(log4net.basedir + '/old-log4net.snk')}">
+          <if test="${property::exists('project.build.package') and 
project.build.package}">
+            <fail message="Old key file not found."/>
+          </if>
+          <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
+            <echo message="old key file not found."/>
+            <echo message="The release build using the old key will be 
skipped."/>
+            <property name="temp.build.skip" value="true"/>
+          </if>
         </if>
       </if>
-    </if>
-    <if test="${not temp.build.skip}">
-      <csc if="${current.build.config.release}" 
keyfile="${path::combine(log4net.basedir, 'old-log4net.snk')}" nostdlib="true" 
noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" 
output="${current.bin.dir}/../oldkey/log4net.dll" 
doc="${current.bin.dir}/../oldkey/log4net.xml">
+      <if test="${not temp.build.skip}">
+        <csc if="${current.build.config.release}" 
keyfile="${path::combine(log4net.basedir, 'old-log4net.snk')}" nostdlib="true" 
noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" 
output="${current.bin.dir}/../oldkey/log4net.dll" 
doc="${current.bin.dir}/../oldkey/log4net.xml">
+          <nowarn>
+            <!-- informational assembly version uses a free form text -->
+            <warning number="1607"/>
+          </nowarn>
+          <sources basedir="${log4net.basedir}/src">
+            <include name="**/*.cs"/>
+          </sources>
+          <resources failonempty="true">
+            <include name="${log4net.basedir}/NOTICE"/>
+            <include name="${log4net.basedir}/LICENSE"/>
+          </resources>
+          <references>
+            <include name="mscorlib.dll"/>
+            <include name="System.dll"/>
+            <include name="System.Core.dll"/>
+            <include name="System.Data.dll"/>
+            <include name="System.Web.dll"/>
+            <include name="System.Xml.dll"/>
+            <include name="System.Configuration.dll"/>
+            <!-- allow for third party assemblies to be referenced by just 
storing them in the lib/<framework family>/<framework version>/<build 
configuration> directory -->
+            <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"/>
+          </references>
+        </csc>
+      </if>
+      <csc if="${current.build.config.release}" 
keyfile="${path::combine(log4net.basedir, 'log4net.snk')}" nostdlib="true" 
noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" output="${current.bin.dir}/log4net.dll" 
doc="${current.bin.dir}/log4net.xml">
         <nowarn>
           <!-- informational assembly version uses a free form text -->
-          <warning number="1607" />
+          <warning number="1607"/>
         </nowarn>
         <sources basedir="${log4net.basedir}/src">
-          <include name="**/*.cs" />
+          <include name="**/*.cs"/>
         </sources>
         <resources failonempty="true">
-          <include name="${log4net.basedir}/NOTICE" />
-          <include name="${log4net.basedir}/LICENSE" />
+          <include name="${log4net.basedir}/NOTICE"/>
+          <include name="${log4net.basedir}/LICENSE"/>
         </resources>
         <references>
-          <include name="mscorlib.dll" />
-          <include name="System.dll" />
-          <include name="System.Core.dll" />
-          <include name="System.Data.dll" />
-          <include name="System.Xml.dll" />
-          <include name="System.Configuration.dll" />
+          <include name="mscorlib.dll"/>
+          <include name="System.dll"/>
+          <include name="System.Core.dll"/>
+          <include name="System.Data.dll"/>
+          <include name="System.Web.dll"/>
+          <include name="System.Xml.dll"/>
+          <include name="System.Configuration.dll"/>
           <!-- allow for third party assemblies to be referenced by just 
storing them in the lib/<framework family>/<framework version>/<build 
configuration> directory -->
-          <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"
 />
+          <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"/>
+        </references>
+      </csc>
+      <csc if="${current.build.config.debug}" nostdlib="true" noconfig="true" 
warnaserror="true" target="library" debug="${current.build.debug}" 
optimize="${current.build.optimize}" define="${current.build.defines.csc}" 
output="${current.bin.dir}/log4net.dll" doc="${current.bin.dir}/log4net.xml">
+        <nowarn>
+          <!-- informational assembly version uses a free form text -->
+          <warning number="1607"/>
+        </nowarn>
+        <sources basedir="${log4net.basedir}/src">
+          <include name="**/*.cs"/>
+        </sources>
+        <resources failonempty="true">
+          <include name="${log4net.basedir}/NOTICE"/>
+          <include name="${log4net.basedir}/LICENSE"/>
+        </resources>
+        <references>
+          <include name="mscorlib.dll"/>
+          <include name="System.dll"/>
+          <include name="System.Core.dll"/>
+          <include name="System.Data.dll"/>
+          <include name="System.Web.dll"/>
+          <include name="System.Xml.dll"/>
+          <include name="System.Configuration.dll"/>
+          <!-- allow for third party assemblies to be referenced by just 
storing them in the lib/<framework family>/<framework version>/<build 
configuration> directory -->
+          <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"/>
         </references>
       </csc>
     </if>
-    <csc if="${current.build.config.release}" 
keyfile="${path::combine(log4net.basedir, 'log4net.snk')}" nostdlib="true" 
noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" output="${current.bin.dir}/log4net.dll" 
doc="${current.bin.dir}/log4net.xml">
-      <nowarn>
-        <!-- informational assembly version uses a free form text -->
-        <warning number="1607" />
-      </nowarn>
-      <sources basedir="${log4net.basedir}/src">
-        <include name="**/*.cs" />
-      </sources>
-      <resources failonempty="true">
-        <include name="${log4net.basedir}/NOTICE" />
-        <include name="${log4net.basedir}/LICENSE" />
-      </resources>
-      <references>
-        <include name="mscorlib.dll" />
-        <include name="System.dll" />
-        <include name="System.Core.dll" />
-        <include name="System.Data.dll" />
-        <include name="System.Xml.dll" />
-        <include name="System.Configuration.dll" />
-        <!-- allow for third party assemblies to be referenced by just storing 
them in the lib/<framework family>/<framework version>/<build configuration> 
directory -->
-        <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"
 />
-      </references>
-    </csc>
-    <csc if="${current.build.config.debug}" nostdlib="true" noconfig="true" 
warnaserror="true" target="library" debug="${current.build.debug}" 
optimize="${current.build.optimize}" define="${current.build.defines.csc}" 
output="${current.bin.dir}/log4net.dll" doc="${current.bin.dir}/log4net.xml">
-      <nowarn>
-        <!-- informational assembly version uses a free form text -->
-        <warning number="1607" />
-      </nowarn>
-      <sources basedir="${log4net.basedir}/src">
-        <include name="**/*.cs" />
-      </sources>
-      <resources failonempty="true">
-        <include name="${log4net.basedir}/NOTICE" />
-        <include name="${log4net.basedir}/LICENSE" />
-      </resources>
-      <references>
-        <include name="mscorlib.dll" />
-        <include name="System.dll" />
-        <include name="System.Core.dll" />
-        <include name="System.Data.dll" />
-        <include name="System.Xml.dll" />
-        <include name="System.Configuration.dll" />
-        <!-- allow for third party assemblies to be referenced by just storing 
them in the lib/<framework family>/<framework version>/<build configuration> 
directory -->
-        <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"
 />
-      </references>
-    </csc>
   </target>
-  <target name="compile-net-4.0" description="Builds .NET Framework 4.0 
version" depends="set-net-4.0-runtime-configuration, check-log4net-basedir, 
clean-current-bin-dir">
-    <!-- initialize the temp.build.skip property to false -->
-    <property name="temp.build.skip" value="false" />
-    <if test="${current.build.config.release}">
-      <!-- check if the old log4net key file is available -->
-      <if test="${not file::exists(log4net.basedir + '/old-log4net.snk')}">
-        <if test="${property::exists('project.build.package') and 
project.build.package}">
-          <fail message="Old key file not found." />
-        </if>
-        <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
-          <echo message="Old key file not found."/>
-          <echo message="The release build using the old key will be skipped." 
/>
-          <property name="temp.build.skip" value="true" />
+  <target name="compile-net-3.5-cp" description="Builds .NET Framework 3.5 
Client Profile version">
+    <if test="${not framework::exists('net-3.5')}">
+      <echo message="Skipping build; required framework is not available: .NET 
Framework 3.5"/>
+    </if>
+    <if test="${framework::exists('net-3.5')}">
+      <call target="set-net-3.5-cp-runtime-configuration"/>
+      <call target="check-log4net-basedir"/>
+      <call target="clean-current-bin-dir"/>
+      <!-- initialize the temp.build.skip property to false -->
+      <property name="temp.build.skip" value="false"/>
+      <if test="${current.build.config.release}">
+        <!-- check if the old log4net key file is available -->
+        <if test="${not file::exists(log4net.basedir + '/old-log4net.snk')}">
+          <if test="${property::exists('project.build.package') and 
project.build.package}">
+            <fail message="Old key file not found."/>
+          </if>
+          <if test="${not(property::exists('project.build.package') and 
project.build.package)}">
+            <echo message="Old key file not found."/>
+            <echo message="The release build using the old key will be 
skipped."/>
+            <property name="temp.build.skip" value="true"/>
+          </if>
         </if>
       </if>
-    </if>
-    <if test="${not temp.build.skip}">
-      <csc if="${current.build.config.release}" 
keyfile="${path::combine(log4net.basedir, 'old-log4net.snk')}" nostdlib="true" 
noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" 
output="${current.bin.dir}/../oldkey/log4net.dll" 
doc="${current.bin.dir}/../oldkey/log4net.xml">
+      <if test="${not temp.build.skip}">
+        <csc if="${current.build.config.release}" 
keyfile="${path::combine(log4net.basedir, 'old-log4net.snk')}" nostdlib="true" 
noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" 
output="${current.bin.dir}/../oldkey/log4net.dll" 
doc="${current.bin.dir}/../oldkey/log4net.xml">
+          <nowarn>
+            <!-- informational assembly version uses a free form text -->
+            <warning number="1607"/>
+          </nowarn>
+          <sources basedir="${log4net.basedir}/src">
+            <include name="**/*.cs"/>
+          </sources>
+          <resources failonempty="true">
+            <include name="${log4net.basedir}/NOTICE"/>
+            <include name="${log4net.basedir}/LICENSE"/>
+          </resources>
+          <references>
+            <include name="mscorlib.dll"/>
+            <include name="System.dll"/>
+            <include name="System.Core.dll"/>
+            <include name="System.Data.dll"/>
+            <include name="System.Xml.dll"/>
+            <include name="System.Configuration.dll"/>
+            <!-- allow for third party assemblies to be referenced by just 
storing them in the lib/<framework family>/<framework version>/<build 
configuration> directory -->
+            <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"/>
+          </references>
+        </csc>
+      </if>
+      <csc if="${current.build.config.release}" 
keyfile="${path::combine(log4net.basedir, 'log4net.snk')}" nostdlib="true" 
noconfig="true" warnaserror="true" target="library" 
debug="${current.build.debug}" optimize="${current.build.optimize}" 
define="${current.build.defines.csc}" output="${current.bin.dir}/log4net.dll" 
doc="${current.bin.dir}/log4net.xml">
         <nowarn>
           <!-- informational assembly version uses a free form text -->
-          <warning number="1607" />
+          <warning number="1607"/>
         </nowarn>
         <sources basedir="${log4net.basedir}/src">
-          <include name="**/*.cs" />
+          <include name="**/*.cs"/>
         </sources>
         <resources failonempty="true">
-          <include name="${log4net.basedir}/NOTICE" />
-          <include name="${log4net.basedir}/LICENSE" />
+          <include name="${log4net.basedir}/NOTICE"/>
+          <include name="${log4net.basedir}/LICENSE"/>
         </resources>
         <references>
-          <include name="mscorlib.dll" />
-          <include name="System.dll" />
-          <include name="System.Core.dll" />
-          <include name="System.Data.dll" />
-          <include name="System.Web.dll" />
-          <include name="System.Xml.dll" />
-          <include name="System.Configuration.dll" />
+          <include name="mscorlib.dll"/>
+          <include name="System.dll"/>
+          <include name="System.Core.dll"/>
+          <include name="System.Data.dll"/>
+          <include name="System.Xml.dll"/>
+          <include name="System.Configuration.dll"/>
           <!-- allow for third party assemblies to be referenced by just 
storing them in the lib/<framework family>/<framework version>/<build 
configuration> directory -->
-          <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"
 />
+          <include 
name="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}/${current.build.config}/*.dll"/>
+        </references>
+      </csc>
+      <csc if="${current.build.config.debug}" nostdlib="true" noconfig="true" 
warnaserror="true" target="library" debug="${current.build.debug}" 
optimize="${current.build.optimize}" define="${current.build.defines.csc}" 
output="${current.bin.dir}/log4net.dll" doc="${current.bin.dir}/log4net.xml">
+        <nowarn>
+          <!-- informational assembly version uses a free form text -->
+          <warning number="1607"/>
+        </nowarn>
+        <sources basedir="${log4net.basedir}/src">
+          <include name="**/*.cs"/>
+        </sources>
+        <resources failonempty="true">
+          <include name="${log4net.basedir}/NOTICE"/>
+      

<TRUNCATED>

Reply via email to