<?xml version="1.0" encoding="UTF-8"?>
<project name="org.eclipse.xsd.doc" default="build.jars" basedir=".">

	<property name="bootclasspath" value=""/>
	<property name="basews" value="${ws}"/>
	<property name="baseos" value="${os}"/>
	<property name="basearch" value="${arch}"/>
	<property name="basenl" value="${nl}"/>
	<property name="javacFailOnError" value="false"/>
	<property name="javacDebugInfo" value="on"/>
	<property name="javacVerbose" value="true"/>
	<property name="javacSource" value="1.3"/>
	<property name="javacTarget" value="1.1"/>
	
	<property name="pluginVersion" value="2.0.3"/>

	<target name="init" depends="properties">
		<property name="temp.folder" value="${basedir}/temp.folder"/>
		<property name="plugin.destination" value="${basedir}"/>
		<property name="build.result.folder" value="${basedir}"/>
	</target>

	<target name="properties" if="eclipse.running">
		<property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter"/>
	</target>

	<target name="build.update.jar" depends="init" description="Build the plug-in: org.eclipse.xsd.doc for an update site.">
		<delete dir="${temp.folder}"/>
		<mkdir dir="${temp.folder}"/>
		<antcall target="build.jars"/>
		<antcall target="gather.bin.parts">
			<param name="destination.temp.folder" value="${temp.folder}/"/>
		</antcall>
		<zip zipfile="${plugin.destination}/org.eclipse.xsd.doc_${pluginVersion}.jar" basedir="${temp.folder}/org.eclipse.xsd.doc_${pluginVersion}" filesonly="false" whenempty="skip"/>
		<delete dir="${temp.folder}"/>
	</target>

	<target name="gather.bin.parts" depends="init" if="destination.temp.folder">
		<mkdir dir="${destination.temp.folder}/org.eclipse.xsd.doc_${pluginVersion}"/>
		<copy todir="${destination.temp.folder}/org.eclipse.xsd.doc_${pluginVersion}">
			<fileset dir="${build.result.folder}" includes="about.html,about.ini,about.mappings,about.properties,eclipse32.gif,plugin.properties,plugin.xml,toc.xml,doc.zip"			/>
		</copy>
		<copy todir="${destination.temp.folder}/org.eclipse.xsd.doc_${pluginVersion}">
			<fileset dir="${basedir}"             includes="about.html,about.ini,about.mappings,about.properties,eclipse32.gif,plugin.properties,plugin.xml,toc.xml,doc.zip"			/>
		</copy>
	</target>

	<target name="build.jars" depends="init" description="Build all the jars for the plug-in: org.eclipse.xsd.doc.">
		<property name="eclipseDir" location="../.."/>
	
		<chmod perm="754" file="build/antJavadoc.sh"/>
        <exec executable="bash" dir="build">
                <arg line="./antJavadoc.sh ${eclipseDir}"/>
        </exec>
 	
		<zip destfile="${build.result.folder}/doc.zip">
			<zipfileset dir="references" prefix="references"/>
			<zipfileset dir="images" prefix="references"/>
		</zip>
	</target>

	<target name="build.sources" depends="init">
	</target>

	<target name="build.zips" depends="init">
	</target>

	<target name="gather.sources" depends="init" if="destination.temp.folder">
	</target>

	<target name="gather.logs" depends="init" if="destination.temp.folder">
	</target>

	<target name="clean" depends="init" description="Clean the plug-in: org.eclipse.xsd.doc of all the zips, jars and logs created.">
		<delete file="${plugin.destination}/org.eclipse.xsd.doc_${pluginVersion}.jar"/>
		<delete file="${plugin.destination}/org.eclipse.xsd.doc_${pluginVersion}.zip"/>
		<delete dir="${temp.folder}"/>
	</target>

	<target name="refresh" depends="init" if="eclipse.running" description="Refresh this folder.">
		<eclipse.convertPath fileSystemPath="D:/eclipse/wks_dev/xsd/org.eclipse.xsd.doc/" property="resourcePath"/>
		<eclipse.refreshLocal resource="${resourcePath}" depth="infinite"/>
	</target>

	<target name="zip.plugin" depends="init" description="Create a zip containing all the elements for the plug-in: org.eclipse.xsd.doc.">
		<delete dir="${temp.folder}"/>
		<mkdir dir="${temp.folder}"/>
		<antcall target="build.jars"/>
		<antcall target="build.sources"/>
		<antcall target="gather.bin.parts">
			<param name="destination.temp.folder" value="${temp.folder}/"/>
		</antcall>
		<antcall target="gather.sources">
			<param name="destination.temp.folder" value="${temp.folder}/"/>
		</antcall>
		<delete>
			<fileset dir="${temp.folder}" includes="**/*.bin.log"			/>
		</delete>
		<zip zipfile="${plugin.destination}/org.eclipse.xsd.doc_${pluginVersion}.zip" basedir="${temp.folder}" filesonly="true" whenempty="skip"/>
		<delete dir="${temp.folder}"/>
	</target>

</project>
