<?xml version="1.0" encoding="iso-8859-1"?>
<project name="OpenOGI" default="build" basedir=".">
<description>Open Library to Ontology-based Geo-objects interoperability</description>
<property name="src.dir" location="src" />
<property name="test.dir" location="test" />
<property name="resources.dir" location="resources" />
<property name="libs.dir" location="lib" />
<property name="build.dir" location="bin" />
<property name="docs.dir" location="doc" />
<property name="deploy.dir" location="deploy" />
<property name="deploy.name" value="openogi" />
<property name="deploy.major_version" value="1" />
<property name="deploy.minor_version" value="0" />
<property name="deploy.release_version" value="0" />
<property name="deploy.vendor" value="UERJ - MSc. Computer Engineering / Geomatics" />
<property name="test.service" value="br.uerj.eng.geomatica.interoperability.service.ServiceSuite" />
<property name="deploy.version" value="${deploy.major_version}.${deploy.minor_version}.${deploy.release_version}" />
<property name="repository.url" value="https://openogi.svn.sourceforge.net/svnroot/openogi"/>
<tstamp>
<format property="TODAY" pattern="yyyy_MM_dd" locale="en,UK"/>
</tstamp>
<property name="branch.version.dir" value="${deploy.name}_${TODAY}_${deploy.major_version}_${deploy.minor_version}"/>
<property name="tag.version.dir" value="${deploy.name}_${TODAY}_${deploy.major_version}_${deploy.minor_version}_${deploy.release_version}"/>
<taskdef resource="svntask.properties"/>
<path id="project.classpath">
<fileset dir="${libs.dir}" includes="**/*.jar" />
</path>
<target name="build" description="Compile the source code.">
<echo message="---------------------------------------" />
<echo message="Compiling the source code... " />
<echo message="---------------------------------------" />
<mkdir dir="${build.dir}" />
<javac srcdir="${src.dir}" destdir="${build.dir}" deprecation="true" includes="**">
<classpath refid="project.classpath" />
</javac>
<javac srcdir="${test.dir}" destdir="${build.dir}" deprecation="true" includes="**">
<classpath refid="project.classpath" />
</javac>
<copy todir="${build.dir}">
<fileset dir="${resources.dir}" includes="**/*" />
</copy>
</target>
<target name="rebuild" depends="clean, build" description="Remove all files and compile again." />
<target name="clean" description="Remove all files">
<echo message="---------------------------------------" />
<echo message="Removing all files... " />
<echo message="---------------------------------------" />
<delete dir="${build.dir}" />
<delete dir="${docs.dir}" />
<delete dir="${deploy.dir}" />
</target>
<target name="jar" depends="rebuild" description="Make the jar file of the library.">
<echo message="---------------------------------------" />
<echo message="Making jar... " />
<echo message="---------------------------------------" />
<mkdir dir="${deploy.dir}" />
<jar jarfile="${deploy.dir}/${deploy.name}.jar">
<fileset dir="${build.dir}">
<include name="**" />
</fileset>
<manifest>
<attribute name="Extension-Name" value="${deploy.name}" />
<attribute name="Specification-Title" value="${ant.project.name}" />
<attribute name="Implementation-Vendor" value="${deploy.vendor}" />
<attribute name="Implementation-Version" value="${deploy.version}" />
</manifest>
</jar>
</target>
<target name="javadoc" description="Generate The library javadoc.">
<echo message="---------------------------------------" />
<echo message="Generating javadoc... " />
<echo message="---------------------------------------" />
<mkdir dir="${docs.dir}" />
<property name="javadoc.title" value="${ant.project.name} ${deploy.version}" />
<javadoc access="public" sourcepath="${src.dir}" packagenames="br.uerj.*" destdir="${docs.dir}" doctitle="${ant.project.name} ${deploy.version}" windowtitle="${ant.project.name}" overview="${src.dir}/overview.html" use="true" splitindex="true" nodeprecated="false" nodeprecatedlist="false" breakiterator="yes">
<classpath refid="project.classpath" />
<link href="http://java.sun.com/j2se/1.5.0/docs/api/" />
<link href="http://jakarta.apache.org/commons/lang/api-release" />
</javadoc>
</target>
<target name="deploy" depends="clean, junit-test, jar, javadoc" description="Make the deploy package">
<echo message="-----------------------------------" />
<echo message="Making the deploy package ..." />
<echo message="-----------------------------------" />
<copy todir="${deploy.dir}">
<fileset dir="${libs.dir}" includes="**/*" />
</copy>
<zip destfile="${deploy.dir}/${deploy.name}-${deploy.version}.zip">
<zipfileset dir="${deploy.dir}" includes="**/*" />
</zip>
<delete>
<fileset dir="${deploy.dir}" includes="**/*.jar"/>
</delete>
</target>
<target name="junit-test" depends="rebuild" description="Run the unit tests.">
<echo message="-----------------------------------" />
<echo message="Running junit tests..." />
<echo message="-----------------------------------" />
<junit fork="yes" haltonfailure="yes">
<classpath>
<fileset dir="${libs.dir}">
<include name="**/*.jar"/>
</fileset>
<pathelement location="${build.dir}"/>
</classpath>
<formatter type="plain" usefile="false" />
<test name="${test.service}" />
</junit>
</target>
<target name="src" depends="deploy" description="Make a zip with the source code">
<echo message="-----------------------------------" />
<echo message="Making a package with source code..." />
<echo message="-----------------------------------" />
<zip destfile="${deploy.dir}/${deploy.name}-src-${deploy.version}.zip">
<zipfileset dir="." includes="src/** conf/** resources/** libs/** test/**" />
</zip>
</target>
<target name="update">
<echo message="---------------------------------------" />
<echo message="Updating project from version control." />
<echo message="---------------------------------------" />
<echo message="${tag.version.dir}" />
<svn>
<update dir="." recurse="true"/>
</svn>
</target>
<target name="branch">
<echo message="----------------------------------------"/>
<echo message=" Generating Branch "/>
<echo message="----------------------------------------"/>
<echo message="Generating branch ${branch.version.dir}"/>
<svn>
<copy srcUrl="${repository.url}/trunk" destUrl="${repository.url}/branch/${branch.version.dir}" message="generating branch ${branch.version.dir}"/>
</svn>
<svn>
<copy srcUrl="${repository.url}/trunk" destUrl="${repository.url}/tag/${tag.version.dir}" message="generating tag ${tag.version.dir}"/>
</svn>
</target>
<target name="tag" description="Generating tag">
<echo message="----------------------------------------"/>
<echo message=" Generating Tag "/>
<echo message="----------------------------------------"/>
<echo message="Generating tag ${tag.version.dir}"/>
<svn>
<copy srcUrl="${repository.url}/branch" destUrl="${repository.url}/tag/${tag.version.dir}" message="generating tag ${tag.version.dir}"/>
</svn>
</target>
</project>