<?xml version="1.0" ?>
<project name="nant" default="test">
    <echo message="Using '${framework::get-target-framework()}' framework on '${platform::get-name()}' platform." />
    <!-- global project settings -->
    <property name="project.name" value="nant" />
    <property name="project.version" value="0.85" overwrite="false" />
    <!-- global build settings -->
    <property name="lib.dir" value="lib/${framework::get-family(framework::get-target-framework())}/${framework::get-version(framework::get-target-framework())}" dynamic="true" />    
    <!-- default configuration -->
    <property name="project.config" value="debug" /> <!-- debug|release -->
    <property name="nant.console.name" value="NAnt" />
    <property name="build.defines" value="" />
    <property name="build.number" value="${math::abs(math::floor(timespan::get-total-days(datetime::now() - convert::to-datetime('01/01/2000'))))}" />
    <!-- platform specific properties. These are the defaults -->
    <property name="current.build.defines" value="${build.defines}" />

    <fileset id="tas.msnet" basedir="src">
        <includes name="NAnt.MSNet/NAnt.MSNet.build" />
    </fileset>
    
    <fileset id="tas.msnet.tests" basedir="tests">
        <includes name="NAnt.MSNet/NAnt.MSNet.build" />
    </fileset>
    
    <fileset id="tas.win32" basedir="src">
        <includes name="NAnt.Win32/NAnt.Win32.build" />
        <includes name="NAnt.VisualCpp/NAnt.VisualCpp.build" />
        <includes name="NAnt.VSNet/NAnt.VSNet.build" />
    </fileset>
    
    <fileset id="tas.win32.tests" basedir="tests">
        <includes name="NAnt.Win32/NAnt.Win32.build" />
        <includes name="NAnt.VSNet/NAnt.VSNet.build" />
        <!-- <includes name="NAnt.VisualCpp/NAnt.VisualCpp.build" /> -->
    </fileset>
    
    <fileset id="tas.core" basedir="src">
        <includes name="NAnt.DotNet/NAnt.DotNet.build" />
        <includes name="NAnt.Zip/NAnt.Zip.build" />
        <includes name="NAnt.NUnit/NAnt.NUnit.build" />
        <includes name="NAnt.SourceControl/NAnt.SourceControl.build" />
    </fileset>
    
    <fileset id="tas.core.tests" basedir="tests">
        <includes name="NAnt.DotNet/NAnt.DotNet.build" />
        <includes name="NAnt.Zip/NAnt.Zip.build" />
        <!--
        <includes name="NAnt.NUnit/NAnt.NUnit.build" />
        <includes name="NAnt.SourceControl/NAnt.SourceControl.build" />
        -->
    </fileset>
    
    <!-- exclude the nunit and sourcecontrol assemblies -->
    <!-- named project configurations (used by self-test and self-doc tasks) -->
    <target name="debug" description="Perform a 'debug' build">
        <property name="project.config" value="debug" />
        <property name="build.debug" value="true" />
        <property name="build.dir" value="${nant.project.basedir}/build/${framework::get-target-framework()}.${platform::get-name()}/${project.name}-${project.version}-${project.config}" />
    </target>
    <target name="release" description="Perform a 'release' build">
        <property name="project.config" value="release" />
        <property name="build.debug" value="false" />
        <property name="build.dir" value="${nant.project.basedir}/build/${project.name}-${project.version}" />
    </target>
    <!-- build tasks -->
    <target name="init" description="Initializes build properties">
        <call target="${project.config}" />
        <call target="set-framework-configuration" />
    </target>
    <target name="create-common-assemblyinfo">
        <!-- ensure src/CommonAssemblyInfo.cs is writable if it already exists -->
        <attrib file="src/CommonAssemblyInfo.cs" readonly="false" if="${file::exists('src/CommonAssemblyInfo.cs')}" />
        <!-- generate the source file holding the common assembly-level attributes -->
        <asminfo output="src/CommonAssemblyInfo.cs" language="CSharp">
            <imports>
                <import name="System" />
                <import name="System.Reflection" />
                <import name="System.Runtime.InteropServices" />
            </imports>
            <attributes>
                <attribute type="ComVisibleAttribute" value="false" />
                <attribute type="CLSCompliantAttribute" value="true" />
                <attribute type="AssemblyTitleAttribute" value="NAnt" />
                <attribute type="AssemblyDescriptionAttribute" value="A .NET Build Tool" />
                <attribute type="AssemblyConfigurationAttribute" value="${framework::get-target-framework()}.${platform::get-name()}; nightly" />
                <attribute type="AssemblyCompanyAttribute" value="http://nant.sourceforge.net" />
                <attribute type="AssemblyProductAttribute" value="NAnt" />
                <attribute type="AssemblyCopyrightAttribute" value="Copyright (C) 2001-${datetime::get-year(datetime::now())} Gerry Shaw" />
                <attribute type="AssemblyTrademarkAttribute" value="" />
                <attribute type="AssemblyCultureAttribute" value="" />
                <attribute type="AssemblyVersionAttribute" value="${project.version}.${build.number}.0" />
                <attribute type="AssemblyInformationalVersionAttribute" value="${project.version}" />
            </attributes>
        </asminfo>
    </target>
    <target name="clean" depends="init" description="Deletes current build configuration">
        <delete dir="${build.dir}" failonerror="false" />
    </target>
    <target name="cleanall" description="Deletes every build configuration">
        <echo message="Deleting all builds from all configurations" />
        <delete dir="build" failonerror="false" />
    </target>
    <target name="build" depends="init, create-common-assemblyinfo" description="Builds current configuration">
        <echo message="Build Directory is ${build.dir}" />
        <!-- prepare build directory -->
        <mkdir dir="${build.dir}/bin" />
        <!-- copy framework-neutral libraries -->
        <copy todir="${build.dir}/bin">
            <fileset basedir="lib">
                <includes name="NUnitCore.dll" />
                <includes name="ICSharpCode.SharpZipLib.dll" />
                <includes name="ICSharpCode.SharpCvsLib.dll" />
            </fileset>
        </copy>
        <copy todir="${build.dir}/bin">
            <fileset basedir="bin">
                <includes name="cvs.exe" />
            </fileset>
        </copy>
        <!-- copy framework-specific libraries -->
        <copy todir="${build.dir}/bin">
            <fileset basedir="${lib.dir}">
                <includes name="NDoc.Core.dll" />
                <includes name="NDoc.Documenter.*.dll" />
                <includes name="nunit.framework.dll" />
                <includes name="log4net.dll" />
            </fileset>
        </copy>
        <!-- build NAnt.Core assembly -->
        <nant buildfile="src/NAnt.Core/NAnt.Core.build" target="build" />
        <!-- build NAnt.Console assembly -->
        <nant buildfile="src/NAnt.Console/NAnt.Console.build" target="build" />
        <!-- build task assemblies -->
        <nant target="build">
            <buildfiles refid="tas.core"/>
        </nant>
        <!-- build Microsoft.NET specific task assemblies if we are on win32 and targeting a .NET Framework -->
        <nant target="build" if="${platform::is-win32() and framework::get-family(framework::get-target-framework()) = 'net'}">
            <buildfiles refid="tas.msnet"/>
        </nant>
        <!-- build win32 specific task assemblies if we are on win32 -->
        <nant target="build" if="${platform::is-win32()}">
            <buildfiles refid="tas.win32" />
        </nant>
        <!-- build NAnt.Core.Tests assembly -->
        <nant buildfile="tests/NAnt.Core/NAnt.Core.build" target="build" />
        <!-- build NAnt.Console.Tests assembly -->
        <nant buildfile="tests/NAnt.Console/NAnt.Console.build" target="build" />
        <!-- build tests for task assemblies -->
        <nant target="build">
            <buildfiles refid="tas.core.tests"/>
        </nant>
        <!-- build tests for Microsoft.NET specific extension assemblies if we are on win32 and targeting a .NET Framework -->
        <nant target="build" if="${platform::is-win32() and framework::get-family(framework::get-target-framework()) = 'net'}">
            <buildfiles refid="tas.msnet.tests"/>
        </nant>
        <nant target="build" if="${platform::is-win32()}">
            <buildfiles refid="tas.win32.tests" />
        </nant>
    </target>
    <!-- test the newly built NAnt -->
    <target name="test" depends="build" description="Tests current configuration">
        <echo message="Running unit tests with just built version of NAnt." />
        <exec program="${build.dir}/bin/${nant.console.name}.exe" useruntimeengine="true">
            <arg value="-buildfile:NAnt.build" />
            <arg value="${project.config}" />
            <arg value="self-test" />
            <arg value="-D:project.version=${project.version}" />
            <arg value="-k:${framework::get-target-framework()}" />
        </exec>
    </target>
    <target name="self-test" depends="init">
        <copy file="${path::combine(nant.location, 'NAnt.exe.config')}" tofile="${path::combine(nant.location, 'nant.tests.config')}" />
        <!-- make sure the config file is writable -->
        <attrib file="${path::combine(nant.location, 'nant.tests.config')}" readonly="false" />
        <!-- ensure the tests target the current framework -->
        <xmlpoke file="${path::combine(nant.location, 'nant.tests.config')}"
                 xpath="//configuration/nant/frameworks/platform[@name='${platform::get-name()}']/@default"
                 value="${framework::get-target-framework()}"/>
        <!-- output the config file that will be used to run the tests -->
        <echo message="testing with config '${path::combine(nant.location, 'nant.tests.config')}'" />
        <!-- test NAnt.Console assembly -->
        <nant buildfile="tests/NAnt.Console/NAnt.Console.build" target="test" />
        <!-- test NAnt.Core assembly -->
        <nant buildfile="tests/NAnt.Core/NAnt.Core.build" target="test" />
        <!-- test task assemblies -->
        <nant target="test">
            <buildfiles refid="tas.core.tests"/>
        </nant>
        <!-- test Microsoft.NET specific extension assemblies if we are on win32 and targeting a .NET Framework -->
        <nant target="test" if="${platform::is-win32() and framework::get-family(framework::get-target-framework()) = 'net'}">
            <buildfiles refid="tas.msnet.tests"/>
        </nant>
        <nant target="test" if="${platform::is-win32()}">
            <buildfiles refid="tas.win32.tests" />
        </nant>
    </target>
    <target name="userdoc" depends="build" description="Builds user documentation">
        <!-- build the documenter -->
        <csc target="library" define="${current.build.defines}" warnaserror="true" nowarn="0618"
            debug="${build.debug}" output="${build.dir}/bin/NDoc.Documenter.NAnt.dll">
            <sources failonempty="true">
                <includes name="src/NDoc.Documenter.NAnt/*.cs" />
                <!-- common assembly-level attributes -->
                <includes name="src/CommonAssemblyInfo.cs" />
            </sources>
            <references failonempty="true">
                <includes name="${build.dir}/bin/NAnt.Core.dll" />
                <includes name="${build.dir}/bin/NDoc.Core.dll" />
            </references>
            <resources basedir="src/NDoc.Documenter.NAnt/Resources" prefix="Documenter.xslt.">
                <includes name="**/*.xslt" />
            </resources>
        </csc>
        <echo message="Creating task and type documentation from ${build.dir}/bin" />
        <exec program="${build.dir}/bin/${nant.console.name}.exe" useruntimeengine="true">
            <arg value="-indent:1" />
            <arg value="-buildfile:NAnt.build" />
            <arg value="${project.config}" />
            <arg value="self-userdoc" />
            <arg value="-D:project.version=${project.version}" />
            <arg value="-k:${framework::get-target-framework()}" />
        </exec>
    </target>
    <target name="self-userdoc" depends="init">
        <!-- use ndoc and NAnt.Documenter to build user doc if they need it -->
        <uptodate property="help.uptodate">
            <targetfiles>
                <includes name="${build.dir}/doc/help/*.html" />
            </targetfiles>
            <sourcefiles basedir="${build.dir}/bin">
                <!-- make sure the tasks/types are not new -->
                <includes name="NAnt.Core.dll" />
                <includes name="*Tasks.dll" />
                <includes name="NAnt.NUnit.dll" />
                <!-- make sure the documenter is not new -->
                <includes name="NDoc.Documenter.*.dll" />
            </sourcefiles>
        </uptodate>
        <if test="${not(help.uptodate)}">
            <!-- don't build this for now. Just for testing.
            <ndoc>
                <assemblies basedir="${build.dir}/bin">
                    <includes name="NAnt.Core.dll" />
                </assemblies>
                <documenters>
                    <documenter name="XML">
                        <property name="OutputFile" value="${build.dir}/doc/nantdoc.raw.xml" />
                        <property name="LinkToSdkDocVersion" value="${link.sdkdoc.version}" />
                        <property name="DocumentAttributes" value="True" />
                        <property name="IncludeAssemblyVersion" value="True" />
                    </documenter>
                </documenters>
            </ndoc>
            -->
            <ndoc>
                <assemblies basedir="${build.dir}/bin">
                    <includes name="NAnt.Core.dll" />
                    <includes name="*Tasks.dll" />
                    <includes name="NAnt.NUnit.dll" />
                </assemblies>
                <documenters>
                    <documenter name="NAnt">
                        <property name="OutputDirectory" value="${build.dir}/doc/help" />
                        <property name="LinkToSdkDocVersion" value="${link.sdkdoc.version}" />
                        <!-- set base uri used for linking to other NAnt docs -->
                        <property name="NAntBaseUri" value="../" />
                        <!-- do not filter on namespace -->
                        <property name="NamespaceFilter" value="" />
                        <!-- set the name of the application for which docs are generated -->
                        <property name="ApplicationName" value="NAnt" />
                        <property name="DocumentAttributes" value="True" />
                        <property name="IncludeAssemblyVersion" value="True" />
                        <property name="ShowMissingParams" value="True" />
                        <property name="ShowMissingReturns" value="True" />
                        <property name="ShowMissingValues" value="True" />
                    </documenter>
                </documenters>
            </ndoc>
        </if>
        <!-- copy doc files from source-->
        <copy todir="${build.dir}" failonerror="false">
            <fileset>
                <includes name="doc/**" />
                <excludes name="**/obj/**" />
                <excludes name="**/bin/**" />
            </fileset>
        </copy>
        <echo message="User documentation: file://${build.dir}/doc/index.html" />
    </target>
    <target name="sdkdoc" depends="build" description="Builds SDK documentation">
        <echo message="Creating SDK Documentation for ${build.dir}/bin/${nant.console.name}.exe" />
        <exec program="${build.dir}/bin/${nant.console.name}.exe" useruntimeengine="true">
            <arg value="-indent:1" />
            <arg value="-buildfile:NAnt.build" />
            <arg value="${project.config}" />
            <arg value="self-sdkdoc" />
            <arg value="-D:project.version=${project.version}" />
            <arg value="-k:${framework::get-target-framework()}" />
        </exec>
        <!-- delete everything but the .chm -->
        <delete>
            <fileset basedir="${build.dir}/doc/sdk">
                <includes name="**/*" />
                <excludes name="NAnt-SDK.chm" />
            </fileset>
        </delete>
    </target>
    <target name="self-sdkdoc" depends="init">
        <!-- use ndoc to build sdk doc if they are not uptodate-->
        <uptodate property="sdk.uptodate">
            <targetfiles>
                <includes name="${build.dir}/doc/sdk/*.chm" />
            </targetfiles>
            <sourcefiles basedir="${build.dir}/bin">
                <includes name="NAnt.Core.dll" />
                <includes name="*Tasks.dll" />
                <includes name="NAnt.NUnit.dll" />
                <!-- make sure the documenter is not new -->
                <includes name="NDoc.Documenter.*.dll" />
            </sourcefiles>
        </uptodate>
        <if test="${not(sdk.uptodate)}">
            <ndoc>
                <assemblies basedir="${build.dir}/bin">
                    <includes name="NAnt.Core.dll" />
                    <includes name="NAnt.*Tasks.dll" />
                    <includes name="NAnt.NUnit.dll" />
                </assemblies>
                <documenters>
                    <documenter name="MSDN">
                        <property name="OutputDirectory" value="${build.dir}/doc/sdk" />
                        <property name="OutputTarget" value="HtmlHelp" />
                        <property name="LinkToSdkDocVersion" value="${link.sdkdoc.version}" />
                        <property name="HtmlHelpName" value="NAnt-SDK" />
                        <property name="IncludeFavorites" value="False" />
                        <property name="Title" value="NAnt SDK Documentation - v.${project.version}" />
                        <property name="SplitTOCs" value="False" />
                        <property name="DefaulTOC" value="" />
                        <property name="ShowVisualBasic" value="True" />
                        <property name="ShowMissingSummaries" value="${build.debug}" />
                        <property name="ShowMissingRemarks" value="${build.debug}" />
                        <property name="ShowMissingParams" value="${build.debug}" />
                        <property name="ShowMissingReturns" value="${build.debug}" />
                        <property name="ShowMissingValues" value="${build.debug}" />
                        <property name="DocumentAttributes" value="True" />
                        <property name="ShowTypeIdInAttributes" value="True" />
                        <property name="DocumentInternals" value="False" />
                        <property name="DocumentPrivates" value="False" />
                        <property name="DocumentProtected" value="True" />
                        <property name="DocumentEmptyNamespaces" value="False" />
                        <property name="IncludeAssemblyVersion" value="False" />
                        <property name="CopyrightText" value="Copyright (C) 2001-2003 Gerry Shaw" />
                        <property name="CopyrightHref" value="http://nant.sourceforge.net" />
                        <property name="EditorBrowsableFilter" value="Off" />
                    </documenter>
                </documenters>
            </ndoc>
        </if>
    </target>
    
    <target name="schema" depends="init">
        <property name="schema.output" value="${build.dir}/schema/${project.name}-${project.version}.xsd"/>
        <!-- generate schema -->
        <mkdir dir="${build.dir}/schema"/>
        <nantschema output="${schema.output}" target-ns="http://nant.sf.net/schemas/${project.name}-${project.version}.${platform::get-name()}.${framework::get-target-framework()}.xsd"/>
    </target>
    
    <target name="deploy-schema" depends="schema" description="Deploys the Schema to VS.Net schemas dirs. For now it only copies to 7.0 and 7.1">
        <!-- retrieve location of VS.NET 2002 schema store -->
        <readregistry property="vs2002.xml.schemas" key="SOFTWARE\Microsoft\VisualStudio\7.0\InstallDir" hive="LocalMachine" failonerror="false" />
        <if propertyexists="vs2002.xml.schemas">
            <!-- deploy schema to VS.NET 2002 schema store -->
            <copy file="${schema.output}" todir="${vs2002.xml.schemas}..\\Packages\schemas\xml" />
        </if>
        
        <!-- retrieve location of VS.NET 2003 schema store -->
        <readregistry property="vs2003.xml.schemas" key="SOFTWARE\Microsoft\VisualStudio\7.1\InstallDir" hive="LocalMachine" failonerror="false" />
        <if propertyexists="vs2003.xml.schemas">
            <!-- deploy schema to VS.NET 2002 schema store -->
            <copy file="${schema.output}" todir="${vs2003.xml.schemas}..\\Packages\schemas\xml" />        
        </if>
    </target>
    
    <target name="package" depends="userdoc sdkdoc" description="Creates a package zip file.">
        <exec program="${build.dir}/bin/${nant.console.name}.exe" useruntimeengine="true">
            <arg value="-buildfile:NAnt.build" />
            <arg value="${project.config}" />
            <arg value="schema" />
            <arg value="-D:project.version=${project.version}" />
            <arg value="-k:${framework::get-target-framework()}" />
        </exec>
        <!-- move config file -->
        <move file="${build.dir}/bin/NAnt.exe.config" tofile="${build.dir}/bin/${nant.console.name}.exe.config" />
        <!-- remove non-release files -->
        <delete>
            <fileset basedir="${build.dir}/bin">
                <includes name="NAnt.Console.*" />
                <!-- remove test assemblies -->
                <includes name="*.Tests.*" />
            </fileset>
        </delete>
        <!-- copy project files -->
        <copy todir="${build.dir}">
            <fileset>
                <includes name="doc/**" />
                <includes name="src/**" />
                <includes name="tests/**" />
                <includes name="examples/**" />
                <includes name="schema/**" />
                <includes name="*" />
                <!-- exclude nighlty build file -->
                <excludes name="nightly.xml" />
                <!-- exclude release build file -->
                <excludes name="release.xml" />
                <!--exclude VS.Net stuff -->
                <excludes name="**/*.suo" />
                <excludes name="**/*j.user" />
                <excludes name="**/bin/**" />
                <excludes name="**/obj/**" />
            </fileset>
        </copy>
        <!-- ensure lib directory exists -->
        <mkdir dir="${build.dir}/lib" />        
        <!-- copy third-party libraries -->
        <copy todir="${build.dir}/lib">
            <fileset basedir="lib">
                <includes name="**/NDoc.Core.dll" />
                <includes name="**/NDoc.Core.xml" />
                <includes name="**/NDoc.Documenter.*.dll" />
                <includes name="**/NDoc.Documenter.*.xml" />
                <includes name="**/nunit.framework.dll" />
                <includes name="**/NUnitCore.dll" />
                <includes name="**/ICSharpCode.SharpZipLib.dll" />
                <includes name="**/ICSharpCode.SharpCvsLib.dll" />
                <includes name="**/log4net.dll" />
                <includes name="**/log4net.xml" />
            </fileset>
        </copy>
        <!-- determine name of package zip file -->
        <property name="project.zip-path" value="${nant.project.basedir}/build/${project.name}-${project.version}.zip" />
        <!-- remove package zip file if it already exists -->
        <delete file="${project.zip-path}" if="${file::exists(project.zip-path)}" />
        <!-- create package zip file -->
        <zip zipfile="${project.zip-path}">
            <fileset basedir="${build.dir}">
                <includes name="**/*" />
                <excludes name="**/cache/**" />
                <excludes name="**/_*/**" />
            </fileset>
        </zip>
        <echo message="Created a '${project.config}' package at file://${project.zip-path}" />
    </target>
    <!-- Copies files to the bin folder. -->
    <target name="UpdateBin" depends="build" description="Does a release build and copies them to the bin folder.">
        <delete if="false">
            <fileset basedir="bin">
                <includes name="NAnt*" />
                <excludes name="${nant.console.name}.exe" />
            </fileset>
        </delete>
        <copy todir="bin" overwrite="true">
            <fileset basedir="${build.dir}/bin/">
                <includes name="NAnt*" />
                <excludes name="*Test*" />
                <excludes name="${nant.console.name}.xml" />
                <excludes name="${nant.console.name}.exe" />
            </fileset>
        </copy>
    </target>
    
    <target name="BuildContrib">
        <if test="${property::exists('nant.repackage')}">
            <call target="package"/>
        </if>
        <ifnot test="${property::exists('nant.repackage')}">
            <call target="build"/>
        </ifnot>
        <exec program="${build.dir}/bin/${nant.console.name}.exe" useruntimeengine="true">
            <arg value="-buildfile:build-contrib.xml" />
            <arg value="-D:project.version=${project.version}" />
            <arg value="-D:nant.dir=${build.dir}"/>
            <arg value="-k:${framework::get-target-framework()}" />
            <arg value="build"/>
        </exec>
    </target>
    
    <!-- Framework support targets -->
    <target name="set-framework-configuration">
        <if test="${not(target::exists('set-'+framework::get-target-framework()+'-framework-configuration'))}">
            <fail message="The '${framework::get-target-framework()}' framework is not supported by this version of NAnt." />
        </if>
        <call target="set-${framework::get-target-framework()}-framework-configuration" />
    </target>
    <target name="set-net-1.0-framework-configuration">
        <property name="nant.settings.currentframework" value="net-1.0" />
        <property name="current.build.defines" value="${build.defines}NET,NET_1_0" dynamic="true" />
        <property name="link.sdkdoc.version" value="SDK_v1_0" />
    </target>
    <target name="set-net-1.1-framework-configuration">
        <property name="nant.settings.currentframework" value="net-1.1" />
        <property name="current.build.defines" value="${build.defines}NET,NET_1_1" dynamic="true" />
        <property name="link.sdkdoc.version" value="SDK_v1_1" />
    </target>
    <target name="set-net-1.2-framework-configuration">
        <property name="nant.settings.currentframework" value="net-1.2" />
        <property name="current.build.defines" value="${build.defines}NET,NET_1_2" dynamic="true" />
        <property name="link.sdkdoc.version" value="MsdnOnline" />
    </target>
    <target name="set-netcf-1.0-framework-configuration">
        <property name="nant.settings.currentframework" value="netcf-1.0" />
        <property name="current.build.defines" value="${build.defines}NETCF,NETCF_1_0" dynamic="true" />
        <property name="link.sdkdoc.version" value="SDK_v1_1" />
    </target>
    <target name="set-mono-1.0-framework-configuration">
        <property name="nant.settings.currentframework" value="mono-1.0" />
        <property name="current.build.defines" value="${build.defines}MONO,MONO_1_0" dynamic="true" />
        <property name="link.sdkdoc.version" value="MsdnOnline" />
    </target>
    <target name="set-sscli-1.0-framework-configuration">
        <property name="nant.settings.currentframework" value="sscli-1.0" />
        <property name="current.build.defines" value="${build.defines}SSCLI,SSCLI_1_0" dynamic="true" />
        <property name="link.sdkdoc.version" value="MsdnOnline" />
    </target>
</project>
