<!-- Export a jar of .class files for the org.eclipse.jdt.debug Eclipse plugin
     along with other important plugin files to the "plugin-export" subdirectory
     of the target Eclipse installation -->
<project name="org.eclipse.debug.core" 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.jdt.debug" />
	</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}" />
		
		<!-- Create the jdi model jar -->
		<jar 
			jarfile="${dest}/jdimodel.jar"
			basedir="bin"
			includes="org/**"
		/>
		
		<!-- Create the jdi interfaces jar -->
		<jar 
			jarfile="${dest}/jdi.jar"
			basedir="bin"
			includes="com/**"
		/>
		
		<!-- Create the source zip -->
		<zip zipfile="${dest}/jdimodelsrc.zip">
			<fileset dir="model"/>
			<fileset dir="jdi"/>
			<fileset dir="eval"/>
		</zip>
		<!-- Create the jdi interfaces source zip -->
		<zip zipfile="${dest}/jdiinterfacessrc.zip">
			<fileset dir="jdi interfaces"/>
		</zip>
		
		<copy file="plugin.xml" todir="${dest}"/>
		<copy file="plugin.properties" todir="${dest}"/>
		<copy file=".classpath" todir="${dest}"/>
		<copy file=".options" todir="${dest}"/>
	</target>
	
</project>
