1*3c5114b8SDamjan Jovanovic<?xml version="1.0" encoding="UTF-8"?>
2*3c5114b8SDamjan Jovanovic<!--***********************************************************
3*3c5114b8SDamjan Jovanovic *
4*3c5114b8SDamjan Jovanovic * Licensed to the Apache Software Foundation (ASF) under one
5*3c5114b8SDamjan Jovanovic * or more contributor license agreements.  See the NOTICE file
6*3c5114b8SDamjan Jovanovic * distributed with this work for additional information
7*3c5114b8SDamjan Jovanovic * regarding copyright ownership.  The ASF licenses this file
8*3c5114b8SDamjan Jovanovic * to you under the Apache License, Version 2.0 (the
9*3c5114b8SDamjan Jovanovic * "License"); you may not use this file except in compliance
10*3c5114b8SDamjan Jovanovic * with the License.  You may obtain a copy of the License at
11*3c5114b8SDamjan Jovanovic *
12*3c5114b8SDamjan Jovanovic *   http://www.apache.org/licenses/LICENSE-2.0
13*3c5114b8SDamjan Jovanovic *
14*3c5114b8SDamjan Jovanovic * Unless required by applicable law or agreed to in writing,
15*3c5114b8SDamjan Jovanovic * software distributed under the License is distributed on an
16*3c5114b8SDamjan Jovanovic * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17*3c5114b8SDamjan Jovanovic * KIND, either express or implied.  See the License for the
18*3c5114b8SDamjan Jovanovic * specific language governing permissions and limitations
19*3c5114b8SDamjan Jovanovic * under the License.
20*3c5114b8SDamjan Jovanovic *
21*3c5114b8SDamjan Jovanovic ***********************************************************-->
22*3c5114b8SDamjan Jovanovic
23*3c5114b8SDamjan Jovanovic
24*3c5114b8SDamjan Jovanovic<project name="sdbc_postgresql" default="main" basedir=".">
25*3c5114b8SDamjan Jovanovic
26*3c5114b8SDamjan Jovanovic    <!-- ================================================================= -->
27*3c5114b8SDamjan Jovanovic    <!-- settings                                                          -->
28*3c5114b8SDamjan Jovanovic    <!-- ================================================================= -->
29*3c5114b8SDamjan Jovanovic
30*3c5114b8SDamjan Jovanovic    <!-- global properties -->
31*3c5114b8SDamjan Jovanovic    <property file="../../../ant.properties"/>
32*3c5114b8SDamjan Jovanovic    <!-- version info -->
33*3c5114b8SDamjan Jovanovic    <property file="../../../solenv/inc/minor.mk"/>
34*3c5114b8SDamjan Jovanovic
35*3c5114b8SDamjan Jovanovic    <!-- name of this sub target used in recursive builds -->
36*3c5114b8SDamjan Jovanovic    <property name="target" value="sdbc_postgresql"/>
37*3c5114b8SDamjan Jovanovic
38*3c5114b8SDamjan Jovanovic    <!-- name of jar file created, without .jar extension -->
39*3c5114b8SDamjan Jovanovic    <property name="jarname" value="sdbc_postgresql"/>
40*3c5114b8SDamjan Jovanovic
41*3c5114b8SDamjan Jovanovic    <!-- relative path to project directory -->
42*3c5114b8SDamjan Jovanovic    <property name="prj" value="../.."/>
43*3c5114b8SDamjan Jovanovic
44*3c5114b8SDamjan Jovanovic    <!-- build output directory -->
45*3c5114b8SDamjan Jovanovic    <!-- FIXME: there are also extremely rare/obsolete dbcs/bndchk/truetime/hbtoolkit cases in main/solenv/inc/settings.mk -->
46*3c5114b8SDamjan Jovanovic    <condition property="out" value="${prj}/${OUTPATH}.cap">
47*3c5114b8SDamjan Jovanovic        <isset property="${profile}"/>
48*3c5114b8SDamjan Jovanovic    </condition>
49*3c5114b8SDamjan Jovanovic    <condition property="out" value="${prj}/${OUTPATH}.pro">
50*3c5114b8SDamjan Jovanovic        <isset property="${PRODUCT}"/>
51*3c5114b8SDamjan Jovanovic    </condition>
52*3c5114b8SDamjan Jovanovic    <property name="out" value="${prj}/${OUTPATH}"/>
53*3c5114b8SDamjan Jovanovic
54*3c5114b8SDamjan Jovanovic    <!-- build directories -->
55*3c5114b8SDamjan Jovanovic    <property name="build.dir" value="${out}"/>
56*3c5114b8SDamjan Jovanovic    <property name="build.class" value="${build.dir}/class/${target}"/>
57*3c5114b8SDamjan Jovanovic    <property name="build.misc" value="${build.dir}/misc/${target}"/>
58*3c5114b8SDamjan Jovanovic
59*3c5114b8SDamjan Jovanovic    <!-- start of java source code package structure -->
60*3c5114b8SDamjan Jovanovic    <property name="java.dir" value="src"/>
61*3c5114b8SDamjan Jovanovic
62*3c5114b8SDamjan Jovanovic    <!-- define how to handle CLASSPATH environment -->
63*3c5114b8SDamjan Jovanovic    <property name="build.sysclasspath" value="ignore"/>
64*3c5114b8SDamjan Jovanovic
65*3c5114b8SDamjan Jovanovic    <!-- classpath settings for compile and javadoc tasks -->
66*3c5114b8SDamjan Jovanovic    <condition property="jar-class-path" value="${COMMONS_LANG_JAR}" else="commons-lang3-3.3.jar">
67*3c5114b8SDamjan Jovanovic        <equals arg1="${SYSTEM_APACHE_COMMONS}" arg2="YES"/>
68*3c5114b8SDamjan Jovanovic    </condition>
69*3c5114b8SDamjan Jovanovic    <condition property="commons-lang-jar" value="${COMMONS_LANG_JAR}" else="${OUTDIR}/bin/commons-lang3-3.3.jar">
70*3c5114b8SDamjan Jovanovic        <equals arg1="${SYSTEM_APACHE_COMMONS}" arg2="YES"/>
71*3c5114b8SDamjan Jovanovic    </condition>
72*3c5114b8SDamjan Jovanovic    <path id="classpath">
73*3c5114b8SDamjan Jovanovic        <pathelement location="${OUTDIR}/bin/juh.jar"/>
74*3c5114b8SDamjan Jovanovic        <pathelement location="${OUTDIR}/bin/jurt.jar"/>
75*3c5114b8SDamjan Jovanovic        <pathelement location="${OUTDIR}/bin/ridl.jar"/>
76*3c5114b8SDamjan Jovanovic        <pathelement location="${OUTDIR}/bin/unoil.jar"/>
77*3c5114b8SDamjan Jovanovic        <!-- 3rd party libs -->
78*3c5114b8SDamjan Jovanovic        <pathelement location="${commons-lang-jar}"/>
79*3c5114b8SDamjan Jovanovic    </path>
80*3c5114b8SDamjan Jovanovic
81*3c5114b8SDamjan Jovanovic    <!-- name to display in documentation -->
82*3c5114b8SDamjan Jovanovic    <property name="docname" value="sdbc_postgresql"/>
83*3c5114b8SDamjan Jovanovic
84*3c5114b8SDamjan Jovanovic    <!-- set "modern" java compiler -->
85*3c5114b8SDamjan Jovanovic    <property name="build.compiler" value="modern"/>
86*3c5114b8SDamjan Jovanovic
87*3c5114b8SDamjan Jovanovic    <!-- set wether we want to compile with debug information -->
88*3c5114b8SDamjan Jovanovic    <property name="debug" value="on"/>
89*3c5114b8SDamjan Jovanovic
90*3c5114b8SDamjan Jovanovic    <!-- set wether we want to compile with optimisation -->
91*3c5114b8SDamjan Jovanovic    <property name="optimize" value="off"/>
92*3c5114b8SDamjan Jovanovic
93*3c5114b8SDamjan Jovanovic    <!-- set wether we want to compile with or without deprecation -->
94*3c5114b8SDamjan Jovanovic    <property name="deprecation" value="on"/>
95*3c5114b8SDamjan Jovanovic
96*3c5114b8SDamjan Jovanovic    <target name="info">
97*3c5114b8SDamjan Jovanovic        <echo message="--------------------"/>
98*3c5114b8SDamjan Jovanovic        <echo message="${target}"/>
99*3c5114b8SDamjan Jovanovic        <echo message="--------------------"/>
100*3c5114b8SDamjan Jovanovic    </target>
101*3c5114b8SDamjan Jovanovic
102*3c5114b8SDamjan Jovanovic    <!-- ================================================================= -->
103*3c5114b8SDamjan Jovanovic    <!-- custom targets                                                    -->
104*3c5114b8SDamjan Jovanovic    <!-- ================================================================= -->
105*3c5114b8SDamjan Jovanovic
106*3c5114b8SDamjan Jovanovic    <!-- the main target, called in recursive builds -->
107*3c5114b8SDamjan Jovanovic    <target name="main" depends="info,prepare,compile,jar,javadoc,zipdoc"/>
108*3c5114b8SDamjan Jovanovic
109*3c5114b8SDamjan Jovanovic    <!-- prepare output directories -->
110*3c5114b8SDamjan Jovanovic    <target name="prepare">
111*3c5114b8SDamjan Jovanovic        <mkdir dir="${build.dir}"/>
112*3c5114b8SDamjan Jovanovic        <mkdir dir="${build.dir}/doc/${target}"/>
113*3c5114b8SDamjan Jovanovic        <mkdir dir="${build.class}"/>
114*3c5114b8SDamjan Jovanovic        <mkdir dir="${build.misc}"/>
115*3c5114b8SDamjan Jovanovic    </target>
116*3c5114b8SDamjan Jovanovic
117*3c5114b8SDamjan Jovanovic
118*3c5114b8SDamjan Jovanovic    <target name="res" depends="prepare">
119*3c5114b8SDamjan Jovanovic        <copy todir="${build.class}">
120*3c5114b8SDamjan Jovanovic             <fileset dir="${java.dir}">
121*3c5114b8SDamjan Jovanovic                 <include name="**/*.properties"/>
122*3c5114b8SDamjan Jovanovic                 <include name="**/*.css"/>
123*3c5114b8SDamjan Jovanovic                 <include name="**/*.dtd"/>
124*3c5114b8SDamjan Jovanovic                 <include name="**/*.form"/>
125*3c5114b8SDamjan Jovanovic                 <include name="**/*.gif "/>
126*3c5114b8SDamjan Jovanovic                 <include name="**/*.htm"/>
127*3c5114b8SDamjan Jovanovic                 <include name="**/*.html"/>
128*3c5114b8SDamjan Jovanovic                 <include name="**/*.js"/>
129*3c5114b8SDamjan Jovanovic                 <include name="**/*.mod"/>
130*3c5114b8SDamjan Jovanovic                 <include name="**/*.sql"/>
131*3c5114b8SDamjan Jovanovic                 <include name="**/*.xml"/>
132*3c5114b8SDamjan Jovanovic                 <include name="**/*.xsl"/>
133*3c5114b8SDamjan Jovanovic                 <include name="**/*.map"/>
134*3c5114b8SDamjan Jovanovic
135*3c5114b8SDamjan Jovanovic             </fileset>
136*3c5114b8SDamjan Jovanovic        </copy>
137*3c5114b8SDamjan Jovanovic    </target>
138*3c5114b8SDamjan Jovanovic
139*3c5114b8SDamjan Jovanovic
140*3c5114b8SDamjan Jovanovic    <target name="compile" depends="prepare,res">
141*3c5114b8SDamjan Jovanovic	<javac destdir="${build.class}"
142*3c5114b8SDamjan Jovanovic	       debug="${debug}"
143*3c5114b8SDamjan Jovanovic               debuglevel="lines,vars,source"
144*3c5114b8SDamjan Jovanovic               deprecation="${deprecation}"
145*3c5114b8SDamjan Jovanovic	       optimize="${optimize}"
146*3c5114b8SDamjan Jovanovic	       classpathref="classpath">
147*3c5114b8SDamjan Jovanovic            <src path="${java.dir}"/>
148*3c5114b8SDamjan Jovanovic	    <include name="**/*.java"/>
149*3c5114b8SDamjan Jovanovic	</javac>
150*3c5114b8SDamjan Jovanovic    </target>
151*3c5114b8SDamjan Jovanovic
152*3c5114b8SDamjan Jovanovic    <!-- check if javadoc is up to date -->
153*3c5114b8SDamjan Jovanovic    <target name="javadoc_check" depends="prepare" if="build.dir">
154*3c5114b8SDamjan Jovanovic	<uptodate property="javadocBuild.notRequired" value="true"
155*3c5114b8SDamjan Jovanovic            targetfile="${build.dir}/doc/${target}/${target}_javadoc.zip">
156*3c5114b8SDamjan Jovanovic		<srcfiles dir="${java.dir}" includes="**/*.java"/>
157*3c5114b8SDamjan Jovanovic	</uptodate>
158*3c5114b8SDamjan Jovanovic    </target>
159*3c5114b8SDamjan Jovanovic
160*3c5114b8SDamjan Jovanovic    <!-- generate java documentation -->
161*3c5114b8SDamjan Jovanovic    <target name="javadoc" depends="prepare,javadoc_check,compile"
162*3c5114b8SDamjan Jovanovic         unless="javadocBuild.notRequired"
163*3c5114b8SDamjan Jovanovic         if="build.dir">
164*3c5114b8SDamjan Jovanovic
165*3c5114b8SDamjan Jovanovic        <javadoc destdir="${build.dir}/doc/${target}/javadoc"
166*3c5114b8SDamjan Jovanovic                 verbose="false"
167*3c5114b8SDamjan Jovanovic                 author="false"
168*3c5114b8SDamjan Jovanovic                 nodeprecated="true"
169*3c5114b8SDamjan Jovanovic                 nodeprecatedlist="true"
170*3c5114b8SDamjan Jovanovic                 use="true"
171*3c5114b8SDamjan Jovanovic                 Doctitle="${docname}"
172*3c5114b8SDamjan Jovanovic                 windowtitle="${docname}"
173*3c5114b8SDamjan Jovanovic                 classpathref="classpath">
174*3c5114b8SDamjan Jovanovic
175*3c5114b8SDamjan Jovanovic            <packageset dir="${java.dir}" defaultexcludes="yes">
176*3c5114b8SDamjan Jovanovic                <include name="com/**"/>
177*3c5114b8SDamjan Jovanovic                <include name="org/**"/>
178*3c5114b8SDamjan Jovanovic            </packageset>
179*3c5114b8SDamjan Jovanovic
180*3c5114b8SDamjan Jovanovic            <link offline="true" href="http://java.sun.com/j2se/1.4.2/docs/api"
181*3c5114b8SDamjan Jovanovic                  packagelistLoc="${common.doc}/jdk1.4.2"/>
182*3c5114b8SDamjan Jovanovic            <link offline="true"
183*3c5114b8SDamjan Jovanovic                  href="http://java.sun.com/products/servlet/2.3/javadoc"
184*3c5114b8SDamjan Jovanovic                  packagelistLoc="${common.doc}/servlet2.3"/>
185*3c5114b8SDamjan Jovanovic            <link offline="true"
186*3c5114b8SDamjan Jovanovic                  href="http://logging.apache.org/log4j/docs/api"
187*3c5114b8SDamjan Jovanovic                  packagelistLoc="${common.doc}/log4j-1.2.8"/>
188*3c5114b8SDamjan Jovanovic            <link offline="true"
189*3c5114b8SDamjan Jovanovic                  href="http://java.sun.com/products/javabeans/glasgow/javadocs"
190*3c5114b8SDamjan Jovanovic                  packagelistLoc="${common.doc}/jaf-1.0.2"/>
191*3c5114b8SDamjan Jovanovic            <link offline="true"
192*3c5114b8SDamjan Jovanovic                  href="http://java.sun.com/products/javamail/javadocs"
193*3c5114b8SDamjan Jovanovic                  packagelistLoc="${common.doc}/javamail-1.3.1"/>
194*3c5114b8SDamjan Jovanovic            <link offline="true"
195*3c5114b8SDamjan Jovanovic                  href="http://ws.apache.org/soap/docs"
196*3c5114b8SDamjan Jovanovic                  packagelistLoc="${common.doc}/soap-2.3.1"/>
197*3c5114b8SDamjan Jovanovic
198*3c5114b8SDamjan Jovanovic            <bottom>&lt;i&gt;Copyright &amp;#169; 2004 Sun Microsystems, Inc., 901 San Antonio Road, Palo Alto, CA 94303 USA&lt;/i&gt;</bottom>
199*3c5114b8SDamjan Jovanovic            <header>${docname}</header>
200*3c5114b8SDamjan Jovanovic
201*3c5114b8SDamjan Jovanovic       </javadoc>
202*3c5114b8SDamjan Jovanovic    </target>
203*3c5114b8SDamjan Jovanovic
204*3c5114b8SDamjan Jovanovic    <!-- zip documentation and store in build/doc/${target} -->
205*3c5114b8SDamjan Jovanovic    <target name="zipdoc" depends="javadoc" if="build.dir" unless="javadocBuild.notRequired">
206*3c5114b8SDamjan Jovanovic	<zip zipfile="${build.dir}/doc/${target}/${target}_javadoc.zip"
207*3c5114b8SDamjan Jovanovic      basedir="${build.dir}/doc/${target}/javadoc"
208*3c5114b8SDamjan Jovanovic      update="true"/>
209*3c5114b8SDamjan Jovanovic    </target>
210*3c5114b8SDamjan Jovanovic
211*3c5114b8SDamjan Jovanovic    <!-- clean up -->
212*3c5114b8SDamjan Jovanovic    <target name="clean" depends="prepare">
213*3c5114b8SDamjan Jovanovic        <delete dir="${build.class}" includeEmptyDirs="true"/>
214*3c5114b8SDamjan Jovanovic        <delete dir="${build.dir}/doc/${target}" includeEmptyDirs="true"/>
215*3c5114b8SDamjan Jovanovic    </target>
216*3c5114b8SDamjan Jovanovic
217*3c5114b8SDamjan Jovanovic    <!-- create jar file -->
218*3c5114b8SDamjan Jovanovic    <target name="jar" depends="prepare,compile" if="build.class">
219*3c5114b8SDamjan Jovanovic        <jar jarfile="${build.class}/${jarname}.jar"
220*3c5114b8SDamjan Jovanovic             basedir="${build.class}">
221*3c5114b8SDamjan Jovanovic            <manifest>
222*3c5114b8SDamjan Jovanovic                <attribute name="Class-Path" value="${jar-class-path} juh.jar jurt.jar ridl.jar unoil.jar"/>
223*3c5114b8SDamjan Jovanovic                <attribute name="Solar-Version" value="${RSCREVISION}"/>
224*3c5114b8SDamjan Jovanovic                <attribute name="RegistrationClassName" value="com.sun.star.sdbcx.comp.postgresql.PostgresqlDriver"/>
225*3c5114b8SDamjan Jovanovic                <attribute name="Sealed" value="true"/>
226*3c5114b8SDamjan Jovanovic                <attribute name="UNO-Type-Path" value=""/>
227*3c5114b8SDamjan Jovanovic            </manifest>
228*3c5114b8SDamjan Jovanovic            <include name="**/*.class"/>
229*3c5114b8SDamjan Jovanovic            <include name="**/*.properties"/>
230*3c5114b8SDamjan Jovanovic            <include name="**/*.css"/>
231*3c5114b8SDamjan Jovanovic            <include name="**/*.dtd"/>
232*3c5114b8SDamjan Jovanovic            <include name="**/*.form"/>
233*3c5114b8SDamjan Jovanovic            <include name="**/*.gif "/>
234*3c5114b8SDamjan Jovanovic            <include name="**/*.htm"/>
235*3c5114b8SDamjan Jovanovic            <include name="**/*.html"/>
236*3c5114b8SDamjan Jovanovic            <include name="**/*.js"/>
237*3c5114b8SDamjan Jovanovic            <include name="**/*.mod"/>
238*3c5114b8SDamjan Jovanovic            <include name="**/*.sql"/>
239*3c5114b8SDamjan Jovanovic            <include name="**/*.xml"/>
240*3c5114b8SDamjan Jovanovic            <include name="**/*.xsl"/>
241*3c5114b8SDamjan Jovanovic            <include name="**/*.map"/>
242*3c5114b8SDamjan Jovanovic        </jar>
243*3c5114b8SDamjan Jovanovic    </target>
244*3c5114b8SDamjan Jovanovic
245*3c5114b8SDamjan Jovanovic    <target name="test" depends="prepare">
246*3c5114b8SDamjan Jovanovic    </target>
247*3c5114b8SDamjan Jovanovic
248*3c5114b8SDamjan Jovanovic</project>
249*3c5114b8SDamjan Jovanovic
250