<?xml version="1.0" encoding="UTF-8"?>
<project name="org.eclipse.xsd.doc" default="build.jars" basedir=".">
	
	<!-- Plug-in information.  This is a HACK.  Do not forget to update version numbers, etc.. -->
	<property name="pluginVersion" value="2.4.0"/>
	<property name="docPlugin" value="org.eclipse.xsd.doc"/>
	
	<property name="filesToInclude" value="META-INF/**,about.*,modeling*.png,plugin.*,doc.zip,toc*.xml,topics_*.xml,index/**,images/**,tutorials/**,references/**,css/**"/>

	<!-- Compiler settings. -->
	<property name="javacFailOnError" value="false"/>
	<property name="javacDebugInfo" value="on"/>
	<property name="javacVerbose" value="true"/>
	<property name="javacSource" value="1.4"/>
	<property name="javacTarget" value="1.4"/>
	<property name="compilerArg" value=""/>
	<path id="path_bootclasspath">
		<fileset dir="${java.home}/lib">
			<include name="*.jar"/>
		</fileset>
	</path>
	<property name="bootclasspath" refid="path_bootclasspath"/>
	<property name="bundleJavacSource" value="${javacSource}"/>
	<property name="bundleJavacTarget" value="${javacTarget}"/>
	<property name="bundleBootClasspath" value="${bootclasspath}"/>
	<property name="basews" value="${ws}"/>
	<property name="baseos" value="${os}"/>
	<property name="basearch" value="${arch}"/>
	<property name="basenl" value="${nl}"/>

	<target name="init" depends="properties">
		<condition property="pluginTemp" value="${buildTempFolder}/plugins">
			<isset property="buildTempFolder"/>
		</condition>
		<property name="pluginTemp" value="${basedir}"/>
		<condition property="build.result.folder" value="${pluginTemp}/${docPlugin}">
			<isset property="buildTempFolder"/>
		</condition>
		<property name="build.result.folder" value="${basedir}"/>
		<property name="temp.folder" value="${basedir}/temp.folder"/>
		<property name="plugin.destination" 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: ${docPlugin} 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 destfile="${plugin.destination}/${docPlugin}_${pluginVersion}.${forceContextQualifier}.jar" basedir="${temp.folder}/${docPlugin}_${pluginVersion}.${forceContextQualifier}" filesonly="false" whenempty="skip" update="false"/>
		<delete dir="${temp.folder}"/>
	</target>

	<target name="build.jars" depends="init" description="Build all the jars for the plug-in: ${docPlugin}.">
	 	<macrodef name="echo-timestamp"><sequential><antcall target="-timestamp" inheritAll="false" /></sequential></macrodef>
		<echo-timestamp />
		<property name="eclipseDir" location="../.."/>
		<chmod perm="754" file="build/antJavadoc.sh"/>
	        <exec executable="bash" dir="build"><arg line="./antJavadoc.sh ${eclipseDir}"/></exec>
		<echo-timestamp />
		<antcall target="build.index"/>
		<echo-timestamp />
	</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="gather.bin.parts" depends="init" if="destination.temp.folder">
		<mkdir dir="${destination.temp.folder}/${docPlugin}_${pluginVersion}.${forceContextQualifier}"/>
		<copy todir="${destination.temp.folder}/${docPlugin}_${pluginVersion}.${forceContextQualifier}" failonerror="true" overwrite="false">
			<fileset dir="${basedir}" includes="${filesToInclude}"/>
		</copy>
		<eclipse.versionReplacer 
			path="${destination.temp.folder}/${docPlugin}_${pluginVersion}.${forceContextQualifier}" 
			version="${pluginVersion}.${forceContextQualifier}"/>
	</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: ${docPlugin} of all the zips, jars and logs created.">
		<delete file="${plugin.destination}/${docPlugin}_${pluginVersion}.${forceContextQualifier}.jar"/>
		<delete file="${plugin.destination}/${docPlugin}_${pluginVersion}.${forceContextQualifier}.zip"/>
		<delete dir="${temp.folder}"/>
	</target>

	<target name="zip.plugin" depends="init" description="Create a zip containing all the elements for the plug-in: ${docPlugin}.">
		<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 destfile="${plugin.destination}/${docPlugin}_${pluginVersion}.${forceContextQualifier}.zip" basedir="${temp.folder}" filesonly="true" whenempty="skip" update="false"/>
		<delete dir="${temp.folder}"/>
	</target>

	<!-- echo timestamp into log: format can be "MM/dd/yyyy hh:mm:ss aa" or "hh:mm:ss" -->
	<target name="-timestamp"><tstamp><format property="-timestamp" pattern="hh:mm:ss"/></tstamp><echo>${-timestamp}</echo></target>

</project>
