| <!-- see readme.txt --> |
| |
| |
| <project name="CLDR" default="util" basedir="."> |
| <target name="init"> |
| <tstamp /> |
| <property name="src.dir" value="." /> |
| <property name="build.dir" value="classes" /> |
| <property name="libs.dir" value="libs" /> |
| <property name="jar.file" value="cldr.jar" /> |
| <property name="jarSrc.file" value="cldr-src.jar" /> |
| <property name="jarDocs.file" value="cldr-docs.jar" /> |
| <property name="doc.dir" value="doc" /> |
| <property name="doc.params" value="" /> |
| <!-- Load local definitions from an optional build.properties file, if |
| available. build.properties is NOT checked into CVS. --> |
| <property file="build.properties" /> |
| <!-- Load environment variables --> |
| <property environment="env" /> |
| |
| <path id="build.classpath"> |
| <pathelement path="${build.dir}" /> |
| <pathelement path="${libs.dir}" /> |
| </path> |
| |
| <property name="CLDR_TOOLS" value="." /> <!-- this is cldr-tools --> |
| <property name="CLDR_DIR" value="${env.CLDR_DIR}" /> |
| <property file="${CLDR_TOOLS}/cldr-tools.properties" /> |
| <property name="JVM_OPTIONS" |
| value="-DCLDR_DIR=${CLDR_DIR} -DDEBUG=false -Dverbose=false" /> |
| <property name="env.JVM_EXTRA_OPTIONS" value="" /> |
| <property name="JVM_EXTRA_OPTIONS" value="${env.JVM_EXTRA_OPTIONS}" /> |
| <property name="jvm_options" value="${JVM_OPTIONS} ${JVM_EXTRA_OPTIONS}" /> |
| |
| <property name="tooltmp.dir" value="tmp" /> |
| |
| <mkdir dir="${build.dir}" /> |
| |
| <path id="project.class.path"> |
| <pathelement path="${java.class.path}/" /> |
| <pathelement path="${build.dir}" /> |
| <fileset dir="${libs.dir}" includes="*.jar" /> <!-- unittest local --> |
| </path> |
| <echo message="java home: ${java.home}" /> |
| <echo message="java version: ${java.version}" /> |
| <echo message="jvm_options: ${jvm_options}" /> |
| <echo message="ant java version: ${ant.java.version}" /> |
| <echo message="${ant.version}" /> |
| <echo message="java.class.path: ${java.class.path}/" /> |
| <echo message="java.class.path: ${java.class.path}/" /> |
| <echo message="build.dir: ${build.dir}" /> |
| </target> |
| |
| <!-- build everything but dist-related stuff --> |
| <target name="all" depends="util,ant-plugin,tool,posix,icu,json,test" |
| description="build all primary targets" /> |
| <target name="ant-plugin" depends="init" description="build utility classes"> |
| <javac includeantruntime="false" includes="org/unicode/cldr/ant/*.java" |
| excludes="**/CVS/**/*" srcdir="${src.dir}" destdir="${build.dir}" |
| classpathref="project.class.path" source="1.8" target="1.8" debug="on" |
| deprecation="off" encoding="UTF-8" /> |
| </target> |
| <target name="util" depends="init" description="build utility classes"> |
| <javac includeantruntime="false" |
| includes="org/unicode/cldr/draft/**/*.java org/unicode/cldr/util/**/*.java com/**/*.java" |
| excludes="**/CVS/**/* org/unicode/cldr/draft/Ids.java" srcdir="${src.dir}" |
| destdir="${build.dir}" classpathref="project.class.path" source="1.8" |
| target="1.8" debug="on" deprecation="off" encoding="UTF-8" /> |
| <!-- copy data files into classes.. --> |
| <mkdir dir="${build.dir}/org/unicode/cldr/util/data" /> |
| <copy todir="${build.dir}/org/unicode/cldr/util/data"> |
| <fileset dir="${src.dir}/org/unicode/cldr/util/data" |
| excludes="**/CVS/**/*" /> |
| </copy> |
| </target> |
| <target name="tool" depends="init,util" description="build tool classes"> |
| <javac includeantruntime="false" includes="org/unicode/cldr/tool/**/*.java" |
| excludes="**/CVS/**/*" srcdir="${src.dir}" destdir="${build.dir}" |
| classpathref="project.class.path" source="1.8" target="1.8" debug="on" |
| deprecation="off" encoding="UTF-8" /> |
| <!-- copy data files into classes.. --> |
| <mkdir dir="${build.dir}/org/unicode/cldr/tool" /> |
| <copy todir="${build.dir}/org/unicode/cldr/tool"> |
| <fileset dir="${src.dir}/org/unicode/cldr/tool" excludes="**/CVS/**/* **/**/*.java" /> |
| </copy> |
| </target> |
| <target name="posix" depends="init,util" description="build posix conversion tool"> |
| <javac includeantruntime="false" includes="org/unicode/cldr/posix/**/*.java" |
| excludes="**/CVS/**/*" srcdir="${src.dir}" destdir="${build.dir}" |
| classpathref="project.class.path" source="1.8" target="1.8" debug="on" |
| deprecation="off" encoding="UTF-8" /> |
| </target> |
| <target name="icu" depends="init, ant-plugin, util" description="build ICU conversion tool"> |
| <javac includeantruntime="false" includes="org/unicode/cldr/icu/**/*.java" |
| excludes="**/CVS/**/*" srcdir="${src.dir}" destdir="${build.dir}" |
| classpathref="project.class.path" source="1.8" target="1.8" debug="on" |
| deprecation="off" encoding="UTF-8" /> |
| <!-- copy data files into classes.. --> |
| <mkdir dir="${build.dir}/org/unicode/cldr/icu" /> |
| <copy todir="${build.dir}/org/unicode/cldr/icu"> |
| <fileset dir="${src.dir}/org/unicode/cldr/icu" excludes="**/CVS/**/* **/**/*.java" /> |
| </copy> |
| </target> |
| <target name="json" depends="init, ant-plugin, util" |
| description="build json conversion tool"> |
| <javac includeantruntime="false" includes="org/unicode/cldr/json/**/*.java" |
| excludes="**/CVS/**/*" srcdir="${src.dir}" destdir="${build.dir}" |
| classpathref="project.class.path" source="1.8" target="1.8" debug="on" |
| deprecation="off" encoding="UTF-8" /> |
| <!-- copy data files into classes.. --> |
| <mkdir dir="${build.dir}/org/unicode/cldr/json" /> |
| <copy todir="${build.dir}/org/unicode/cldr/json"> |
| <fileset dir="${src.dir}/org/unicode/cldr/json" excludes="**/CVS/**/* **/**/*.java" /> |
| </copy> |
| </target> |
| <target name="test" depends="init,util,tool,icu" description="build tests"> |
| <javac includeantruntime="false" includes="org/unicode/cldr/test/**/*.java " |
| excludes="**/CVS/**/*" srcdir="${src.dir}" destdir="${build.dir}" |
| classpathref="project.class.path" source="1.8" target="1.8" debug="on" |
| deprecation="off" encoding="UTF-8" /> |
| <!-- copy data files into classes.. --> |
| <mkdir dir="${build.dir}/org/unicode/cldr/test" /> |
| <copy todir="${build.dir}/org/unicode/cldr/test"> |
| <fileset dir="${src.dir}/org/unicode/cldr/test" excludes="**/CVS/**/* **/**/*.java" /> |
| </copy> |
| </target> |
| <target name="clean" depends="init" description="remove all build targets"> |
| <delete dir="${build.dir}" /> |
| <delete file="${jar.file}" /> |
| </target> |
| |
| <target name="jars" depends="jar,srcJar,docsJar" description="build all jars"/> |
| |
| <target name="jar" depends="all" description="build full 'cldr.jar' jar file"> |
| <jar jarfile="${jar.file}" compress="true" |
| includes="org/unicode/cldr/draft/**/*, |
| org/unicode/cldr/util/**/*, |
| org/unicode/cldr/tool/**/*, |
| org/unicode/cldr/test/**/*, |
| org/unicode/cldr/posix/**/*, |
| org/unicode/cldr/ant/**/*, |
| org/unicode/cldr/json/**/*, |
| org/unicode/cldr/icu/**/*, |
| com/ibm/icu/**/*" |
| basedir="${build.dir}"> |
| <manifest> |
| <attribute name="Built-By" value="${user.name}" /> |
| <attribute name="Main-Class" value="org.unicode.cldr.tool.Main" /> |
| <attribute name="Class-Path" |
| value="./libs/${cldr.libs.icu4j} ./libs/${cldr.libs.utilities} ./libs/${cldr.libs.xerces} ./libs/${cldr.libs.guava} ./libs/${cldr.libs.gson} ${cldr.libs.icu4j} ${cldr.libs.utilities} ${cldr.libs.xerces} ${cldr.libs.gson}" /> |
| </manifest> |
| </jar> |
| </target> |
| <!-- Docs stuff --> |
| <!-- use excludefiles below when we move to ant 1.5 --> |
| <target name="docs" depends="init" description="build user javadoc"> |
| <tstamp> |
| <format property="current.year" pattern="yyyy" /> |
| </tstamp> |
| <echo message="doc params: ${doc.params}" /> |
| <mkdir dir="${doc.dir}" /> |
| <javadoc packagenames="org.unicode.cldr.*" sourcepath="${src.dir}" |
| destdir="${doc.dir}" classpathref="project.class.path" |
| nodeprecatedlist="true" windowtitle="CLDR | Java Tools" doctitle="CLDR | Java Tools" |
| encoding="utf-8" docencoding="utf-8" additionalparam="${doc.params}" |
| link="http://docs.oracle.com/javase/7/docs/api" |
| bottom="<font size=-1><a target='_top' href='http://www.unicode.org/copyright.html'>Copyright &copy; 2004-${current.year} Unicode, Inc. All Rights Reserved.</a></font>" |
| source="1.8" /> |
| <!-- bottom="<font size=-1>Copyright (c) ${current.year} IBM Corporation |
| and others.</font>" --> |
| </target> |
| |
| <target name="docsJar" depends="docs"> |
| <jar jarfile="${jarDocs.file}" compress="true" basedir="${doc.dir}"> |
| <fileset dir="../.." includes="*LICENSE*,*license*"/> |
| </jar> |
| </target> |
| <target name="srcJar" depends="init" description="Build all *.jars (tools/docs/src)"> |
| <jar jarfile="${jarSrc.file}" compress="true"> |
| <fileset dir="org" includes="**/*.java"/> |
| <fileset dir="com" includes="**/*.java"/> |
| <fileset dir="../.." includes="*LICENSE*,*license*"/> |
| </jar> |
| </target> |
| |
| <!-- for testing and development --> |
| <target name="icu4c" depends="init, ant-plugin, icu"> |
| <ant dir="${env.ICU4C_DIR}/source/data" antfile="build.xml" |
| target="all" /> |
| </target> |
| |
| |
| <target name="check"> |
| <fail |
| message="*** Note! unittests have moved to ../cldr-unittest - please try there. See: http://unicode.org/cldr/trac/ticket/5215" /> |
| </target> |
| |
| |
| <target name="GenerateMaximalLocales" depends="init" |
| description="Build likelySubtags.xml and supplementalMetadata.xml - see https://sites.google.com/site/cldr/development/updating-codes/likelysubtags"> |
| <antcall target="_runTool"> |
| <param name="runTool.class" value="org.unicode.cldr.tool.GenerateMaximalLocales" /> |
| <param name="runTool.arg" value="" /> |
| <param name="runTool.jvmarg" value="${jvm_options}" /> |
| </antcall> |
| <antcall target="_toolcopy" /> |
| </target> |
| |
| <target name="AddPopulationData" depends="init" |
| description="test population data - see https://sites.google.com/site/cldr/development/updating-codes/update-language-script-info "> |
| <antcall target="_runTool"> |
| <param name="runTool.class" value="org.unicode.cldr.tool.AddPopulationData" /> |
| <param name="runTool.arg" value="" /> |
| <param name="runTool.jvmarg" value="${jvm_options} -DADD_POP=true" /> |
| </antcall> |
| </target> |
| |
| <target name="ConvertLanguageData" depends="init" |
| description="convert population data - updates supplementalData.xml - see https://sites.google.com/site/cldr/development/updating-codes/update-language-script-info"> |
| <antcall target="_runTool"> |
| <param name="runTool.class" value="org.unicode.cldr.tool.ConvertLanguageData" /> |
| <param name="runTool.arg" value="" /> |
| <param name="runTool.jvmarg" value="${jvm_options} -DADD_POP=true" /> |
| </antcall> |
| <antcall target="_toolcopy" /> |
| </target> |
| |
| <target name="AddPseudolocales" depends="init" |
| description="build pseudo-locale data en_XA.xml and ar_XB.xml"> |
| <antcall target="_runTool"> |
| <param name="runTool.class" value="org.unicode.cldr.tool.CLDRFilePseudolocalizer" /> |
| <param name="runTool.arg" value="" /> |
| <param name="runTool.jvmarg" value="${jvm_options}" /> |
| </antcall> |
| <antcall target="_toolcopy" /> |
| </target> |
| |
| <target name="GenerateAllCharts" depends="init" |
| description="generate all html charts - see http://cldr.unicode.org/development/cldr-big-red-switch/generating-charts"> |
| <antcall target="_runTool"> |
| <param name="runTool.class" value="org.unicode.cldr.tool.GenerateAllCharts" /> |
| <param name="runTool.arg" value="" /> |
| <param name="runTool.jvmarg" value="${jvm_options}" /> |
| </antcall> |
| <!-- <antcall target="_toolcopy"/> --> |
| </target> |
| |
| <target name="RunAllTools" |
| depends="GenerateMaximalLocales,AddPopulationData,ConvertLanguageData" |
| description="Run several of the automated tools that are currently available to this build script."> |
| </target> |
| |
| <target name="_runTool" depends="all"> |
| <delete dir="${tooltmp.dir}" /> |
| <echo message="JVM argument: ${runTool.jvmarg} -Djava.awt.headless=true" /> |
| <echo message="Tool class: ${runTool.class}" /> |
| <echo message="Tool argument: ${runTool.arg}" /> |
| <java classname="${runTool.class}" fork="yes" failonerror="true" |
| classpathref="project.class.path"> |
| <arg line="${runTool.arg}" /> |
| <jvmarg |
| line="${runTool.jvmarg} -DCLDR_GEN_DIR=${tooltmp.dir} -DCLDR_DIR=${CLDR_DIR} -Djava.awt.headless=true" /> |
| </java> |
| </target> |
| |
| <target name="_toolcopy"> |
| <copy verbose="true" todir="${CLDR_DIR}/common/"> |
| <fileset dir="${tooltmp.dir}" /> |
| </copy> |
| <delete dir="${tooltmp.dir}" /> |
| </target> |
| </project> |