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