blob: d3b166cec975c879216d53a11ce403e879da29e0 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--***********************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
***********************************************************-->
<project name="sdbc_hsqldb" default="main" basedir=".">
<!-- ================================================================= -->
<!-- settings -->
<!-- ================================================================= -->
<!-- global properties -->
<property file="../../../ant.properties"/>
<!-- version info -->
<property file="../../../solenv/inc/minor.mk"/>
<!-- name of this sub target used in recursive builds -->
<property name="target" value="sdbc_hsqldb"/>
<!-- name of jar file created, without .jar extension -->
<property name="jarname" value="sdbc_hsqldb"/>
<!-- relative path to project directory -->
<property name="prj" value="../.."/>
<!-- build output directory -->
<!-- FIXME: there are also extremely rare/obsolete dbcs/bndchk/truetime/hbtoolkit cases in main/solenv/inc/settings.mk -->
<condition property="out" value="${prj}/${OUTPATH}.cap">
<isset property="${profile}"/>
</condition>
<condition property="out" value="${prj}/${OUTPATH}.pro">
<isset property="${PRODUCT}"/>
</condition>
<property name="out" value="${prj}/${OUTPATH}"/>
<!-- build directories -->
<property name="build.dir" value="${out}"/>
<property name="build.class" value="${build.dir}/class/${target}"/>
<property name="build.misc" value="${build.dir}/misc/${target}"/>
<!-- start of java source code package structure -->
<property name="java.dir" value="src"/>
<!-- define how to handle CLASSPATH environment -->
<property name="build.sysclasspath" value="ignore"/>
<!-- classpath settings for compile and javadoc tasks -->
<condition property="jar-class-path" value="${HSQLDB_JAR}" else="hsqldb.jar">
<equals arg1="${SYSTEM_HSQLDB}" arg2="YES"/>
</condition>
<property name="HSQLDB_JAR" value="${OUTDIR}/bin/hsqldb.jar"/>
<path id="classpath">
<!-- 3rd party libs -->
<pathelement location="${HSQLDB_JAR}"/>
</path>
<!-- name to display in documentation -->
<property name="docname" value="sdbc_hsqldb"/>
<!-- set "modern" java compiler -->
<property name="build.compiler" value="modern"/>
<!-- set whether we want to compile with debug information -->
<property name="debug" value="on"/>
<!-- set whether we want to compile with optimisation -->
<property name="optimize" value="off"/>
<!-- set whether we want to compile with or without deprecation -->
<property name="deprecation" value="on"/>
<target name="info">
<echo message="--------------------"/>
<echo message="${target}"/>
<echo message="--------------------"/>
</target>
<!-- ================================================================= -->
<!-- custom targets -->
<!-- ================================================================= -->
<!-- the main target, called in recursive builds -->
<target name="main" depends="info,prepare,compile,jar,javadoc,zipdoc"/>
<!-- prepare output directories -->
<target name="prepare">
<mkdir dir="${build.dir}"/>
<mkdir dir="${build.dir}/doc/${target}"/>
<mkdir dir="${build.class}"/>
<mkdir dir="${build.misc}"/>
</target>
<target name="res" depends="prepare">
<copy todir="${build.class}">
<fileset dir="${java.dir}">
<include name="**/*.properties"/>
<include name="**/*.css"/>
<include name="**/*.dtd"/>
<include name="**/*.form"/>
<include name="**/*.gif "/>
<include name="**/*.htm"/>
<include name="**/*.html"/>
<include name="**/*.js"/>
<include name="**/*.mod"/>
<include name="**/*.sql"/>
<include name="**/*.xml"/>
<include name="**/*.xsl"/>
<include name="**/*.map"/>
</fileset>
</copy>
</target>
<target name="compile" depends="prepare,res">
<javac destdir="${build.class}"
debug="${debug}"
deprecation="${deprecation}"
optimize="${optimize}"
classpathref="classpath">
<src path="${java.dir}"/>
<include name="**/*.java"/>
</javac>
</target>
<!-- check if javadoc is up to date -->
<target name="javadoc_check" depends="prepare" if="build.dir">
<uptodate property="javadocBuild.notRequired" value="true"
targetfile="${build.dir}/doc/${target}/${target}_javadoc.zip">
<srcfiles dir="${java.dir}" includes="**/*.java"/>
</uptodate>
</target>
<!-- generate java documentation -->
<target name="javadoc" depends="prepare,javadoc_check,compile"
unless="javadocBuild.notRequired"
if="build.dir">
<javadoc destdir="${build.dir}/doc/${target}/javadoc"
verbose="false"
author="false"
nodeprecated="true"
nodeprecatedlist="true"
use="true"
Doctitle="${docname}"
windowtitle="${docname}"
classpathref="classpath">
<packageset dir="${java.dir}" defaultexcludes="yes">
<include name="com/**"/>
<include name="org/**"/>
</packageset>
<link offline="true" href="http://java.sun.com/j2se/1.4.2/docs/api"
packagelistLoc="${common.doc}/jdk1.4.2"/>
<link offline="true"
href="http://java.sun.com/products/servlet/2.3/javadoc"
packagelistLoc="${common.doc}/servlet2.3"/>
<link offline="true"
href="http://logging.apache.org/log4j/docs/api"
packagelistLoc="${common.doc}/log4j-1.2.8"/>
<link offline="true"
href="http://java.sun.com/products/javabeans/glasgow/javadocs"
packagelistLoc="${common.doc}/jaf-1.0.2"/>
<link offline="true"
href="http://java.sun.com/products/javamail/javadocs"
packagelistLoc="${common.doc}/javamail-1.3.1"/>
<link offline="true"
href="http://ws.apache.org/soap/docs"
packagelistLoc="${common.doc}/soap-2.3.1"/>
<bottom>&lt;i&gt;Copyright &amp;#169; 2004 Sun Microsystems, Inc., 901 San Antonio Road, Palo Alto, CA 94303 USA&lt;/i&gt;</bottom>
<header>${docname}</header>
</javadoc>
</target>
<!-- zip documentation and store in build/doc/${target} -->
<target name="zipdoc" depends="javadoc" if="build.dir" unless="javadocBuild.notRequired">
<zip zipfile="${build.dir}/doc/${target}/${target}_javadoc.zip"
basedir="${build.dir}/doc/${target}/javadoc"
update="true"/>
</target>
<!-- clean up -->
<target name="clean" depends="prepare">
<delete dir="${build.class}" includeEmptyDirs="true"/>
<delete dir="${build.dir}/doc/${target}" includeEmptyDirs="true"/>
</target>
<!-- create jar file -->
<target name="jar" depends="prepare,compile" if="build.class">
<jar jarfile="${build.class}/${jarname}.jar"
basedir="${build.class}">
<manifest>
<attribute name="Class-Path" value="${jar-class-path} .."/>
<attribute name="Solar-Version" value="${RSCREVISION}"/>
</manifest>
<include name="**/*.class"/>
<include name="**/*.properties"/>
<include name="**/*.css"/>
<include name="**/*.dtd"/>
<include name="**/*.form"/>
<include name="**/*.gif "/>
<include name="**/*.htm"/>
<include name="**/*.html"/>
<include name="**/*.js"/>
<include name="**/*.mod"/>
<include name="**/*.sql"/>
<include name="**/*.xml"/>
<include name="**/*.xsl"/>
<include name="**/*.map"/>
</jar>
</target>
<target name="test" depends="prepare">
</target>
</project>