<?xml version="1.0" ?>
<!-- writen for Ant 1.5.1 -->
<project name="org.eclipse.ajdt.tests.performance" default="packaged-plugin">

	<description>
Create a packaged org.eclipse.ajdt.tests.performance_version plugin distribution file
</description>
	<!-- VERSION-STRING -->
	<!-- these property values will be overridden when called from the master build script -->
	<property name="ajdt.version" value="0.6.3" />
	<property name="build.dir" value="build" />
	<property name="eclipse.build.version" value="3.0.0" />
	<property name="eclipse.home" value="c:/eclipse/30m8/eclipse" />

	<property name="aspectj" value="c:/aspectj1.2" />
	<property name="aspectjrt" value="${aspectj}/lib/aspectjrt.jar" />
	<property name="aspectjtools" value="${aspectj}/lib/aspectjtools.jar" />
		
	<taskdef 
	    resource="org/aspectj/tools/ant/taskdefs/aspectjTaskdefs.properties">
		<classpath>
		    <pathelement location="${aspectjtools}"/>
		</classpath>
	</taskdef>

	<!-- To run this script from inside an automated build environment such 
     as Cruise Control the following properties are expected to have
     been set and passed in :-
     * external.build (set to any value) 
     * eclipse.home (set to the directory where Eclipse has been 
       installed on the build machine)
     * eclipse.build.version (override the value default value set above)
-->

	<target name="init">
		<mkdir dir="${build.dir}" />
		<mkdir dir="dist" />
	</target>

	<target name="clean" depends="init">
		<delete dir="${build.dir}" />
		<delete dir="dist" />
	</target>

	<target name="externalbuild" if="external.build">
		<delete dir="bin" />
		<mkdir dir="bin" />
		<property file="${eclipse.home}/ajdtworkspace.properties"/>
		<javac srcdir="src" destdir="bin"
			classpath="${aspectjrt};${classpath.org.eclipse.ajdt.tests.performance};../org.eclipse.ajdt.ui/build/ajdtui.jar"/>	
	</target>

	<target name="eclipsebuild" unless="external.build">
		<eclipse.incrementalBuild project="org.eclipse.ajdt.tests.performance" />
	</target>

	<target name="buildproject" depends="externalbuild,eclipsebuild" />

	<target name="ajdtperformancejar" depends="init" description="Create ajdtperformance.jar, the library containing the plug-in
    class files and properties.">
		<!-- The following ant call is intended to provide the flexibility 
      to build AJDT from within Eclipse or else from a command line
      run of Ant (e.g. in a Cruise Control environment).
 -->
		<antcall target="buildproject" />
		<zip destfile="${build.dir}/ajdtperformance.jar">
			<fileset dir="bin" />
		</zip>
	</target>

	<target name="ajdtperformancesrcjar" depends="init" description="The source jar file for ajdt performance, ajdtperformancesrc.jar">
		<zip destfile="${build.dir}/ajdtperformancesrc.jar">
			<fileset dir="src" />
		</zip>
	</target>

	<target name="packaged-plugin" depends="ajdtperformancejar, ajdtperformancesrcjar" description="Create the plugin jar file from the assembled components in the build dir">
		<!-- 
		<copy todir="${build.dir}/testdata">
		   <fileset dir="testdata" />
		 </copy>
		 <copy todir="${build.dir}/test projects">
		   <fileset dir="test projects" />
		 </copy>
		 -->
		<copy todir="${build.dir}">
			<fileset dir=".">
				<include name="*.xml" />
				<exclude name="build.*" />
				<include name="*.html" />
				<include name="*.properties" />
				<exclude name="plugin.*xml" />
			</fileset>
		</copy>
		<copy file="plugin.xml" tofile="${build.dir}/plugin.xml">
			<filterset begintoken="9" endtoken="9">
				<filter token="2.2.2" value="${ajdt.version}" />
			</filterset>
		</copy>

		<zip destfile="dist/org.eclipse.ajdt.tests.performance_${ajdt.version}.jar">
			<fileset dir="build" />
		</zip>
	</target>

</project>