<!-- Export a jar of .class files for the org.eclipse.ui.externaltools Eclipse plug-in
     along with other important plugin files to the "plugin-export" subdirectory
     of the target Eclipse installation -->
<project name="org.eclipse.ui.externaltools" default="export" basedir="..">

	<!-- Set the timestamp and important properties -->
	<target name="init">
		<tstamp/>
		<property name="destdir" value="../../plugin-export" />
		<property name="dest"  value="${destdir}/org.eclipse.ui.externaltools_2.1.0" />
	</target>

	<!-- Create the jar of .class files, and copy other important files to export dir -->
	<target name="export" depends="init">
		<mkdir dir="${destdir}" />
		<delete dir="${dest}" />
		<mkdir dir="${dest}" />
		<delete dir="${dest}/lib"/>
		<mkdir dir="${dest}/lib"/>
		<jar 
			jarfile="${dest}/externaltools.jar"
			basedir="bin"
		/>
		<!-- Create the source zip -->
		<zip zipfile="${dest}/externaltoolssrc.zip">
			<fileset dir="Ant Builder"/>
			<fileset dir="External Tools"/>
		</zip>
		<copy file="plugin.xml" todir="${dest}"/>
		<copy file="plugin.properties" todir="${dest}"/>
		<copy file=".classpath" todir="${dest}"/>
		<copy file=".options" todir="${dest}"/>
		<ant antfile="scripts/buildExtraJAR.xml" target="build"/>
		<copy file="lib/antbuilder.jar" todir="${dest}/lib"/>
		<copy todir="${dest}/icons">
			<fileset dir="icons" />
		</copy>		
	</target>
	
</project>
