You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
330 lines
12 KiB
330 lines
12 KiB
<?xml version="1.0" encoding='iso-8859-1' ?>
|
|
<project name="all" default="usage">
|
|
|
|
<property name="base.dir" value="${path::get-full-path( project::get-base-directory() )}" />
|
|
<property name="sharedlibrary.dir" value="${base.dir}/Libraries" />
|
|
<property name="tools.dir" value="${base.dir}/Tools" />
|
|
<property name="tempdir" value="tempdir" />
|
|
|
|
<property name="version" value="3.1b1" />
|
|
|
|
<include buildfile="antlr3.runtime.net.common.inc" />
|
|
|
|
<!-- =================================================================== -->
|
|
<!-- Help on usage -->
|
|
<!-- =================================================================== -->
|
|
|
|
<target name="usage">
|
|
<echo message="ANTLR v3 C# Runtime - Nant Build file"/>
|
|
<echo message="-------------------------------------------------------------"/>
|
|
<echo message=""/>
|
|
<echo message="available targets are:"/>
|
|
<echo message=""/>
|
|
<echo message=" build - build debug or release version in '${base.dir}/build/${framework::get-target-framework()}'"/>
|
|
<echo message=" (use -Ddebug=true or -Ddebug=false )"/>
|
|
<echo message=""/>
|
|
<echo message=" release - build release version in '${base.dir}/build/${framework::get-target-framework()}'"/>
|
|
<echo message=""/>
|
|
<echo message=" dist - build src/bin/docs distro in '${base.dir}'"/>
|
|
<echo message=" (uses **pre-built** binaries.)"/>
|
|
<echo message=""/>
|
|
<echo message=" cleanall - delete all the Nant and VS.NET build artifacts"/>
|
|
<echo message=" clean - delete all the Nant build artifacts only"/>
|
|
<echo message=""/>
|
|
<echo message=" usage - show this message (default)"/>
|
|
<echo message=""/>
|
|
<echo message="-------------------------------------------------------------"/>
|
|
</target>
|
|
|
|
<target name="build"
|
|
depends="clean, init, build.v3.runtime, build.v3.utility, copytobuilddir"
|
|
description="Build debug or release version ( -Ddebug=true|false )"
|
|
/>
|
|
|
|
<target name="release" depends="clean" description="Builds release (i.e. non-debug) version">
|
|
<!-- build a clean release distribution for release -->
|
|
<property name="debug" value="false"/>
|
|
<call target="build"/>
|
|
</target>
|
|
|
|
<target name="cleanall" depends="clean" description="Cleans all the Nant and VS.NET build artifacts">
|
|
<nant buildfile="Sources/Antlr3.Runtime/default.build" target="clean.vsnet" inheritall="true" />
|
|
<nant buildfile="Sources/Antlr3.Utility/default.build" target="clean.vsnet" inheritall="true" />
|
|
</target>
|
|
|
|
<target name="dist"
|
|
depends="releaseDocs, zipsource, zip11, zip20, zipdoc"
|
|
description="Creates src/bin/docs distros (uses pre-built binaries)"
|
|
/>
|
|
|
|
|
|
<target name="clean" description="Cleans Nant build artifacts">
|
|
<delete dir="${build.working.dir}" failonerror="false" />
|
|
<delete dir="${build.dest.dir}" failonerror="false" />
|
|
<!-- <delete dir="${doc.dir}" failonerror="false" /> -->
|
|
</target>
|
|
|
|
<target name="init">
|
|
<mkdir dir="${build.working.dir}" />
|
|
<mkdir dir="${build.dest.dir}" />
|
|
<call target="copy_build_dependencies" />
|
|
</target>
|
|
|
|
<target name="copy_build_dependencies">
|
|
<copy todir="${build.dest.dir}">
|
|
<fileset basedir="${sharedlibrary.dir}/MbUnit">
|
|
<include name="MbUnit.Framework.dll" />
|
|
<include name="QuickGraph.Algorithms.dll" />
|
|
<include name="QuickGraph.dll" />
|
|
</fileset>
|
|
</copy>
|
|
<copy todir="${build.dest.dir}">
|
|
<fileset basedir="${sharedlibrary.dir}/StringTemplate.NET/${target.clr}">
|
|
<include name="StringTemplate.dll" />
|
|
<include name="antlr.runtime.dll" />
|
|
</fileset>
|
|
</copy>
|
|
</target>
|
|
|
|
<target name="build.v3.runtime" depends="init">
|
|
<nant buildfile="Sources/Antlr3.Runtime/default.build" target="build" inheritall="true" />
|
|
</target>
|
|
|
|
<target name="build.v3.utility" depends="init">
|
|
<nant buildfile="Sources/Antlr3.Utility/default.build" target="build" inheritall="true" />
|
|
</target>
|
|
|
|
<target name="copytobuilddir">
|
|
<copy todir="${build.dest.dir}">
|
|
<fileset basedir="${build.working.dir}">
|
|
<include name="Antlr3.Runtime.dll" />
|
|
<include name="Antlr3.Runtime.xml" />
|
|
<include name="Antlr3.Utility.dll" />
|
|
<include name="Antlr3.Utility.xml" />
|
|
<include name="StringTemplate.dll" />
|
|
<include name="antlr.runtime.dll" />
|
|
|
|
<include name="Antlr3.Runtime.pdb" />
|
|
<include name="Antlr3.Utility.pdb" />
|
|
<include name="StringTemplate.pdb" />
|
|
<include name="antlr.runtime.pdb" />
|
|
</fileset>
|
|
</copy>
|
|
</target>
|
|
|
|
<target name="zip11">
|
|
<zip zipfile="${base.dir}/Antlr3.C#.Runtime.v${version}.net-1.1.zip">
|
|
<fileset basedir="${base.dir}/build">
|
|
<include name="net-1.1/Antlr3.Runtime.dll" />
|
|
<include name="net-1.1/Antlr3.Utility.dll" />
|
|
<include name="net-1.1/StringTemplate.dll" />
|
|
<include name="net-1.1/antlr.runtime.dll" />
|
|
</fileset>
|
|
<fileset basedir="${base.dir}">
|
|
<include name="README.TXT" />
|
|
<include name="LICENSE.TXT" />
|
|
<include name="NOTICE.TXT" />
|
|
<include name="CHANGES.TXT" />
|
|
</fileset>
|
|
<fileset basedir="${base.dir}/docs">
|
|
<include name="Antlr3.Runtime.chm" />
|
|
<include name="Antlr3.Utility.chm" />
|
|
</fileset>
|
|
</zip>
|
|
</target>
|
|
|
|
<target name="zip20">
|
|
<zip zipfile="${base.dir}/Antlr3.C#.Runtime.v${version}.net-2.0.zip">
|
|
<fileset basedir="${base.dir}/build">
|
|
<include name="net-2.0/Antlr3.Runtime.dll" />
|
|
<include name="net-2.0/Antlr3.Utility.dll" />
|
|
<include name="net-2.0/StringTemplate.dll" />
|
|
<include name="net-2.0/antlr.runtime.dll" />
|
|
</fileset>
|
|
<fileset basedir="${base.dir}">
|
|
<include name="README.TXT" />
|
|
<include name="LICENSE.TXT" />
|
|
<include name="NOTICE.TXT" />
|
|
<include name="CHANGES.TXT" />
|
|
</fileset>
|
|
<fileset basedir="${base.dir}/docs">
|
|
<include name="Antlr3.Runtime.chm" />
|
|
<include name="Antlr3.Utility.chm" />
|
|
</fileset>
|
|
</zip>
|
|
</target>
|
|
|
|
<target name="zipdoc">
|
|
<zip zipfile="${base.dir}/Antlr3.C#.Runtime.v${version}.api-doc.zip">
|
|
<fileset basedir="${base.dir}/docs">
|
|
<include name="Antlr3.Runtime.chm" />
|
|
<include name="Antlr3.Utility.chm" />
|
|
</fileset>
|
|
</zip>
|
|
</target>
|
|
|
|
<target name="zipsource">
|
|
<zip zipfile="${base.dir}/Antlr3.C#.Runtime.v${version}.src.zip">
|
|
<fileset basedir="${base.dir}">
|
|
<include name="**/*.build" />
|
|
<include name="**/*.xml" />
|
|
<include name="**/*.inc" />
|
|
<include name="**/*.sln" />
|
|
<include name="**/*.cs" />
|
|
<include name="**/*.csproj" />
|
|
<include name="**/*.resx" />
|
|
<include name="**/*.ico" />
|
|
<include name="**/*.html" />
|
|
<include name="**/*.jpg" />
|
|
<include name="**/*.pdf" />
|
|
|
|
<include name="${sharedlibrary.dir}/**/*.dll" />
|
|
|
|
<include name="${tools.dir}/**/*.dll" />
|
|
<include name="${tools.dir}/**/*.exe" />
|
|
|
|
<include name="README.TXT" />
|
|
<include name="LICENSE.TXT" />
|
|
<include name="NOTICE.TXT" />
|
|
<include name="CHANGES.TXT" />
|
|
|
|
<exclude name="*.snk" />
|
|
<exclude name="**/obj/Debug/*.*" />
|
|
<exclude name="**/obj/Debug/net-1.1/*.*" />
|
|
<exclude name="**/obj/Debug/net-2.0/*.*" />
|
|
<exclude name="**/bin/Debug/*.*" />
|
|
<exclude name="**/bin/Debug/net-1.1/*.*" />
|
|
<exclude name="**/bin/Debug/net-2.0/*.*" />
|
|
<exclude name="**/bin/*.*" />
|
|
<exclude name="bin/**/*.*" />
|
|
<exclude name="build/**/*.*" />
|
|
<exclude name="**/*.user" />
|
|
<exclude name="**/*.resharperoptions" />
|
|
<exclude name="**/*.obj" />
|
|
<exclude name="**/*.pch" />
|
|
<exclude name="**/*.pdb" />
|
|
<exclude name="**/*.idb" />
|
|
<exclude name="**/*.log*" />
|
|
<exclude name="**/*.suo" />
|
|
<exclude name="**/*.bak" />
|
|
<exclude name="**/*.new" />
|
|
<exclude name="**/*.original" />
|
|
</fileset>
|
|
</zip>
|
|
</target>
|
|
|
|
<!-- Documentation generation. -->
|
|
<property name="base.dir" value="." />
|
|
<property name="doc.dir" value="${base.dir}/docs" />
|
|
<property name="tempBin.dir" value="${doc.dir}/bin"/>
|
|
<property name="outputDocs.file" value="Antlr3.Runtime"/>
|
|
|
|
<!-- Docs generation properties. -->
|
|
<property name="ShowMissing" value="false"/>
|
|
<property name="ShowPrivate" value="false"/>
|
|
<property name="OutputTarget" value="HTMLHelp"/>
|
|
|
|
<!--
|
|
description:
|
|
Generates documentation with default properties.
|
|
-->
|
|
<target name="releaseDocs" depends="clean.docs">
|
|
<call target="copyFilesToDocument"/>
|
|
<call target="generateReleaseDocs"/>
|
|
</target>
|
|
|
|
<!--
|
|
description:
|
|
Generates documentation for developers, with all missing information indicated and private members visible.
|
|
-->
|
|
<target name="devDocs" depends="clean.docs">
|
|
<property name="ShowMissing" value="true"/>
|
|
<property name="ShowPrivate" value="true"/>
|
|
<property name="outputDocs.file" value="Antlr3.Runtime.Dev"/>
|
|
<call target="copyFilesToDocument"/>
|
|
<call target="generateReleaseDocs"/>
|
|
</target>
|
|
|
|
<!--
|
|
description:
|
|
Generates documentation for release.
|
|
-->
|
|
<target name="generateReleaseDocs">
|
|
<ndoc failonerror="true">
|
|
<assemblies basedir="${tempBin.dir}">
|
|
<include name="Antlr3.Runtime.dll"/>
|
|
<include name="Antlr3.Utility.dll"/>
|
|
</assemblies>
|
|
<referencepaths>
|
|
<include name="Libraries/StringTemplate.NET/${framework::get-target-framework()}"/>
|
|
</referencepaths>
|
|
<documenters>
|
|
<documenter name="MSDN">
|
|
<property name="OutputTarget" value="${OutputTarget}" />
|
|
<property name="Preliminary" value="true" />
|
|
<property name="BinaryTOC" value="true" />
|
|
<property name="CleanIntermediates" value="true" />
|
|
<property name="SdkLinksOnWeb" value="true" />
|
|
|
|
<property name="OutputDirectory" value="${doc.dir}" />
|
|
<property name="HtmlHelpName" value="${outputDocs.file}" />
|
|
<property name="IncludeFavorites" value="True" />
|
|
<property name="SplitTOCs" value="False" />
|
|
|
|
<property name="Title" value="ANTLR v3 C# Runtime Library API documentation" />
|
|
<property name="DefaulTOC" value="Antlr.Runtime" />
|
|
|
|
<property name="ShowVisualBasic" value="True" />
|
|
<property name="ShowMissingSummaries" value="${ShowMissing}" />
|
|
<property name="ShowMissingRemarks" value="${ShowMissing}" />
|
|
<property name="ShowMissingParams" value="${ShowMissing}" />
|
|
<property name="ShowMissingReturns" value="${ShowMissing}" />
|
|
<property name="ShowMissingValues" value="${ShowMissing}" />
|
|
<property name="DocumentEmptyNamespaces" value="${ShowMissing}" />
|
|
|
|
<property name="AutoPropertyBackerSummaries" value="true" />
|
|
<property name="AutoDocumentConstructors" value="true" />
|
|
<property name="DocumentProtected" value="True" />
|
|
<property name="DocumentInternals" value="${ShowPrivate}" />
|
|
<property name="DocumentPrivates" value="${ShowPrivate}" />
|
|
|
|
<property name="IncludeAssemblyVersion" value="True" />
|
|
<property name="CopyrightText" value="Copyright 2005-2007 - Kunle Odutola" />
|
|
<property name="CopyrightHref" value="http://www.antlr.org" />
|
|
</documenter>
|
|
</documenters>
|
|
</ndoc>
|
|
</target>
|
|
|
|
<!--
|
|
description:
|
|
Copies all files to be documented to a single location to speed up the documentation process.
|
|
-->
|
|
<target name="copyFilesToDocument">
|
|
<copy todir="${tempBin.dir}" flatten="true">
|
|
<fileset basedir="build/${target.clr}">
|
|
<include name="Antlr3.Runtime.dll"/>
|
|
<include name="Antlr3.Runtime.xml"/>
|
|
<include name="Antlr3.Utility.dll"/>
|
|
<include name="Antlr3.Utility.xml"/>
|
|
</fileset>
|
|
</copy>
|
|
</target>
|
|
|
|
<!--
|
|
description:
|
|
Cleans up prior to documentation generation.
|
|
-->
|
|
<target name="clean.docs">
|
|
<delete>
|
|
<fileset>
|
|
<!--
|
|
<include name="${doc.dir}/**"/>
|
|
-->
|
|
<exclude name="**/*.chm"/>
|
|
</fileset>
|
|
</delete>
|
|
</target>
|
|
|
|
</project>
|