3 *******************************************************************************
\r
4 * Copyright (C) 1997-2009, International Business Machines Corporation and *
\r
5 * others. All Rights Reserved. *
\r
6 *******************************************************************************
\r
7 * This is the ant build file for ICU4J. See readme.html for more information.
\r
11 <project name="icu4j" default="core" basedir=".">
\r
13 <!-- ### Begin Clover 2.x setup ### -->
\r
14 <taskdef resource="cloverlib.xml" onerror="ignore" />
\r
16 <target name="with.clover">
\r
17 <mkdir dir="tmp/" />
\r
18 <clover-setup initString="tmp/icu4j.db">
\r
20 <exclude name="**/dev/**/*.java" />
\r
22 <methodContext name="API" regexp="(.* )?public .*" />
\r
26 <target name="clover.summary" depends="with.clover">
\r
28 <current outfile="icu4j_html" summary="true">
\r
29 <format type="html" srcLevel="false" />
\r
33 <target name="clover.report" depends="with.clover">
\r
35 <current outfile="icu4j_html">
\r
36 <format type="html" />
\r
40 <target name="clover.log" depends="with.clover">
\r
41 <clover-log level="method" filter="private">
\r
42 <package name="com.ibm.icu.text" />
\r
43 <package name="com.ibm.icu.lang" />
\r
44 <package name="com.ibm.icu.math" />
\r
45 <package name="com.ibm.icu.util" />
\r
46 <package name="com.ibm.icu.charset" />
\r
50 <!-- ### End Clover 2.x setup ### -->
\r
52 <target name="checkAntVersion">
\r
53 <condition property="supported.ant.version">
\r
55 <contains string="${ant.version}" substring="1.6." />
\r
56 <contains string="${ant.version}" substring="1.7." />
\r
57 <contains string="${ant.version}" substring="1.8." /> <!-- just in case -->
\r
60 <antcall target="warnAntVersion" />
\r
63 <target name="warnAntVersion" unless="supported.ant.version">
\r
64 <echo message="####################### WARNING #######################" />
\r
65 <echo message="The version of ant used by the current configuration" />
\r
66 <echo message="may not work well with this build script file. Please" />
\r
67 <echo message="use ant 1.6 or later version." />
\r
68 <echo message="#######################################################" />
\r
71 <target name="init" depends="initBase,initSrc"/>
\r
73 <target name="initBase"
\r
74 depends="checkAntVersion"
\r
75 description="Initialized ICU4J build environment">
\r
77 <property name="src.dir" value="src" />
\r
78 <property name="build.dir" value="classes" />
\r
79 <property name="api.dir" value="${src.dir}/com/ibm/icu/dev/tool/docs" />
\r
80 <property name="doc.dir" value="doc" />
\r
81 <property name="icudatajar.file" value="${src.dir}/com/ibm/icu/impl/data/icudata.jar" />
\r
82 <property name="testjar.file" value="icu4jtests.jar" />
\r
83 <property name="jar.file" value="icu4j.jar" />
\r
84 <property name="demos-jar.file" value="icu4jdemos.jar" />
\r
85 <property name="charsets.jar.file" value="icu4j-charsets.jar" />
\r
86 <property name="jarSrc.file" value="icu4jsrc.jar" />
\r
87 <property name="zipTestSrc.file" value="icu4jtsrc.zip" />
\r
88 <property name="jdk.wrapper.jar.file" value="icu4jwrapper.jar" />
\r
89 <property name="fragment.jar.file" value="icu4jfragment.jar" />
\r
90 <property name="eclipse.dir" value="${src.dir}/com/ibm/icu/dev/eclipse" />
\r
91 <property name="eclipse.projects.dir" value="eclipseProjects" />
\r
92 <property name="wrapper.build.dir" value="classes.wrapper" />
\r
93 <property name="jarDocs.file" value="icu4jdocs.jar" />
\r
94 <property name="ime.translit.jar.file" value="icutransime.jar" />
\r
95 <property name="ime.indic.jar.file" value="icuindicime.jar" />
\r
96 <property name="ime.translit.manifest" value="${src.dir}/com/ibm/icu/dev/tool/ime/translit/manifest.stub" />
\r
97 <property name="ime.indic.manifest" value="${src.dir}/com/ibm/icu/dev/tool/ime/indic/manifest.stub" />
\r
98 <property name="zip.file" value="../icu4j${DSTAMP}.zip" />
\r
99 <property name="zipSrc.file" value="../icu4jSrc${DSTAMP}.zip" />
\r
100 <property name="tzu.src.path" value="com/ibm/icu/dev/tool/tzu" />
\r
101 <property name="tzu.bin.dir" value="${basedir}/icu4jtzu" />
\r
102 <property name="tzu.jar.file" value="icutzu.jar" />
\r
103 <property name="tzu.test.dir" value="${basedir}/icu4jtzu/test" />
\r
104 <property name="tzu.temp.dir" value="${basedir}/icu4jtzu/Temp" />
\r
105 <property name="tzu.src.zip.file" value="icutzu-src.zip" />
\r
106 <property name="tzu.bin.zip.file" value="icutzu-bin.zip" />
\r
107 <property file="build.properties" />
\r
108 <!-- fix the data folder every time there is a version update-->
\r
110 <property name="icu4j.data.path" value="com/ibm/icu/impl/data/icudt${icu4j.data.version.number}b" />
\r
111 <property name="icu4j.testdata.path" value="com/ibm/icu/dev/data/testdata" />
\r
112 <property name="icu4j.javac.source" value="1.3" />
\r
113 <property name="icu4j.javac.target" value="1.3" />
\r
115 <path id="build.classpath">
\r
116 <pathelement path="${build.dir}" />
\r
119 <property name="richedit.dir" value="richedit" />
\r
120 <property name="richedit.doc.dir" value="${richedit.dir}/doc" />
\r
121 <property name="richedit.jar.file" value="${richedit.dir}/richedit.jar" />
\r
122 <property name="richedit.zip.file" value="${richedit.dir}/richedit.zip" />
\r
123 <property name="richedit.manifest" value="${src.dir}/com/ibm/richtext/manifest.stub" />
\r
125 <!-- Load environment variables -->
\r
126 <property environment="env" />
\r
128 <!-- Capture the computer name in a cross-platform manner -->
\r
129 <property name="env.COMPUTERNAME" value="${env.HOSTNAME}" />
\r
131 <!-- JavaDoc params -->
\r
132 <property name="doc.params" value="-breakiterator -use -tagletpath ./classes -taglet com.ibm.icu.dev.tool.docs.ICUTaglet -group 'ICU Core' 'com.ibm.icu.lang*:com.ibm.icu.math*:com.ibm.icu.text*:com.ibm.icu.util*:com.ibm.icu.charset' -group 'ICU Tests' 'com.ibm.icu.dev.test*' -group 'Demos' 'com.ibm.icu.dev.demo*' -group 'ICU Tools' 'com.ibm.icu.dev*'" />
\r
133 <property name="richeditdoc.params" value="-breakiterator -use -tagletpath ./classes -taglet com.ibm.icu.dev.tool.docs.ICUTaglet -group 'Rich Text Editing' 'com.ibm.richtext*'" />
\r
135 <mkdir dir="${build.dir}" />
\r
137 <echo message="java home: ${java.home}" />
\r
138 <echo message="java version: ${java.version}" />
\r
139 <echo message="ant java version: ${ant.java.version}" />
\r
140 <echo message="${ant.version}" />
\r
141 <echo message="${env.COMPUTERNAME} with ${os.name} ${os.version} on ${os.arch}" />
\r
142 <echo message="clover initstring = '${clover.initstring}'" />
\r
144 <!-- ## Java version dependent build configuration ##-->
\r
146 <!-- JRE lib version used for building ICU4J -->
\r
147 <condition property="target.rt.version" value="J2SE13">
\r
148 <contains string="${java.version}" substring="1.3." />
\r
150 <condition property="target.rt.version" value="J2SE14">
\r
151 <contains string="${java.version}" substring="1.4." />
\r
153 <condition property="target.rt.version" value="J2SE15">
\r
154 <contains string="${java.version}" substring="1.5." />
\r
156 <condition property="target.rt.version" value="JAVASE6">
\r
157 <contains string="${java.version}" substring="1.6." />
\r
159 <condition property="target.rt.version" value="JAVASE7">
\r
160 <contains string="${java.version}" substring="1.7." />
\r
163 <fail message="Failed to detect Java runtime library version used for building ICU4J"
\r
164 unless="target.rt.version" />
\r
165 <echo message="target runtime environment: ${target.rt.version}" />
\r
167 <condition property="default.java.build.target">
\r
168 <equals arg1="${target.rt.version}" arg2="${default.target.rt.version}" />
\r
171 <!-- Specification title in manifest file -->
\r
172 <condition property="manifest.specification.title" value="ICU4J Compatible Build for ${target.rt.version}">
\r
174 <isset property="default.java.build.target" />
\r
177 <property name="manifest.specification.title" value="ICU4J" />
\r
179 <condition property="before.java14">
\r
181 <equals arg1="${target.rt.version}" arg2="FOUNDATION10"/>
\r
182 <equals arg1="${target.rt.version}" arg2="J2SE13"/>
\r
186 <condition property="before.java15">
\r
188 <equals arg1="${target.rt.version}" arg2="FOUNDATION10"/>
\r
189 <equals arg1="${target.rt.version}" arg2="J2SE13"/>
\r
190 <equals arg1="${target.rt.version}" arg2="J2SE14"/>
\r
194 <!-- JVM arguments for running test cases -->
\r
195 <condition property="test.jvm.args" value="-Xms224m -Xmx256m">
\r
196 <isset property="before.java14" />
\r
198 <condition property="test.jvm.args" value="-ea -Xms224m -Xmx256m -Xdisableexcessivegc">
\r
201 <isset property="before.java15" />
\r
203 <equals arg1="${java.vm.vendor}" arg2="IBM Corporation"/>
\r
206 <condition property="test.jvm.args" value="-ea -Xms224m -Xmx256m -Djava.awt.headless=true">
\r
208 <equals arg1="${os.name}" arg2="Mac OS X"/>
\r
211 <condition property="test.jvm.args" value="-ea -Xms224m -Xmx256m">
\r
213 <isset property="test.jvm.args" />
\r
217 <uptodate property="icu4j.resources" targetfile="${src.dir}/com/ibm/icu/impl/data">
\r
218 <!-- note must not have '/' before 'com' in srcfiles includes arg! -->
\r
219 <srcfiles dir="${build.dir}" includes="${icu4j.data.path}/res_index.res" />
\r
222 <uptodate property="icu4j.testdata.resources" targetfile="${src.dir}/com/ibm/icu/dev/data">
\r
223 <!-- note must not have '/' before 'com' in srcfiles includes arg! -->
\r
224 <srcfiles dir="${build.dir}" includes="${icu4j.testdatadata.path}/root.res" />
\r
227 <uptodate property="icu4j.module.resources" targetfile="${icudatajar.file}">
\r
228 <srcfiles dir="${build.dir}" includes="${icu4j.data.path}/*.icu" />
\r
230 <!-- <echo message="icu4j.module.resources result: ${icu4j.module.resources}" /> -->
\r
232 <format property="date.time" pattern="yyyy-MM-dd 'at' hh:mm:ss z" locale="en,US" />
\r
235 <echo message="Initialized at ${date.time}" />
\r
238 <target name="displayBuildEnvWarning" unless="default.java.build.target">
\r
239 <echo message="####################### WARNING #######################" />
\r
240 <echo message="The JDK version used by the current build environment" />
\r
241 <echo message="does not match the reference JDK version for this" />
\r
242 <echo message="ICU4J release. The build outputs may not be identical" />
\r
243 <echo message="to the official ICU4J binary distribution." />
\r
244 <echo message="#######################################################" />
\r
247 <target name="initSrc"
\r
248 depends="buildMangle"
\r
249 description="Run the preprocessor tool to modify Java sources for the Java runtime lib currently used.">
\r
250 <antcall target="displayBuildEnvWarning" />
\r
251 <!-- Build CodeMangler -->
\r
252 <javac srcdir="${src.dir}" destdir="${build.dir}" classpathref="build.classpath" source="${icu4j.javac.source}" target="${icu4j.javac.target}">
\r
253 <include name="com/ibm/icu/dev/tool/docs/CodeMangler.java" />
\r
255 <!-- Run CodeMangler -->
\r
256 <condition property="mangler.cmd.args" value="-d${default.target.rt.version} -n @preprocessor.txt">
\r
257 <equals arg1="${default.target.rt.version}" arg2="${target.rt.version}"/>
\r
260 <property name="mangler.cmd.args" value="-d${target.rt.version} @preprocessor.txt"/>
\r
262 <antcall target="doMangle">
\r
263 <param name="mangler.args" value="${mangler.cmd.args}"/>
\r
267 <target name="normSrc"
\r
268 depends="buildMangle"
\r
269 description="Run the preprocessor to normalize Java sources to the ICU source repository target JDK version">
\r
270 <antcall target="doMangle">
\r
271 <param name="mangler.args" value="-d${default.target.rt.version} -n -f @preprocessor.txt"/>
\r
275 <target name="buildMangle" depends="initBase">
\r
276 <javac srcdir="${src.dir}" destdir="${build.dir}" classpathref="build.classpath" source="${icu4j.javac.source}" target="${icu4j.javac.target}">
\r
277 <include name="com/ibm/icu/dev/tool/docs/CodeMangler.java" />
\r
281 <target name="doMangle" unless="dontMangle">
\r
282 <echo message="Running source code preprocessor [java com.ibm.icu.dev.tool.docs.CodeMangler ${mangler.args}]"/>
\r
283 <java classname="com.ibm.icu.dev.tool.docs.CodeMangler" classpath="${build.dir}" logError="true" fork="true" dir="${basedir}">
\r
284 <arg line="${mangler.args}"/>
\r
288 <!-- build everything but dist-related stuff -->
\r
289 <target name="all" depends="core,tests,tools,richedit,demos,jar,docs" description="build all primary targets" />
\r
291 <target name="resources" depends="icudata,coreData,durationdata,testdata" description="builds all the resources" />
\r
293 <target name="icudata" depends="initBase" if="icu4j.resources">
\r
294 <!-- use this target to force resources to be rebuilt -->
\r
295 <unjar src="${icudatajar.file}" dest="${build.dir}" />
\r
296 <touch file="${build.dir}/${icu4j.data.path}/res_index.res" />
\r
297 <copy todir="${build.dir}/META-INF">
\r
298 <fileset dir="${src.dir}/META-INF" includes="**/*" />
\r
302 <target name="durationdata" depends="initBase">
\r
303 <copy todir="${build.dir}/com/ibm/icu/impl/duration/impl/data">
\r
304 <fileset dir="${src.dir}/com/ibm/icu/impl/duration/impl/data" includes="index.txt, pfd*.xml"/>
\r
309 use this target to conditionally build resources only if icu4j.resources is set
\r
310 <target name="icu" depends="init" if="icu4j.resources">
\r
311 <unjar src="${src.dir}/com/ibm/icu/impl/data/ICULocaleData.jar" dest="${build.dir}"/>
\r
312 <touch file="${build.dir}/com/ibm/icu/impl/data/LocaleElements_index.class"/>
\r
316 <!-- core does not build richedit or tests -->
\r
317 <target name="core" depends="init,coreData,icudata,durationdata" description="build core classes and data">
\r
318 <javac sourcepath=""
\r
319 srcdir="${src.dir}"
\r
320 destdir="${build.dir}"
\r
321 classpathref="build.classpath"
\r
322 source="${icu4j.javac.source}"
\r
323 target="${icu4j.javac.target}"
\r
327 <include name="com/ibm/icu/charset/**/*.java" unless="before.java14" />
\r
328 <include name="com/ibm/icu/impl/**/*.java" />
\r
329 <include name="com/ibm/icu/lang/**/*.java" />
\r
330 <include name="com/ibm/icu/math/**/*.java" />
\r
331 <include name="com/ibm/icu/text/**/*.java" />
\r
332 <include name="com/ibm/icu/util/**/*.java" />
\r
336 <target name="tests" depends="core,testdata" description="build tests">
\r
337 <javac srcdir="${src.dir}"
\r
338 destdir="${build.dir}"
\r
339 classpathref="build.classpath"
\r
340 source="${icu4j.javac.source}"
\r
341 target="${icu4j.javac.target}"
\r
344 <exclude name="com/ibm/icu/dev/test/charset/**/*.java" if="before.java14" />
\r
345 <exclude name="com/ibm/icu/dev/test/perf/**/*.java" if="before.java14" />
\r
346 <include name="com/ibm/icu/dev/test/**/*.java" />
\r
351 <target name="demos" depends="core,testdata" unless="before.java14" description="build demos">
\r
352 <javac srcdir="${src.dir}"
\r
353 destdir="${build.dir}"
\r
354 classpathref="build.classpath"
\r
355 source="${icu4j.javac.source}"
\r
356 target="${icu4j.javac.target}"
\r
359 <include name="com/ibm/icu/dev/demo/**/*.java" />
\r
360 <include name="com/ibm/icu/dev/demo/*.java" />
\r
364 <target name="indices" depends="icudata,build_indexgenerator">
\r
365 <java classname="com.ibm.icu.dev.tool.index.IndexGenerator" classpath="${build.dir}" logError="true">
\r
366 <arg value="${build.dir}/${icu4j.data.path}" />
\r
368 <java classname="com.ibm.icu.dev.tool.index.IndexGenerator" classpath="${build.dir}" logError="true">
\r
369 <arg value="${build.dir}/${icu4j.data.path}/rbnf" />
\r
371 <java classname="com.ibm.icu.dev.tool.index.IndexGenerator" classpath="${build.dir}" logError="true">
\r
372 <arg value="${build.dir}/${icu4j.data.path}/coll" />
\r
374 <java classname="com.ibm.icu.dev.tool.index.IndexGenerator" classpath="${build.dir}" logError="true">
\r
375 <arg value="${build.dir}/${icu4j.data.path}/translit" />
\r
379 <target name="collIndices" depends="build_indexgenerator">
\r
380 <java classname="com.ibm.icu.dev.tool.index.IndexGenerator" classpath="${build.dir}" logError="true">
\r
381 <arg value="${build.dir}/${icu4j.data.path}/coll" />
\r
385 <target name="tools"
\r
387 unless="before.java14"
\r
388 description="build tools">
\r
389 <javac srcdir="${src.dir}"
\r
390 destdir="${build.dir}"
\r
391 classpathref="build.classpath"
\r
392 source="${icu4j.javac.source}"
\r
393 target="${icu4j.javac.target}"
\r
396 <exclude name="com/ibm/icu/dev/tool/cldr/*" />
\r
397 <exclude name="com/ibm/icu/dev/tool/localeconverter/*" if="before.java15" />
\r
398 <include name="com/ibm/icu/dev/tool/**/*.java" />
\r
402 <target name="build_indexgenerator" depends="initBase">
\r
403 <javac srcdir="${src.dir}"
\r
404 destdir="${build.dir}"
\r
405 classpathref="build.classpath"
\r
406 source="${icu4j.javac.source}"
\r
407 target="${icu4j.javac.target}"
\r
410 <include name="com/ibm/icu/dev/tool/index/IndexGenerator.java" />
\r
414 <target name="docs" depends="init,docs13,docs14plus" description="build user javadoc" />
\r
416 <target name="docs13" if="before.java14">
\r
417 <mkdir dir="${doc.dir}" />
\r
418 <javadoc packagenames="com.ibm.icu.lang,com.ibm.icu.text,com.ibm.icu.util,com.ibm.icu.math"
\r
419 sourcepath="${src.dir}"
\r
420 destdir="${doc.dir}"
\r
421 nodeprecatedlist="true"
\r
422 windowtitle="icu4j"
\r
424 encoding="iso-8859-1"
\r
425 docencoding="iso-8859-1"
\r
426 bottom="<font size=-1>Copyright (c) ${current.year} IBM Corporation and others.</font>"
\r
427 link="http://java.sun.com/j2se/1.3/docs/api"
\r
431 <target name="docs14plus" depends="tools" unless="before.java14">
\r
432 <echo message="doc params: ${doc.params}" />
\r
433 <mkdir dir="${doc.dir}" />
\r
434 <javadoc packagenames="com.ibm.icu.lang,com.ibm.icu.text,com.ibm.icu.util,com.ibm.icu.charset,com.ibm.icu.math,com.ibm.icu.dev"
\r
435 sourcepath="${src.dir}"
\r
436 destdir="${doc.dir}"
\r
437 nodeprecatedlist="true"
\r
438 windowtitle="icu4j"
\r
440 encoding="iso-8859-1"
\r
441 docencoding="iso-8859-1"
\r
442 bottom="<font size=-1>Copyright (c) ${current.year} IBM Corporation and others.</font>"
\r
443 additionalparam="${doc.params}"
\r
444 link="http://java.sun.com/j2se/1.5/docs/api"
\r
448 <target name="fulldocs" depends="tools" unless="before.java14" description="build all javadoc">
\r
449 <echo message="doc params: ${doc.params}" />
\r
450 <mkdir dir="${doc.dir}" />
\r
451 <javadoc packagenames="com.ibm.icu.*"
\r
452 sourcepath="${src.dir}"
\r
453 destdir="${doc.dir}"
\r
454 nodeprecatedlist="true"
\r
455 windowtitle="icu4j"
\r
457 encoding="iso-8859-1"
\r
458 docencoding="iso-8859-1"
\r
459 bottom="<font size=-1>Copyright (c) ${current.year} IBM Corporation and others.</font>"
\r
460 additionalparam="${doc.params}"
\r
461 link="http://java.sun.com/j2se/1.5/docs/api"
\r
465 <target name="coreData" depends="initBase">
\r
466 <copy todir="${build.dir}/com/ibm/icu/impl/data">
\r
467 <fileset dir="${src.dir}/com/ibm/icu/impl/data" includes="*.icu,*.spp,*.brk" excludes="Transliterator_Han_Latin_*.txt" />
\r
469 <copy file="${src.dir}/com/ibm/icu/ICUConfig.properties" todir="${build.dir}/com/ibm/icu"/>
\r
472 <target name="testdata" depends="initBase">
\r
473 <copy file="${src.dir}/com/ibm/icu/dev/data/rbbi/english.dict" todir="${build.dir}/com/ibm/icu/dev/data/rbbi" />
\r
474 <copy file="${src.dir}/com/ibm/icu/dev/test/rbbi/rbbitst.txt" todir="${build.dir}/com/ibm/icu/dev/test/rbbi" />
\r
475 <copy file="${src.dir}/com/ibm/icu/dev/test/charsetdet/CharsetDetectionTests.xml" todir="${build.dir}/com/ibm/icu/dev/test/charsetdet" />
\r
476 <copy todir="${build.dir}/com/ibm/icu/dev/test/serializable/data">
\r
477 <fileset dir="${src.dir}/com/ibm/icu/dev/test/serializable/data">
\r
478 <include name="**/*.dat" />
\r
481 <copy file="${src.dir}/com/ibm/icu/dev/data/riwords.txt" todir="${build.dir}/com/ibm/icu/dev/data" />
\r
482 <copy file="${src.dir}/com/ibm/icu/dev/data/IDNATestInput.txt" todir="${build.dir}/com/ibm/icu/dev/data" />
\r
483 <javac srcdir="${src.dir}"
\r
484 destdir="${build.dir}"
\r
485 classpathref="build.classpath"
\r
486 source="${icu4j.javac.source}"
\r
487 target="${icu4j.javac.target}"
\r
490 <include name="com/ibm/icu/dev/data/*.java" />
\r
491 <include name="com/ibm/icu/dev/data/resources/*.java" />
\r
493 <copy todir="${build.dir}/com/ibm/icu/dev/data">
\r
494 <fileset dir="${src.dir}/com/ibm/icu/dev/data" includes="*.spp,*.txt" />
\r
496 <copy todir="${build.dir}/com/ibm/icu/dev/data/unicode/">
\r
497 <fileset dir="${src.dir}/com/ibm/icu/dev/data/unicode/" includes="*.txt" />
\r
499 <copy file="${src.dir}/com/ibm/icu/dev/test/format/NumberFormatTestCases.txt" todir="${build.dir}/com/ibm/icu/dev/test/format" />
\r
500 <copy file="${src.dir}/com/ibm/icu/dev/test/translit/langtagRegex.txt" todir="${build.dir}/com/ibm/icu/dev/test/translit" />
\r
501 <copy todir="${build.dir}/com/ibm/icu/dev/data/resources/">
\r
502 <fileset dir="${src.dir}/com/ibm/icu/dev/data/resources/" includes="*.properties" />
\r
504 <copy todir="${build.dir}/com/ibm/icu/dev/test/duration/testdata">
\r
505 <fileset dir="${src.dir}/com/ibm/icu/dev/test/duration/testdata/" includes="testdata*.txt" />
\r
507 <!-- use this target to force resources to be rebuilt -->
\r
508 <unjar src="${src.dir}/com/ibm/icu/dev/data/testdata.jar" dest="${build.dir}" />
\r
509 <touch file="${build.dir}/${icu4j.testdata.path}/root.res" />
\r
512 <!-- builds richedit and richedit tests -->
\r
513 <target name="richedit" depends="init" description="build richedit classes and tests">
\r
514 <javac srcdir="${src.dir}"
\r
515 destdir="${build.dir}"
\r
516 classpathref="build.classpath"
\r
517 source="${icu4j.javac.source}"
\r
518 target="${icu4j.javac.target}"
\r
521 <include name="com/ibm/richtext/**/*.java" />
\r
523 <copy todir="${build.dir}/com/ibm/richtext/textapps/resources" overwrite="yes" includeEmptyDirs="no">
\r
524 <fileset dir="${src.dir}/com/ibm/richtext/textapps/resources" includes="*.red" />
\r
528 <!-- Creates the 3 release jar archives for distribution -->
\r
529 <target name="jarRelease" depends="jar,jarSrc,jarDocs" />
\r
532 depends="core,indices,charsetsJar"
\r
533 description="build 'icu4j.jar' jar file">
\r
534 <jar jarfile="${jar.file}" compress="true">
\r
535 <fileset dir="${basedir}" includes="license.html,unicode-license.txt" />
\r
536 <fileset dir="${src.dir}" includes="com/ibm/icu/ICUConfig.properties" />
\r
537 <fileset dir="${build.dir}" includes="com/ibm/icu/util/**/*,com/ibm/icu/text/**/*,com/ibm/icu/math/**/*,com/ibm/icu/impl/**/*,com/ibm/icu/lang/**/*" excludes="META-INF/services/**/*,com/ibm/icu/charset/**/*,${icu4j.data.path}/*.cnv,${icu4j.data.path}/cnvalias.icu" />
\r
539 <attribute name="Built-By" value="${corp}" />
\r
540 <section name="common">
\r
541 <attribute name="Specification-Title" value="${manifest.specification.title}" />
\r
542 <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
\r
543 <attribute name="Specification-Vendor" value="ICU" />
\r
544 <attribute name="Implementation-Title" value=" ICU for Java" />
\r
545 <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
\r
546 <attribute name="Implementation-Vendor" value="${corp}" />
\r
547 <attribute name="Implementation-Vendor-Id" value="com.ibm" />
\r
548 <attribute name="Copyright-Info" value="${copyright}" />
\r
549 <attribute name="Sealed" value="false" />
\r
555 <target name="charsetsJar"
\r
556 depends="core,indices"
\r
557 unless="before.java14"
\r
558 description="build 'icu4j-charstes.jar' jar file">
\r
559 <echo message="${icu4j.data.path}/cnvalias.icu"/>
\r
560 <jar jarfile="${charsets.jar.file}" compress="true">
\r
561 <fileset dir="${basedir}" includes="license.html, unicode-license.txt" />
\r
562 <fileset dir="${build.dir}"
\r
563 includes="META-INF/services/**/*,com/ibm/icu/charset/**/*,${icu4j.data.path}/*.cnv,${icu4j.data.path}/cnvalias.icu" />
\r
565 <attribute name="Built-By" value="${corp}" />
\r
566 <section name="common">
\r
567 <attribute name="Specification-Title" value="ICU4J Charsets" />
\r
568 <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
\r
569 <attribute name="Specification-Vendor" value="ICU" />
\r
570 <attribute name="Implementation-Title" value=" ICU for Java Charsets" />
\r
571 <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
\r
572 <attribute name="Implementation-Vendor" value="${corp}" />
\r
573 <attribute name="Implementation-Vendor-Id" value="com.ibm" />
\r
574 <attribute name="Copyright-Info" value="${copyright}" />
\r
575 <attribute name="Sealed" value="false" />
\r
581 <target name="jarTests" depends="tests,jar" description="build runtime 'icu4jtests.jar' jar file">
\r
582 <jar jarfile="${testjar.file}" compress="true">
\r
583 <fileset dir="${build.dir}" includes="com/ibm/icu/dev/test/**/*" />
\r
584 <fileset dir="${build.dir}" includes="com/ibm/icu/dev/data/**/*" />
\r
586 <attribute name="Built-By" value="${corp}" />
\r
587 <section name="common">
\r
588 <attribute name="Specification-Title" value="ICU4J Tests" />
\r
589 <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
\r
590 <attribute name="Specification-Vendor" value="ICU" />
\r
591 <attribute name="Implementation-Title" value=" ICU for Java Tests" />
\r
592 <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
\r
593 <attribute name="Implementation-Vendor" value="${corp}" />
\r
594 <attribute name="Implementation-Vendor-Id" value="com.ibm" />
\r
595 <attribute name="Copyright-Info" value="${copyright}" />
\r
596 <attribute name="Sealed" value="false" />
\r
602 <target name="jarSrc" depends="init,normSrc" description="build source 'icu4jsrc.jar' jar file">
\r
603 <!--Create a jar archive of just the source for distribution. The
\r
604 jar file will be created in the directory above the root ICU4J
\r
605 directory. The exclude pattern ${src.dir}/com/ibm/icu/dev/data/unicode/UnicodeData-*.txt
\r
606 and ${src.dir}/com/ibm/icu/dev/data/unicode/SpecialCasing-*.txt
\r
607 eliminates old archive copies like SpecialCasing-2.txt and
\r
608 UnicodeData-2.1.8.txt -->
\r
609 <jar jarfile="${jarSrc.file}"
\r
612 <exclude name="${richedit.dir}/**/*" />
\r
613 <exclude name="test_*" />
\r
614 <exclude name="${src.dir}/com/ibm/icu/dev/data/unicode/UnicodeData-*.txt" />
\r
615 <exclude name="${src.dir}/com/ibm/icu/dev/data/unicode/SpecialCasing-*.txt" />
\r
616 <exclude name="${src.dir}/com/ibm/icu/dev/data/unicode/CompositionExclusions-*.txt" />
\r
617 <exclude name="${obsolete.dir}/**" />
\r
618 <exclude name="**/*~" />
\r
619 <exclude name="${src.dir}/**/*.class" />
\r
620 <exclude name="${build.dir}/**" />
\r
621 <exclude name="${doc.dir}/**" />
\r
622 <exclude name="*.jar" />
\r
623 <exclude name="*.zip" />
\r
624 <exclude name="*.gz" />
\r
627 <attribute name="Built-By" value="${corp}" />
\r
628 <section name="common">
\r
629 <attribute name="Specification-Title" value="ICU4J Sources" />
\r
630 <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
\r
631 <attribute name="Specification-Vendor" value="ICU" />
\r
632 <attribute name="Implementation-Title" value=" ICU for Java source files" />
\r
633 <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
\r
634 <attribute name="Implementation-Vendor" value="${corp}" />
\r
635 <attribute name="Implementation-Vendor-Id" value="com.ibm" />
\r
636 <attribute name="Copyright-Info" value="${copyright}" />
\r
637 <attribute name="Sealed" value="false" />
\r
643 <target name="jarDocs" depends="docs" description="build documentation 'icu4jdocs.jar' jar file">
\r
644 <jar jarfile="${jarDocs.file}" compress="true" basedir="${doc.dir}">
\r
646 <attribute name="Built-By" value="${corp}" />
\r
647 <section name="common">
\r
648 <attribute name="Specification-Title" value="ICU4J Documents" />
\r
649 <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
\r
650 <attribute name="Specification-Vendor" value="ICU" />
\r
651 <attribute name="Implementation-Title" value=" ICU for Java documents" />
\r
652 <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
\r
653 <attribute name="Implementation-Vendor" value="${corp}" />
\r
654 <attribute name="Implementation-Vendor-Id" value="com.ibm" />
\r
655 <attribute name="Copyright-Info" value="${copyright}" />
\r
656 <attribute name="Sealed" value="false" />
\r
662 <target name="jarDemos" depends="demos" description="build demos to 'icu4jdemos.jar' jar file">
\r
663 <jar jarfile="${demos-jar.file}" compress="true">
\r
664 <fileset dir="${build.dir}" includes="com/ibm/icu/dev/demo/**" />
\r
666 <attribute name="Built-By" value="${corp}" />
\r
667 <attribute name="Main-Class" value="com.ibm.icu.dev.demo.Launcher" />
\r
668 <attribute name="Class-Path" value="icu4j.jar" />
\r
669 <section name="common">
\r
670 <attribute name="Specification-Title" value="${manifest.specification.title}" />
\r
671 <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
\r
672 <attribute name="Specification-Vendor" value="ICU" />
\r
673 <attribute name="Implementation-Title" value=" ICU for Java Demos" />
\r
674 <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
\r
675 <attribute name="Implementation-Vendor" value="${corp}" />
\r
676 <attribute name="Implementation-Vendor-Id" value="com.ibm" />
\r
677 <attribute name="Copyright-Info" value="${copyright}" />
\r
678 <attribute name="Sealed" value="false" />
\r
684 <target name="translitIMEJar" depends="collator, transliterator" description="build transliterator IME 'icutransime.jar' jar file">
\r
685 <javac includes="com/ibm/icu/dev/tool/ime/translit/*.java" excludes="**/CVS/**/*" srcdir="${src.dir}" destdir="${build.dir}" classpathref="build.classpath" source="${icu4j.javac.source}" target="${icu4j.javac.target}" debug="on" deprecation="off" />
\r
686 <copy file="${src.dir}/com/ibm/icu/dev/tool/ime/translit/Transliterator.properties" todir="${build.dir}/com/ibm/icu/dev/tool/ime/translit" />
\r
687 <jar jarfile="${ime.translit.jar.file}" compress="true" basedir="${build.dir}" includes="com/ibm/icu/dev/tool/ime/translit/**/*" manifest="${ime.translit.manifest}">
\r
688 <metainf dir="${src.dir}/com/ibm/icu/dev/tool/ime/translit" includes="services/*" />
\r
692 <target name="indicIMEJar" depends="init" description="build indic IME 'icuindicime.jar' jar file">
\r
693 <javac includes="com/ibm/icu/dev/tool/ime/indic/*.java" excludes="**/CVS/**/*" srcdir="${src.dir}" destdir="${build.dir}" classpathref="build.classpath" source="${icu4j.javac.source}" target="${icu4j.javac.target}" debug="on" deprecation="off" />
\r
694 <copy file="${src.dir}/com/ibm/icu/dev/tool/ime/indic/DisplayNames.properties" todir="${build.dir}/com/ibm/icu/dev/tool/ime/indic" />
\r
695 <jar jarfile="${ime.indic.jar.file}" compress="true" basedir="${build.dir}" includes="com/ibm/icu/dev/tool/ime/indic/**/*" manifest="${ime.indic.manifest}">
\r
696 <metainf dir="${src.dir}/com/ibm/icu/dev/tool/ime/indic" includes="services/*" />
\r
701 <target name="translitimeStandaloneJar" depends="collator, transliterator">
\r
702 <javac includes="com/ibm/icu/dev/tool/ime/translit/*.java"
\r
703 excludes="**/CVS/**/*"
\r
704 srcdir="${src.dir}"
\r
705 destdir="${build.dir}"
\r
706 classpathref="build.classpath"
\r
707 source="${icu4j.javac.source}"
\r
708 target="${icu4j.javac.target}"
\r
709 debug="on" deprecation="off"/>
\r
710 <copy toDir="${build.dir}/com/ibm/icu/dev/tool/ime/translit">
\r
711 <fileset dir="${src.dir}/com/ibm/icu/dev/tool/ime/translit" includes="*.properties"/>
\r
713 <jar jarfile="${ime.jar.file}"
\r
715 basedir="${build.dir}"
\r
716 includes="com/ibm/icu/util/**/*,com/ibm/icu/text/**/*,com/ibm/icu/math/**/*,com/ibm/icu/impl/**/*,com/ibm/icu/lang/**/*,com/ibm/icu/dev/tool/ime/translit/**/*"
\r
717 manifest="${ime.translit.manifest}">
\r
718 <metainf dir="${src.dir}/com/ibm/icu/dev/tool/ime/translit" includes="services/*"/>
\r
723 <!-- jars up richedit but without tests -->
\r
724 <target name="richeditJar" depends="richedit" description="build richedit runtime 'richedit.jar' jar file">
\r
725 <mkdir dir="${richedit.dir}" />
\r
726 <jar jarfile="${richedit.jar.file}" compress="true" includes="com/ibm/richtext/**/*" excludes="com/ibm/richtext/test/**/*" basedir="${build.dir}" manifest="${richedit.manifest}" />
\r
730 Note: I used to use -linkoffline http://java.sun.com/products/jdk/1.2/docs/api/ C:\jdk1.2.2\docs\api
\r
731 This links to core docs on Sun's site - a very nice feature. But it requires the 1.2 docs to be
\r
732 on the build machine at a known location.
\r
735 <!-- the 'public' docs for richedit -->
\r
736 <target name="richeditDocs" depends="init" description="build richedit javadoc">
\r
737 <mkdir dir="${richedit.doc.dir}" />
\r
738 <javadoc packagenames="com.ibm.richtext.demo,com.ibm.richtext.awtui,com.ibm.richtext.swingui,com.ibm.richtext.textpanel,com.ibm.richtext.styledtext,com.ibm.richtext.textlayout.attributes,com.ibm.richtext.print"
\r
739 sourcepath="${src.dir}"
\r
740 destdir="${richedit.doc.dir}"
\r
741 nodeprecatedlist="true"
\r
742 windowtitle="RichEdit Control"
\r
743 doctitle="RichEdit Control"
\r
744 encoding="iso-8859-1"
\r
745 docencoding="iso-8859-1"
\r
746 bottom="<font size=-1>Copyright (c) 1998-2004 IBM Corporation and others.</font>" />
\r
749 <!-- richedit alphaworks distribution - jar and docs, but no source -->
\r
750 <target name="richeditZip" depends="richeditJar,richeditDocs" description="build richedit zip file">
\r
751 <!--Create a zip archive of the richedit jar and readme -->
\r
752 <copy file="license.html" todir="${richedit.dir}" />
\r
753 <zip zipfile="${richedit.zip.file}" basedir="${richedit.dir}" includes="doc/**/*,richedit.jar,license.html" />
\r
755 <target name="deleteCore" depends="initBase">
\r
756 <delete failonerror="no">
\r
757 <fileset dir="${build.dir}/com/ibm/icu/text" />
\r
758 <fileset dir="${build.dir}/com/ibm/icu/impl" />
\r
759 <fileset dir="${build.dir}/com/ibm/icu/math" />
\r
760 <fileset dir="${build.dir}/com/ibm/icu/lang" />
\r
761 <fileset dir="${build.dir}/com/ibm/icu/util" />
\r
762 <fileset dir="${build.dir}/com/ibm/icu/charset" />
\r
766 <target name="check" depends="tests, jar, deleteCore" description="run standard icu4j test suite">
\r
767 <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
\r
768 <jvmarg line="${test.jvm.args}"/>
\r
771 <pathelement path="${java.class.path}/" />
\r
772 <pathelement location="${jar.file}" />
\r
773 <pathelement location="${charsets.jar.file}" />
\r
774 <pathelement location="clover.jar" />
\r
775 <pathelement path="${build.dir}" />
\r
780 <target name="jdktzCheck" depends="tests, jar, deleteCore" description="run icu4j test suite with JDK timezone">
\r
781 <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
\r
782 <jvmarg line="${test.jvm.args} -Dcom.ibm.icu.util.TimeZone.DefaultTimeZoneType=JDK"/>
\r
785 <pathelement path="${java.class.path}/" />
\r
786 <pathelement location="${jar.file}" />
\r
787 <pathelement location="${charsets.jar.file}" />
\r
788 <pathelement location="clover.jar" />
\r
789 <pathelement path="${build.dir}" />
\r
794 <target name="exhaustiveCheck" depends="tests, jar, deleteCore" description="run standard icu4j test suite in exhaustive mode">
\r
795 <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
\r
796 <jvmarg line="${test.jvm.args}"/>
\r
798 <arg value="-e10" />
\r
800 <pathelement path="${java.class.path}/" />
\r
801 <pathelement location="${jar.file}" />
\r
802 <pathelement location="${charsets.jar.file}" />
\r
803 <pathelement location="clover.jar" />
\r
804 <pathelement path="${build.dir}" />
\r
809 <target name="secure" depends="jarTests" description="builds icu4j.jar and icu4jtests.jar" />
\r
811 <target name="secureCheck" depends="secure" description="run secure (applet-like) icu4j test suite">
\r
812 <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
\r
813 <jvmarg line="${test.jvm.args}"/>
\r
814 <!-- jvmarg value="-verbose"/ -->
\r
815 <!-- (use for debugging, LOTS of output) <jvmarg value="-Djava.security.debug=access:trace"/ -->
\r
816 <!-- <jvmarg value="-Djava.security.debug=access:failure,domain"/> -->
\r
817 <jvmarg value="-Djava.security.manager" />
\r
818 <jvmarg value="-Djava.security.policy=${src.dir}/com/ibm/icu/dev/test/security.policy" />
\r
819 <!--<jvmarg value="-Djava.security.debug=access:failure"/>-->
\r
821 <arg value="-nothrow" />
\r
823 <pathelement location="clover.jar" />
\r
824 <pathelement location="${jar.file}" />
\r
825 <pathelement location="${charsets.jar.file}" />
\r
826 <pathelement location="${testjar.file}" />
\r
831 <target name="noData" depends="core, tests" description="builds ICU4J without any data">
\r
832 <delete failonerror="no">
\r
833 <fileset dir="${build.dir}/${icu4j.data.path}/../" includes="Holiday*.class" />
\r
834 <fileset dir="${build.dir}/${icu4j.data.path}/../" includes="BreakIterator*.class" />
\r
835 <fileset dir="${build.dir}/${icu4j.data.path}" />
\r
836 <fileset dir="${build.dir}/${icu4j.testdata.path}" />
\r
837 <fileset dir="${build.dir}/${icu4j.testdata.path}/../" />
\r
840 <target name="noDataCheck" depends="noData" description="runs the tests when no data is present">
\r
841 <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
\r
842 <arg value="-nothrow" />
\r
843 <arg value="-nodata" />
\r
845 <pathelement location="clover.jar" />
\r
846 <pathelement location="${build.dir}" />
\r
851 <target name="_requires14" if="before.java14">
\r
852 <echo message="One of your targets requires JAVA_HOME to be set to JDK version 1.4 or newer" />
\r
855 <target name="_checktags" depends="tools" unless="before.java14">
\r
856 <echo message="doc params: ${doc.params}" />
\r
857 <javadoc sourcepath="${src.dir}" packagenames="com.ibm.icu.*" excludepackagenames="com.ibm.icu.dev.*,com.ibm.icu.impl.*" classpath="${build.dir}" source="1.4">
\r
858 <doclet name="com.ibm.icu.dev.tool.docs.CheckTags" path="${build.dir}">
\r
859 <!-- <param name="-short"/> -->
\r
864 <target name="checktags" depends="_requires14,_checktags" description="check API tags before release" />
\r
866 <target name="gatherapi" depends="tools" unless="before.java14" description="run API database generator tool">
\r
867 <javadoc classpath="${build.dir}" sourcepath="${src.dir}" packagenames="com.ibm.icu.lang,com.ibm.icu.math,com.ibm.icu.text,com.ibm.icu.util,com.ibm.icu.charset" source="1.4">
\r
868 <doclet name="com.ibm.icu.dev.tool.docs.GatherAPIData" path="${build.dir}">
\r
869 <param name="-name" value="ICU4J ${icu4j.impl.version.string}" />
\r
870 <param name="-output" value="${api.dir}/icu4j${icu4j.version.number}.api" />
\r
871 <param name="-internal" />
\r
872 <param name="-gzip" />
\r
877 <target name="gatherapi.with.version" depends="tools" unless="before.java14" description="run API database generator tool">
\r
878 <javadoc classpath="${build.dir}" sourcepath="${src.dir}" packagenames="com.ibm.icu.lang,com.ibm.icu.math,com.ibm.icu.text,com.ibm.icu.util,com.ibm.icu.charset" source="1.4">
\r
879 <doclet name="com.ibm.icu.dev.tool.docs.GatherAPIData" path="${build.dir}">
\r
880 <param name="-name" value="ICU4J ${icu4j.impl.version.string}" />
\r
881 <param name="-output" value="${api.dir}/icu4j${icu4j.version.number}.stver.api" />
\r
882 <param name="-internal" />
\r
883 <param name="-version" />
\r
888 <target name="apireport" depends="tools, gatherapi" unless="beofre.java14" description="run API report generator tool">
\r
889 <java classname="com.ibm.icu.dev.tool.docs.ReportAPI" classpath="${build.dir}" failonerror="true">
\r
890 <arg value="-old:" />
\r
891 <arg value="${api.dir}/icu4j${icu4j.previous.version.number}.api.gz" />
\r
892 <arg value="-new:" />
\r
893 <arg value="${api.dir}/icu4j${icu4j.version.number}.api.gz" />
\r
894 <arg value="-html" />
\r
895 <arg value="-internal" />
\r
896 <arg value="-out:" />
\r
897 <arg value="${api.report.out}" />
\r
901 <target name="clean" depends="initBase" description="remove all build targets">
\r
902 <delete dir="${build.dir}" />
\r
903 <delete dir="${doc.dir}" />
\r
904 <delete file="${jar.file}" />
\r
905 <delete file="${charsets.jar.file}" />
\r
906 <delete dir="${richedit.dir}" />
\r
907 <delete file="${testjar.file}" />
\r
908 <delete file="${jarSrc.file}" />
\r
910 <delete dir="${eclipse.projects.dir}" />
\r
911 <delete dir="${wrapper.build.dir}" />
\r
912 <delete file="${zipTestSrc.file}" />
\r
913 <delete file="${jdk.wrapper.jar.file}" />
\r
914 <delete file="${fragment.jar.file}"/>
\r
916 <delete dir="${tzu.bin.dir}" />
\r
917 <delete file="${tzu.bin.zip.file}" />
\r
918 <delete file="${tzu.src.zip.file}" />
\r
921 <target name="moduleJar" depends="initBase" description="modular build of 'icu4j.jar' jar file">
\r
922 <jar jarfile="${jar.file}" compress="true">
\r
924 <!-- com/ibm/icu/util/**/*,com/ibm/icu/text/**/*,com/ibm/icu/math/**/*,com/ibm/icu/impl/**/*,com/ibm/icu/lang/**/* -->
\r
925 <fileset dir="${build.dir}" includes="com/ibm/icu/util/**/*,com/ibm/icu/text/**/*,com/ibm/icu/math/**/*,com/ibm/icu/impl/**/*,com/ibm/icu/lang/**/*" excludes="META-INF/services/**/*,com/ibm/icu/charset/**/*,${icu4j.data.path}/*.cnv,${icu4j.data.path}/cnvalias.icu" />
\r
927 <fileset dir="${basedir}" includes="license.html,unicode-license.txt" />
\r
928 <fileset dir="${src.dir}" includes="com/ibm/icu/ICUConfig.properties" />
\r
931 <attribute name="Built-By" value="${corp}" />
\r
932 <section name="common">
\r
933 <attribute name="Specification-Title" value="ICU4J Modularized Build" />
\r
934 <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
\r
935 <attribute name="Specification-Vendor" value="ICU" />
\r
936 <attribute name="Implementation-Title" value=" ICU for Java Module" />
\r
937 <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
\r
938 <attribute name="Implementation-Vendor" value="${corp}" />
\r
939 <attribute name="Implementation-Vendor-Id" value="com.ibm" />
\r
940 <attribute name="Copyright-Info" value="${copyright}" />
\r
941 <attribute name="Sealed" value="false" />
\r
947 <patternset id="common.test.sources">
\r
948 <include name="com/ibm/icu/dev/test/TestFmwk.java" />
\r
949 <include name="com/ibm/icu/dev/test/TestLog.java" />
\r
950 <include name="com/ibm/icu/dev/test/TestUtil.java" />
\r
951 <include name="com/ibm/icu/dev/test/UTF16Util.java" />
\r
952 <include name="com/ibm/icu/dev/test/TestAll.java" />
\r
955 <!-- Module: BreakIterator -->
\r
956 <target name="breakIterator" depends="init,copyFullPropsData" description="modular build of break iterator services">
\r
957 <javac srcdir="${src.dir}"
\r
958 destdir="${build.dir}"
\r
959 source="${icu4j.javac.source}"
\r
960 target="${icu4j.javac.target}"
\r
961 classpathref="build.classpath"
\r
964 <include name="com/ibm/icu/impl/UCharacterName.java"/>
\r
965 <include name="com/ibm/icu/impl/data/*Break*.java"/>
\r
966 <include name="com/ibm/icu/lang/**/*.java"/>
\r
967 <include name="com/ibm/icu/text/*BreakIterator*.java"/>
\r
968 <include name="com/ibm/icu/text/UnicodeSetIterator.java"/>
\r
972 <target name="breakIteratorTests" depends="breakIterator" description="test breakIterator modular build target">
\r
973 <javac srcdir="${src.dir}"
\r
974 destdir="${build.dir}"
\r
975 classpathref="build.classpath"
\r
976 source="${icu4j.javac.source}"
\r
977 target="${icu4j.javac.target}"
\r
978 debug="on" deprecation="off">
\r
979 <patternset refid="common.test.sources" />
\r
980 <include name="com/ibm/icu/dev/test/rbbi/**/*.java"/>
\r
982 <copy file="${src.dir}/com/ibm/icu/dev/test/rbbi/rbbitst.txt"
\r
983 todir="${build.dir}/com/ibm/icu/dev/test/rbbi"/>
\r
986 <!-- Module: Calendar -->
\r
987 <target name="copyCalendarData" depends="initBase">
\r
988 <!-- Calendar does not require Collation data, BreakIterator data -->
\r
989 <unjar src="${icudatajar.file}" dest="${build.dir}">
\r
991 <include name="**/pnames.icu" />
\r
992 <include name="**/ucase.icu" />
\r
993 <include name="**/unorm.icu" />
\r
994 <include name="**/uprops.icu" />
\r
995 <include name="**/unames.icu" />
\r
996 <include name="**/*.res" />
\r
997 <exclude name="**/coll/*.res" />
\r
998 <exclude name="**/translit/*.res" />
\r
999 <exclude name="**/rbnf/*.res" />
\r
1002 <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" />
\r
1005 <target name="calendar" depends="init,copyCalendarData" description="modular build of calendar services">
\r
1006 <javac srcdir="${src.dir}"
\r
1007 destdir="${build.dir}"
\r
1008 source="${icu4j.javac.source}"
\r
1009 target="${icu4j.javac.target}"
\r
1010 classpathref="build.classpath"
\r
1012 deprecation="off">
\r
1013 <include name="com/ibm/icu/impl/data/*Holiday*.java"/>
\r
1014 <include name="com/ibm/icu/lang/UCharacter.java"/>
\r
1015 <include name="com/ibm/icu/text/UnicodeSetIterator.java"/>
\r
1016 <include name="com/ibm/icu/text/NumberFormatServiceShim.java"/>
\r
1017 <include name="com/ibm/icu/util/*Calendar*.java"/>
\r
1021 <target name="calendarTests" depends="calendar,testdata" description="test calendar modular build target">
\r
1022 <javac srcdir="${src.dir}"
\r
1023 destdir="${build.dir}"
\r
1024 classpathref="build.classpath"
\r
1025 source="${icu4j.javac.source}"
\r
1026 target="${icu4j.javac.target}"
\r
1028 deprecation="off">
\r
1029 <patternset refid="common.test.sources" />
\r
1030 <include name="com/ibm/icu/dev/test/calendar/**/*.java" />
\r
1034 <!-- Module: Collator -->
\r
1035 <target name="copyCollatorData" depends="initBase">
\r
1036 <unjar src="${icudatajar.file}" dest="${build.dir}">
\r
1038 <include name="**/*.icu" />
\r
1039 <include name="**/coll/*.res" />
\r
1040 <include name="**/*.brk" />
\r
1043 <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" />
\r
1046 <target name="collator" depends="init,copyCollatorData" description="modular build of collator services">
\r
1047 <javac srcdir="${src.dir}"
\r
1048 destdir="${build.dir}"
\r
1049 classpathref="build.classpath"
\r
1050 source="${icu4j.javac.source}"
\r
1051 target="${icu4j.javac.target}"
\r
1053 deprecation="off">
\r
1054 <include name="com/ibm/icu/impl/data/*Break*.java"/>
\r
1055 <include name="com/ibm/icu/text/*BreakIterator*.java"/>
\r
1056 <include name="com/ibm/icu/text/*Collation*.java"/>
\r
1057 <include name="com/ibm/icu/text/*Collator*.java"/>
\r
1058 <include name="com/ibm/icu/text/Normalizer.java"/>
\r
1059 <include name="com/ibm/icu/text/Replaceable.java"/>
\r
1060 <include name="com/ibm/icu/text/ReplaceableString.java"/>
\r
1061 <include name="com/ibm/icu/text/UnicodeFilter.java"/>
\r
1062 <include name="com/ibm/icu/text/UnicodeSetIterator.java"/>
\r
1063 <include name="com/ibm/icu/text/UTF16.java"/>
\r
1067 <target name="collatorTests" depends="collator,testdata" description="test collator modular build target">
\r
1068 <javac srcdir="${src.dir}"
\r
1069 destdir="${build.dir}"
\r
1070 classpathref="build.classpath"
\r
1071 source="${icu4j.javac.source}"
\r
1072 target="${icu4j.javac.target}"
\r
1074 deprecation="off">
\r
1075 <patternset refid="common.test.sources" />
\r
1076 <include name="com/ibm/icu/dev/test/collator/**/*.java"/>
\r
1077 <include name="java,com/ibm/icu/dev/test/search/**/*.java"/>
\r
1078 <exclude name="com/ibm/icu/dev/test/collator/RandomCollator.java"/>
\r
1082 <!-- Module: Compression -->
\r
1083 <target name="compression" depends="init" description="modular build of compression services">
\r
1084 <javac srcdir="${src.dir}"
\r
1085 destdir="${build.dir}"
\r
1086 source="${icu4j.javac.source}"
\r
1087 target="${icu4j.javac.target}"
\r
1088 classpathref="build.classpath"
\r
1090 deprecation="off">
\r
1091 <include name="com/ibm/icu/text/SCSU.java"/>
\r
1092 <include name="com/ibm/icu/text/UnicodeCompressor.java"/>
\r
1093 <include name="com/ibm/icu/text/UnicodeDecompressor.java"/>
\r
1097 <target name="compressionTests" depends="compression" description="test compression modular build target">
\r
1098 <javac srcdir="${src.dir}"
\r
1099 destdir="${build.dir}"
\r
1100 classpathref="build.classpath"
\r
1101 source="${icu4j.javac.source}"
\r
1102 target="${icu4j.javac.target}"
\r
1104 deprecation="off">
\r
1105 <patternset refid="common.test.sources" />
\r
1106 <include name="com/ibm/icu/dev/test/compression/**/*.java"/>
\r
1110 <!-- Module: Format -->
\r
1111 <target name="copyFormatData" depends="initBase" if="icu4j.module.resources">
\r
1112 <!-- Format does not require BreakIterator data -->
\r
1113 <unjar src="${icudatajar.file}" dest="${build.dir}">
\r
1115 <include name="**/*.icu" />
\r
1116 <include name="**/*.res" />
\r
1117 <exclude name="**/translit/*.res" />
\r
1120 <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" />
\r
1123 <target name="format" depends="init,copyFormatData" description="modular build of formatting services">
\r
1124 <javac srcdir="${src.dir}"
\r
1125 destdir="${build.dir}"
\r
1126 source="${icu4j.javac.source}"
\r
1127 target="${icu4j.javac.target}"
\r
1128 classpathref="build.classpath"
\r
1130 deprecation="off">
\r
1131 <include name="com/ibm/icu/lang/UCharacter.java"/>
\r
1132 <include name="com/ibm/icu/text/*Collator*.java"/>
\r
1133 <include name="com/ibm/icu/text/*Format*.java"/>
\r
1134 <include name="com/ibm/icu/text/UnicodeSetIterator.java"/>
\r
1135 <include name="com/ibm/icu/util/CalendarServiceShim.java"/> </javac>
\r
1138 <target name="formatTests" depends="format,testdata" description="test format modular build target">
\r
1139 <javac srcdir="${src.dir}"
\r
1140 destdir="${build.dir}"
\r
1141 classpathref="build.classpath"
\r
1142 source="${icu4j.javac.source}"
\r
1143 target="${icu4j.javac.target}"
\r
1145 deprecation="off">
\r
1146 <patternset refid="common.test.sources" />
\r
1147 <include name="com/ibm/icu/dev/test/format/**/*.java"/>
\r
1148 <exclude name="com/ibm/icu/dev/test/format/GlobalizationPreferencesTest.java"/>
\r
1150 <copy file="${src.dir}/com/ibm/icu/dev/test/format/NumberFormatTestCases.txt"
\r
1151 todir="${build.dir}/com/ibm/icu/dev/test/format"/>
\r
1154 <!-- Module: Normalizer -->
\r
1155 <target name="normalizerData" depends="initBase">
\r
1156 <unjar src="${icudatajar.file}" dest="${build.dir}">
\r
1158 <include name="**/ucase.icu" />
\r
1159 <include name="**/unorm.icu" />
\r
1160 <include name="**/uprops.icu" />
\r
1161 <include name="**/pnames.icu" />
\r
1162 <include name="**/unames.icu" />
\r
1165 <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" />
\r
1168 <target name="normalizer" depends="init,normalizerData" description="modular build of normalizer services">
\r
1169 <javac includes="com/ibm/icu/text/Normalizer.java,com/ibm/icu/text/CanonicalIterator.java,com/ibm/icu/text/UTF16.java,com/ibm/icu/text/UCharacterIterator.java,com/ibm/icu/text/UForwardCharacterIterator.java,com/ibm/icu/text/Replaceable.java,com/ibm/icu/text/ReplaceableString.java,com/ibm/icu/text/UnicodeFilter.java,com/ibm/icu/text/UnicodeSetIterator.java,com/ibm/icu/lang/**/*"
\r
1170 excludes="**/CVS/**/*,com/ibm/icu/lang/UScriptRun.java,com/ibm/icu/impl/UtilityExtensions.java,com/ibm/icu/impl/TrieBuilder.java,com/ibm/icu/impl/IntTrieBuilder.java,com/ibm/icu/impl/BOCU.java,com/ibm/icu/impl/UnicodeCharacterIterator.java"
\r
1171 srcdir="${src.dir}"
\r
1172 destdir="${build.dir}"
\r
1173 source="${icu4j.javac.source}"
\r
1174 target="${icu4j.javac.target}"
\r
1175 classpathref="build.classpath"
\r
1177 deprecation="off">
\r
1178 <include name="com/ibm/icu/lang/**/*"/>
\r
1179 <include name="com/ibm/icu/text/CanonicalIterator.java"/>
\r
1180 <include name="com/ibm/icu/text/Normalizer.java"/>
\r
1181 <include name="com/ibm/icu/text/Replaceable.java"/>
\r
1182 <include name="com/ibm/icu/text/ReplaceableString.java"/>
\r
1183 <include name="com/ibm/icu/text/UCharacterIterator.java"/>
\r
1184 <include name="com/ibm/icu/text/UForwardCharacterIterator.java"/>
\r
1185 <include name="com/ibm/icu/text/UnicodeFilter.java"/>
\r
1186 <include name="com/ibm/icu/text/UnicodeSetIterator.java"/>
\r
1187 <include name="com/ibm/icu/text/UTF16.java"/>
\r
1191 <target name="normalizerTests" depends="normalizer">
\r
1192 <javac srcdir="${src.dir}"
\r
1193 destdir="${build.dir}"
\r
1194 classpathref="build.classpath"
\r
1195 source="${icu4j.javac.source}"
\r
1196 target="${icu4j.javac.target}"
\r
1198 deprecation="off">
\r
1199 <patternset refid="common.test.sources" />
\r
1200 <include name="com/ibm/icu/dev/test/normalizer/**/*.java"/>
\r
1201 <exclude name="com/ibm/icu/dev/test/normalizer/TestDeprecatedNormalizerAPI.java"/>
\r
1205 <!-- Module: Basic Properties / Full Properties -->
\r
1206 <target name="copyBasicPropsData" depends="initBase">
\r
1207 <unjar src="${icudatajar.file}" dest="${build.dir}">
\r
1209 <include name="**/unorm.icu" />
\r
1210 <include name="**/uprops.icu" />
\r
1211 <include name="**/ubidi.icu" />
\r
1212 <include name="**/ucase.icu" />
\r
1213 <include name="**/pnames.icu" />
\r
1214 <include name="**/unames.icu" />
\r
1217 <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" />
\r
1220 <target name="copyFullPropsData" depends="initBase">
\r
1221 <unjar src="${icudatajar.file}" dest="${build.dir}">
\r
1223 <include name="**/unorm.icu" />
\r
1224 <include name="**/uprops.icu" />
\r
1225 <include name="**/ubidi.icu" />
\r
1226 <include name="**/ucase.icu" />
\r
1227 <include name="**/unames.icu" />
\r
1228 <include name="**/pnames.icu" />
\r
1229 <include name="**/*.res" />
\r
1230 <include name="**/*.brk" />
\r
1231 <include name="**/*.ctd" />
\r
1232 <exclude name="**/coll/*.res" />
\r
1233 <exclude name="**/translit/*.res" />
\r
1234 <exclude name="**/rbnf/*.res" />
\r
1237 <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" />
\r
1240 <target name="propertiesBasic" depends="init,propertiesClasses,copyBasicPropsData" description="modular build of basic character properties">
\r
1243 <target name="propertiesFull" depends="init,propertiesClasses,copyFullPropsData" description="modular build of full character properties">
\r
1246 <target name="propertiesBasicTests" depends="propertiesBasic,propertiesTests" description="modular build of basic character properties">
\r
1249 <target name="propertiesFullTests" depends="propertiesFull,propertiesTests" description="modular build of full character properties">
\r
1252 <target name="propertiesClasses">
\r
1253 <javac srcdir="${src.dir}"
\r
1254 destdir="${build.dir}"
\r
1255 source="${icu4j.javac.source}"
\r
1256 target="${icu4j.javac.target}"
\r
1257 classpathref="build.classpath"
\r
1259 deprecation="off">
\r
1260 <include name="com/ibm/icu/impl/data/*Break*.java"/>
\r
1261 <include name="com/ibm/icu/lang/**/*"/>
\r
1262 <include name="com/ibm/icu/text/*BreakDictionary*.java"/>
\r
1263 <include name="com/ibm/icu/text/*BreakIterator*.java"/>
\r
1264 <include name="com/ibm/icu/text/UnicodeSetIterator.java"/>
\r
1268 <target name="propertiesTests">
\r
1269 <javac srcdir="${src.dir}"
\r
1270 destdir="${build.dir}"
\r
1271 classpathref="build.classpath"
\r
1272 source="${icu4j.javac.source}"
\r
1273 target="${icu4j.javac.target}"
\r
1275 deprecation="off">
\r
1276 <patternset refid="common.test.sources" />
\r
1277 <include name="com/ibm/icu/dev/test/lang/**/*.java"/>
\r
1278 <exclude name="com/ibm/icu/dev/test/lang/TestUScriptRun.java"/>
\r
1280 <copy file="${src.dir}/com/ibm/icu/dev/data/unicode/SpecialCasing.txt"
\r
1281 todir="${build.dir}/com/ibm/icu/dev/data/unicode/" />
\r
1284 <!-- Module: Transliterator -->
\r
1285 <target name="copyTranslitData" depends="initBase">
\r
1286 <unjar src="${icudatajar.file}" dest="${build.dir}">
\r
1288 <include name="**/unorm.icu" />
\r
1289 <include name="**/uprops.icu" />
\r
1290 <include name="**/ubidi.icu" />
\r
1291 <include name="**/ucase.icu" />
\r
1292 <include name="**/unames.icu" />
\r
1293 <include name="**/pnames.icu" />
\r
1294 <include name="**/*.brk" />
\r
1295 <include name="**/*.ctd" />
\r
1296 <include name="**/brkitr/*.res" />
\r
1297 <include name="**/translit/*.res" />
\r
1300 <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" />
\r
1303 <target name="transliterator" depends="init,propertiesClasses,copyTranslitData" description="modular build of unicode transform services">
\r
1304 <javac srcdir="${src.dir}"
\r
1305 destdir="${build.dir}"
\r
1306 source="${icu4j.javac.source}"
\r
1307 target="${icu4j.javac.target}"
\r
1308 classpathref="build.classpath"
\r
1310 deprecation="off">
\r
1311 <include name="com/ibm/icu/impl/*Iterator*.java"/>
\r
1312 <include name="com/ibm/icu/impl/*Property*.java"/>
\r
1313 <include name="com/ibm/icu/impl/data/ResourceReader.java"/>
\r
1314 <include name="com/ibm/icu/impl/UtilityExtensions.java"/>
\r
1315 <include name="com/ibm/icu/text/*Transliterator*.java"/>
\r
1316 <include name="com/ibm/icu/text/UnicodeSetIterator.java"/>
\r
1320 <target name="transliteratorTests" depends="transliterator" description = "test transliterator modular build target">
\r
1321 <javac srcdir="${src.dir}"
\r
1322 destdir="${build.dir}"
\r
1323 classpathref="build.classpath"
\r
1324 source="${icu4j.javac.source}"
\r
1325 target="${icu4j.javac.target}"
\r
1327 deprecation="off">
\r
1328 <patternset refid="common.test.sources" />
\r
1329 <include name="com/ibm/icu/dev/test/translit/**/*.java"/>
\r
1330 <exclude name="com/ibm/icu/dev/test/translit/UnicodeFilterLogic*.java"/>
\r
1332 <copy file="${src.dir}/com/ibm/icu/dev/test/translit/langtagRegex.txt" todir="${build.dir}/com/ibm/icu/dev/test/translit" />
\r
1335 <!-- Module: StringPrep, IDNA -->
\r
1336 <target name="copyStringPrepData" depends="initBase">
\r
1337 <unjar src="${icudatajar.file}" dest="${build.dir}">
\r
1339 <include name="**/*.spp" />
\r
1340 <include name="**/ubidi.icu" />
\r
1341 <include name="**/ucase.icu" />
\r
1342 <include name="**/unorm.icu" />
\r
1343 <include name="**/uprops.icu" />
\r
1344 <include name="**/pnames.icu" />
\r
1345 <include name="**/unames.icu" />
\r
1350 <target name="stringPrep" depends="init,normalizer,copyStringPrepData" description="modular build of stringprep services">
\r
1351 <javac srcdir="${src.dir}"
\r
1352 destdir="${build.dir}"
\r
1353 source="${icu4j.javac.source}"
\r
1354 target="${icu4j.javac.target}"
\r
1355 classpathref="build.classpath"
\r
1357 deprecation="off">
\r
1358 <include name="com/ibm/icu/impl/*StringPrep*.java"/>
\r
1359 <include name="com/ibm/icu/text/*IDNA*.java"/>
\r
1360 <include name="com/ibm/icu/text/*StringPrep*.java"/>
\r
1364 <target name="stringPrepTests" depends="stringPrep" description="test stringPrep modular build target">
\r
1365 <javac srcdir="${src.dir}"
\r
1366 destdir="${build.dir}"
\r
1367 classpathref="build.classpath"
\r
1368 source="${icu4j.javac.source}"
\r
1369 target="${icu4j.javac.target}"
\r
1371 deprecation="off">
\r
1372 <patternset refid="common.test.sources" />
\r
1373 <include name="com/ibm/icu/dev/test/stringprep/**/*.java"/>
\r
1375 <unjar src="${src.dir}/com/ibm/icu/dev/data/testdata.jar" dest="${build.dir}">
\r
1377 <include name="**/*.spp"/>
\r
1378 <include name="**/idna_rules.res"/>
\r
1385 <target name="excludeCharset" depends="core" description="excludes charset module from ICU4J">
\r
1386 <delete failonerror="yes">
\r
1387 <fileset dir="${build.dir}/com/ibm/icu/impl/data/icudt${icu4j.data.version.number}b/">
\r
1388 <include name="*.cnv" />
\r
1389 <include name="cnvalias.icu" />
\r
1391 <fileset dir="${build.dir}/com/ibm/icu/charset" />
\r
1392 <fileset dir="${build.dir}/META-INF/" />
\r
1395 <target name="excludeCharsetTests" depends="tests" description="excludes charset test from ICU4J">
\r
1396 <delete failonerror="yes">
\r
1397 <fileset dir="${build.dir}/com/ibm/icu/dev/test/charset" />
\r
1401 <target name="moduleCheck" depends="initBase" description="run tests for module jar">
\r
1402 <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
\r
1403 <jvmarg line="${test.jvm.args}"/>
\r
1404 <arg value="-nothrow" />
\r
1405 <arg value="-nodata" />
\r
1407 <pathelement location="${build.dir}" />
\r
1412 <!-- build the extra Transliterator data pertaining to Han-Latin transliteration -->
\r
1413 <target name="extraTransliteratorData" depends="initBase" description="build han-to-latin transliterator data (normally omitted)">
\r
1414 <copy todir="${build.dir}/com/ibm/icu/impl/data">
\r
1415 <fileset dir="${src.dir}/com/ibm/icu/impl/data" includes="Transliterator_Han_Latin_*.txt" />
\r
1419 <!-- Target for builing XLIFF2ICUConverter Jar -->
\r
1421 <target name="xliff" depends="init" description="build xliff converter tool">
\r
1422 <javac sourcepath="" srcdir="${src.dir}" destdir="${build.dir}" classpathref="build.classpath" source="${icu4j.javac.source}" target="${icu4j.javac.target}" debug="on" deprecation="off">
\r
1424 <include name="com/ibm/icu/dev/tool/localeconverter/CalculateCRC32.java" />
\r
1425 <include name="com/ibm/icu/dev/tool/localeconverter/XLIFF2ICUConverter.java" />
\r
1426 <include name="com/ibm/icu/dev/tool/UOption.java" />
\r
1427 <include name="com/ibm/icu/dev/tool/xmlcomparator/XMLValidator.java" />
\r
1429 <jar jarfile="xliff.jar" compress="true" includes="com/ibm/icu/dev/tool/localeconverter/XLIFF2ICUConverter*.class,com/ibm/icu/dev/tool/localeconverter/CalculateCRC32.class,com/ibm/icu/dev/tool/UOption.class" basedir="${build.dir}">
\r
1431 <attribute name="Built-By" value="${corp}" />
\r
1432 <section name="common">
\r
1433 <attribute name="Specification-Title" value="XLIFF To ICU Converter" />
\r
1434 <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
\r
1435 <attribute name="Specification-Vendor" value="ICU" />
\r
1436 <attribute name="Implementation-Title" value="XLIFF2ICUConverter" />
\r
1437 <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
\r
1438 <attribute name="Implementation-Vendor" value="${corp}" />
\r
1439 <attribute name="Implementation-Vendor-Id" value="com.ibm" />
\r
1440 <attribute name="Copyright-Info" value="${copyright}" />
\r
1441 <attribute name="Sealed" value="false" />
\r
1446 <jar jarfile="xliff-src.jar" compress="true" includes="com/ibm/icu/dev/tool/localeconverter/XLIFF2ICUConverter.java,com/ibm/icu/dev/tool/localeconverter/CalculateCRC32.java,com/ibm/icu/dev/tool/UOption.java" basedir="${src.dir}">
\r
1448 <attribute name="Built-By" value="${corp}" />
\r
1449 <section name="common">
\r
1450 <attribute name="Specification-Title" value="XLIFF To ICU Converter Sources" />
\r
1451 <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
\r
1452 <attribute name="Specification-Vendor" value="ICU" />
\r
1453 <attribute name="Implementation-Title" value="XLIFF2ICUConverter Sources" />
\r
1454 <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
\r
1455 <attribute name="Implementation-Vendor" value="${corp}" />
\r
1456 <attribute name="Implementation-Vendor-Id" value="com.ibm" />
\r
1457 <attribute name="Copyright-Info" value="${copyright}" />
\r
1458 <attribute name="Sealed" value="false" />
\r
1464 <!-- Target for builing Utilities Jar for CLDR -->
\r
1466 <target name="cldrUtil" depends="init" description="build Utilities for CLDR">
\r
1467 <javac srcdir="${src.dir}" destdir="${build.dir}" source="${icu4j.javac.source}" target="${icu4j.javac.target}" classpathref="build.classpath" debug="on" deprecation="off">
\r
1469 <include name="com/ibm/icu/dev/test/TestFmwk.java" />
\r
1470 <include name="com/ibm/icu/dev/test/util/*.java" />
\r
1471 <include name="com/ibm/icu/dev/tool/UOption.java" />
\r
1473 <jar jarfile="utilities.jar" compress="true" includes="com/ibm/icu/dev/test/util/*.class,com/ibm/icu/dev/test/TestFmwk*.class,com/ibm/icu/dev/test/AbstractTest*.class,com/ibm/icu/dev/test/TestLog*.class,com/ibm/icu/dev/tool/UOption*.class" basedir="${build.dir}">
\r
1475 <attribute name="Built-By" value="${corp}" />
\r
1476 <section name="common">
\r
1477 <attribute name="Specification-Title" value="Utilities for CLDR Tools" />
\r
1478 <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
\r
1479 <attribute name="Specification-Vendor" value="ICU" />
\r
1480 <attribute name="Implementation-Title" value="CLDR Utilities" />
\r
1481 <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
\r
1482 <attribute name="Implementation-Vendor" value="${corp}" />
\r
1483 <attribute name="Implementation-Vendor-Id" value="com.ibm" />
\r
1484 <attribute name="Copyright-Info" value="${copyright}" />
\r
1485 <attribute name="Sealed" value="false" />
\r
1491 <!--Target for building jars -->
\r
1492 <target name="distJars" depends="jarSrc, jar, jarDocs" />
\r
1494 <!-- Target for checking the loading of bundles from the default package.
\r
1495 This is hack to get around Eclipse's build problems.
\r
1497 <target name="defaultPackage" depends="tests" description="Tests for loading resources in the default package">
\r
1498 <copy file="${src.dir}/com/ibm/icu/dev/test/util/TestDefaultPackageLoading.jpp" tofile="${src.dir}/TestDefaultPackageLoading.java" />
\r
1499 <copy file="${src.dir}/com/ibm/icu/dev/test/util/TestData_en.jpp" tofile="${src.dir}/TestData_en.java" />
\r
1500 <javac srcdir="${src.dir}" destdir="${build.dir}" classpathref="build.classpath" source="${icu4j.javac.source}" target="${icu4j.javac.target}" debug="on" deprecation="off">
\r
1502 <exclude name="**/CVS/**/*" />
\r
1503 <include name="TestData_en.java" />
\r
1504 <include name="TestDefaultPackageLoading.java" />
\r
1506 <!-- copy the file to default package and test if we can load it -->
\r
1507 <copy file="${build.dir}/com/ibm/icu/dev/data/testdata/te.res" todir="${build.dir}/" />
\r
1508 <!-- copy the file up one level and test if java style base name loading works -->
\r
1509 <copy file="${build.dir}/com/ibm/icu/dev/data/testdata/te.res" tofile="${build.dir}/com/ibm/icu/dev/data/TestData_bge.res" />
\r
1512 <target name="defaultPackageCheck" depends="tests, defaultPackage" description="Run Tests for loading resources in the default package">
\r
1513 <!--run the tests -->
\r
1514 <java classname="TestDefaultPackageLoading" fork="yes" failonerror="true">
\r
1515 <jvmarg line="${test.jvm.args}"/>
\r
1516 <arg value="-n" />
\r
1518 <pathelement path="${java.class.path}/" />
\r
1519 <pathelement location="clover.jar" />
\r
1520 <pathelement path="${build.dir}" />
\r
1525 <!-- convert @deprecated @draft tags to @provisional -->
\r
1526 <target name="swatDeprecated" depends="initBase, tools" unless="before.java14">
\r
1527 <java classname="com.ibm.icu.dev.tool.docs.SwatDeprecated" classpath="${build.dir}" failonerror="true">
\r
1528 <arg value="-src" />
\r
1529 <arg value="${src.dir}" />
\r
1530 <arg value="-dst" />
\r
1531 <arg value="${src.dir}" />
\r
1532 <arg value="-overwrite" />
\r
1533 <arg value="-verbose" />
\r
1537 <!-- convert @provisional tags to @deprecated -->
\r
1538 <target name="restoreDeprecated" depends="initBase, tools" unless="before.java14">
\r
1539 <java classname="com.ibm.icu.dev.tool.docs.SwatDeprecated" classpath="${build.dir}" failonerror="true">
\r
1540 <arg value="-prov" />
\r
1541 <arg value="-src" />
\r
1542 <arg value="${src.dir}" />
\r
1543 <arg value="-dst" />
\r
1544 <arg value="${src.dir}" />
\r
1545 <arg value="-overwrite" />
\r
1546 <arg value="-verbose" />
\r
1550 <!-- Eclipse plug-in build targets -->
\r
1551 <!-- for building eclipse distribution -->
\r
1552 <target name="eclipsePDEBuild"
\r
1553 depends="initEclipsePDEBuildEnv, eclipseProjects,normSrc"
\r
1554 description="build icu4j plugin files">
\r
1556 <!-- copy OSGi jar file to baseLocation -->
\r
1557 <mkdir dir="${eclipse.projects.dir}/baseLocation/features"/>
\r
1558 <mkdir dir="${eclipse.projects.dir}/baseLocation/plugins"/>
\r
1559 <copy toDir="${eclipse.projects.dir}/baseLocation/plugins" file="${eclipse.osgi.jar}"/>
\r
1561 <!-- copy PDE build script files and run the build -->
\r
1562 <pathconvert property="eclipse.projects.dir.full" dirsep="/">
\r
1563 <path location="${basedir}/${eclipse.projects.dir}"/>
\r
1565 <antcall target="runEclipsePDEBuild">
\r
1566 <param name="icu.plugin.id" value="com.ibm.icu"/>
\r
1568 <antcall target="runEclipsePDEBuild">
\r
1569 <param name="icu.plugin.id" value="com.ibm.icu.base"/>
\r
1571 <antcall target="runEclipsePDEBuild">
\r
1572 <param name="icu.plugin.id" value="com.ibm.icu.jse4"/>
\r
1577 <target name="initIcuEclipseVersion" depends="initBase">
\r
1579 <format property="build.date" pattern="yyyyMMdd"/>
\r
1581 <property name="icu4j.eclipse.build.version.string" value="${icu4j.plugin.impl.version.string}.v${build.date}"/>
\r
1584 <target name="eclipseProjects"
\r
1585 depends="eclipseCoreProject,eclipseTestProject,eclipseWrapperProject,eclipseFragmentProject"
\r
1586 description="create all eclipse icu projects"/>
\r
1588 <target name="initEclipsePDEBuildEnv"
\r
1589 depends="initBase,initEclipseHome,initEclipseLauncher,initEclipseOSGiJar,initEclipsePDE"
\r
1590 description="Initialize eclipse PDE build environment">
\r
1591 <echo message="[PDE build configuration properties]"/>
\r
1592 <echo message=" Eclipse home: ${eclipse.home}"/>
\r
1593 <echo message=" Launcher jar: ${eclipse.launcher}"/>
\r
1594 <echo message=" OSGi bundle jar: ${eclipse.osgi.jar}"/>
\r
1595 <echo message=" Base OS: ${eclipse.baseos}"/>
\r
1596 <echo message=" Base WS: ${eclipse.basews}"/>
\r
1597 <echo message=" Base ARCH: ${eclipse.basearch}"/>
\r
1600 <target name="initEclipseHome"
\r
1601 if="env.ECLIPSE_HOME"
\r
1602 unless="eclipse.home"
\r
1603 description="Initialize the property eclipse.home from the environment variable ECLIPSE_HOME">
\r
1604 <property name="eclipse.home" value="${env.ECLIPSE_HOME}"/>
\r
1607 <target name="initEclipseLauncher"
\r
1609 description="Locate org.eclipse.equinox.launcher jar file for eclipse 3.3 and beyond">
\r
1610 <first id="equinox.launcher">
\r
1611 <fileset dir="${eclipse.home}/plugins">
\r
1612 <include name="org.eclipse.equinox.launcher_*.jar"/>
\r
1615 <pathconvert property="eclipse.launcher" dirsep="/" refid="equinox.launcher"/>
\r
1618 <target name="initEclipseOSGiJar"
\r
1620 description="Locate org.eclipse.osgi plugin jar file">
\r
1621 <first id="osgi.bundle">
\r
1622 <fileset dir="${eclipse.home}/plugins">
\r
1623 <include name="org.eclipse.osgi_*.jar"/>
\r
1626 <pathconvert property="eclipse.osgi.jar" dirsep="/" refid="osgi.bundle"/>
\r
1629 <target name="initEclipsePDE"
\r
1630 depends="locateEclipsePDE"
\r
1631 if="eclipse.pde.dir"
\r
1632 description="Set up PDE runtime arguments">
\r
1633 <property file="${eclipse.pde.dir}/templates/headless-build/build.properties" prefix="pde.template"/>
\r
1634 <property name="eclipse.baseos" value="${pde.template.baseos}"/>
\r
1635 <property name="eclipse.basews" value="${pde.template.basews}"/>
\r
1636 <property name="eclipse.basearch" value="${pde.template.basearch}"/>
\r
1639 <target name="locateEclipsePDE"
\r
1641 description="Locate org.eclipse.pde.build plug-in and set the property 'eclipse.pde.dir'">
\r
1642 <first id="eclipse.pde.plugin.dir">
\r
1643 <dirset dir="${eclipse.home}/plugins">
\r
1644 <include name="org.eclipse.pde.build_*"/>
\r
1647 <pathconvert property="eclipse.pde.dir" dirsep="/" refid="eclipse.pde.plugin.dir"/>
\r
1650 <target name="runEclipsePDEBuild">
\r
1651 <mkdir dir="${eclipse.projects.dir}/buildScripts/${icu.plugin.id}"/>
\r
1652 <copy toDir="${eclipse.projects.dir}/buildScripts/${icu.plugin.id}">
\r
1653 <fileset dir="${eclipse.dir}/pdebuild" includes="**/*"/>
\r
1655 <filter token="PLUGIN_ID" value="${icu.plugin.id}"/>
\r
1656 <filter token="BUILD_DIR" value="${eclipse.projects.dir.full}"/>
\r
1657 <filter token="BUILD_TYPE" value="ICU4J"/>
\r
1658 <filter token="BUILD_ID" value="${icu.plugin.id}"/>
\r
1659 <filter token="BASE_LOCATION" value="${eclipse.projects.dir.full}/baseLocation"/>
\r
1660 <filter token="BASE_OS" value="${eclipse.baseos}"/>
\r
1661 <filter token="BASE_WS" value="${eclipse.basews}"/>
\r
1662 <filter token="BASE_ARCH" value="${eclipse.basearch}"/>
\r
1666 <java jar="${eclipse.launcher}" fork="true" failonerror="true">
\r
1667 <arg value="-application"/>
\r
1668 <arg value="org.eclipse.ant.core.antRunner"/>
\r
1669 <arg value="-buildfile"/>
\r
1670 <arg value="${eclipse.pde.dir}/scripts/build.xml"/>
\r
1671 <arg value="-Dbuilder=${eclipse.projects.dir.full}/buildScripts/${icu.plugin.id}"/>
\r
1675 <target name="eclipseMangle" depends="buildMangle">
\r
1676 <antcall target="doMangle">
\r
1677 <param name="mangler.args" value="-dFOUNDATION10 @preprocessor.txt"/>
\r
1681 <target name="eclipseCoreProject"
\r
1682 depends="initIcuEclipseVersion,eclipseMangle,coreData,icudata,durationdata,indices"
\r
1683 description="gather eclipse icu core project files">
\r
1684 <delete failonerror="no">
\r
1685 <fileset dir="${eclipse.projects.dir}/plugins/com.ibm.icu" />
\r
1686 <fileset dir="${eclipse.projects.dir}/features/com.ibm.icu" />
\r
1689 <!-- PLUGIN FILES -->
\r
1690 <!-- icu source -->
\r
1691 <copy toDir="${eclipse.projects.dir}/plugins/com.ibm.icu/src/com/ibm/icu">
\r
1692 <fileset dir="src/com/ibm/icu"
\r
1693 includes="impl/**/*,lang/**/*,math/**/*,text/**/*,util/**/*"
\r
1694 excludes="**/.svn/**/*,**/*.jar,**/Transliterator_Han_Latin*.txt" />
\r
1696 <!-- overwriting the ICU runtime configuration file for forcing ICU4J plugin to use JDK time zone rules -->
\r
1697 <copy file="${eclipse.dir}/misc/ICUConfig.properties"
\r
1698 toDir="${eclipse.projects.dir}/plugins/com.ibm.icu/src/com/ibm/icu"
\r
1699 overwrite="true"/>
\r
1701 <copy todir="${eclipse.projects.dir}/plugins/com.ibm.icu/src/com/ibm/icu/impl/data">
\r
1702 <fileset dir="${build.dir}/com/ibm/icu/impl/data"
\r
1703 includes="**/*.brk,**/*.icu,**/*.res,**/*.spp,**/*.txt,**/*.ctd"
\r
1704 excludes="**/Transliterator_Han_Latin*.txt" />
\r
1706 <!-- plugin project -->
\r
1707 <copy todir="${eclipse.projects.dir}/plugins/com.ibm.icu">
\r
1708 <fileset dir="${eclipse.dir}/plugins/com.ibm.icu" excludes="**/.svn/**/*" />
\r
1710 <filter token="BUILD_VERSION" value="${icu4j.eclipse.build.version.string}" />
\r
1711 <filter token="COPYRIGHT" value="${copyright.eclipse}" />
\r
1712 <filter token="IMPL_VERSION" value="${icu4j.impl.version.string}" />
\r
1713 <filter token="DATA_VERSION_NUMBER" value="${icu4j.data.version.number}" />
\r
1717 <copy file="license.html"
\r
1718 todir="${eclipse.projects.dir}/plugins/com.ibm.icu/about_files" />
\r
1719 <!-- ucd terms -->
\r
1720 <copy file="src/com/ibm/icu/dev/data/unicode/ucdterms.txt"
\r
1721 todir="${eclipse.projects.dir}/plugins/com.ibm.icu/about_files" />
\r
1723 <copy file="${eclipse.dir}/misc/about_icu.html"
\r
1724 tofile="${eclipse.projects.dir}/plugins/com.ibm.icu/about.html" />
\r
1726 <!-- FEATURE FILES -->
\r
1727 <copy todir="${eclipse.projects.dir}/features/com.ibm.icu">
\r
1728 <fileset dir="${eclipse.dir}/features/com.ibm.icu" excludes="**/.svn/**/*" />
\r
1730 <filter token="BUILD_VERSION" value="${icu4j.eclipse.build.version.string}" />
\r
1731 <filter token="COPYRIGHT" value="${copyright.eclipse}" />
\r
1732 <filter token="DATA_VERSION_NUMBER" value="${icu4j.data.version.number}" />
\r
1737 <target name="eclipseWrapperProject"
\r
1738 depends="initIcuEclipseVersion"
\r
1739 description="gather eclipse icu core project files">
\r
1740 <delete failonerror="no">
\r
1741 <fileset dir="${eclipse.projects.dir}/plugins/com.ibm.icu.base" />
\r
1742 <fileset dir="${eclipse.projects.dir}/plugins/com.ibm.icu.base.tests" />
\r
1743 <fileset dir="${eclipse.projects.dir}/features/com.ibm.icu.base" />
\r
1745 <!-- PLUGIN FILES -->
\r
1746 <!-- source and project files -->
\r
1747 <copy todir="${eclipse.projects.dir}/plugins">
\r
1748 <fileset dir="${eclipse.dir}/plugins"
\r
1749 includes="com.ibm.icu.base/**/*,com.ibm.icu.base.tests/**/*"
\r
1750 excludes="**/.svn/**/*" />
\r
1752 <filter token="BUILD_VERSION" value="${icu4j.eclipse.build.version.string}" />
\r
1753 <filter token="COPYRIGHT" value="${copyright.eclipse}" />
\r
1754 <filter token="IMPL_VERSION" value="${icu4j.impl.version.string}" />
\r
1755 <filter token="DATA_VERSION_NUMBER" value="${icu4j.data.version.number}" />
\r
1759 <copy file="license.html"
\r
1760 todir="${eclipse.projects.dir}/plugins/com.ibm.icu.base/about_files" />
\r
1762 <copy file="${eclipse.dir}/misc/about_icu_base.html"
\r
1763 tofile="${eclipse.projects.dir}/plugins/com.ibm.icu.base/about.html" />
\r
1765 <!-- FEATURE FILES -->
\r
1766 <!-- project files -->
\r
1767 <copy todir="${eclipse.projects.dir}/features/com.ibm.icu.base">
\r
1768 <fileset dir="${eclipse.dir}/features/com.ibm.icu.base"
\r
1769 excludes="**/.svn/**/*"/>
\r
1771 <filter token="BUILD_VERSION" value="${icu4j.eclipse.build.version.string}" />
\r
1772 <filter token="COPYRIGHT" value="${copyright.eclipse}" />
\r
1773 <filter token="DATA_VERSION_NUMBER" value="${icu4j.data.version.number}" />
\r
1778 <target name="eclipseTestProject"
\r
1779 depends="eclipseMangle"
\r
1780 description="gather eclipse icu test project files">
\r
1781 <delete failonerror="no">
\r
1782 <fileset dir="${eclipse.projects.dir}/plugins/com.ibm.icu.tests"/>
\r
1784 <!-- copy eclipse test source and project files -->
\r
1785 <copy toDir="${eclipse.projects.dir}/plugins/com.ibm.icu.tests">
\r
1786 <fileset dir="${eclipse.dir}/plugins/com.ibm.icu.tests"
\r
1787 excludes="**/.svn/**/"/>
\r
1789 <filter token="COPYRIGHT" value="${copyright.eclipse}"/>
\r
1793 <copy toDir="${eclipse.projects.dir}/plugins/com.ibm.icu.tests/src/com/ibm/icu/dev/test">
\r
1794 <fileset dir="src/com/ibm/icu/dev/test"
\r
1796 excludes="**/.svn/**/*,charset/**/*.*,perf/**/*.*" />
\r
1799 <!-- test data -->
\r
1800 <copy toDir="${eclipse.projects.dir}/plugins/com.ibm.icu.tests/src/com/ibm/icu/dev/data">
\r
1801 <fileset dir="src/com/ibm/icu/dev/data"
\r
1803 excludes="**/.svn/**/*,testdata.jar"/>
\r
1805 <unjar src="${src.dir}/com/ibm/icu/dev/data/testdata.jar"
\r
1806 dest="${eclipse.projects.dir}/plugins/com.ibm.icu.tests/src" />
\r
1809 <target name="eclipseFragmentMangle" depends="buildMangle">
\r
1810 <antcall target="initSrc"/>
\r
1811 <antcall target="doMangle">
\r
1812 <param name="mangler.args" value="-dECLIPSE_FRAGMENT @eclipseFragment.txt"/>
\r
1816 <target name="eclipseFragmentProject"
\r
1817 depends="eclipseFragmentMangle,initIcuEclipseVersion"
\r
1818 description="gather eclipse icu fragment project files">
\r
1819 <delete failonerror="no">
\r
1820 <fileset dir="${eclipse.projects.dir}/plugins/com.ibm.icu.jse4" />
\r
1821 <fileset dir="${eclipse.projects.dir}/features/com.ibm.icu.jse4" />
\r
1824 <!-- PLUGIN FILES -->
\r
1826 <copy toDir="${eclipse.projects.dir}/plugins/com.ibm.icu.jse4/src">
\r
1827 <!-- TODO: Better way to collect files? -->
\r
1828 <fileset dir="${src.dir}">
\r
1829 <include name="com/ibm/icu/impl/DateNumberFormat.java" />
\r
1830 <include name="com/ibm/icu/impl/duration/BasicDurationFormat.java" />
\r
1831 <include name="com/ibm/icu/impl/ICUResourceBundleReader.java" />
\r
1832 <include name="com/ibm/icu/impl/PatternTokenizer.java" />
\r
1833 <include name="com/ibm/icu/impl/Utility.java" />
\r
1834 <include name="com/ibm/icu/lang/UCharacter.java" />
\r
1835 <include name="com/ibm/icu/math/BigDecimal.java" />
\r
1836 <include name="com/ibm/icu/text/Bidi.java" />
\r
1837 <include name="com/ibm/icu/text/ChineseDateFormat.java" />
\r
1838 <include name="com/ibm/icu/text/DateFormat.java" />
\r
1839 <include name="com/ibm/icu/text/DateTimePatternGenerator.java" />
\r
1840 <include name="com/ibm/icu/text/DecimalFormat.java" />
\r
1841 <include name="com/ibm/icu/text/DigitList.java" />
\r
1842 <include name="com/ibm/icu/text/MessageFormat.java" />
\r
1843 <include name="com/ibm/icu/text/NumberFormat.java" />
\r
1844 <include name="com/ibm/icu/text/RuleBasedBreakIterator.java" />
\r
1845 <include name="com/ibm/icu/text/RuleBasedNumberFormat.java" />
\r
1846 <include name="com/ibm/icu/text/SimpleDateFormat.java" />
\r
1847 <include name="com/ibm/icu/text/UnicodeSet.java" />
\r
1848 <include name="com/ibm/icu/text/UTF16.java" />
\r
1851 <!-- project files -->
\r
1852 <copy todir="${eclipse.projects.dir}/plugins/com.ibm.icu.jse4">
\r
1853 <fileset dir="${eclipse.dir}/plugins/com.ibm.icu.jse4"
\r
1854 excludes="**/.svn/**/*" />
\r
1856 <filter token="BUILD_VERSION" value="${icu4j.eclipse.build.version.string}" />
\r
1857 <filter token="COPYRIGHT" value="${copyright.eclipse}" />
\r
1858 <filter token="IMPL_VERSION" value="${icu4j.impl.version.string}" />
\r
1859 <filter token="DATA_VERSION_NUMBER" value="${icu4j.data.version.number}" />
\r
1863 <copy file="license.html"
\r
1864 todir="${eclipse.projects.dir}/plugins/com.ibm.icu.jse4/about_files" />
\r
1865 <!-- ucd terms -->
\r
1866 <copy file="src/com/ibm/icu/dev/data/unicode/ucdterms.txt"
\r
1867 todir="${eclipse.projects.dir}/plugins/com.ibm.icu.jse4/about_files" />
\r
1869 <copy file="${eclipse.dir}/misc/about_icu.html"
\r
1870 tofile="${eclipse.projects.dir}/plugins/com.ibm.icu.jse4/about.html" />
\r
1872 <!-- FEATURE FILES -->
\r
1873 <!-- project files -->
\r
1874 <copy todir="${eclipse.projects.dir}/features/com.ibm.icu.jse4">
\r
1875 <fileset dir="${eclipse.dir}/features/com.ibm.icu.jse4"
\r
1876 excludes="**/.svn/**/*" />
\r
1878 <filter token="BUILD_VERSION" value="${icu4j.eclipse.build.version.string}" />
\r
1879 <filter token="COPYRIGHT" value="${copyright.eclipse}" />
\r
1880 <filter token="DATA_VERSION_NUMBER" value="${icu4j.data.version.number}" />
\r
1885 <target name="gatherICU4JWrapperAPI" depends="tools" unless="before.java14">
\r
1886 <javadoc classpath="${build.dir}" sourcepath="${src.dir}" packagenames="com.ibm.icu.text,com.ibm.icu.util" source="1.4">
\r
1887 <doclet name="com.ibm.icu.dev.tool.docs.GatherAPIData" path="${build.dir}">
\r
1888 <param name="-name" value="ICU4J ${icu4j.version.number}" />
\r
1889 <param name="-base" value="com.ibm.icu" />
\r
1890 <param name="-output" value="${api.dir}/icu4j${icu4j.version.number}w_i.api" />
\r
1891 <param name="-filter" value="BreakIterator|CollationKey|Collator|DateFormat|DecimalFormat|MessageFormat|NumberFormat|SimpleDateFormat|StringTokenizer|Calendar|TimeZone|ULocale|DateFormatSymbols|DecimalFormatSymbols|Calendar|TimeZone" />
\r
1892 <!-- param name="-gzip"/ -->
\r
1897 <target name="gatherEclipseWrapperAPI" depends="tools" unless="before.java14">
\r
1898 <javadoc classpath="${build.dir}" sourcepath="${src.dir}/com/ibm/icu/dev/eclipse/com.ibm.icu.base/src" packagenames="com.ibm.icu.text,com.ibm.icu.util" source="1.4">
\r
1899 <doclet name="com.ibm.icu.dev.tool.docs.GatherAPIData" path="${build.dir}">
\r
1900 <param name="-name" value="ICU4J ${icu4j.version.number} Wrapper" />
\r
1901 <param name="-base" value="com.ibm.icu" />
\r
1902 <param name="-output" value="${api.dir}/icu4j${icu4j.version.number}w_e.api" />
\r
1903 <!-- param name="-gzip"/ -->
\r
1908 <target name="reportWrapperAPI" depends="tools" unless="before.java14">
\r
1909 <java classname="com.ibm.icu.dev.tool.docs.ReportAPI" classpath="${build.dir}" failonerror="true">
\r
1910 <arg value="-old:" />
\r
1911 <arg value="${api.dir}/icu4j${icu4j.previous.version.number}w_i.api" />
\r
1912 <arg value="-new:" />
\r
1913 <arg value="${api.dir}/icu4j${icu4j.version.number}w_e.api" />
\r
1914 <arg value="-html" />
\r
1915 <arg value="-out:" />
\r
1916 <arg value="${api.dir}/icu4j_compare_${icu4j.previous.version.number}_wrapper_java.html" />
\r
1920 <!-- Test suite launcher targets -->
\r
1921 <target name="runCheck" depends="tests">
\r
1922 <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true">
\r
1923 <jvmarg line="${test.jvm.args}"/>
\r
1924 <arg value="-n" />
\r
1926 <pathelement path="${java.class.path}/" />
\r
1927 <pathelement location="${jar.file}" />
\r
1928 <pathelement location="${charsets.jar.file}" />
\r
1929 <pathelement location="clover.jar" />
\r
1930 <pathelement path="${build.dir}" />
\r
1935 <!-- ICU TimeZone Update Utility targets -->
\r
1936 <target name="icutzu" depends="init" description="build ICU4J TimeZone Update Utility Classes">
\r
1937 <javac includes="${tzu.src.path}/**/*.java" excludes="**/.svn/**/*" srcdir="${src.dir}" destdir="${build.dir}" classpathref="build.classpath" source="${icu4j.javac.source}" target="${icu4j.javac.target}" debug="on" deprecation="off" encoding="ascii" />
\r
1940 <target name="icutzudata" depends="initBase, jar">
\r
1941 <mkdir dir="${tzu.bin.dir}" />
\r
1942 <copy todir="${tzu.bin.dir}">
\r
1943 <fileset dir="${src.dir}/${tzu.src.path}">
\r
1944 <include name="*.cmd" />
\r
1945 <include name="*.bat" />
\r
1946 <include name="*.sh" />
\r
1947 <include name="*.gif" />
\r
1948 <include name="*.txt" />
\r
1949 <include name="*.html" />
\r
1950 <include name="*.css" />
\r
1952 <fileset file="${basedir}/${jar.file}" />
\r
1953 <fileset file="${build.dir}/${icu4j.data.path}/zoneinfo.res" />
\r
1954 <fileset file="${build.dir}/${icu4j.data.path}/metazoneInfo.res" />
\r
1958 <target name="icutzujar" depends="initBase, icutzu, icutzudata" description="build ICU4J TimeZone Update Utility classes">
\r
1959 <jar jarfile="${tzu.bin.dir}/${tzu.jar.file}" compress="true">
\r
1960 <fileset dir="${basedir}" includes="license.html" />
\r
1961 <fileset dir="${build.dir}" includes="${tzu.src.path}/**/*.class" />
\r
1963 <attribute name="Main-Class" value="com.ibm.icu.dev.tool.tzu.ICUTZUMain" />
\r
1964 <attribute name="Built-By" value="${corp}" />
\r
1965 <section name="common">
\r
1966 <attribute name="Specification-Title" value="ICU4J TimeZone Update Utility" />
\r
1967 <attribute name="Specification-Version" value="${icu4j.spec.version.string}" />
\r
1968 <attribute name="Specification-Vendor" value="ICU" />
\r
1969 <attribute name="Implementation-Title" value="ICUTZU" />
\r
1970 <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" />
\r
1971 <attribute name="Implementation-Vendor" value="${corp}" />
\r
1972 <attribute name="Implementation-Vendor-Id" value="com.ibm" />
\r
1973 <attribute name="Copyright-Info" value="${copyright}" />
\r
1974 <attribute name="Sealed" value="false" />
\r
1978 <echo message="Please see ${tzu.bin.dir} directory for the files." />
\r
1981 <target name="icutzucheck" depends="icutzujar" description="check ICU4J TimeZone Update Utility">
\r
1982 <echo>Testing ICUTZU ...</echo>
\r
1984 <mkdir dir="${tzu.temp.dir}" />
\r
1985 <move todir="${tzu.temp.dir}">
\r
1986 <fileset file="${tzu.bin.dir}/DirectorySearch.txt" />
\r
1987 <fileset file="${tzu.bin.dir}/zoneinfo.res" />
\r
1988 <fileset file="${tzu.bin.dir}/metazoneInfo.res" />
\r
1991 <echo file="${tzu.bin.dir}/DirectorySearch.txt">+${tzu.test.dir}</echo>
\r
1992 <get dest="${tzu.bin.dir}/zoneinfo.res" src="http://icu-project.org/tzdata/2008d/be/zoneinfo.res" />
\r
1993 <get dest="${tzu.bin.dir}/metazoneInfo.res" src="http://icu-project.org/tzdata/2008d/be/metazoneInfo.res" />
\r
1994 <copy todir="${tzu.test.dir}" file="${tzu.bin.dir}/icu4j.jar" />
\r
1996 <echo>Running ICUTZU in Discovery Mode ...</echo>
\r
1997 <exec dir="${tzu.bin.dir}" executable="${java.home}/bin/java">
\r
1998 <arg value="-cp" />
\r
1999 <arg path="${tzu.bin.dir}/${jar.file};${tzu.bin.dir}/${tzu.jar.file}" />
\r
2000 <arg value="-Dnogui=true" />
\r
2001 <arg value="-Ddiscoveronly=true" />
\r
2002 <arg value="-Dsilentpatch=true" />
\r
2003 <arg value="-Doffline=true" />
\r
2004 <arg value="com.ibm.icu.dev.tool.tzu.ICUTZUMain" />
\r
2005 <arg file="${tzu.bin.dir}" />
\r
2006 <arg value="DirectorySearch.txt" />
\r
2007 <arg value="ICUList.txt" />
\r
2008 <arg value="zoneinfo.res" />
\r
2009 <arg value="Temp" />
\r
2010 <arg value="icu.gif" />
\r
2013 <echo>Running ICUTZU in Patch Mode ...</echo>
\r
2014 <exec dir="${tzu.bin.dir}" executable="${java.home}/bin/java">
\r
2015 <arg value="-cp" />
\r
2016 <arg path="${tzu.bin.dir}/${jar.file};${tzu.bin.dir}/${tzu.jar.file}" />
\r
2017 <arg value="-Dnogui=true" />
\r
2018 <arg value="-Ddiscoveronly=false" />
\r
2019 <arg value="-Dsilentpatch=true" />
\r
2020 <arg value="-Doffline=true" />
\r
2021 <arg value="com.ibm.icu.dev.tool.tzu.ICUTZUMain" />
\r
2022 <arg file="${tzu.bin.dir}" />
\r
2023 <arg value="DirectorySearch.txt" />
\r
2024 <arg value="ICUList.txt" />
\r
2025 <arg value="zoneinfo.res" />
\r
2026 <arg value="Temp" />
\r
2027 <arg value="icu.gif" />
\r
2030 <echo>Comparing results ...</echo>
\r
2031 <unjar src="${tzu.test.dir}/${jar.file}" dest="${tzu.test.dir}">
\r
2033 <include name="**/zoneinfo.res" />
\r
2034 <include name="**/metazoneInfo.res" />
\r
2037 <copy todir="${tzu.test.dir}" file="${tzu.test.dir}/${icu4j.data.path}/zoneinfo.res" />
\r
2038 <copy todir="${tzu.test.dir}" file="${tzu.test.dir}/${icu4j.data.path}/metazoneInfo.res" />
\r
2040 <condition property="tzu.zoneinfo.match">
\r
2041 <filesmatch file1="${tzu.bin.dir}/zoneinfo.res" file2="${tzu.test.dir}/zoneinfo.res" />
\r
2043 <fail unless="tzu.zoneinfo.match">ICUTZU test failed. ${tzu.bin.dir}/zoneinfo.res does not match ${tzu.test.dir}/zoneinfo.res</fail>
\r
2045 <condition property="tzu.metazoneinfo.match">
\r
2046 <filesmatch file1="${tzu.bin.dir}/metazoneInfo.res" file2="${tzu.test.dir}/metazoneInfo.res" />
\r
2048 <fail unless="tzu.metazoneinfo.match">ICUTZU test failed. ${tzu.bin.dir}/metazoneInfo.res does not match ${tzu.test.dir}/metazoneInfo.res</fail>
\r
2050 <echo>Cleaning up ...</echo>
\r
2051 <move todir="${tzu.bin.dir}">
\r
2052 <fileset file="${tzu.temp.dir}/DirectorySearch.txt" />
\r
2053 <fileset file="${tzu.temp.dir}/zoneinfo.res" />
\r
2054 <fileset file="${tzu.temp.dir}/metazoneInfo.res" />
\r
2056 <delete includeEmptyDirs="true">
\r
2057 <fileset file="${tzu.temp.dir}" />
\r
2058 <fileset dir="${tzu.test.dir}" />
\r
2060 <echo>ICUTZU test successful.</echo>
\r
2063 <target name="icutzusrc-dist" depends="init" description="ICUTZU source distributable zip">
\r
2064 <zip zipfile="${basedir}/${tzu.src.zip.file}" basedir="${basedir}" includes="${src.dir}/${tzu.src.path}/**/*" />
\r
2067 <target name="icutzubin-dist" depends="icutzujar" description="ICUTZU binaries distributable zip">
\r
2068 <zip zipfile="${basedir}/${tzu.bin.zip.file}" basedir="${tzu.bin.dir}" includes="*" />
\r