mirror of
https://github.com/sharkdp/bat
synced 2024-12-26 04:03:06 +00:00
168 lines
6.5 KiB
Text
168 lines
6.5 KiB
Text
|
<?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="${build.bin.dir}\\"" />
|
||
|
</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>
|