<?xml version="1.0" encoding="UTF-8"?>
<!--
 *************************************************************************
 * Copyright (c) 2005 Sybase, Inc. and others.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License 2.0
 * which accompanies this distribution, and is available at
 * https://www.eclipse.org/legal/epl-2.0/
 *
 * Contributors:
 *  Sybase, Inc.  - initial API and implementation
 *  
 ***************************************************************************
 -->
<project name="org.eclipse.datatools.sqltools.parsers.sql.query" default="build.jars" basedir=".">
	<import file="../org.eclipse.datatools.build/common_build.xml" optional="true"/>
	<property name="module.name" value="org.eclipse.datatools.sqltools.parsers.sql.query"/>
	<property name="basews" value="${ws}"/>
	<property name="baseos" value="${os}"/>
	<property name="basearch" value="${arch}"/>
	<property name="basenl" value="${nl}"/>
	<property name="eclipse.home" location="."/>
	<property file="build.properties"/>
	<!-- JavaDoc settings -->
	<property name="javadocWindowTitle" value="DTP SQL Query Parser"/>
	<property name="javadocDocTitle" value="DTP SQL Query Parser API (Internal)"/>
	<property name="javadocPackages" value="org.eclipse.datatools.sqltools.parsers.sql.query.*"/>
	<property name="javadocFooter" value="&lt;i>Copyright &#169;  2005 IBM Corporation and others. All rights reserved. &lt;/i>"/>
	<!-- Compiler settings. -->
	<property name="javacFailOnError" value="true"/>
	<property name="javacDebugInfo" value="on"/>
	<property name="javacVerbose" value="true"/>
	<property name="javacSource" value="${javac.source}"/>
	<property name="javacTarget" value="${javac.target}"/>
	<property name="compilerArg" value=""/>
	<path id="path_bootclasspath">
		<fileset dir="${java.home}/lib">
			<include name="*.jar"/>
		</fileset>
		<fileset dir="${eclipse.home}/plugins">
			<include name="org.eclipse.core.runtime_*.jar"/>
			<include name="org.eclipse.osgi_*.jar"/>
			<!-- Include jared EMF plug-ins -->
			<include name="org.eclipse.emf.ecore_*.jar"/>
			<include name="org.eclipse.emf.common_*.jar"/>
			<include name="org.eclipse.emf.ecore.sdo_*.jar"/>
			<include name="org.eclipse.emf.commonj.sdo_*.jar"/>
			<include name="org.eclipse.emf.ecore.xmi_*.jar"/>
			<include name="org.eclipse.emf.ecore.change_*.jar"/>
			<!-- Include expanded EMF plug-ins -->
			<include name="org.eclipse.core.runtime_*/org.eclipse.core.runtime_*.jar"/>
			<include name="org.eclipse.osgi_*/org.eclipse.osgi_*.jar"/>
			<include name="org.eclipse.emf.ecore_*/org.eclipse.emf.ecore*.jar"/>
			<include name="org.eclipse.emf.common_*/org.eclipse.emf.common*.jar"/>
			<include name="org.eclipse.emf.ecore.sdo_*/org.eclipse.emf.ecore.sdo*.jar"/>
			<include name="org.eclipse.emf.commonj.sdo_*/org.eclipse.emf.commonj.sdo*.jar"/>
			<include name="org.eclipse.emf.ecore.xmi_*/org.eclipse.emf.ecore.xmi*.jar"/>
			<include name="org.eclipse.emf.ecore.change_*/org.eclipse.emf.ecore.change*.jar"/>
		</fileset>
		<!-- Dependencies on other DTP plug-ins, built before this one -->
		<fileset dir="../">
			<include name="org.eclipse.datatools.modelbase.sql/bin/*"/>
			<include name="org.eclipse.datatools.modelbase.sql/sqlmodel.jar"/>
			<include name="org.eclipse.datatools.modelbase.sql.query/bin/*"/>
			<include name="org.eclipse.datatools.modelbase.sql.query/sqlquerymodel.jar"/>
			<include name="org.eclipse.datatools.sqltools.parsers.sql.lexer/bin/*"/>
			<include name="org.eclipse.datatools.sqltools.parsers.sql.lexer/lexer.jar"/>
			<include name="org.eclipse.datatools.sqltools.parsers.sql/bin/*"/>
			<include name="org.eclipse.datatools.sqltools.parsers.sql/sqlparser.jar"/>
			<include name="org.eclipse.datatools.sqltools.parsers.sql/thirdparty/lpg.jar"/>
		</fileset>
	</path>
	<property name="bootclasspath" refid="path_bootclasspath"/>
	<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}/${module.name}">
			<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: org.eclipse.datatools.sqltools.parsers.sql.query 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}/${module.name}_${plugin.version}.jar" basedir="${temp.folder}/${module.name}_${plugin.version}" filesonly="false" whenempty="skip" update="false"/>
		<delete dir="${temp.folder}"/>
	</target>
	<target name="sqlqueryparser.jar" depends="init" unless="sqlqueryparser.jar" description="Create jar: org.eclipse.datatools.sqltools.parsers.sql.query sqlqueryparser.jar.">
		<delete dir="${temp.folder}/sqlqueryparser.jar.bin"/>
		<mkdir dir="${temp.folder}/sqlqueryparser.jar.bin"/>
		<!-- compile the source code -->
		<javac destdir="${temp.folder}/sqlqueryparser.jar.bin" failonerror="${javacFailOnError}" verbose="${javacVerbose}" debug="${javacDebugInfo}" includeAntRuntime="no" bootclasspath="${bootclasspath}" source="${javacSource}" target="${javacTarget}">
			<compilerarg line="${compilerArg}"/>
			<classpath refid="path_bootclasspath"/>
			<src path="src/"/>
		</javac>
		<!-- Copy necessary resources -->
		<copy todir="${temp.folder}/sqlqueryparser.jar.bin" failonerror="true" overwrite="false">
			<fileset dir="src/" excludes="**/*.java, **/package.htm*,null"/>
		</copy>
		<mkdir dir="${build.result.folder}"/>
		<jar destfile="${build.result.folder}/sqlqueryparser.jar" basedir="${temp.folder}/sqlqueryparser.jar.bin"/>
		<delete dir="${temp.folder}/sqlqueryparser.jar.bin"/>
	</target>
	<target name="sqlqueryparsersrc.zip" depends="init" unless="sqlqueryparsersrc.zip">
		<mkdir dir="${build.result.folder}"/>
		<zip destfile="${build.result.folder}/sqlqueryparsersrc.zip" filesonly="false" whenempty="skip" update="false">
			<fileset dir="src/" includes="**/*.java"/>
		</zip>
	</target>
	<target name="build.jars" depends="init" description="Build all the jars for the plug-in: org.eclipse.datatools.sqltools.parsers.sql.query.">
		<available property="sqlqueryparser.jar" file="${build.result.folder}/sqlqueryparser.jar"/>
		<antcall target="sqlqueryparser.jar"/>
	</target>
	<target name="build.sources" depends="init">
		<available property="sqlqueryparsersrc.zip" file="${build.result.folder}/sqlqueryparsersrc.zip"/>
		<antcall target="sqlqueryparsersrc.zip"/>
	</target>
	<target name="gather.bin.parts" depends="init" if="destination.temp.folder">
		<mkdir dir="${destination.temp.folder}/${module.name}_${plugin.version}"/>
		<copy todir="${destination.temp.folder}/${module.name}_${plugin.version}" failonerror="true" overwrite="false">
			<fileset dir="${build.result.folder}" includes="sqlqueryparser.jar"/>
		</copy>
		<copy todir="${destination.temp.folder}/${module.name}_${plugin.version}" failonerror="true" overwrite="false">
			<fileset dir="${basedir}" includes="plugin.xml,about.html,sqlqueryparser.jar,plugin.properties,schema/,META-INF/"/>
		</copy>
		<copy todir="${destination.temp.folder}/${module.name}_${plugin.version}" failonerror="false" overwrite="false">
			<fileset dir="${basedir}" includes="sqlqueryparsersrc.zip"/>
		</copy>
	</target>
	<target name="build.zips" depends="init"/>
	<target name="gather.sources" depends="init" if="destination.temp.folder">
		<mkdir dir="${destination.temp.folder}/${module.name}_${plugin.version}"/>
		<copy file="${build.result.folder}/sqlqueryparsersrc.zip" todir="${destination.temp.folder}/${module.name}_${plugin.version}" failonerror="false" overwrite="false"/>
		<copy todir="${destination.temp.folder}/${module.name}_${plugin.version}" failonerror="false" overwrite="false">
			<fileset dir="${basedir}" includes="src/,plugin.xml,.classpath,.project,plugin.properties,schema/,templates/,bin/,build.properties" excludes="src/com/ibm/db/parsers/sql/query/.cvsignore,src/com/ibm/db/parsers/sql/query/Main.java,src/com/ibm/db/parsers/sql/query/Option.java,src/com/ibm/db/parsers/sql/query/sqlquerylexer.l,src/com/ibm/db/parsers/sql/query/sqlquerylexer.lpg,src/com/ibm/db/parsers/sql/query/sqlquerylexerKeywords.lpg,src/com/ibm/db/parsers/sql/query/sqlquerylexerTemplate.lpg,src/com/ibm/db/parsers/sql/query/sqlqueryparser.l,src/com/ibm/db/parsers/sql/query/sqlqueryparser.lpg,src/com/ibm/db/parsers/sql/query/sqlqueryparserAlias.lpg,src/com/ibm/db/parsers/sql/query/sqlqueryparserRules.lpg,src/com/ibm/db/parsers/sql/query/sqlqueryparserTemplate.lpg,src/com/ibm/db/parsers/sql/query/sqlqueryparserTypes.lpg,src/com/ibm/db/parsers/sql/query/test/delete.sql,src/com/ibm/db/parsers/sql/query/test/insert.sql,src/com/ibm/db/parsers/sql/query/test/select1.sql,src/com/ibm/db/parsers/sql/query/test/select2.sql,src/com/ibm/db/parsers/sql/query/test/test.sql,src/com/ibm/db/parsers/sql/query/test/update.sql,src/com/ibm/db/parsers/sql/query/test/update_conditions.sql"/>
		</copy>
	</target>
	<target name="gather.logs" depends="init" if="destination.temp.folder">
		<mkdir dir="${destination.temp.folder}/${module.name}_${plugin.version}"/>
		<copy file="${temp.folder}/sqlqueryparser.jar.bin.log" todir="${destination.temp.folder}/${module.name}_${plugin.version}" failonerror="false" overwrite="false"/>
	</target>
	<target name="clean" depends="init" description="Clean the plug-in: org.eclipse.datatools.sqltools.parsers.sql.query of all the zips, jars and logs created.">
		<delete file="${build.result.folder}/sqlqueryparser.jar"/>
		<delete file="${build.result.folder}/sqlqueryparsersrc.zip"/>
		<delete file="${plugin.destination}/${module.name}_${plugin.version}.jar"/>
		<delete file="${plugin.destination}/${module.name}_${plugin.version}.zip"/>
		<delete dir="${temp.folder}"/>
	</target>
	<target name="refresh" depends="init" if="eclipse.running" description="Refresh this folder.">
		<eclipse.convertPath fileSystemPath="C:/V3/3.1/eclipse/workspace-dtp/org.eclipse.datatools.sqltools.parsers.sql.query" 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.datatools.sqltools.parsers.sql.query.">
		<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}/${module.name}_${plugin.version}.zip" basedir="${temp.folder}" filesonly="true" whenempty="skip" update="false"/>
		<delete dir="${temp.folder}"/>
	</target>
</project>
