Files
libremetaverse/libsecondlife-cs/examples/examples.build
bushing 67faf5bbdc created examples.build
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@198 52acb1d6-8a22-11de-b505-999d5b087335
2006-09-17 21:08:04 +00:00

88 lines
3.1 KiB
XML

<?xml version="1.0"?>
<project name="libsecondlife" default="build">
<!-- global framework settings -->
<property name="target.framework"
value="${framework::get-target-framework()}" />
<property name="assembly.dir"
value="${framework::get-assembly-directory(target.framework)}" />
<!-- global project settings -->
<xmlpeek
file="../../libsecondlife.build"
xpath="/project/property[@name = 'project.version']/@value"
property="project.version" />
<property name="assembly" value="examples" />
<property name="bin_dir" value="../../bin" />
<!-- default configuration -->
<property name="project.config" value="debug" /> <!-- debug|release -->
<!-- named configurations -->
<target name="init" description="Initializes build properties">
<echo message="assembly.dir=${assembly.dir}" />
<mkdir dir="${bin_dir}" failonerror="false" />
<call target="${project.config}" />
</target>
<target name="debug" description="configures a debug build">
<property name="build.debug" value="true" />
<property name="package.name"
value="${project::get-name()}-${project.version}-${project.config}" />
<property name="assembly.configuration"
value="${framework::get-target-framework()}.${platform::get-name()} [${project.config}]" />
</target>
<target name="release" description="configures a release build">
<property name="project.config" value="release" />
<property name="build.debug" value="false" />
<property name="package.name" value="${project::get-name()}-${project.version}" />
<property name="assembly.configuration"
value="${framework::get-target-framework()}.${platform::get-name()}" />
</target>
<!-- build tasks -->
<target name="example" description="Build a particular example">
<property name="example_name" value="${path::get-file-name(example_path)}" />
<echo message="building ${example_name}" />
<csc target="exe" debug="${build.debug}" output="${bin_dir}/${example_name}.exe">
<sources failonempty="true"><include name="${example_path}/*.cs"/></sources>
<references basedir="${bin_dir}/"> <include name="libsecondlife.dll"/></references>
</csc>
</target>
<target name="build" depends="init build-dll"
description="Build all examples">
<foreach item="Folder" in="." property="example_path">
<call target="example" unless="${string::contains(example_path,'svn')}"/>
</foreach>
</target>
<target
name="build-dll"
description="Builds libsecondlife dll">
<nant
buildfile="../../libsecondlife.build"
target="${project.config} build-lib"/>
</target>
<target
name="clean"
depends="init"
description="Deletes the current configuration">
<delete failonerror="false">
<fileset basedir="${bin_dir}/">
<include name="${assembly}.exe" />
<include name="${assembly}.pdb" />
<include name="**/${assembly}.*.resources" />
</fileset>
</delete>
</target>
<target
name="*"
description="Handles unknown targets">
<echo message="skip" />
</target>
</project>