| <!-- |
| /* |
| ******************************************************************************* |
| * Copyright (C) 1997-2009, International Business Machines Corporation and * |
| * others. All Rights Reserved. * |
| ******************************************************************************* |
| * This is the ant build file for ICU4J. See readme.html for more information. |
| */ |
| --> |
| |
| <project name="ICU4J" default="core" basedir="."> |
| |
| <!-- ### Begin Clover 1.2 setup ### --> |
| <typedef resource="clovertypes" onerror="ignore" /> |
| <taskdef resource="clovertasks" onerror="ignore" /> |
| |
| <target name="with.clover"> |
| <mkdir dir="tmp/" /> |
| <clover-setup initString="tmp/icu4j.db"> |
| <files> |
| <exclude name="**/dev/**/*.java" /> |
| </files> |
| <methodContext name="API" regexp="(.* )?public .*" /> |
| </clover-setup> |
| </target> |
| |
| <target name="clover.summary" depends="with.clover"> |
| <clover-report> |
| <current outfile="icu4j_html" summary="true"> |
| <format type="html" srcLevel="false" /> |
| </current> |
| </clover-report> |
| </target> |
| <target name="clover.report" depends="with.clover"> |
| <clover-report> |
| <current outfile="icu4j_html"> |
| <format type="html" /> |
| </current> |
| </clover-report> |
| </target> |
| <target name="clover.log" depends="with.clover"> |
| <clover-log level="method" filter="private"> |
| <package name="com.ibm.icu.text" /> |
| <package name="com.ibm.icu.lang" /> |
| <package name="com.ibm.icu.math" /> |
| <package name="com.ibm.icu.util" /> |
| <package name="com.ibm.icu.charset" /> |
| </clover-log> |
| </target> |
| |
| <!-- ### End Clover 1.2 setup ### --> |
| |
| <target name="checkAntVersion"> |
| <condition property="supported.ant.version"> |
| <or> |
| <contains string="${ant.version}" substring="1.6." /> |
| <contains string="${ant.version}" substring="1.7." /> |
| <contains string="${ant.version}" substring="1.8." /> <!-- just in case --> |
| </or> |
| </condition> |
| <antcall target="warnAntVersion" /> |
| </target> |
| |
| <target name="warnAntVersion" unless="supported.ant.version"> |
| <echo message="####################### WARNING #######################" /> |
| <echo message="The version of ant used by the current configuration" /> |
| <echo message="may not work well with this build script file. Please" /> |
| <echo message="use ant 1.6 or later version." /> |
| <echo message="#######################################################" /> |
| </target> |
| |
| <target name="init" depends="initBase,initSrc"/> |
| |
| <target name="initBase" |
| depends="checkAntVersion" |
| description="Initialized ICU4J build environment"> |
| <tstamp /> |
| <property name="src.dir" value="src" /> |
| <property name="build.dir" value="classes" /> |
| <property name="api.dir" value="${src.dir}/com/ibm/icu/dev/tool/docs" /> |
| <property name="doc.dir" value="doc" /> |
| <property name="icudatajar.file" value="${src.dir}/com/ibm/icu/impl/data/icudata.jar" /> |
| <property name="testjar.file" value="icu4jtests.jar" /> |
| <property name="jar.file" value="icu4j.jar" /> |
| <property name="demos-jar.file" value="icu4jdemos.jar" /> |
| <property name="charsets.jar.file" value="icu4j-charsets.jar" /> |
| <property name="jarSrc.file" value="icu4jsrc.jar" /> |
| <property name="zipTestSrc.file" value="icu4jtsrc.zip" /> |
| <property name="jdk.wrapper.jar.file" value="icu4jwrapper.jar" /> |
| <property name="fragment.jar.file" value="icu4jfragment.jar" /> |
| <property name="eclipse.dir" value="${src.dir}/com/ibm/icu/dev/eclipse" /> |
| <property name="eclipse.projects.dir" value="eclipseProjects" /> |
| <property name="wrapper.build.dir" value="classes.wrapper" /> |
| <property name="jarDocs.file" value="icu4jdocs.jar" /> |
| <property name="ime.translit.jar.file" value="icutransime.jar" /> |
| <property name="ime.indic.jar.file" value="icuindicime.jar" /> |
| <property name="ime.translit.manifest" value="${src.dir}/com/ibm/icu/dev/tool/ime/translit/manifest.stub" /> |
| <property name="ime.indic.manifest" value="${src.dir}/com/ibm/icu/dev/tool/ime/indic/manifest.stub" /> |
| <property name="zip.file" value="../icu4j${DSTAMP}.zip" /> |
| <property name="zipSrc.file" value="../icu4jSrc${DSTAMP}.zip" /> |
| <property name="tzu.src.path" value="com/ibm/icu/dev/tool/tzu" /> |
| <property name="tzu.bin.dir" value="${basedir}/icu4jtzu" /> |
| <property name="tzu.jar.file" value="icutzu.jar" /> |
| <property name="tzu.test.dir" value="${basedir}/icu4jtzu/test" /> |
| <property name="tzu.temp.dir" value="${basedir}/icu4jtzu/Temp" /> |
| <property name="tzu.src.zip.file" value="icutzu-src.zip" /> |
| <property name="tzu.bin.zip.file" value="icutzu-bin.zip" /> |
| <property file="build.properties" /> |
| <!-- fix the data folder every time there is a version update--> |
| |
| <property name="icu4j.data.path" value="com/ibm/icu/impl/data/icudt${icu4j.data.version.number}b" /> |
| <property name="icu4j.testdata.path" value="com/ibm/icu/dev/data/testdata" /> |
| <property name="icu4j.javac.source" value="1.3" /> |
| <property name="icu4j.javac.target" value="1.3" /> |
| |
| <path id="build.classpath"> |
| <pathelement path="${build.dir}" /> |
| </path> |
| |
| <property name="richedit.dir" value="richedit" /> |
| <property name="richedit.doc.dir" value="${richedit.dir}/doc" /> |
| <property name="richedit.jar.file" value="${richedit.dir}/richedit.jar" /> |
| <property name="richedit.zip.file" value="${richedit.dir}/richedit.zip" /> |
| <property name="richedit.manifest" value="${src.dir}/com/ibm/richtext/manifest.stub" /> |
| |
| <!-- Load environment variables --> |
| <property environment="env" /> |
| |
| <!-- Capture the computer name in a cross-platform manner --> |
| <property name="env.COMPUTERNAME" value="${env.HOSTNAME}" /> |
| |
| <!-- JavaDoc params --> |
| <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*'" /> |
| <property name="richeditdoc.params" value="-breakiterator -use -tagletpath ./classes -taglet com.ibm.icu.dev.tool.docs.ICUTaglet -group 'Rich Text Editing' 'com.ibm.richtext*'" /> |
| |
| <mkdir dir="${build.dir}" /> |
| |
| <echo message="java home: ${java.home}" /> |
| <echo message="java version: ${java.version}" /> |
| <echo message="ant java version: ${ant.java.version}" /> |
| <echo message="${ant.version}" /> |
| <echo message="${env.COMPUTERNAME} with ${os.name} ${os.version} on ${os.arch}" /> |
| <echo message="clover initstring = '${clover.initstring}'" /> |
| |
| <!-- ## Java version dependent build configuration ##--> |
| |
| <!-- JRE lib version used for building ICU4J --> |
| <condition property="target.rt.version" value="J2SE13"> |
| <contains string="${java.version}" substring="1.3." /> |
| </condition> |
| <condition property="target.rt.version" value="J2SE14"> |
| <contains string="${java.version}" substring="1.4." /> |
| </condition> |
| <condition property="target.rt.version" value="J2SE15"> |
| <contains string="${java.version}" substring="1.5." /> |
| </condition> |
| <condition property="target.rt.version" value="JAVASE6"> |
| <contains string="${java.version}" substring="1.6." /> |
| </condition> |
| |
| <fail message="Failed to detect Java runtime library version used for building ICU4J" |
| unless="target.rt.version" /> |
| <echo message="target runtime environment: ${target.rt.version}" /> |
| |
| <condition property="default.java.build.target"> |
| <equals arg1="${target.rt.version}" arg2="${default.target.rt.version}" /> |
| </condition> |
| |
| <!-- Specification title in manifest file --> |
| <condition property="manifest.specification.title" value="ICU4J Compatible Build for ${target.rt.version}"> |
| <not> |
| <isset property="default.java.build.target" /> |
| </not> |
| </condition> |
| <property name="manifest.specification.title" value="ICU4J" /> |
| |
| <condition property="before.java14"> |
| <or> |
| <equals arg1="${target.rt.version}" arg2="FOUNDATION10"/> |
| <equals arg1="${target.rt.version}" arg2="J2SE13"/> |
| </or> |
| </condition> |
| |
| <condition property="before.java15"> |
| <or> |
| <equals arg1="${target.rt.version}" arg2="FOUNDATION10"/> |
| <equals arg1="${target.rt.version}" arg2="J2SE13"/> |
| <equals arg1="${target.rt.version}" arg2="J2SE14"/> |
| </or> |
| </condition> |
| |
| <!-- JVM arguments for running test cases --> |
| <condition property="test.jvm.args" value="-Xms128m -Xmx160m"> |
| <isset property="before.java14" /> |
| </condition> |
| <condition property="test.jvm.args" value="-ea -Xms128m -Xmx160m -Xdisableexcessivegc"> |
| <and> |
| <not> |
| <isset property="before.java15" /> |
| </not> |
| <equals arg1="${java.vm.vendor}" arg2="IBM Corporation"/> |
| </and> |
| </condition> |
| <condition property="test.jvm.args" value="-ea -Xms128m -Xmx160m"> |
| <not> |
| <isset property="test.jvm.args" /> |
| </not> |
| </condition> |
| |
| <uptodate property="icu4j.resources" targetfile="${src.dir}/com/ibm/icu/impl/data"> |
| <!-- note must not have '/' before 'com' in srcfiles includes arg! --> |
| <srcfiles dir="${build.dir}" includes="${icu4j.data.path}/res_index.res" /> |
| </uptodate> |
| |
| <uptodate property="icu4j.testdata.resources" targetfile="${src.dir}/com/ibm/icu/dev/data"> |
| <!-- note must not have '/' before 'com' in srcfiles includes arg! --> |
| <srcfiles dir="${build.dir}" includes="${icu4j.testdatadata.path}/root.res" /> |
| </uptodate> |
| |
| <uptodate property="icu4j.module.resources" targetfile="${icudatajar.file}"> |
| <srcfiles dir="${build.dir}" includes="${icu4j.data.path}/*.icu" /> |
| </uptodate> |
| <!-- <echo message="icu4j.module.resources result: ${icu4j.module.resources}" /> --> |
| <tstamp> |
| <format property="date.time" pattern="yyyy-MM-dd 'at' hh:mm:ss z" locale="en,US" /> |
| </tstamp> |
| |
| <echo message="Initialized at ${date.time}" /> |
| </target> |
| |
| <target name="displayBuildEnvWarning" unless="default.java.build.target"> |
| <echo message="####################### WARNING #######################" /> |
| <echo message="The JDK version used by the current build environment" /> |
| <echo message="does not match the reference JDK version for this" /> |
| <echo message="ICU4J release. The build outputs may not be identical" /> |
| <echo message="to the official ICU4J binary distribution." /> |
| <echo message="#######################################################" /> |
| </target> |
| |
| <target name="initSrc" |
| depends="buildMangle" |
| description="Run the preprocessor tool to modify Java sources for the Java runtime lib currently used."> |
| <antcall target="displayBuildEnvWarning" /> |
| <!-- Build CodeMangler --> |
| <javac srcdir="${src.dir}" destdir="${build.dir}" classpathref="build.classpath" source="${icu4j.javac.source}" target="${icu4j.javac.target}"> |
| <include name="com/ibm/icu/dev/tool/docs/CodeMangler.java" /> |
| </javac> |
| <!-- Run CodeMangler --> |
| <antcall target="doMangle"> |
| <param name="target.defs" value="${target.rt.version}" /> |
| <param name="input.file" value="@preprocessor.txt" /> |
| </antcall> |
| </target> |
| |
| <target name="normSrc" |
| depends="buildMangle" |
| description="Run the preprocessor to normalize Java sources to the ICU source repository target JDK version"> |
| <antcall target="doMangle"> |
| <param name="target.defs" value="${default.target.rt.version}" /> |
| <param name="input.file" value="@preprocessor.txt" /> |
| </antcall> |
| </target> |
| |
| <target name="buildMangle" depends="initBase"> |
| <javac srcdir="${src.dir}" destdir="${build.dir}" classpathref="build.classpath" source="${icu4j.javac.source}" target="${icu4j.javac.target}"> |
| <include name="com/ibm/icu/dev/tool/docs/CodeMangler.java" /> |
| </javac> |
| </target> |
| |
| <target name="doMangle"> |
| <echo message="Running source code preprocessor for [${target.defs}]"/> |
| <java classname="com.ibm.icu.dev.tool.docs.CodeMangler" classpath="${build.dir}" logError="true"> |
| <arg value="-d${target.defs}" /> |
| <arg value="${input.file}" /> |
| </java> |
| </target> |
| |
| <!-- build everything but dist-related stuff --> |
| <target name="all" depends="core,tests,tools,richedit,demos,jar,docs" description="build all primary targets" /> |
| |
| <target name="resources" depends="icudata,coreData,durationdata,testdata" description="builds all the resources" /> |
| |
| <target name="icudata" depends="initBase" if="icu4j.resources"> |
| <!-- use this target to force resources to be rebuilt --> |
| <unjar src="${icudatajar.file}" dest="${build.dir}" /> |
| <touch file="${build.dir}/${icu4j.data.path}/res_index.res" /> |
| <copy todir="${build.dir}/META-INF"> |
| <fileset dir="${src.dir}/META-INF" includes="**/*" /> |
| </copy> |
| </target> |
| |
| <target name="durationdata" depends="initBase"> |
| <copy todir="${build.dir}/com/ibm/icu/impl/duration/impl/data"> |
| <fileset dir="${src.dir}/com/ibm/icu/impl/duration/impl/data" includes="index.txt, pfd*.xml"/> |
| </copy> |
| </target> |
| |
| <!-- |
| use this target to conditionally build resources only if icu4j.resources is set |
| <target name="icu" depends="init" if="icu4j.resources"> |
| <unjar src="${src.dir}/com/ibm/icu/impl/data/ICULocaleData.jar" dest="${build.dir}"/> |
| <touch file="${build.dir}/com/ibm/icu/impl/data/LocaleElements_index.class"/> |
| </target> |
| --> |
| |
| <!-- core does not build richedit or tests --> |
| <target name="core" depends="init,coreData,icudata,durationdata" description="build core classes and data"> |
| <javac sourcepath="" |
| srcdir="${src.dir}" |
| destdir="${build.dir}" |
| classpathref="build.classpath" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| debug="on" |
| deprecation="off" |
| encoding="ascii"> |
| <include name="com/ibm/icu/charset/**/*.java" unless="before.java14" /> |
| <include name="com/ibm/icu/impl/**/*.java" /> |
| <include name="com/ibm/icu/lang/**/*.java" /> |
| <include name="com/ibm/icu/math/**/*.java" /> |
| <include name="com/ibm/icu/text/**/*.java" /> |
| <include name="com/ibm/icu/util/**/*.java" /> |
| </javac> |
| </target> |
| |
| <target name="tests" depends="core,testdata" description="build tests"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| classpathref="build.classpath" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| debug="on" |
| deprecation="off"> |
| <exclude name="com/ibm/icu/dev/test/charset/**/*.java" if="before.java14" /> |
| <exclude name="com/ibm/icu/dev/test/perf/**/*.java" if="before.java14" /> |
| <include name="com/ibm/icu/dev/test/**/*.java" /> |
| </javac> |
| |
| </target> |
| |
| <target name="demos" depends="core,testdata" unless="before.java14" description="build demos"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| classpathref="build.classpath" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| debug="on" |
| deprecation="off"> |
| <include name="com/ibm/icu/dev/demo/**/*.java" /> |
| <include name="com/ibm/icu/dev/demo/*.java" /> |
| </javac> |
| </target> |
| |
| <target name="indices" depends="icudata,build_indexgenerator"> |
| <java classname="com.ibm.icu.dev.tool.index.IndexGenerator" classpath="${build.dir}" logError="true"> |
| <arg value="${build.dir}/${icu4j.data.path}" /> |
| </java> |
| <java classname="com.ibm.icu.dev.tool.index.IndexGenerator" classpath="${build.dir}" logError="true"> |
| <arg value="${build.dir}/${icu4j.data.path}/rbnf" /> |
| </java> |
| <java classname="com.ibm.icu.dev.tool.index.IndexGenerator" classpath="${build.dir}" logError="true"> |
| <arg value="${build.dir}/${icu4j.data.path}/coll" /> |
| </java> |
| <java classname="com.ibm.icu.dev.tool.index.IndexGenerator" classpath="${build.dir}" logError="true"> |
| <arg value="${build.dir}/${icu4j.data.path}/translit" /> |
| </java> |
| </target> |
| |
| <target name="tools" |
| depends="core" |
| unless="before.java14" |
| description="build tools"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| classpathref="build.classpath" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| debug="on" |
| deprecation="off"> |
| <exclude name="com/ibm/icu/dev/tool/cldr/*" /> |
| <exclude name="com/ibm/icu/dev/tool/localeconverter/*" if="before.java15" /> |
| <include name="com/ibm/icu/dev/tool/**/*.java" /> |
| </javac> |
| </target> |
| |
| <target name="build_indexgenerator" depends="initBase"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| classpathref="build.classpath" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| debug="on" |
| deprecation="off"> |
| <include name="com/ibm/icu/dev/tool/index/IndexGenerator.java" /> |
| </javac> |
| </target> |
| |
| <target name="docs" depends="init,docs13,docs14plus" description="build user javadoc" /> |
| |
| <target name="docs13" if="before.java14"> |
| <mkdir dir="${doc.dir}" /> |
| <javadoc packagenames="com.ibm.icu.lang,com.ibm.icu.text,com.ibm.icu.util,com.ibm.icu.math" |
| sourcepath="${src.dir}" |
| destdir="${doc.dir}" |
| nodeprecatedlist="true" |
| windowtitle="icu4j" |
| doctitle="icu4j" |
| encoding="iso-8859-1" |
| docencoding="iso-8859-1" |
| bottom="<font size=-1>Copyright (c) ${current.year} IBM Corporation and others.</font>" |
| link="http://java.sun.com/j2se/1.3/docs/api" |
| source="1.4" /> |
| </target> |
| |
| <target name="docs14plus" depends="tools" unless="before.java14"> |
| <echo message="doc params: ${doc.params}" /> |
| <mkdir dir="${doc.dir}" /> |
| <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" |
| sourcepath="${src.dir}" |
| destdir="${doc.dir}" |
| nodeprecatedlist="true" |
| windowtitle="icu4j" |
| doctitle="icu4j" |
| encoding="iso-8859-1" |
| docencoding="iso-8859-1" |
| bottom="<font size=-1>Copyright (c) ${current.year} IBM Corporation and others.</font>" |
| additionalparam="${doc.params}" |
| link="http://java.sun.com/j2se/1.5/docs/api" |
| source="1.4" /> |
| </target> |
| |
| <target name="fulldocs" depends="tools" unless="before.java14" description="build all javadoc"> |
| <echo message="doc params: ${doc.params}" /> |
| <mkdir dir="${doc.dir}" /> |
| <javadoc packagenames="com.ibm.icu.*" |
| sourcepath="${src.dir}" |
| destdir="${doc.dir}" |
| nodeprecatedlist="true" |
| windowtitle="icu4j" |
| doctitle="icu4j" |
| encoding="iso-8859-1" |
| docencoding="iso-8859-1" |
| bottom="<font size=-1>Copyright (c) ${current.year} IBM Corporation and others.</font>" |
| additionalparam="${doc.params}" |
| link="http://java.sun.com/j2se/1.5/docs/api" |
| source="1.4" /> |
| </target> |
| |
| <target name="coreData" depends="initBase"> |
| <copy todir="${build.dir}/com/ibm/icu/impl/data"> |
| <fileset dir="${src.dir}/com/ibm/icu/impl/data" includes="*.icu,*.spp,*.brk" excludes="Transliterator_Han_Latin_*.txt" /> |
| </copy> |
| </target> |
| |
| <target name="testdata" depends="initBase"> |
| <copy file="${src.dir}/com/ibm/icu/dev/data/rbbi/english.dict" todir="${build.dir}/com/ibm/icu/dev/data/rbbi" /> |
| <copy file="${src.dir}/com/ibm/icu/dev/test/rbbi/rbbitst.txt" todir="${build.dir}/com/ibm/icu/dev/test/rbbi" /> |
| <copy file="${src.dir}/com/ibm/icu/dev/test/charsetdet/CharsetDetectionTests.xml" todir="${build.dir}/com/ibm/icu/dev/test/charsetdet" /> |
| <copy todir="${build.dir}/com/ibm/icu/dev/test/serializable/data"> |
| <fileset dir="${src.dir}/com/ibm/icu/dev/test/serializable/data"> |
| <include name="**/*.dat" /> |
| </fileset> |
| </copy> |
| <copy file="${src.dir}/com/ibm/icu/dev/data/riwords.txt" todir="${build.dir}/com/ibm/icu/dev/data" /> |
| <copy file="${src.dir}/com/ibm/icu/dev/data/IDNATestInput.txt" todir="${build.dir}/com/ibm/icu/dev/data" /> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| classpathref="build.classpath" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| debug="on" |
| deprecation="off"> |
| <include name="com/ibm/icu/dev/data/*.java" /> |
| <include name="com/ibm/icu/dev/data/resources/*.java" /> |
| </javac> |
| <copy todir="${build.dir}/com/ibm/icu/dev/data"> |
| <fileset dir="${src.dir}/com/ibm/icu/dev/data" includes="*.spp,*.txt" /> |
| </copy> |
| <copy todir="${build.dir}/com/ibm/icu/dev/data/unicode/"> |
| <fileset dir="${src.dir}/com/ibm/icu/dev/data/unicode/" includes="*.txt" /> |
| </copy> |
| <copy file="${src.dir}/com/ibm/icu/dev/test/format/NumberFormatTestCases.txt" todir="${build.dir}/com/ibm/icu/dev/test/format" /> |
| <copy todir="${build.dir}/com/ibm/icu/dev/data/resources/"> |
| <fileset dir="${src.dir}/com/ibm/icu/dev/data/resources/" includes="*.properties" /> |
| </copy> |
| <copy todir="${build.dir}/com/ibm/icu/dev/test/duration/testdata"> |
| <fileset dir="${src.dir}/com/ibm/icu/dev/test/duration/testdata/" includes="testdata*.txt" /> |
| </copy> |
| <!-- use this target to force resources to be rebuilt --> |
| <unjar src="${src.dir}/com/ibm/icu/dev/data/testdata.jar" dest="${build.dir}" /> |
| <touch file="${build.dir}/${icu4j.testdata.path}/root.res" /> |
| </target> |
| |
| <!-- builds richedit and richedit tests --> |
| <target name="richedit" depends="init" description="build richedit classes and tests"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| classpathref="build.classpath" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| debug="on" |
| deprecation="off"> |
| <include name="com/ibm/richtext/**/*.java" /> |
| </javac> |
| <copy todir="${build.dir}/com/ibm/richtext/textapps/resources" overwrite="yes" includeEmptyDirs="no"> |
| <fileset dir="${src.dir}/com/ibm/richtext/textapps/resources" includes="*.red" /> |
| </copy> |
| </target> |
| |
| <!-- Creates the 3 release jar archives for distribution --> |
| <target name="jarRelease" depends="jar,jarSrc,jarDocs" /> |
| |
| <target name="jar" |
| depends="core,indices,charsetsJar" |
| description="build 'icu4j.jar' jar file"> |
| <jar jarfile="${jar.file}" compress="true"> |
| <fileset dir="${basedir}" includes="license.html, unicode-license.txt" /> |
| <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" /> |
| <manifest> |
| <attribute name="Built-By" value="${corp}" /> |
| <section name="common"> |
| <attribute name="Specification-Title" value="${manifest.specification.title}" /> |
| <attribute name="Specification-Version" value="${icu4j.spec.version.string}" /> |
| <attribute name="Specification-Vendor" value="ICU" /> |
| <attribute name="Implementation-Title" value=" ICU for Java" /> |
| <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" /> |
| <attribute name="Implementation-Vendor" value="${corp}" /> |
| <attribute name="Implementation-Vendor-Id" value="com.ibm" /> |
| <attribute name="Copyright-Info" value="${copyright}" /> |
| <attribute name="Sealed" value="false" /> |
| </section> |
| </manifest> |
| </jar> |
| </target> |
| |
| <target name="charsetsJar" |
| depends="core,indices" |
| unless="before.java14" |
| description="build 'icu4j-charstes.jar' jar file"> |
| <echo message="${icu4j.data.path}/cnvalias.icu"/> |
| <jar jarfile="${charsets.jar.file}" compress="true"> |
| <fileset dir="${basedir}" includes="license.html, unicode-license.txt" /> |
| <fileset dir="${build.dir}" |
| includes="META-INF/services/**/*,com/ibm/icu/charset/**/*,${icu4j.data.path}/*.cnv,${icu4j.data.path}/cnvalias.icu" /> |
| <manifest> |
| <attribute name="Built-By" value="${corp}" /> |
| <section name="common"> |
| <attribute name="Specification-Title" value="ICU4J Charsets" /> |
| <attribute name="Specification-Version" value="${icu4j.spec.version.string}" /> |
| <attribute name="Specification-Vendor" value="ICU" /> |
| <attribute name="Implementation-Title" value=" ICU for Java Charsets" /> |
| <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" /> |
| <attribute name="Implementation-Vendor" value="${corp}" /> |
| <attribute name="Implementation-Vendor-Id" value="com.ibm" /> |
| <attribute name="Copyright-Info" value="${copyright}" /> |
| <attribute name="Sealed" value="false" /> |
| </section> |
| </manifest> |
| </jar> |
| </target> |
| |
| <target name="jarTests" depends="tests,jar" description="build runtime 'icu4jtests.jar' jar file"> |
| <jar jarfile="${testjar.file}" compress="true"> |
| <fileset dir="${build.dir}" includes="com/ibm/icu/dev/test/**/*" /> |
| <fileset dir="${build.dir}" includes="com/ibm/icu/dev/data/**/*" /> |
| <manifest> |
| <attribute name="Built-By" value="${corp}" /> |
| <section name="common"> |
| <attribute name="Specification-Title" value="ICU4J Tests" /> |
| <attribute name="Specification-Version" value="${icu4j.spec.version.string}" /> |
| <attribute name="Specification-Vendor" value="ICU" /> |
| <attribute name="Implementation-Title" value=" ICU for Java Tests" /> |
| <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" /> |
| <attribute name="Implementation-Vendor" value="${corp}" /> |
| <attribute name="Implementation-Vendor-Id" value="com.ibm" /> |
| <attribute name="Copyright-Info" value="${copyright}" /> |
| <attribute name="Sealed" value="false" /> |
| </section> |
| </manifest> |
| </jar> |
| </target> |
| |
| <target name="jarSrc" depends="init,normSrc" description="build source 'icu4jsrc.jar' jar file"> |
| <!--Create a jar archive of just the source for distribution. The |
| jar file will be created in the directory above the root ICU4J |
| directory. The exclude pattern ${src.dir}/com/ibm/icu/dev/data/unicode/UnicodeData-*.txt |
| and ${src.dir}/com/ibm/icu/dev/data/unicode/SpecialCasing-*.txt |
| eliminates old archive copies like SpecialCasing-2.txt and |
| UnicodeData-2.1.8.txt --> |
| <jar jarfile="${jarSrc.file}" |
| compress="true"> |
| <fileset dir="."> |
| <exclude name="${richedit.dir}/**/*" /> |
| <exclude name="test_*" /> |
| <exclude name="${src.dir}/com/ibm/icu/dev/data/unicode/UnicodeData-*.txt" /> |
| <exclude name="${src.dir}/com/ibm/icu/dev/data/unicode/SpecialCasing-*.txt" /> |
| <exclude name="${src.dir}/com/ibm/icu/dev/data/unicode/CompositionExclusions-*.txt" /> |
| <exclude name="${obsolete.dir}/**" /> |
| <exclude name="**/*~" /> |
| <exclude name="${src.dir}/**/*.class" /> |
| <exclude name="${build.dir}/**" /> |
| <exclude name="${doc.dir}/**" /> |
| <exclude name="*.jar" /> |
| <exclude name="*.zip" /> |
| <exclude name="*.gz" /> |
| </fileset> |
| <manifest> |
| <attribute name="Built-By" value="${corp}" /> |
| <section name="common"> |
| <attribute name="Specification-Title" value="ICU4J Sources" /> |
| <attribute name="Specification-Version" value="${icu4j.spec.version.string}" /> |
| <attribute name="Specification-Vendor" value="ICU" /> |
| <attribute name="Implementation-Title" value=" ICU for Java source files" /> |
| <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" /> |
| <attribute name="Implementation-Vendor" value="${corp}" /> |
| <attribute name="Implementation-Vendor-Id" value="com.ibm" /> |
| <attribute name="Copyright-Info" value="${copyright}" /> |
| <attribute name="Sealed" value="false" /> |
| </section> |
| </manifest> |
| </jar> |
| </target> |
| |
| <target name="jarDocs" depends="docs" description="build documentation 'icu4jdocs.jar' jar file"> |
| <jar jarfile="${jarDocs.file}" compress="true" basedir="${doc.dir}"> |
| <manifest> |
| <attribute name="Built-By" value="${corp}" /> |
| <section name="common"> |
| <attribute name="Specification-Title" value="ICU4J Documents" /> |
| <attribute name="Specification-Version" value="${icu4j.spec.version.string}" /> |
| <attribute name="Specification-Vendor" value="ICU" /> |
| <attribute name="Implementation-Title" value=" ICU for Java documents" /> |
| <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" /> |
| <attribute name="Implementation-Vendor" value="${corp}" /> |
| <attribute name="Implementation-Vendor-Id" value="com.ibm" /> |
| <attribute name="Copyright-Info" value="${copyright}" /> |
| <attribute name="Sealed" value="false" /> |
| </section> |
| </manifest> |
| </jar> |
| </target> |
| |
| <target name="jarDemos" depends="demos" description="build demos to 'icu4jdemos.jar' jar file"> |
| <jar jarfile="${demos-jar.file}" compress="true"> |
| <fileset dir="${build.dir}" includes="com/ibm/icu/dev/demo/**" /> |
| <manifest> |
| <attribute name="Built-By" value="${corp}" /> |
| <attribute name="Main-Class" value="com.ibm.icu.dev.demo.Launcher" /> |
| <attribute name="Class-Path" value="icu4j.jar" /> |
| <section name="common"> |
| <attribute name="Specification-Title" value="${manifest.specification.title}" /> |
| <attribute name="Specification-Version" value="${icu4j.spec.version.string}" /> |
| <attribute name="Specification-Vendor" value="ICU" /> |
| <attribute name="Implementation-Title" value=" ICU for Java Demos" /> |
| <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" /> |
| <attribute name="Implementation-Vendor" value="${corp}" /> |
| <attribute name="Implementation-Vendor-Id" value="com.ibm" /> |
| <attribute name="Copyright-Info" value="${copyright}" /> |
| <attribute name="Sealed" value="false" /> |
| </section> |
| </manifest> |
| </jar> |
| </target> |
| |
| <target name="translitIMEJar" depends="collator, transliterator" description="build transliterator IME 'icutransime.jar' jar file"> |
| <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" /> |
| <copy file="${src.dir}/com/ibm/icu/dev/tool/ime/translit/Transliterator.properties" todir="${build.dir}/com/ibm/icu/dev/tool/ime/translit" /> |
| <jar jarfile="${ime.translit.jar.file}" compress="true" basedir="${build.dir}" includes="com/ibm/icu/dev/tool/ime/translit/**/*" manifest="${ime.translit.manifest}"> |
| <metainf dir="${src.dir}/com/ibm/icu/dev/tool/ime/translit" includes="services/*" /> |
| </jar> |
| </target> |
| |
| <target name="indicIMEJar" depends="init" description="build indic IME 'icuindicime.jar' jar file"> |
| <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" /> |
| <copy file="${src.dir}/com/ibm/icu/dev/tool/ime/indic/DisplayNames.properties" todir="${build.dir}/com/ibm/icu/dev/tool/ime/indic" /> |
| <jar jarfile="${ime.indic.jar.file}" compress="true" basedir="${build.dir}" includes="com/ibm/icu/dev/tool/ime/indic/**/*" manifest="${ime.indic.manifest}"> |
| <metainf dir="${src.dir}/com/ibm/icu/dev/tool/ime/indic" includes="services/*" /> |
| </jar> |
| </target> |
| |
| <!-- |
| <target name="translitimeStandaloneJar" depends="collator, transliterator"> |
| <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"/> |
| <copy toDir="${build.dir}/com/ibm/icu/dev/tool/ime/translit"> |
| <fileset dir="${src.dir}/com/ibm/icu/dev/tool/ime/translit" includes="*.properties"/> |
| </copy> |
| <jar jarfile="${ime.jar.file}" |
| compress="true" |
| basedir="${build.dir}" |
| 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/**/*" |
| manifest="${ime.translit.manifest}"> |
| <metainf dir="${src.dir}/com/ibm/icu/dev/tool/ime/translit" includes="services/*"/> |
| </jar> |
| </target> |
| --> |
| |
| <!-- jars up richedit but without tests --> |
| <target name="richeditJar" depends="richedit" description="build richedit runtime 'richedit.jar' jar file"> |
| <mkdir dir="${richedit.dir}" /> |
| <jar jarfile="${richedit.jar.file}" compress="true" includes="com/ibm/richtext/**/*" excludes="com/ibm/richtext/test/**/*" basedir="${build.dir}" manifest="${richedit.manifest}" /> |
| </target> |
| |
| <!-- |
| Note: I used to use -linkoffline http://java.sun.com/products/jdk/1.2/docs/api/ C:\jdk1.2.2\docs\api |
| This links to core docs on Sun's site - a very nice feature. But it requires the 1.2 docs to be |
| on the build machine at a known location. |
| --> |
| |
| <!-- the 'public' docs for richedit --> |
| <target name="richeditDocs" depends="init" description="build richedit javadoc"> |
| <mkdir dir="${richedit.doc.dir}" /> |
| <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" |
| sourcepath="${src.dir}" |
| destdir="${richedit.doc.dir}" |
| nodeprecatedlist="true" |
| windowtitle="RichEdit Control" |
| doctitle="RichEdit Control" |
| encoding="iso-8859-1" |
| docencoding="iso-8859-1" |
| bottom="<font size=-1>Copyright (c) 1998-2004 IBM Corporation and others.</font>" /> |
| </target> |
| |
| <!-- richedit alphaworks distribution - jar and docs, but no source --> |
| <target name="richeditZip" depends="richeditJar,richeditDocs" description="build richedit zip file"> |
| <!--Create a zip archive of the richedit jar and readme --> |
| <copy file="license.html" todir="${richedit.dir}" /> |
| <zip zipfile="${richedit.zip.file}" basedir="${richedit.dir}" includes="doc/**/*,richedit.jar,license.html" /> |
| </target> |
| <target name="deleteCore" depends="initBase"> |
| <delete failonerror="no"> |
| <fileset dir="${build.dir}/com/ibm/icu/text" /> |
| <fileset dir="${build.dir}/com/ibm/icu/impl" /> |
| <fileset dir="${build.dir}/com/ibm/icu/math" /> |
| <fileset dir="${build.dir}/com/ibm/icu/lang" /> |
| <fileset dir="${build.dir}/com/ibm/icu/util" /> |
| <fileset dir="${build.dir}/com/ibm/icu/charset" /> |
| </delete> |
| </target> |
| <target name="check" depends="tests, jar, deleteCore" description="run standard icu4j test suite"> |
| <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true"> |
| <jvmarg line="${test.jvm.args}"/> |
| <arg value="-n" /> |
| <classpath> |
| <pathelement path="${java.class.path}/" /> |
| <pathelement location="${jar.file}" /> |
| <pathelement location="${charsets.jar.file}" /> |
| <pathelement location="clover.jar" /> |
| <pathelement path="${build.dir}" /> |
| </classpath> |
| </java> |
| </target> |
| |
| <target name="exhaustiveCheck" depends="tests, jar, deleteCore" description="run standard icu4j test suite in exhaustive mode"> |
| <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true"> |
| <jvmarg line="${test.jvm.args}"/> |
| <arg value="-n" /> |
| <arg value="-e10" /> |
| <classpath> |
| <pathelement path="${java.class.path}/" /> |
| <pathelement location="${jar.file}" /> |
| <pathelement location="${charsets.jar.file}" /> |
| <pathelement location="clover.jar" /> |
| <pathelement path="${build.dir}" /> |
| </classpath> |
| </java> |
| </target> |
| |
| <target name="secure" depends="jarTests" description="builds icu4j.jar and icu4jtests.jar" /> |
| |
| <target name="secureCheck" depends="secure" description="run secure (applet-like) icu4j test suite"> |
| <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true"> |
| <jvmarg line="${test.jvm.args}"/> |
| <!-- jvmarg value="-verbose"/ --> |
| <!-- (use for debugging, LOTS of output) <jvmarg value="-Djava.security.debug=access:trace"/ --> |
| <!-- <jvmarg value="-Djava.security.debug=access:failure,domain"/> --> |
| <jvmarg value="-Djava.security.manager" /> |
| <jvmarg value="-Djava.security.policy=${src.dir}/com/ibm/icu/dev/test/security.policy" /> |
| <!--<jvmarg value="-Djava.security.debug=access:failure"/>--> |
| <arg value="-w" /> |
| <arg value="-nothrow" /> |
| <classpath> |
| <pathelement location="clover.jar" /> |
| <pathelement location="${jar.file}" /> |
| <pathelement location="${charsets.jar.file}" /> |
| <pathelement location="${testjar.file}" /> |
| </classpath> |
| </java> |
| </target> |
| |
| <target name="noData" depends="core, tests" description="builds ICU4J without any data"> |
| <delete failonerror="no"> |
| <fileset dir="${build.dir}/${icu4j.data.path}/../" includes="Holiday*.class" /> |
| <fileset dir="${build.dir}/${icu4j.data.path}/../" includes="BreakIterator*.class" /> |
| <fileset dir="${build.dir}/${icu4j.data.path}" /> |
| <fileset dir="${build.dir}/${icu4j.testdata.path}" /> |
| <fileset dir="${build.dir}/${icu4j.testdata.path}/../" /> |
| </delete> |
| </target> |
| <target name="noDataCheck" depends="noData" description="runs the tests when no data is present"> |
| <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true"> |
| <arg value="-nothrow" /> |
| <arg value="-nodata" /> |
| <classpath> |
| <pathelement location="clover.jar" /> |
| <pathelement location="${build.dir}" /> |
| </classpath> |
| </java> |
| </target> |
| |
| <target name="_requires14" if="before.java14"> |
| <echo message="One of your targets requires JAVA_HOME to be set to JDK version 1.4 or newer" /> |
| </target> |
| |
| <target name="_checktags" depends="tools" unless="before.java14"> |
| <echo message="doc params: ${doc.params}" /> |
| <javadoc sourcepath="${src.dir}" packagenames="com.ibm.icu.*" excludepackagenames="com.ibm.icu.dev.*,com.ibm.icu.impl.*" classpath="${build.dir}" source="1.4"> |
| <doclet name="com.ibm.icu.dev.tool.docs.CheckTags" path="${build.dir}"> |
| <!-- <param name="-short"/> --> |
| </doclet> |
| </javadoc> |
| </target> |
| |
| <target name="checktags" depends="_requires14,_checktags" description="check API tags before release" /> |
| |
| <target name="gatherapi" depends="tools" unless="before.java14" description="run API database generator tool"> |
| <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"> |
| <doclet name="com.ibm.icu.dev.tool.docs.GatherAPIData" path="${build.dir}"> |
| <param name="-name" value="ICU4J ${icu4j.impl.version.string}" /> |
| <param name="-output" value="${api.dir}/icu4j${icu4j.version.number}.api" /> |
| <param name="-internal" /> |
| <param name="-gzip" /> |
| </doclet> |
| </javadoc> |
| </target> |
| |
| <target name="gatherapi.with.version" depends="tools" unless="before.java14" description="run API database generator tool"> |
| <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"> |
| <doclet name="com.ibm.icu.dev.tool.docs.GatherAPIData" path="${build.dir}"> |
| <param name="-name" value="ICU4J ${icu4j.impl.version.string}" /> |
| <param name="-output" value="${api.dir}/icu4j${icu4j.version.number}.stver.api" /> |
| <param name="-internal" /> |
| <param name="-version" /> |
| </doclet> |
| </javadoc> |
| </target> |
| |
| <target name="apireport" depends="tools, gatherapi" unless="beofre.java14" description="run API report generator tool"> |
| <java classname="com.ibm.icu.dev.tool.docs.ReportAPI" classpath="${build.dir}" failonerror="true"> |
| <arg value="-old:" /> |
| <arg value="${api.dir}/icu4j${icu4j.previous.version.number}.api.gz" /> |
| <arg value="-new:" /> |
| <arg value="${api.dir}/icu4j${icu4j.version.number}.api.gz" /> |
| <arg value="-html" /> |
| <arg value="-internal" /> |
| <arg value="-out:" /> |
| <arg value="${api.report.out}" /> |
| </java> |
| </target> |
| |
| <target name="clean" depends="initBase" description="remove all build targets"> |
| <delete dir="${build.dir}" /> |
| <delete dir="${doc.dir}" /> |
| <delete file="${jar.file}" /> |
| <delete file="${charsets.jar.file}" /> |
| <delete dir="${richedit.dir}" /> |
| <delete file="${testjar.file}" /> |
| <delete file="${jarSrc.file}" /> |
| |
| <delete dir="${eclipse.projects.dir}" /> |
| <delete dir="${wrapper.build.dir}" /> |
| <delete file="${zipTestSrc.file}" /> |
| <delete file="${jdk.wrapper.jar.file}" /> |
| <delete file="${fragment.jar.file}"/> |
| |
| <delete dir="${tzu.bin.dir}" /> |
| <delete file="${tzu.bin.zip.file}" /> |
| <delete file="${tzu.src.zip.file}" /> |
| </target> |
| |
| <target name="moduleJar" depends="initBase" description="modular build of 'icu4j.jar' jar file"> |
| <jar jarfile="${jar.file}" compress="true" includes="com/ibm/icu/util/**/*,com/ibm/icu/text/**/*,com/ibm/icu/math/**/*,com/ibm/icu/impl/**/*,com/ibm/icu/lang/**/*" basedir="${build.dir}"> |
| <manifest> |
| <attribute name="Built-By" value="${corp}" /> |
| <section name="common"> |
| <attribute name="Specification-Title" value="ICU4J Modularized Build" /> |
| <attribute name="Specification-Version" value="${icu4j.spec.version.string}" /> |
| <attribute name="Specification-Vendor" value="ICU" /> |
| <attribute name="Implementation-Title" value=" ICU for Java Module" /> |
| <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" /> |
| <attribute name="Implementation-Vendor" value="${corp}" /> |
| <attribute name="Implementation-Vendor-Id" value="com.ibm" /> |
| <attribute name="Copyright-Info" value="${copyright}" /> |
| <attribute name="Sealed" value="false" /> |
| </section> |
| </manifest> |
| </jar> |
| </target> |
| |
| <patternset id="common.test.sources"> |
| <include name="com/ibm/icu/dev/test/TestFmwk.java" /> |
| <include name="com/ibm/icu/dev/test/TestLog.java" /> |
| <include name="com/ibm/icu/dev/test/TestUtil.java" /> |
| <include name="com/ibm/icu/dev/test/UTF16Util.java" /> |
| <include name="com/ibm/icu/dev/test/TestAll.java" /> |
| </patternset> |
| |
| <!-- Module: BreakIterator --> |
| <target name="breakIterator" depends="init,copyFullPropsData" description="modular build of break iterator services"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| classpathref="build.classpath" |
| debug="on" |
| deprecation="off"> |
| <include name="com/ibm/icu/impl/UCharacterName.java"/> |
| <include name="com/ibm/icu/impl/data/*Break*.java"/> |
| <include name="com/ibm/icu/lang/**/*.java"/> |
| <include name="com/ibm/icu/text/*BreakIterator*.java"/> |
| <include name="com/ibm/icu/text/UnicodeSetIterator.java"/> |
| </javac> |
| <copy file="${src.dir}/com/ibm/icu/impl/data/th.brk" |
| todir="${build.dir}/com/ibm/icu/impl/data/"/> |
| </target> |
| |
| <target name="breakIteratorTests" depends="breakIterator" description="test breakIterator modular build target"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| classpathref="build.classpath" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| debug="on" deprecation="off"> |
| <patternset refid="common.test.sources" /> |
| <include name="com/ibm/icu/dev/test/rbbi/**/*.java"/> |
| </javac> |
| <copy file="${src.dir}/com/ibm/icu/dev/test/rbbi/rbbitst.txt" |
| todir="${build.dir}/com/ibm/icu/dev/test/rbbi"/> |
| </target> |
| |
| <!-- Module: Calendar --> |
| <target name="copyCalendarData" depends="initBase"> |
| <!-- Calendar does not require Collation data, BreakIterator data --> |
| <unjar src="${icudatajar.file}" dest="${build.dir}"> |
| <patternset> |
| <include name="**/pnames.icu" /> |
| <include name="**/ucase.icu" /> |
| <include name="**/unorm.icu" /> |
| <include name="**/uprops.icu" /> |
| <include name="**/unames.icu" /> |
| <include name="**/*.res" /> |
| <exclude name="**/coll/*.res" /> |
| <exclude name="**/translit/*.res" /> |
| <exclude name="**/rbnf/*.res" /> |
| </patternset> |
| </unjar> |
| <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" /> |
| </target> |
| |
| <target name="calendar" depends="init,copyCalendarData" description="modular build of calendar services"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| classpathref="build.classpath" |
| debug="on" |
| deprecation="off"> |
| <include name="com/ibm/icu/impl/data/*Holiday*.java"/> |
| <include name="com/ibm/icu/lang/UCharacter.java"/> |
| <include name="com/ibm/icu/text/UnicodeSetIterator.java"/> |
| <include name="com/ibm/icu/text/NumberFormatServiceShim.java"/> |
| <include name="com/ibm/icu/util/*Calendar*.java"/> |
| </javac> |
| </target> |
| |
| <target name="calendarTests" depends="calendar,testdata" description="test calendar modular build target"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| classpathref="build.classpath" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| debug="on" |
| deprecation="off"> |
| <patternset refid="common.test.sources" /> |
| <include name="com/ibm/icu/dev/test/calendar/**/*.java" /> |
| </javac> |
| </target> |
| |
| <!-- Module: Collator --> |
| <target name="copyCollatorData" depends="initBase"> |
| <unjar src="${icudatajar.file}" dest="${build.dir}"> |
| <patternset> |
| <include name="**/*.icu" /> |
| <include name="**/coll/*.res" /> |
| <include name="**/*.brk" /> |
| </patternset> |
| </unjar> |
| <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" /> |
| </target> |
| |
| <target name="collator" depends="init,copyCollatorData" description="modular build of collator services"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| classpathref="build.classpath" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| debug="on" |
| deprecation="off"> |
| <include name="com/ibm/icu/impl/data/*Break*.java"/> |
| <include name="com/ibm/icu/text/*BreakIterator*.java"/> |
| <include name="com/ibm/icu/text/*Collation*.java"/> |
| <include name="com/ibm/icu/text/*Collator*.java"/> |
| <include name="com/ibm/icu/text/Normalizer.java"/> |
| <include name="com/ibm/icu/text/Replaceable.java"/> |
| <include name="com/ibm/icu/text/ReplaceableString.java"/> |
| <include name="com/ibm/icu/text/UnicodeFilter.java"/> |
| <include name="com/ibm/icu/text/UnicodeSetIterator.java"/> |
| <include name="com/ibm/icu/text/UTF16.java"/> |
| </javac> |
| </target> |
| |
| <target name="collatorTests" depends="collator,testdata" description="test collator modular build target"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| classpathref="build.classpath" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| debug="on" |
| deprecation="off"> |
| <patternset refid="common.test.sources" /> |
| <include name="com/ibm/icu/dev/test/collator/**/*.java"/> |
| <include name="java,com/ibm/icu/dev/test/search/**/*.java"/> |
| <exclude name="com/ibm/icu/dev/test/collator/RandomCollator.java"/> |
| </javac> |
| </target> |
| |
| <!-- Module: Compression --> |
| <target name="compression" depends="init" description="modular build of compression services"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| classpathref="build.classpath" |
| debug="on" |
| deprecation="off"> |
| <include name="com/ibm/icu/text/SCSU.java"/> |
| <include name="com/ibm/icu/text/UnicodeCompressor.java"/> |
| <include name="com/ibm/icu/text/UnicodeDecompressor.java"/> |
| </javac> |
| </target> |
| |
| <target name="compressionTests" depends="compression" description="test compression modular build target"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| classpathref="build.classpath" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| debug="on" |
| deprecation="off"> |
| <patternset refid="common.test.sources" /> |
| <include name="com/ibm/icu/dev/test/compression/**/*.java"/> |
| </javac> |
| </target> |
| |
| <!-- Module: Format --> |
| <target name="copyFormatData" depends="initBase" if="icu4j.module.resources"> |
| <!-- Format does not require BreakIterator data --> |
| <unjar src="${icudatajar.file}" dest="${build.dir}"> |
| <patternset> |
| <include name="**/*.icu" /> |
| <include name="**/*.res" /> |
| <exclude name="**/translit/*.res" /> |
| </patternset> |
| </unjar> |
| <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" /> |
| </target> |
| |
| <target name="format" depends="init,copyFormatData" description="modular build of formatting services"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| classpathref="build.classpath" |
| debug="on" |
| deprecation="off"> |
| <include name="com/ibm/icu/lang/UCharacter.java"/> |
| <include name="com/ibm/icu/text/*Collator*.java"/> |
| <include name="com/ibm/icu/text/*Format*.java"/> |
| <include name="com/ibm/icu/text/UnicodeSetIterator.java"/> |
| <include name="com/ibm/icu/util/CalendarServiceShim.java"/> </javac> |
| </target> |
| |
| <target name="formatTests" depends="format,testdata" description="test format modular build target"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| classpathref="build.classpath" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| debug="on" |
| deprecation="off"> |
| <patternset refid="common.test.sources" /> |
| <include name="com/ibm/icu/dev/test/format/**/*.java"/> |
| <exclude name="com/ibm/icu/dev/test/format/GlobalizationPreferencesTest.java"/> |
| </javac> |
| <copy file="${src.dir}/com/ibm/icu/dev/test/format/NumberFormatTestCases.txt" |
| todir="${build.dir}/com/ibm/icu/dev/test/format"/> |
| </target> |
| |
| <!-- Module: Normalizer --> |
| <target name="normalizerData" depends="initBase"> |
| <unjar src="${icudatajar.file}" dest="${build.dir}"> |
| <patternset> |
| <include name="**/ucase.icu" /> |
| <include name="**/unorm.icu" /> |
| <include name="**/uprops.icu" /> |
| <include name="**/pnames.icu" /> |
| <include name="**/unames.icu" /> |
| </patternset> |
| </unjar> |
| <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" /> |
| </target> |
| |
| <target name="normalizer" depends="init,normalizerData" description="modular build of normalizer services"> |
| <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/**/*" |
| excludes="**/CVS/**/*,com/ibm/icu/lang/UScriptRun.java, com/ibm/icu/impl/ICUListResourceBundle.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" |
| srcdir="${src.dir}" |
| destdir="${build.dir}" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| classpathref="build.classpath" |
| debug="on" |
| deprecation="off"> |
| <include name="com/ibm/icu/lang/**/*"/> |
| <include name="com/ibm/icu/text/CanonicalIterator.java"/> |
| <include name="com/ibm/icu/text/Normalizer.java"/> |
| <include name="com/ibm/icu/text/Replaceable.java"/> |
| <include name="com/ibm/icu/text/ReplaceableString.java"/> |
| <include name="com/ibm/icu/text/UCharacterIterator.java"/> |
| <include name="com/ibm/icu/text/UForwardCharacterIterator.java"/> |
| <include name="com/ibm/icu/text/UnicodeFilter.java"/> |
| <include name="com/ibm/icu/text/UnicodeSetIterator.java"/> |
| <include name="com/ibm/icu/text/UTF16.java"/> |
| </javac> |
| </target> |
| |
| <target name="normalizerTests" depends="normalizer"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| classpathref="build.classpath" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| debug="on" |
| deprecation="off"> |
| <patternset refid="common.test.sources" /> |
| <include name="com/ibm/icu/dev/test/normalizer/**/*.java"/> |
| <exclude name="com/ibm/icu/dev/test/normalizer/TestDeprecatedNormalizerAPI.java"/> |
| </javac> |
| </target> |
| |
| <!-- Module: Basic Properties / Full Properties --> |
| <target name="copyBasicPropsData" depends="initBase"> |
| <unjar src="${icudatajar.file}" dest="${build.dir}"> |
| <patternset> |
| <include name="**/unorm.icu" /> |
| <include name="**/uprops.icu" /> |
| <include name="**/ubidi.icu" /> |
| <include name="**/ucase.icu" /> |
| <include name="**/pnames.icu" /> |
| <include name="**/unames.icu" /> |
| </patternset> |
| </unjar> |
| <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" /> |
| </target> |
| |
| <target name="copyFullPropsData" depends="initBase"> |
| <unjar src="${icudatajar.file}" dest="${build.dir}"> |
| <patternset> |
| <include name="**/unorm.icu" /> |
| <include name="**/uprops.icu" /> |
| <include name="**/ubidi.icu" /> |
| <include name="**/ucase.icu" /> |
| <include name="**/unames.icu" /> |
| <include name="**/pnames.icu" /> |
| <include name="**/*.res" /> |
| <include name="**/*.brk" /> |
| <exclude name="**/coll/*.res" /> |
| <exclude name="**/translit/*.res" /> |
| <exclude name="**/rbnf/*.res" /> |
| </patternset> |
| </unjar> |
| <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" /> |
| </target> |
| |
| <target name="propertiesBasic" depends="init,propertiesClasses,copyBasicPropsData" description="modular build of basic character properties"> |
| </target> |
| |
| <target name="propertiesFull" depends="init,propertiesClasses,copyFullPropsData" description="modular build of full character properties"> |
| </target> |
| |
| <target name="propertiesBasicTests" depends="propertiesBasic,propertiesTests" description="modular build of basic character properties"> |
| </target> |
| |
| <target name="propertiesFullTests" depends="propertiesFull,propertiesTests" description="modular build of full character properties"> |
| </target> |
| |
| <target name="propertiesClasses"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| classpathref="build.classpath" |
| debug="on" |
| deprecation="off"> |
| <include name="com/ibm/icu/impl/data/*Break*.java"/> |
| <include name="com/ibm/icu/lang/**/*"/> |
| <include name="com/ibm/icu/text/*BreakDictionary*.java"/> |
| <include name="com/ibm/icu/text/*BreakIterator*.java"/> |
| <include name="com/ibm/icu/text/UnicodeSetIterator.java"/> |
| </javac> |
| </target> |
| |
| <target name="propertiesTests"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| classpathref="build.classpath" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| debug="on" |
| deprecation="off"> |
| <patternset refid="common.test.sources" /> |
| <include name="com/ibm/icu/dev/test/lang/**/*.java"/> |
| <exclude name="com/ibm/icu/dev/test/lang/TestUScriptRun.java"/> |
| </javac> |
| <copy file="${src.dir}/com/ibm/icu/dev/data/unicode/SpecialCasing.txt" |
| todir="${build.dir}/com/ibm/icu/dev/data/unicode/" /> |
| </target> |
| |
| <!-- Module: Transliterator --> |
| <target name="copyTranslitData" depends="initBase"> |
| <!-- Calendar does not require Collation data, BreakIterator data --> |
| <unjar src="${icudatajar.file}" dest="${build.dir}"> |
| <patternset> |
| <include name="**/unorm.icu" /> |
| <include name="**/uprops.icu" /> |
| <include name="**/ubidi.icu" /> |
| <include name="**/ucase.icu" /> |
| <include name="**/unames.icu" /> |
| <include name="**/pnames.icu" /> |
| <include name="**/*.brk" /> |
| <include name="**/translit/*.res" /> |
| </patternset> |
| </unjar> |
| <touch file="${build.dir}/${icu4j.data.path}/uprops.icu" /> |
| </target> |
| |
| <target name="transliterator" depends="init,propertiesClasses,copyTranslitData" description="modular build of unicode transform services"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| classpathref="build.classpath" |
| debug="on" |
| deprecation="off"> |
| <include name="com/ibm/icu/impl/*Iterator*.java"/> |
| <include name="com/ibm/icu/impl/*Property*.java"/> |
| <include name="com/ibm/icu/impl/data/ResourceReader.java"/> |
| <include name="com/ibm/icu/impl/UtilityExtensions.java"/> |
| <include name="com/ibm/icu/text/*Transliterator*.java"/> |
| <include name="com/ibm/icu/text/UnicodeSetIterator.java"/> |
| </javac> |
| </target> |
| |
| <target name="transliteratorTests" depends="transliterator" description = "test transliterator modular build target"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| classpathref="build.classpath" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| debug="on" |
| deprecation="off"> |
| <patternset refid="common.test.sources" /> |
| <include name="com/ibm/icu/dev/test/translit/**/*.java"/> |
| <exclude name="com/ibm/icu/dev/test/translit/UnicodeFilterLogic*.java"/> |
| </javac> |
| </target> |
| |
| <!-- Module: StringPrep, IDNA --> |
| <target name="copyStringPrepData" depends="initBase"> |
| <unjar src="${icudatajar.file}" dest="${build.dir}"> |
| <patternset> |
| <include name="**/*.spp" /> |
| <include name="**/ubidi.icu" /> |
| <include name="**/ucase.icu" /> |
| <include name="**/unorm.icu" /> |
| <include name="**/uprops.icu" /> |
| <include name="**/pnames.icu" /> |
| <include name="**/unames.icu" /> |
| </patternset> |
| </unjar> |
| </target> |
| |
| <target name="stringPrep" depends="init,normalizer,copyStringPrepData" description="modular build of stringprep services"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| classpathref="build.classpath" |
| debug="on" |
| deprecation="off"> |
| <include name="com/ibm/icu/impl/*StringPrep*.java"/> |
| <include name="com/ibm/icu/text/*IDNA*.java"/> |
| <include name="com/ibm/icu/text/*StringPrep*.java"/> |
| </javac> |
| </target> |
| |
| <target name="stringPrepTests" depends="stringPrep" description="test stringPrep modular build target"> |
| <javac srcdir="${src.dir}" |
| destdir="${build.dir}" |
| classpathref="build.classpath" |
| source="${icu4j.javac.source}" |
| target="${icu4j.javac.target}" |
| debug="on" |
| deprecation="off"> |
| <patternset refid="common.test.sources" /> |
| <include name="com/ibm/icu/dev/test/stringprep/**/*.java"/> |
| </javac> |
| <unjar src="${src.dir}/com/ibm/icu/dev/data/testdata.jar" dest="${build.dir}"> |
| <patternset> |
| <include name="**/*.spp"/> |
| <include name="**/idna_rules.res"/> |
| </patternset> |
| </unjar> |
| </target> |
| |
| |
| |
| <target name="excludeCharset" depends="core" description="excludes charset module from ICU4J"> |
| <delete failonerror="yes"> |
| <fileset dir="${build.dir}/com/ibm/icu/impl/data/icudt${icu4j.data.version.number}b/"> |
| <include name="*.cnv" /> |
| <include name="cnvalias.icu" /> |
| </fileset> |
| <fileset dir="${build.dir}/com/ibm/icu/charset" /> |
| <fileset dir="${build.dir}/META-INF/" /> |
| </delete> |
| </target> |
| <target name="excludeCharsetTests" depends="tests" description="excludes charset test from ICU4J"> |
| <delete failonerror="yes"> |
| <fileset dir="${build.dir}/com/ibm/icu/dev/test/charset" /> |
| </delete> |
| </target> |
| |
| <target name="moduleCheck" depends="initBase" description="run tests for module jar"> |
| <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true"> |
| <jvmarg line="${test.jvm.args}"/> |
| <arg value="-nothrow" /> |
| <arg value="-nodata" /> |
| <classpath> |
| <pathelement location="${build.dir}" /> |
| </classpath> |
| </java> |
| </target> |
| |
| <!-- build the extra Transliterator data pertaining to Han-Latin transliteration --> |
| <target name="extraTransliteratorData" depends="initBase" description="build han-to-latin transliterator data (normally omitted)"> |
| <copy todir="${build.dir}/com/ibm/icu/impl/data"> |
| <fileset dir="${src.dir}/com/ibm/icu/impl/data" includes="Transliterator_Han_Latin_*.txt" /> |
| </copy> |
| </target> |
| |
| <!-- Target for builing XLIFF2ICUConverter Jar --> |
| |
| <target name="xliff" depends="init" description="build xliff converter tool"> |
| <javac sourcepath="" srcdir="${src.dir}" destdir="${build.dir}" classpathref="build.classpath" source="${icu4j.javac.source}" target="${icu4j.javac.target}" debug="on" deprecation="off"> |
| |
| <include name="com/ibm/icu/dev/tool/localeconverter/CalculateCRC32.java" /> |
| <include name="com/ibm/icu/dev/tool/localeconverter/XLIFF2ICUConverter.java" /> |
| <include name="com/ibm/icu/dev/tool/UOption.java" /> |
| <include name="com/ibm/icu/dev/tool/xmlcomparator/XMLValidator.java" /> |
| </javac> |
| <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}"> |
| <manifest> |
| <attribute name="Built-By" value="${corp}" /> |
| <section name="common"> |
| <attribute name="Specification-Title" value="XLIFF To ICU Converter" /> |
| <attribute name="Specification-Version" value="${icu4j.spec.version.string}" /> |
| <attribute name="Specification-Vendor" value="ICU" /> |
| <attribute name="Implementation-Title" value="XLIFF2ICUConverter" /> |
| <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" /> |
| <attribute name="Implementation-Vendor" value="${corp}" /> |
| <attribute name="Implementation-Vendor-Id" value="com.ibm" /> |
| <attribute name="Copyright-Info" value="${copyright}" /> |
| <attribute name="Sealed" value="false" /> |
| </section> |
| </manifest> |
| </jar> |
| |
| <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}"> |
| <manifest> |
| <attribute name="Built-By" value="${corp}" /> |
| <section name="common"> |
| <attribute name="Specification-Title" value="XLIFF To ICU Converter Sources" /> |
| <attribute name="Specification-Version" value="${icu4j.spec.version.string}" /> |
| <attribute name="Specification-Vendor" value="ICU" /> |
| <attribute name="Implementation-Title" value="XLIFF2ICUConverter Sources" /> |
| <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" /> |
| <attribute name="Implementation-Vendor" value="${corp}" /> |
| <attribute name="Implementation-Vendor-Id" value="com.ibm" /> |
| <attribute name="Copyright-Info" value="${copyright}" /> |
| <attribute name="Sealed" value="false" /> |
| </section> |
| </manifest> |
| </jar> |
| </target> |
| |
| <!-- Target for builing Utilities Jar for CLDR --> |
| |
| <target name="cldrUtil" depends="init" description="build Utilities for CLDR"> |
| <javac srcdir="${src.dir}" destdir="${build.dir}" source="${icu4j.javac.source}" target="${icu4j.javac.target}" classpathref="build.classpath" debug="on" deprecation="off"> |
| |
| <include name="com/ibm/icu/dev/test/TestFmwk.java" /> |
| <include name="com/ibm/icu/dev/test/util/*.java" /> |
| <include name="com/ibm/icu/dev/tool/UOption.java" /> |
| </javac> |
| <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}"> |
| <manifest> |
| <attribute name="Built-By" value="${corp}" /> |
| <section name="common"> |
| <attribute name="Specification-Title" value="Utilities for CLDR Tools" /> |
| <attribute name="Specification-Version" value="${icu4j.spec.version.string}" /> |
| <attribute name="Specification-Vendor" value="ICU" /> |
| <attribute name="Implementation-Title" value="CLDR Utilities" /> |
| <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" /> |
| <attribute name="Implementation-Vendor" value="${corp}" /> |
| <attribute name="Implementation-Vendor-Id" value="com.ibm" /> |
| <attribute name="Copyright-Info" value="${copyright}" /> |
| <attribute name="Sealed" value="false" /> |
| </section> |
| </manifest> |
| </jar> |
| </target> |
| |
| <!--Target for building jars --> |
| <target name="distJars" depends="jarSrc, jar, jarDocs" /> |
| |
| <!-- Target for checking the loading of bundles from the default package. |
| This is hack to get around Eclipse's build problems. |
| --> |
| <target name="defaultPackage" depends="tests" description="Tests for loading resources in the default package"> |
| <copy file="${src.dir}/com/ibm/icu/dev/test/util/TestDefaultPackageLoading.jpp" tofile="${src.dir}/TestDefaultPackageLoading.java" /> |
| <copy file="${src.dir}/com/ibm/icu/dev/test/util/TestData_en.jpp" tofile="${src.dir}/TestData_en.java" /> |
| <javac srcdir="${src.dir}" destdir="${build.dir}" classpathref="build.classpath" source="${icu4j.javac.source}" target="${icu4j.javac.target}" debug="on" deprecation="off"> |
| |
| <exclude name="**/CVS/**/*" /> |
| <include name="TestData_en.java" /> |
| <include name="TestDefaultPackageLoading.java" /> |
| </javac> |
| <!-- copy the file to default package and test if we can load it --> |
| <copy file="${build.dir}/com/ibm/icu/dev/data/testdata/te.res" todir="${build.dir}/" /> |
| <!-- copy the file up one level and test if java style base name loading works --> |
| <copy file="${build.dir}/com/ibm/icu/dev/data/testdata/te.res" tofile="${build.dir}/com/ibm/icu/dev/data/TestData_bge.res" /> |
| </target> |
| |
| <target name="defaultPackageCheck" depends="tests, defaultPackage" description="Run Tests for loading resources in the default package"> |
| <!--run the tests --> |
| <java classname="TestDefaultPackageLoading" fork="yes" failonerror="true"> |
| <jvmarg line="${test.jvm.args}"/> |
| <arg value="-n" /> |
| <classpath> |
| <pathelement path="${java.class.path}/" /> |
| <pathelement location="clover.jar" /> |
| <pathelement path="${build.dir}" /> |
| </classpath> |
| </java> |
| </target> |
| |
| <!-- convert @deprecated @draft tags to @provisional --> |
| <target name="swatDeprecated" depends="initBase, tools" unless="before.java14"> |
| <java classname="com.ibm.icu.dev.tool.docs.SwatDeprecated" classpath="${build.dir}" failonerror="true"> |
| <arg value="-src" /> |
| <arg value="${src.dir}" /> |
| <arg value="-dst" /> |
| <arg value="${src.dir}" /> |
| <arg value="-overwrite" /> |
| <arg value="-verbose" /> |
| </java> |
| </target> |
| |
| <!-- convert @provisional tags to @deprecated --> |
| <target name="restoreDeprecated" depends="initBase, tools" unless="before.java14"> |
| <java classname="com.ibm.icu.dev.tool.docs.SwatDeprecated" classpath="${build.dir}" failonerror="true"> |
| <arg value="-prov" /> |
| <arg value="-src" /> |
| <arg value="${src.dir}" /> |
| <arg value="-dst" /> |
| <arg value="${src.dir}" /> |
| <arg value="-overwrite" /> |
| <arg value="-verbose" /> |
| </java> |
| </target> |
| |
| <!-- Eclipse plug-in build targets --> |
| <!-- for building eclipse distribution --> |
| <target name="initIcuEclipseVersion" depends="initBase"> |
| <tstamp> |
| <format property="build.date" pattern="yyyyMMdd"/> |
| </tstamp> |
| <property name="icu4j.eclipse.build.version.string" value="${icu4j.plugin.impl.version.string}.v${build.date}"/> |
| </target> |
| |
| <target name="eclipseProjects" |
| depends="eclipseCoreProject,eclipseTestProject,eclipseWrapperProject,eclipseFragmentProject" |
| description="create all eclipse icu projects"/> |
| |
| <target name="eclipsePDEBuild" |
| depends="initEclipsePDEBuildEnv, eclipseProjects" |
| description="build icu4j plugin files"> |
| |
| <!-- copy OSGi jar file to baseLocation --> |
| <mkdir dir="${eclipse.projects.dir}/baseLocation/features"/> |
| <mkdir dir="${eclipse.projects.dir}/baseLocation/plugins"/> |
| <copy toDir="${eclipse.projects.dir}/baseLocation/plugins" file="${eclipse.osgi.jar}"/> |
| |
| <!-- copy PDE build script files and run the build --> |
| <pathconvert property="eclipse.projects.dir.full" dirsep="/"> |
| <path location="${basedir}/${eclipse.projects.dir}"/> |
| </pathconvert> |
| <antcall target="runEclipsePDEBuild"> |
| <param name="icu.plugin.id" value="com.ibm.icu"/> |
| </antcall> |
| <antcall target="runEclipsePDEBuild"> |
| <param name="icu.plugin.id" value="com.ibm.icu.base"/> |
| </antcall> |
| <antcall target="runEclipsePDEBuild"> |
| <param name="icu.plugin.id" value="com.ibm.icu.jse4"/> |
| </antcall> |
| </target> |
| |
| <target name="initEclipsePDEBuildEnv" |
| depends="initBase,initEclipseHome,initEclipseLauncher,initEclipseOSGiJar,initEclipsePDE" |
| description="Initialize eclipse PDE build environment"> |
| <echo message="[PDE build configuration properties]"/> |
| <echo message=" Eclipse home: ${eclipse.home}"/> |
| <echo message=" Launcher jar: ${eclipse.launcher}"/> |
| <echo message=" OSGi bundle jar: ${eclipse.osgi.jar}"/> |
| <echo message=" Base OS: ${eclipse.baseos}"/> |
| <echo message=" Base WS: ${eclipse.basews}"/> |
| <echo message=" Base ARCH: ${eclipse.basearch}"/> |
| </target> |
| |
| <target name="initEclipseHome" |
| if="env.ECLIPSE_HOME" |
| unless="eclipse.home" |
| description="Initialize the property eclipse.home from the environment variable ECLIPSE_HOME"> |
| <property name="eclipse.home" value="${env.ECLIPSE_HOME}"/> |
| </target> |
| |
| <target name="initEclipseLauncher" |
| if="eclipse.home" |
| description="Locate org.eclipse.equinox.launcher jar file for eclipse 3.3 and beyond"> |
| <first id="equinox.launcher"> |
| <fileset dir="${eclipse.home}/plugins"> |
| <include name="org.eclipse.equinox.launcher_*.jar"/> |
| </fileset> |
| </first> |
| <pathconvert property="eclipse.launcher" dirsep="/" refid="equinox.launcher"/> |
| </target> |
| |
| <target name="initEclipseOSGiJar" |
| if="eclipse.home" |
| description="Locate org.eclipse.osgi plugin jar file"> |
| <first id="osgi.bundle"> |
| <fileset dir="${eclipse.home}/plugins"> |
| <include name="org.eclipse.osgi_*.jar"/> |
| </fileset> |
| </first> |
| <pathconvert property="eclipse.osgi.jar" dirsep="/" refid="osgi.bundle"/> |
| </target> |
| |
| <target name="initEclipsePDE" |
| depends="locateEclipsePDE" |
| if="eclipse.pde.dir" |
| description="Set up PDE runtime arguments"> |
| <property file="${eclipse.pde.dir}/templates/headless-build/build.properties" prefix="pde.template"/> |
| <property name="eclipse.baseos" value="${pde.template.baseos}"/> |
| <property name="eclipse.basews" value="${pde.template.basews}"/> |
| <property name="eclipse.basearch" value="${pde.template.basearch}"/> |
| </target> |
| |
| <target name="locateEclipsePDE" |
| if="eclipse.home" |
| description="Locate org.eclipse.pde.build plug-in and set the property 'eclipse.pde.dir'"> |
| <first id="eclipse.pde.plugin.dir"> |
| <dirset dir="${eclipse.home}/plugins"> |
| <include name="org.eclipse.pde.build_*"/> |
| </dirset> |
| </first> |
| <pathconvert property="eclipse.pde.dir" dirsep="/" refid="eclipse.pde.plugin.dir"/> |
| </target> |
| |
| <target name="runEclipsePDEBuild"> |
| <mkdir dir="${eclipse.projects.dir}/buildScripts/${icu.plugin.id}"/> |
| <copy toDir="${eclipse.projects.dir}/buildScripts/${icu.plugin.id}"> |
| <fileset dir="${eclipse.dir}/pdebuild" includes="**/*"/> |
| <filterset> |
| <filter token="PLUGIN_ID" value="${icu.plugin.id}"/> |
| <filter token="BUILD_DIR" value="${eclipse.projects.dir.full}"/> |
| <filter token="BUILD_TYPE" value="ICU4J"/> |
| <filter token="BUILD_ID" value="${icu.plugin.id}"/> |
| <filter token="BASE_LOCATION" value="${eclipse.projects.dir.full}/baseLocation"/> |
| <filter token="BASE_OS" value="${eclipse.baseos}"/> |
| <filter token="BASE_WS" value="${eclipse.basews}"/> |
| <filter token="BASE_ARCH" value="${eclipse.basearch}"/> |
| </filterset> |
| </copy> |
| |
| <java jar="${eclipse.launcher}" fork="true" failonerror="true"> |
| <arg value="-application"/> |
| <arg value="org.eclipse.ant.core.antRunner"/> |
| <arg value="-buildfile"/> |
| <arg value="${eclipse.pde.dir}/scripts/build.xml"/> |
| <arg value="-Dbuilder=${eclipse.projects.dir.full}/buildScripts/${icu.plugin.id}"/> |
| </java> |
| </target> |
| |
| <target name="eclipseMangle" depends="buildMangle"> |
| <antcall target="doMangle"> |
| <param name="target.defs" value="FOUNDATION10" /> |
| <param name="input.file" value="@preprocessor.txt" /> |
| </antcall> |
| </target> |
| |
| <target name="eclipseCore" depends="coreData,icudata,durationdata,eclipseMangle"> |
| <javac includes="com/ibm/icu/util/**/*.java,com/ibm/icu/text/**/*.java,com/ibm/icu/math/**/*.java,com/ibm/icu/impl/**/*.java,com/ibm/icu/lang/*.java" |
| compiler="javac1.3" |
| srcdir="${src.dir}" |
| destdir="${build.dir}" |
| classpathref="build.classpath" |
| bootclasspath="ee.foundation.jar" |
| source="1.3" |
| target="1.1" |
| debug="on" |
| deprecation="off" |
| encoding="ascii" /> |
| <antcall target="indices" /> |
| <jar jarfile="${jar.file}" compress="true"> |
| <fileset dir="${basedir}" includes="license.html, unicode-license.txt" /> |
| <fileset dir="${build.dir}"> |
| <exclude name="META-INF/services/**/*" /> |
| <exclude name="com/ibm/icu/charset/**/*" /> |
| <exclude name="${icu4j.data.path}/*.cnv" /> |
| <exclude name="${icu4j.data.path}/cnvalias.icu" /> |
| <include name="com/ibm/icu/util/**/*" /> |
| <include name="com/ibm/icu/text/**/*" /> |
| <include name="com/ibm/icu/math/**/*" /> |
| <include name="com/ibm/icu/impl/**/*" /> |
| <include name="com/ibm/icu/lang/**/*" /> |
| </fileset> |
| <manifest> |
| <attribute name="Built-By" value="${corp}" /> |
| <section name="common"> |
| <attribute name="Specification-Title" value="ICU4J Eclipse Build" /> |
| <attribute name="Specification-Version" value="${icu4j.spec.version.string}" /> |
| <attribute name="Specification-Vendor" value="ICU" /> |
| <attribute name="Implementation-Title" value="ICU for Java Eclipse plug-in" /> |
| <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" /> |
| <attribute name="Implementation-Vendor" value="${corp}" /> |
| <attribute name="Implementation-Vendor-Id" value="com.ibm" /> |
| <attribute name="Copyright-Info" value="${copyright}" /> |
| <attribute name="Sealed" value="false" /> |
| </section> |
| </manifest> |
| </jar> |
| </target> |
| |
| <target name="eclipseCoreProject" |
| depends="eclipseCore,initIcuEclipseVersion" |
| description="gather eclipse icu core project files"> |
| <delete failonerror="no"> |
| <fileset dir="${eclipse.projects.dir}/plugins/com.ibm.icu" /> |
| <fileset dir="${eclipse.projects.dir}/features/com.ibm.icu" /> |
| </delete> |
| |
| <!-- PLUGIN FILES --> |
| <!-- icu source --> |
| <copy toDir="${eclipse.projects.dir}/plugins/com.ibm.icu/src/com/ibm/icu"> |
| <fileset dir="src/com/ibm/icu" |
| includes="impl/**/*,lang/**/*,math/**/*,text/**/*,util/**/*" |
| excludes="**/.svn/**/*,**/*.jar,**/Transliterator_Han_Latin*.txt" /> |
| </copy> |
| <!-- icu data --> |
| <copy todir="${eclipse.projects.dir}/plugins/com.ibm.icu/src/com/ibm/icu/impl/data"> |
| <fileset dir="${build.dir}/com/ibm/icu/impl/data" |
| includes="**/*.brk,**/*.icu,**/*.res,**/*.spp,**/*.txt" |
| excludes="**/Transliterator_Han_Latin*.txt" /> |
| </copy> |
| <!-- plugin project --> |
| <copy todir="${eclipse.projects.dir}/plugins/com.ibm.icu"> |
| <fileset dir="${eclipse.dir}/plugins/com.ibm.icu" excludes="**/.svn/**/*" /> |
| <filterset> |
| <filter token="BUILD_VERSION" value="${icu4j.eclipse.build.version.string}" /> |
| <filter token="COPYRIGHT" value="${copyright.eclipse}" /> |
| <filter token="IMPL_VERSION" value="${icu4j.impl.version.string}" /> |
| <filter token="DATA_VERSION_NUMBER" value="${icu4j.data.version.number}" /> |
| </filterset> |
| </copy> |
| <!-- license --> |
| <copy file="license.html" |
| todir="${eclipse.projects.dir}/plugins/com.ibm.icu/about_files" /> |
| <!-- ucd terms --> |
| <copy file="src/com/ibm/icu/dev/data/unicode/ucdterms.txt" |
| todir="${eclipse.projects.dir}/plugins/com.ibm.icu/about_files" /> |
| <!-- about --> |
| <copy file="${eclipse.dir}/misc/about_icu.html" |
| tofile="${eclipse.projects.dir}/plugins/com.ibm.icu/about.html" /> |
| |
| <!-- FEATURE FILES --> |
| <copy todir="${eclipse.projects.dir}/features/com.ibm.icu"> |
| <fileset dir="${eclipse.dir}/features/com.ibm.icu" excludes="**/.svn/**/*" /> |
| <filterset> |
| <filter token="BUILD_VERSION" value="${icu4j.eclipse.build.version.string}" /> |
| <filter token="COPYRIGHT" value="${copyright.eclipse}" /> |
| <filter token="DATA_VERSION_NUMBER" value="${icu4j.data.version.number}" /> |
| </filterset> |
| </copy> |
| </target> |
| |
| <!-- ensure eclipse wrapper code builds with foundation1.0/java1.3 --> |
| <target name="eclipseWrapper" depends="initBase"> |
| <mkdir dir="${wrapper.build.dir}" /> |
| <javac includes="com/ibm/icu/util/**/*.java,com/ibm/icu/text/**/*.java" |
| compiler="javac1.3" |
| srcdir="${eclipse.dir}/plugins/com.ibm.icu.base/src" |
| destdir="${wrapper.build.dir}" |
| classpathref="build.classpath" |
| bootclasspath="ee.foundation.jar" |
| source="1.3" |
| target="1.1" |
| debug="on" |
| deprecation="off" |
| encoding="ascii" /> |
| <jar jarfile="${jdk.wrapper.jar.file}" |
| compress="true" |
| basedir="${wrapper.build.dir}" /> |
| </target> |
| |
| <target name="eclipseWrapperTest" depends="eclipseWrapper"> |
| <!-- TODO: build the wrapper test code this ant target --> |
| </target> |
| |
| <target name="eclipseWrapperProject" |
| depends="eclipseWrapper,eclipseWrapperTest,initIcuEclipseVersion" |
| description="gather eclipse icu core project files"> |
| <delete failonerror="no"> |
| <fileset dir="${eclipse.projects.dir}/plugins/com.ibm.icu.base" /> |
| <fileset dir="${eclipse.projects.dir}/plugins/com.ibm.icu.base.tests" /> |
| <fileset dir="${eclipse.projects.dir}/features/com.ibm.icu.base" /> |
| </delete> |
| <!-- PLUGIN FILES --> |
| <!-- source and project files --> |
| <copy todir="${eclipse.projects.dir}/plugins"> |
| <fileset dir="${eclipse.dir}/plugins" |
| includes="com.ibm.icu.base/**/*,com.ibm.icu.base.tests/**/*" |
| excludes="**/.svn/**/*" /> |
| <filterset> |
| <filter token="BUILD_VERSION" value="${icu4j.eclipse.build.version.string}" /> |
| <filter token="COPYRIGHT" value="${copyright.eclipse}" /> |
| <filter token="IMPL_VERSION" value="${icu4j.impl.version.string}" /> |
| <filter token="DATA_VERSION_NUMBER" value="${icu4j.data.version.number}" /> |
| </filterset> |
| </copy> |
| <!-- license --> |
| <copy file="license.html" |
| todir="${eclipse.projects.dir}/plugins/com.ibm.icu.base/about_files" /> |
| <!-- about --> |
| <copy file="${eclipse.dir}/misc/about_icu_base.html" |
| tofile="${eclipse.projects.dir}/plugins/com.ibm.icu.base/about.html" /> |
| |
| <!-- FEATURE FILES --> |
| <!-- project files --> |
| <copy todir="${eclipse.projects.dir}/features/com.ibm.icu.base"> |
| <fileset dir="${eclipse.dir}/features/com.ibm.icu.base" |
| excludes="**/.svn/**/*"/> |
| <filterset> |
| <filter token="BUILD_VERSION" value="${icu4j.eclipse.build.version.string}" /> |
| <filter token="COPYRIGHT" value="${copyright.eclipse}" /> |
| <filter token="DATA_VERSION_NUMBER" value="${icu4j.data.version.number}" /> |
| </filterset> |
| </copy> |
| </target> |
| |
| <target name="eclipseTests" |
| depends="eclipseCore,testdata,eclipseMangle" |
| description="build tests trimmed for eclipse API"> |
| <!-- TODO: we should actually use ee.foundation.jar for eclipse env --> |
| <javac includes="com/ibm/icu/dev/test/**/*.java" |
| excludes="com/ibm/icu/dev/test/charset/**/*.*,com/ibm/icu/dev/test/perf/**/*.*" |
| srcdir="${src.dir}" |
| destdir="${build.dir}" |
| source="1.3" |
| target="1.3" |
| classpathref="build.classpath" |
| debug="on" |
| deprecation="off" /> |
| <antcall target="indices"/> |
| <jar jarfile="${testjar.file}" compress="true"> |
| <fileset dir="${build.dir}" includes="com/ibm/icu/dev/test/**/*" /> |
| <fileset dir="${build.dir}" includes="com/ibm/icu/dev/data/**/*" /> |
| <manifest> |
| <attribute name="Built-By" value="${corp}" /> |
| <section name="common"> |
| <attribute name="Specification-Title" value="ICU4J Eclipse Tests"/> |
| <attribute name="Specification-Version" value="${icu4j.spec.version.string}"/> |
| <attribute name="Specification-Vendor" value="ICU"/> |
| <attribute name="Implementation-Title" value="ICU for Java Eclipse plug-in Tests"/> |
| <attribute name="Implementation-Version" value="${icu4j.impl.version.string}"/> |
| <attribute name="Implementation-Vendor" value="${corp}"/> |
| <attribute name="Implementation-Vendor-Id" value="com.ibm"/> |
| <attribute name="Copyright-Info" value="${copyright}"/> |
| <attribute name="Sealed" value="false"/> |
| </section> |
| </manifest> |
| </jar> |
| </target> |
| |
| <target name="eclipseTestProject" depends="eclipseTests,eclipseZipTestSrc" description="gather eclipse icu test project files"> |
| <delete failonerror="no"> |
| <fileset dir="${eclipse.projects.dir}/plugins/com.ibm.icu.tests"/> |
| </delete> |
| <!-- copy eclipse test source and project files --> |
| <copy toDir="${eclipse.projects.dir}/plugins/com.ibm.icu.tests"> |
| <fileset dir="${eclipse.dir}/plugins/com.ibm.icu.tests" |
| excludes="**/.svn/**/"/> |
| <filterset> |
| <filter token="COPYRIGHT" value="${copyright.eclipse}"/> |
| </filterset> |
| </copy> |
| <!-- copy icu test jar --> |
| <copy toDir="${eclipse.projects.dir}/plugins/com.ibm.icu.tests" file="${testjar.file}"/> |
| <!-- copy icu test source zip --> |
| <copy toDir="${eclipse.projects.dir}/plugins/com.ibm.icu.tests" file="${zipTestSrc.file}"/> |
| </target> |
| |
| <target name="eclipseFragmentMangle" depends="buildMangle"> |
| <antcall target="initSrc"/> |
| <antcall target="doMangle"> |
| <param name="target.defs" value="ECLIPSE_FRAGMENT" /> |
| <param name="input.file" value="@eclipseFragment.txt" /> |
| </antcall> |
| </target> |
| |
| <target name="eclipseFragment" depends="eclipseCore,eclipseFragmentMangle"> |
| <javac compiler="javac1.4" |
| srcdir="${src.dir}" |
| destdir="${build.dir}" |
| classpathref="build.classpath" |
| source="1.3" |
| target="1.2" |
| debug="on" |
| deprecation="off" |
| encoding="ascii" |
| listfiles="true"> |
| <include name="com/ibm/icu/impl/DateNumberFormat.java" /> |
| <include name="com/ibm/icu/impl/duration/BasicDurationFormat.java" /> |
| <include name="com/ibm/icu/impl/ICUResourceBundleReader.java" /> |
| <include name="com/ibm/icu/impl/PatternTokenizer.java" /> |
| <include name="com/ibm/icu/impl/Utility.java" /> |
| <include name="com/ibm/icu/lang/UCharacter.java" /> |
| <include name="com/ibm/icu/math/BigDecimal.java" /> |
| <include name="com/ibm/icu/text/Bidi.java" /> |
| <include name="com/ibm/icu/text/ChineseDateFormat.java" /> |
| <include name="com/ibm/icu/text/DateFormat.java" /> |
| <include name="com/ibm/icu/text/DateTimePatternGenerator.java" /> |
| <include name="com/ibm/icu/text/DecimalFormat.java" /> |
| <include name="com/ibm/icu/text/DigitList.java" /> |
| <include name="com/ibm/icu/text/MessageFormat.java" /> |
| <include name="com/ibm/icu/text/NumberFormat.java" /> |
| <include name="com/ibm/icu/text/RuleBasedBreakIterator.java" /> |
| <include name="com/ibm/icu/text/RuleBasedNumberFormat.java" /> |
| <include name="com/ibm/icu/text/SimpleDateFormat.java" /> |
| <include name="com/ibm/icu/text/UnicodeSet.java" /> |
| <include name="com/ibm/icu/text/UTF16.java" /> |
| </javac> |
| |
| <!-- collect fragment specific files --> |
| <jar jarfile="${fragment.jar.file}" compress="true"> |
| <fileset dir="${build.dir}"> |
| <include name="com/ibm/icu/impl/DateNumberFormat.class" /> |
| <include name="com/ibm/icu/impl/duration/BasicDurationFormat.class" /> |
| <include name="com/ibm/icu/impl/ICUResourceBundleReader.class" /> |
| <include name="com/ibm/icu/impl/PatternTokenizer.class" /> |
| <include name="com/ibm/icu/impl/Utility.class" /> |
| <include name="com/ibm/icu/lang/UCharacter.class" /> |
| <include name="com/ibm/icu/math/BigDecimal.class" /> |
| <include name="com/ibm/icu/text/Bidi.class" /> |
| <include name="com/ibm/icu/text/ChineseDateFormat.class" /> |
| <include name="com/ibm/icu/text/DateFormat.class" /> |
| <include name="com/ibm/icu/text/DateTimePatternGenerator.class" /> |
| <include name="com/ibm/icu/text/DecimalFormat.class" /> |
| <include name="com/ibm/icu/text/DigitList.class" /> |
| <include name="com/ibm/icu/text/MessageFormat.class" /> |
| <include name="com/ibm/icu/text/NumberFormat.class" /> |
| <include name="com/ibm/icu/text/RuleBasedBreakIterator.class" /> |
| <include name="com/ibm/icu/text/RuleBasedNumberFormat.class" /> |
| <include name="com/ibm/icu/text/SimpleDateFormat.class" /> |
| <include name="com/ibm/icu/text/UnicodeSet.class" /> |
| <include name="com/ibm/icu/text/UTF16.class" /> |
| |
| <include name="com/ibm/icu/lang/UCharacter$*.class" /> |
| <include name="com/ibm/icu/text/Bidi$*.class" /> |
| <include name="com/ibm/icu/text/ChineseDateFormat$*.class" /> |
| <include name="com/ibm/icu/text/DateFormat$*.class" /> |
| <include name="com/ibm/icu/text/DateTimePatternGenerator$*.class" /> |
| <include name="com/ibm/icu/text/MessageFormat$*.class" /> |
| <include name="com/ibm/icu/text/NumberFormat$*.class" /> |
| <include name="com/ibm/icu/text/SimpleDateFormat$*.class" /> |
| <include name="com/ibm/icu/text/UnicodeSet$*.class" /> |
| <include name="com/ibm/icu/text/UTF16$*.class" /> |
| </fileset> |
| </jar> |
| </target> |
| |
| <target name="eclipseFragmentProject" |
| depends="eclipseFragment,initIcuEclipseVersion" |
| description="gather eclipse icu fragment project files"> |
| <delete failonerror="no"> |
| <fileset dir="${eclipse.projects.dir}/plugins/com.ibm.icu.jse4" /> |
| <fileset dir="${eclipse.projects.dir}/features/com.ibm.icu.jse4" /> |
| </delete> |
| |
| <!-- PLUGIN FILES --> |
| <!-- source --> |
| <copy toDir="${eclipse.projects.dir}/plugins/com.ibm.icu.jse4/src"> |
| <!-- TODO: Better way to collect files? --> |
| <fileset dir="${src.dir}"> |
| <include name="com/ibm/icu/impl/DateNumberFormat.java" /> |
| <include name="com/ibm/icu/impl/duration/BasicDurationFormat.java" /> |
| <include name="com/ibm/icu/impl/ICUResourceBundleReader.java" /> |
| <include name="com/ibm/icu/impl/PatternTokenizer.java" /> |
| <include name="com/ibm/icu/impl/Utility.java" /> |
| <include name="com/ibm/icu/lang/UCharacter.java" /> |
| <include name="com/ibm/icu/math/BigDecimal.java" /> |
| <include name="com/ibm/icu/text/Bidi.java" /> |
| <include name="com/ibm/icu/text/ChineseDateFormat.java" /> |
| <include name="com/ibm/icu/text/DateFormat.java" /> |
| <include name="com/ibm/icu/text/DateTimePatternGenerator.java" /> |
| <include name="com/ibm/icu/text/DecimalFormat.java" /> |
| <include name="com/ibm/icu/text/DigitList.java" /> |
| <include name="com/ibm/icu/text/MessageFormat.java" /> |
| <include name="com/ibm/icu/text/NumberFormat.java" /> |
| <include name="com/ibm/icu/text/RuleBasedBreakIterator.java" /> |
| <include name="com/ibm/icu/text/RuleBasedNumberFormat.java" /> |
| <include name="com/ibm/icu/text/SimpleDateFormat.java" /> |
| <include name="com/ibm/icu/text/UnicodeSet.java" /> |
| <include name="com/ibm/icu/text/UTF16.java" /> |
| </fileset> |
| </copy> |
| <!-- project files --> |
| <copy todir="${eclipse.projects.dir}/plugins/com.ibm.icu.jse4"> |
| <fileset dir="${eclipse.dir}/plugins/com.ibm.icu.jse4" |
| excludes="**/.svn/**/*" /> |
| <filterset> |
| <filter token="BUILD_VERSION" value="${icu4j.eclipse.build.version.string}" /> |
| <filter token="COPYRIGHT" value="${copyright.eclipse}" /> |
| <filter token="IMPL_VERSION" value="${icu4j.impl.version.string}" /> |
| <filter token="DATA_VERSION_NUMBER" value="${icu4j.data.version.number}" /> |
| </filterset> |
| </copy> |
| <!-- license --> |
| <copy file="license.html" |
| todir="${eclipse.projects.dir}/plugins/com.ibm.icu.jse4/about_files" /> |
| <!-- ucd terms --> |
| <copy file="src/com/ibm/icu/dev/data/unicode/ucdterms.txt" |
| todir="${eclipse.projects.dir}/plugins/com.ibm.icu.jse4/about_files" /> |
| <!-- about --> |
| <copy file="${eclipse.dir}/misc/about_icu.html" |
| tofile="${eclipse.projects.dir}/plugins/com.ibm.icu.jse4/about.html" /> |
| |
| <!-- FEATURE FILES --> |
| <!-- project files --> |
| <copy todir="${eclipse.projects.dir}/features/com.ibm.icu.jse4"> |
| <fileset dir="${eclipse.dir}/features/com.ibm.icu.jse4" |
| excludes="**/.svn/**/*" /> |
| <filterset> |
| <filter token="BUILD_VERSION" value="${icu4j.eclipse.build.version.string}" /> |
| <filter token="COPYRIGHT" value="${copyright.eclipse}" /> |
| <filter token="DATA_VERSION_NUMBER" value="${icu4j.data.version.number}" /> |
| </filterset> |
| </copy> |
| </target> |
| |
| <target name="eclipseZipTestSrc" depends="eclipseMangle" description="build zip of test sources for debugging"> |
| <!-- for eclipse --> |
| <zip destfile="${zipTestSrc.file}" compress="true" basedir="${src.dir}" includes="com/ibm/icu/dev/test/**/*" excludes="com/ibm/icu/dev/test/cldr/**/*, com/ibm/icu/dev/test/perf/**/*" /> |
| </target> |
| |
| <target name="gatherICU4JWrapperAPI" depends="tools" unless="before.java14"> |
| <javadoc classpath="${build.dir}" sourcepath="${src.dir}" packagenames="com.ibm.icu.text,com.ibm.icu.util" source="1.4"> |
| <doclet name="com.ibm.icu.dev.tool.docs.GatherAPIData" path="${build.dir}"> |
| <param name="-name" value="ICU4J 3.6" /> |
| <param name="-base" value="com.ibm.icu" /> |
| <param name="-output" value="${api.dir}/icu4j36w_i.api" /> |
| <param name="-filter" value="BreakIterator|CollationKey|Collator|DateFormat|DecimalFormat|MessageFormat|NumberFormat|SimpleDateFormat|StringTokenizer|Calendar|TimeZone|ULocale|DateFormatSymbols|DecimalFormatSymbols|Calendar|TimeZone" /> |
| <!-- param name="-gzip"/ --> |
| </doclet> |
| </javadoc> |
| </target> |
| |
| <target name="gatherEclipseWrapperAPI" depends="tools" unless="before.java14"> |
| <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"> |
| <doclet name="com.ibm.icu.dev.tool.docs.GatherAPIData" path="${build.dir}"> |
| <param name="-name" value="ICU4J 3.6 Wrapper" /> |
| <param name="-base" value="com.ibm.icu" /> |
| <param name="-output" value="${api.dir}/icu4j36w_e.api" /> |
| <!-- param name="-gzip"/ --> |
| </doclet> |
| </javadoc> |
| </target> |
| |
| <target name="reportWrapperAPI" depends="tools" unless="before.java14"> |
| <java classname="com.ibm.icu.dev.tool.docs.ReportAPI" classpath="${build.dir}" failonerror="true"> |
| <arg value="-old:" /> |
| <arg value="${api.dir}/icu4j${icu4j.previous.version.number}w_i.api" /> |
| <arg value="-new:" /> |
| <arg value="${api.dir}/icu4j${icu4j.version.number}w_e.api" /> |
| <arg value="-html" /> |
| <arg value="-out:" /> |
| <arg value="${api.dir}/icu4j_compare_${icu4j.previous.version.number}_wrapper_java.html" /> |
| </java> |
| </target> |
| |
| <!-- Test suite launcher targets --> |
| <target name="runCheck" depends="tests"> |
| <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true"> |
| <jvmarg line="${test.jvm.args}"/> |
| <arg value="-n" /> |
| <classpath> |
| <pathelement path="${java.class.path}/" /> |
| <pathelement location="${jar.file}" /> |
| <pathelement location="${charsets.jar.file}" /> |
| <pathelement location="clover.jar" /> |
| <pathelement path="${build.dir}" /> |
| </classpath> |
| </java> |
| </target> |
| |
| <target name="eclipseRunCheck" depends="eclipseTests"> |
| <java classname="com.ibm.icu.dev.test.TestAll" fork="yes" failonerror="true"> |
| <jvmarg line="${test.jvm.args}"/> |
| <arg value="-n" /> |
| <classpath> |
| <pathelement path="${java.class.path}/" /> |
| <pathelement location="icu4j.jar" /> |
| <pathelement location="clover.jar" /> |
| <pathelement path="${build.dir}" /> |
| </classpath> |
| </java> |
| </target> |
| |
| <target name="eclipseCompat" depends="initBase, eclipseCore" /> |
| <target name="eclipseCompatTests" depends="initBase, eclipseTests" /> |
| <target name="eclipseCompatCheck" depends="initBase, eclipseCompat, eclipseCompatTests, deleteCore, eclipseRunCheck" /> |
| |
| <!-- ICU TimeZone Update Utility targets --> |
| <target name="icutzu" depends="init" description="build ICU4J TimeZone Update Utility Classes"> |
| <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" /> |
| </target> |
| |
| <target name="icutzudata" depends="initBase, jar"> |
| <mkdir dir="${tzu.bin.dir}" /> |
| <copy todir="${tzu.bin.dir}"> |
| <fileset dir="${src.dir}/${tzu.src.path}"> |
| <include name="*.cmd" /> |
| <include name="*.bat" /> |
| <include name="*.sh" /> |
| <include name="*.gif" /> |
| <include name="*.txt" /> |
| <include name="*.html" /> |
| <include name="*.css" /> |
| </fileset> |
| <fileset file="${basedir}/${jar.file}" /> |
| <fileset file="${build.dir}/${icu4j.data.path}/zoneinfo.res" /> |
| </copy> |
| </target> |
| |
| <target name="icutzujar" depends="initBase, icutzu, icutzudata" description="build ICU4J TimeZone Update Utility classes"> |
| <jar jarfile="${tzu.bin.dir}/${tzu.jar.file}" compress="true"> |
| <fileset dir="${basedir}" includes="license.html" /> |
| <fileset dir="${build.dir}" includes="${tzu.src.path}/**/*.class" /> |
| <manifest> |
| <attribute name="Main-Class" value="com.ibm.icu.dev.tool.tzu.ICUTZUMain" /> |
| <attribute name="Built-By" value="${corp}" /> |
| <section name="common"> |
| <attribute name="Specification-Title" value="ICU4J TimeZone Update Utility" /> |
| <attribute name="Specification-Version" value="${icu4j.spec.version.string}" /> |
| <attribute name="Specification-Vendor" value="ICU" /> |
| <attribute name="Implementation-Title" value="ICUTZU" /> |
| <attribute name="Implementation-Version" value="${icu4j.impl.version.string}" /> |
| <attribute name="Implementation-Vendor" value="${corp}" /> |
| <attribute name="Implementation-Vendor-Id" value="com.ibm" /> |
| <attribute name="Copyright-Info" value="${copyright}" /> |
| <attribute name="Sealed" value="false" /> |
| </section> |
| </manifest> |
| </jar> |
| <echo message="Please see ${tzu.bin.dir} directory for the files." /> |
| </target> |
| |
| <target name="icutzucheck" depends="icutzujar" description="check ICU4J TimeZone Update Utility"> |
| <echo>Testing ICUTZU ...</echo> |
| |
| <mkdir dir="${tzu.temp.dir}" /> |
| <copy todir="${tzu.temp.dir}"> |
| <fileset file="${tzu.bin.dir}/DirectorySearch.txt" /> |
| <fileset file="${tzu.bin.dir}/zoneinfo.res" /> |
| </copy> |
| |
| <get dest="${tzu.bin.dir}/zoneinfo.res" src="http://icu-project.org/tzdata/2006a/be/zoneinfo.res" /> |
| <copy todir="${tzu.test.dir}" file="${tzu.bin.dir}/icu4j.jar" /> |
| <echo file="${tzu.bin.dir}/DirectorySearch.txt">+${tzu.test.dir}</echo> |
| |
| <echo>Running ICUTZU in Discovery Mode ...</echo> |
| <exec dir="${tzu.bin.dir}" executable="${java.home}/bin/java"> |
| <arg value="-cp" /> |
| <arg path="${tzu.bin.dir}/${jar.file};${tzu.bin.dir}/${tzu.jar.file}" /> |
| <arg value="-Dnogui=true" /> |
| <arg value="-Ddiscoveronly=true" /> |
| <arg value="-Dsilentpatch=true" /> |
| <arg value="-Doffline=true" /> |
| <arg value="com.ibm.icu.dev.tool.tzu.ICUTZUMain" /> |
| <arg file="${tzu.bin.dir}" /> |
| <arg value="DirectorySearch.txt" /> |
| <arg value="ICUList.txt" /> |
| <arg value="zoneinfo.res" /> |
| <arg value="Temp" /> |
| <arg value="icu.gif" /> |
| </exec> |
| |
| <echo>Running ICUTZU in Patch Mode ...</echo> |
| <exec dir="${tzu.bin.dir}" executable="${java.home}/bin/java"> |
| <arg value="-cp" /> |
| <arg path="${tzu.bin.dir}/${jar.file};${tzu.bin.dir}/${tzu.jar.file}" /> |
| <arg value="-Dnogui=true" /> |
| <arg value="-Ddiscoveronly=false" /> |
| <arg value="-Dsilentpatch=true" /> |
| <arg value="-Doffline=true" /> |
| <arg value="com.ibm.icu.dev.tool.tzu.ICUTZUMain" /> |
| <arg file="${tzu.bin.dir}" /> |
| <arg value="DirectorySearch.txt" /> |
| <arg value="ICUList.txt" /> |
| <arg value="zoneinfo.res" /> |
| <arg value="Temp" /> |
| <arg value="icu.gif" /> |
| </exec> |
| |
| <echo>Comparing results ...</echo> |
| <unjar src="${tzu.test.dir}/${jar.file}" dest="${tzu.test.dir}"> |
| <patternset> |
| <include name="**/zoneinfo.res" /> |
| </patternset> |
| </unjar> |
| <copy todir="${tzu.test.dir}" file="${tzu.test.dir}/${icu4j.data.path}/zoneinfo.res" /> |
| <condition property="tzu.zoneinfo.match"> |
| <filesmatch file1="${tzu.bin.dir}/zoneinfo.res" file2="${tzu.test.dir}/zoneinfo.res" /> |
| </condition> |
| |
| <fail unless="tzu.zoneinfo.match">ICUTZU test failed. ${tzu.bin.dir}/zoneinfo.res does not match ${tzu.test.dir}/zoneinfo.res</fail> |
| |
| <echo>Cleaning up ...</echo> |
| <delete> |
| <fileset file="${tzu.bin.dir}/DirectorySearch.txt" /> |
| <fileset file="${tzu.bin.dir}/zoneinfo.res" /> |
| </delete> |
| <copy todir="${tzu.bin.dir}"> |
| <fileset file="${tzu.temp.dir}/DirectorySearch.txt" /> |
| <fileset file="${tzu.temp.dir}/zoneinfo.res" /> |
| </copy> |
| <delete includeEmptyDirs="true"> |
| <fileset dir="${tzu.temp.dir}" /> |
| <fileset dir="${tzu.test.dir}" /> |
| </delete> |
| |
| <echo>ICUTZU test successful.</echo> |
| </target> |
| |
| <target name="icutzusrc-dist" depends="init" description="ICUTZU source distributable zip"> |
| <zip zipfile="${basedir}/${tzu.src.zip.file}" basedir="${basedir}" includes="${src.dir}/${tzu.src.path}/**/*" /> |
| </target> |
| |
| <target name="icutzubin-dist" depends="icutzujar" description="ICUTZU binaries distributable zip"> |
| <zip zipfile="${basedir}/${tzu.bin.zip.file}" basedir="${tzu.bin.dir}" includes="*" /> |
| </target> |
| </project> |