bat/tests/syntax-tests/highlighted/NAnt Build File/Default.build

168 lines
40 KiB
XML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="UTF-8"?>
<project name="Paraesthesia.Tools.NAntTasks" default="all" verbose="false">
 <!-- === ENVIRONMENT SETUP === -->
 <property name="nant.settings.currentframework" value="net-2.0"/>
 <tstamp />
 <sysinfo />
 <property name="build.config" value="Release" />
 <property name="build.version" value="2.0.0.0" />
 <property name="build.name" value="Paraesthesia.Tools.NAntTasks" />
 <property name="build.dir" value="${project::get-base-directory()}\build" />
 <property name="build.bin.dir" value="${build.dir}\bin" />
 <property name="build.doc.dir" value="${build.dir}\doc" />
 <property name="build.install.dir" value="${build.dir}\install" />
 <property name="build.log.dir" value="${build.dir}\log" />
 
 <!-- === STANDARD TARGETS === -->
 <target name="all" depends="build-tasks test" description="Builds all custom NAnt task projects."/>
 <target name="clean" description="Remove all compiled output folders.">
 <echo message="Removing build output folder..."/>
 <delete dir="${build.dir}" failonerror="false" verbose="false"/>
 <echo message="Removing compilation artifact folders..."/>
 <delete failonerror="false" verbose="false">
 <fileset>
 <exclude name="lib" />
 <exclude name="lib\**" />
 <include name="**\obj\**" />
 <include name="**\bin\**" />
 </fileset>
 </delete>
 <echo message="Clean complete."/>
 </target>
 <target name="test" description="Run unit tests on this project." depends="build-tests">
 <!-- TODO: Run the unit tests -->
 </target>
 <target name="doc" description="Generates NDoc documentation." depends="build-tasks">
 <ndoc>
 <assemblies basedir="${build.bin.dir}">
 <include name="Paraesthesia.Tools.*.dll"/>
 </assemblies>
 <summaries>
 <include name="NamespaceSummary.xml"/>
 </summaries>
 <documenters>
 <documenter name="MSDN">
 <property name="AutoDocumentConstructors" value="True" />
 <property name="AutoPropertyBackerSummaries" value="True" />
 <property name="CollectionNamespace" value="${build.name} v${build.version}" />
 <property name="CopyrightHref" value="http://www.paraesthesia.com" />
 <property name="CopyrightText" value="Copyright 2007 Travis Illig" />
 <property name="DefaultTOC" value="Empty" />
 <property name="DeleteCHM" value="False" />
 <property name="DocumentEmptyNamespaces" value="False" />
 <property name="DocumentInternals" value="False" />
 <property name="DocumentPrivates" value="False" />
 <property name="DocumentProtected" value="True" />
 <property name="GenerateCollectionFiles" value="True" />
 <property name="HtmlHelpCompilerFilename" value="hhc.exe" />
 <property name="HtmlHelpName" value="${build.name} v${build.version}" />
 <property name="IncludeAssemblyVersion" value="True" />
 <property name="IncludeFavorites" value="True" />
 <property name="IncludeHeirarchy" value="True" />
 <property name="LinkToSdkDocVersion" value="SDK_v1_1" />
 <property name="OmitObjectTags" value="False" />
 <property name="OutputDirectory" value="${build.doc.dir}" />
 <property name="PlugInNamespace" value="ms.vscc" />
 <property name="RootPageContainsNamespaces" value="True" />
 <property name="ShowMissingParams" value="True" />
 <property name="ShowMissingRemarks" value="False" />
 <property name="ShowMissingReturns" value="True" />
 <property name="ShowMissingSummaries" value="True" />
 <property name="ShowMissingValues" value="True" />
 <property name="ShowVisualBasic" value="False" />
 <property name="SortTOCByNamespace" value="True" />
 <property name="SplitTOCs" value="False" />
 <property name="Title" value="${build.name} v${build.version}" />
 </documenter>
 </documenters>
 </ndoc>
 <delete>
 <fileset basedir="${build.doc.dir}">
 <include name="**/**" />
 <exclude name="*.chm" />
 </fileset>
 </delete>
 </target>
 
 <target name="install" description="Creates distribution packages." depends="all">
 <mkdir dir="${build.install.dir}" />
 <zip verbose="true"
 zipfile="${build.install.dir}/${build.name}_${build.version}.zip"
 ziplevel="9">
 <fileset basedir="${build.dir}">
 <include name="**" />
 <exclude name="${build.install.dir}/**" />
 <exclude name="${build.log.dir}/**" />
 </fileset>
 <fileset basedir=".">
 <include name="readme.txt" />
 </fileset>
 </zip>
 <zip verbose="true"
 zipfile="${build.install.dir}/${build.name}_${build.version}_src.zip"
 ziplevel="9">
 <fileset basedir=".">
 <include name="**" />
 <exclude name="**/*.suo" />
 <exclude name="**/*.user" />
 <exclude name="**/*.cache" />
 <exclude name="**/bin/**" />
 <exclude name="**/build/**" />
 <exclude name="**/lib/*.dll" />
 <exclude name="**/obj/**" />
 </fileset>
 </zip>
 </target>
 
 <target name="production" description="Executes the production build." depends="clean set-version all test doc cleanup-build-output install">
 <echo message="Completed production build." />
 </target>
 
 <!-- === PREREQUISITE TASKS === -->
 <target name="build-tasks" description="Builds the custom NAnt task solution.">
 <!-- solution configuration="${build.config}" outputdir="${build.bin.dir}" solutionfile="Paraesthesia.Tools.NAntTasks.sln" / -->
 <exec program="MSBuild.exe">
 <arg value="Paraesthesia.Tools.NAntTasks.sln" />
 <arg line="/p:Configuration=${build.config}" />
 <arg line="/p:OutDir=&quot;${build.bin.dir}\\&quot;" />
 </exec>
 </target>
 
 <target name="build-tests" description="Builds the unit tests for the project.">
 <!-- TODO: When there are unit tests, build them. -->
 </target>
 <target name="cleanup-build-output" description="Cleans up the build output for archival.">
 <echo message="Cleaning up build output..." />
 <delete>
 <fileset basedir="${build.bin.dir}">
 <include name="*" />
 <exclude name="Paraesthesia.Tools.*" />
 </fileset>
 </delete>
 <echo message="Build output cleaned up. Only project output files remain." />
 </target>
 <target name="set-version" description="Updates the build assembly version.">
 <asminfo output="AssemblyVersion.cs" language="CSharp">
 <imports>
 <import namespace="System.Reflection" />
 </imports>
 <attributes>
 <attribute type="AssemblyVersionAttribute" value="${build.version}"/>
 <attribute type="AssemblyCompanyAttribute" value="Paraesthesia" />
 <attribute type="AssemblyCopyrightAttribute" value="(c) 2007 - ${datetime::get-year(datetime::now())} Travis Illig" />
 </attributes>
 <references>
 <include name="System.dll" />
 </references>
 </asminfo>
 </target>
</project>