<?xml version="1.0" encoding="UTF-8"?>
<project name="net.sourceforge.phpeclipse.sql" default="build.jars" basedir=".">

	<property name="bootclasspath" value=""/>
	<property name="ws" value="win32"/>
	<property name="os" value="win32"/>
	<property name="arch" value="x86"/>
	<property name="javacFailOnError" value="false"/>
	<property name="javacDebugInfo" value="on"/>
	<property name="javacVerbose" value="true"/>

	<target name="init" depends="properties">
		<property name="plugin" value="net.sourceforge.phpeclipse.sql"/>
		<property name="version.suffix" value="_1.0.2"/>
		<property name="full.name" value="${plugin}${version.suffix}"/>
		<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: net.sourceforge.phpeclipse.sql 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}/${full.name}.jar" basedir="${temp.folder}/${full.name}" filesonly="false" update="no"/>
		<delete dir="${temp.folder}"/>
	</target>

	<target name="gather.bin.parts" depends="init" if="destination.temp.folder">
		<mkdir dir="${destination.temp.folder}/${full.name}"/>
		<copy file="${build.result.folder}/phpeclipsesql.jar" todir="${destination.temp.folder}/${full.name}"/>
	</target>

	<target name="phpeclipsesql.jar" depends="init" unless="phpeclipsesql.jar" description="Create jar: phpeclipsesql.jar.">
		<property name="destdir" value="${temp.folder}/phpeclipsesql.jar.bin"/>
		<delete dir="${temp.folder}/phpeclipsesql.jar.bin"/>
		<mkdir dir="${temp.folder}/phpeclipsesql.jar.bin"/>
		<!-- compile the source code -->
		<javac destdir="${temp.folder}/phpeclipsesql.jar.bin" failonerror="${javacFailOnError}" verbose="${javacVerbose}" debug="${javacDebugInfo}" includeAntRuntime="no" bootclasspath="${bootclasspath}" classpath="../../plugins/org.eclipse.core.boot_2.1.3/bin;../../plugins/org.eclipse.core.boot_2.1.3/boot.jar;../../plugins/org.eclipse.core.runtime_2.1.1/bin;../../plugins/org.eclipse.core.runtime_2.1.1/runtime.jar;../../plugins/org.apache.xerces_4.0.13/bin;../../plugins/org.apache.xerces_4.0.13/xmlParserAPIs.jar;../../plugins/org.apache.xerces_4.0.13/xercesImpl.jar;../../plugins/org.eclipse.core.resources_2.1.1/bin;../../plugins/org.eclipse.core.resources_2.1.1/resources.jar;../../plugins/org.eclipse.core.resources.win32_2.1.0/resources.jar;../../plugins/org.eclipse.swt_2.1.3/bin;../../plugins/org.eclipse.swt_2.1.3/ws/${ws}/swt.jar;../../plugins/org.eclipse.swt.win32_2.1.2/ws/${ws}/swt.jar;../../plugins/org.eclipse.ui_2.1.1/bin;../../plugins/org.eclipse.ui_2.1.1/ui.jar;../../plugins/org.eclipse.update.core_2.1.0/bin;../../plugins/org.eclipse.update.core_2.1.0/updatecore.jar;../../plugins/org.eclipse.update.core.win32_2.1.0/updatecore.jar;../../plugins/org.eclipse.help_2.1.2/bin;../../plugins/org.eclipse.help_2.1.2/help.jar;../../plugins/org.apache.lucene_1.2.1/bin;../../plugins/org.apache.lucene_1.2.1/parser.jar;../../plugins/org.apache.lucene_1.2.1/lucene-1.2.jar;../../plugins/org.eclipse.help.appserver_2.1.0/bin;../../plugins/org.eclipse.help.appserver_2.1.0/appserver.jar;../../plugins/org.eclipse.text_2.1.0/bin;../../plugins/org.eclipse.text_2.1.0/text.jar;../../plugins/org.eclipse.jface_2.1.1/bin;../../plugins/org.eclipse.jface_2.1.1/jface.jar;../../plugins/org.eclipse.jface.text_2.1.0/bin;../../plugins/org.eclipse.jface.text_2.1.0/jfacetext.jar;../../plugins/org.eclipse.ui.views_2.1.0/bin;../../plugins/org.eclipse.ui.views_2.1.0/views.jar;../../plugins/org.eclipse.ui.workbench_2.1.1/bin;../../plugins/org.eclipse.ui.workbench_2.1.1/workbench.jar;../../plugins/org.eclipse.ui.win32_2.1.0/workbench.jar;../../plugins/org.eclipse.ui.win32_2.1.0/bin;../../plugins/org.eclipse.ui.win32_2.1.0/workbenchwin32.jar;../../plugins/org.eclipse.ui.workbench.texteditor_2.1.0/bin;../../plugins/org.eclipse.ui.workbench.texteditor_2.1.0/texteditor.jar;../../plugins/org.eclipse.ui.editors_2.1.0/bin;../../plugins/org.eclipse.ui.editors_2.1.0/editors.jar">
			<src path="src/"/>
		</javac>
		<!-- copy necessary resources -->
		<copy todir="${temp.folder}/phpeclipsesql.jar.bin">
			<fileset dir="src/" excludes="**/*.java"/>
		</copy>
		<mkdir dir="${build.result.folder}"/>
		<jar jarfile="${build.result.folder}/phpeclipsesql.jar" basedir="${temp.folder}/phpeclipsesql.jar.bin"/>
		<delete dir="${temp.folder}/phpeclipsesql.jar.bin"/>
	</target>

	<target name="phpeclipsesqlsrc.zip" depends="init" unless="phpeclipsesql.jar">
		<mkdir dir="${build.result.folder}"/>
		<zip zipfile="${build.result.folder}/phpeclipsesqlsrc.zip" filesonly="false" update="no">
			<fileset dir="src/" includes="**/*.java"/>
		</zip>
	</target>

	<target name="build.jars" depends="init" description="Build all the jars for the plug-in: net.sourceforge.phpeclipse.sql.">
		<available property="phpeclipsesql.jar" file="${build.result.folder}/phpeclipsesql.jar"/>
		<antcall target="phpeclipsesql.jar"/>
	</target>

	<target name="build.sources" depends="init">
		<available property="phpeclipsesqlsrc.zip" file="${build.result.folder}/phpeclipsesqlsrc.zip"/>
		<antcall target="phpeclipsesqlsrc.zip"/>
	</target>

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

	<target name="gather.sources" depends="init" if="destination.temp.folder">
		<mkdir dir="${destination.temp.folder}/${full.name}"/>
		<copy file="${build.result.folder}/phpeclipsesqlsrc.zip" todir="${destination.temp.folder}/${full.name}"/>
	</target>

	<target name="gather.logs" depends="init" if="destination.temp.folder">
		<mkdir dir="${destination.temp.folder}/${full.name}"/>
		<copy file="${temp.folder}/phpeclipsesql.jar.bin.log" todir="${destination.temp.folder}/${full.name}"/>
	</target>

	<target name="clean" depends="init" description="Clean the plug-in: net.sourceforge.phpeclipse.sql of all the zips, jars and logs created.">
		<delete file="${build.result.folder}/phpeclipsesql.jar"/>
		<delete file="${build.result.folder}/phpeclipsesqlsrc.zip"/>
		<delete file="${plugin.destination}/${full.name}.jar"/>
		<delete file="${plugin.destination}/${full.name}.zip"/>
		<delete dir="${temp.folder}"/>
	</target>

	<target name="refresh" depends="init" if="eclipse.running">
		<eclipse.convertPath fileSystemPath="C:\eclipse213\workspace\net.sourceforge.phpeclipse.sql\" 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: net.sourceforge.phpeclipse.sql.">
		<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>
		<antcall target="zip.folder"/>
		<delete dir="${temp.folder}"/>
	</target>
	<target name="zip.folder" depends="init">
		<zip zipfile="${plugin.destination}/${full.name}.zip" basedir="${temp.folder}" filesonly="true" update="no" excludes="**/*.bin.log"/>
	</target>

</project>
