<?xml version="1.0" encoding="ISO-8859-1"?>
<project name="MORP Solution build" default="build">
<import file="dependencies.xml"/>
<property name="config" value="release"/>
<property name="version" value="1.0.0"/>
<property name="morp.root.dir" location="."/>
<property name="morp.dist.dir" value="${morp.root.dir}/dist"/>
<property name="morp.target.dir" value="${morp.root.dir}/target"/>
<property name="morp.target.dist.dir" value="${morp.target.dir}/dist"/>
<property name="morp.product.dir" value="${morp.target.dist.dir}/product"/>
<property name="morp.product.bin.dir" value="${morp.product.dir}/bin"/>
<property name="morp.product.conf.dir" value="${morp.product.dir}/conf"/>
<property name="morp.product.logs.dir" value="${morp.product.dir}/logs"/>
<property name="morp.product.libs.dir" value="${morp.product.dir}/libs"/>
<property name="morp.product.scripts.dir" value="${morp.product.dir}/scripts"/>
<property name="build.dir" value="${morp.target.dir}/build"/>
<target name="build" depends="build.clean, build.compile"/>
<target name="build.clean">
<echo message="Cleaning build directory"/>
<delete dir="${build.dir}"/>
</target>
<target name="build.compile" depends="build.bin, build.libs"/>
<target name="build.bin">
<antcall target="msbuild">
<param name="project.path" value="MORP.Interpreter/MORP.Interpreter.csproj"/>
<param name="output.dir" value="${build.dir}/bin/"/>
</antcall>
</target>
<target name="build.libs">
<!-- MORP.Robotics -->
<antcall target="msbuild">
<param name="project.path" value="MORP.Robotics/MORP.Robotics.csproj"/>
<param name="output.dir" value="${build.dir}/libs/"/>
</antcall>
<!-- MORP.Basics -->
<antcall target="msbuild">
<param name="project.path" value="MORP.Basics/MORP.Basics.csproj"/>
<param name="output.dir" value="${build.dir}/libs/"/>
</antcall>
<!-- MORP.Bioloid -->
<antcall target="msbuild">
<param name="project.path" value="MORP.Robotics.Robotis.Bioloid/MORP.Robotics.Robotis.Bioloid.csproj"/>
<param name="output.dir" value="${build.dir}/libs/"/>
</antcall>
</target>
<target name="release" depends="timestamp, release.clean, release.init, build, release.pack" />
<target name="release.clean">
<echo message="Cleaning product release directory"/>
<delete dir="${morp.product.dir}" />
</target>
<target name="release.init">
<mkdir dir="${morp.product.dir}" />
<!-- Build product structure -->
<mkdir dir="${morp.product.bin.dir}" />
<mkdir dir="${morp.product.conf.dir}" />
<mkdir dir="${morp.product.logs.dir}" />
<mkdir dir="${morp.product.libs.dir}" />
<mkdir dir="${morp.product.scripts.dir}" />
</target>
<target name="release.pack">
<echo message="Copying morp dist files"/>
<copy file="${morp.dist.dir}/changelog.txt" todir="${morp.product.dir}"/>
<echo message="Copying morp bin files"/>
<copy todir="${morp.product.bin.dir}">
<fileSet dir="${build.dir}/bin/">
<exclude name="**/*.pdb"/>
<exclude name="**/*.xml"/>
</fileSet>
</copy>
<echo message="Copying libs files"/>
<copy todir="${morp.product.libs.dir}">
<fileSet dir="${build.dir}/libs/">
<exclude name="**/*.pdb"/>
<exclude name="**/*.xml"/>
</fileSet>
</copy>
<echo message="Copying scripts files"/>
<copy todir="${morp.product.scripts.dir}">
<fileset dir="${morp.root.dir}/MORP.Interpreter/scripts/"/>
</copy>
<echo message="Copying conf files"/>
<copy todir="${morp.product.conf.dir}">
<fileset dir="${morp.root.dir}/MORP.Interpreter/conf/"/>
</copy>
<echo message="Building zip distribution"/>
<zip destfile="${morp.target.dist.dir}/MORP-${version}-${TIMESTAMP}.zip">
<zipfileset dir="${morp.product.dir}"/>
</zip>
</target>
</project>