<?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.1.2"/>

	<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,eclipse*.gif,eclipse*.png,eclipse*.jpg,plugin.properties,plugin.xml,toc.xml,doc.zip,index/**,META-INF/**"/>
		</copy>
		<copy todir="${destination.temp.folder}/org.eclipse.xsd.doc_${pluginVersion}">
			<fileset dir="${basedir}"             includes="about.html,about.ini,about.mappings,about.properties,eclipse*.gif,eclipse*.png,eclipse*.jpg,plugin.properties,plugin.xml,toc.xml,doc.zip,index/**,META-INF/**"/>
		</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>

		<!-- new in 3.1M7 -->
		<antcall target="build.index"/>

		<zip destfile="${build.result.folder}/doc.zip">
			<zipfileset dir="index" prefix="index"/>
			<zipfileset dir="references" prefix="references"/>
			<zipfileset dir="images" prefix="references"/>
		</zip>
	</target>

	<target name="build.index" depends="init" description="Builds search index for the plug-in" if="eclipse.running">
		<help.buildHelpIndex manifest="plugin.xml" destination="."/>
	</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>
