<?xml version="1.0" ?>
<!--
Copyright 2004-2005 The Apache Software Foundation

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<project name="log4net-samples" default="compile" xmlnds="http://tempuri.org/nant-vs.xsd">
    <!-- Include configuration file -->
    <include buildfile="nant.config" />
    <!-- Include log4net helpers -->
    <include buildfile="${log4net.basedir}/log4net.include" />
    <!-- Targets that should always be executed -->
    <call target="set-build-configuration" />
    <call target="set-${project.runtime.config}-${project.runtime.version}-runtime-configuration" />
    <!-- Target for compiling the example -->
    <target name="compile" description="Builds the example" depends="check-current-bin-dir, clean-current-bin-dir, check-current-build-defines, check-current-build-config, check-current-build-debug, check-log4net-assembly">
        <!-- make sure the log4net key file is available to the compiler in a release build -->
        <if test="${current.build.config.release}">
            <!-- check if the log4net key file is available -->
            <if test="${not file::exists(log4net.basedir + '/log4net.snk')}">
                <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." />
                <fail message="The release build could not be built." />
            </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>
        </if>
        <!-- compile the example -->
        <csc noconfig="true" target="library" warnaserror="true" debug="${current.build.debug}" define="${current.build.defines.csc}" output="${current.bin.dir}/log4net.Ext.Trace.dll">
            <sources>
                <include name="src/**/*.cs" />
                <include name="${log4net.basedir}/src/AssemblyVersionInfo.cs" />
            </sources>
            <references basedir="${log4net.output.dir}">
                <include name="log4net.dll" />
            </references>
        </csc>
    </target>
</project>
