blob: 91cd488a1da04aa024148bb24cb4e1373677b0d8 [file] [log] [blame]
<?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.modelbase.sql" default="build.jars" basedir=".">
<import file="../org.eclipse.datatools.build/common_build.xml" optional="true"/>
<property name="module.name" value="org.eclipse.datatools.modelbase.sql"/>
<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 Model"/>
<property name="javadocDocTitle" value="DTP SQL Model API (Internal)"/>
<property name="javadocPackages" value="org.eclipse.datatools.modelbase.sql.*"/>
<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 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.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>
</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.modelbase.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 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="sqlmodel.jar" depends="init" unless="sqlmodel.jar" description="Create jar: org.eclipse.datatools.modelbase.sql sqlmodel.jar.">
<delete dir="${temp.folder}/sqlmodel.jar.bin"/>
<mkdir dir="${temp.folder}/sqlmodel.jar.bin"/>
<!-- compile the source code -->
<javac destdir="${temp.folder}/sqlmodel.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}/sqlmodel.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}/sqlmodel.jar" basedir="${temp.folder}/sqlmodel.jar.bin"/>
<delete dir="${temp.folder}/sqlmodel.jar.bin"/>
</target>
<target name="sqlmodelsrc.zip" depends="init" unless="sqlmodelsrc.zip">
<mkdir dir="${build.result.folder}"/>
<zip destfile="${build.result.folder}/sqlmodelsrc.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.modelbase.sql.">
<available property="sqlmodel.jar" file="${build.result.folder}/sqlmodel.jar"/>
<antcall target="sqlmodel.jar"/>
</target>
<target name="build.sources" depends="init">
<available property="sqlmodelsrc.zip" file="${build.result.folder}/sqlmodelsrc.zip"/>
<antcall target="sqlmodelsrc.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="sqlmodel.jar"/>
</copy>
<copy todir="${destination.temp.folder}/${module.name}_${plugin.version}" failonerror="true" overwrite="false">
<fileset dir="${basedir}" includes="plugin.xml,META-INF/,sqlmodel.jar,plugin.properties,about.html"/>
</copy>
<copy todir="${destination.temp.folder}/${module.name}_${plugin.version}" failonerror="false" overwrite="false">
<fileset dir="${basedir}" includes="sqlmodelsrc.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}/sqlmodelsrc.zip" todir="${destination.temp.folder}/${module.name}_${plugin.version}" failonerror="false" overwrite="false"/>
</target>
<target name="gather.logs" depends="init" if="destination.temp.folder">
<mkdir dir="${destination.temp.folder}/${module.name}_${plugin.version}"/>
<copy file="${temp.folder}/sqlmodel.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.modelbase.sql of all the zips, jars and logs created.">
<delete file="${build.result.folder}/sqlmodel.jar"/>
<delete file="${build.result.folder}/sqlmodelsrc.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.modelbase.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: org.eclipse.datatools.modelbase.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>
<zip destfile="${plugin.destination}/${module.name}_${plugin.version}.zip" basedir="${temp.folder}" filesonly="true" whenempty="skip" update="false"/>
<delete dir="${temp.folder}"/>
</target>
</project>