mirror of https://github.com/apache/lucene.git
152 lines
5.5 KiB
XML
152 lines
5.5 KiB
XML
<?xml version="1.0"?>
|
|
|
|
<!--
|
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
|
contributor license agreements. See the NOTICE file distributed with
|
|
this work for additional information regarding copyright ownership.
|
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
|
the "License"); you may not use this file except in compliance with
|
|
the License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
-->
|
|
|
|
<project name="analyzers-icu" default="default">
|
|
|
|
<description>
|
|
Provides integration with ICU (International Components for Unicode) for
|
|
stronger Unicode and internationalization support.
|
|
</description>
|
|
|
|
<property name="build.dir" location="../build/icu" />
|
|
<property name="dist.dir" location="../dist/icu" />
|
|
|
|
<path id="additional.dependencies">
|
|
<fileset dir="lib" includes="icu4j-*.jar"/>
|
|
</path>
|
|
|
|
<pathconvert property="project.classpath"
|
|
targetos="unix"
|
|
refid="additional.dependencies"
|
|
/>
|
|
|
|
<import file="../../../lucene/contrib/contrib-build.xml"/>
|
|
|
|
<module-uptodate name="analysis/common" jarfile="../build/common/lucene-analyzers-common-${version}.jar"
|
|
property="analyzers-common.uptodate" classpath.property="analyzers-common.jar"/>
|
|
|
|
<path id="classpath">
|
|
<pathelement path="${analyzers-common.jar}"/>
|
|
<path refid="base.classpath"/>
|
|
</path>
|
|
|
|
<path id="test.classpath">
|
|
<pathelement path="${analyzers-common.jar}"/>
|
|
<path refid="classpath"/>
|
|
<pathelement location="../../../lucene/build/classes/test-framework/"/>
|
|
<pathelement location="../../../lucene/build/classes/test/"/>
|
|
<pathelement location="../build/common/classes/test/"/>
|
|
<path refid="junit-path"/>
|
|
<pathelement location="${build.dir}/classes/java"/>
|
|
</path>
|
|
|
|
<target name="compile-core" depends="build-analyzers-common, common.compile-core" />
|
|
|
|
<target name="build-analyzers-common" unless="analyzers-common.uptodate">
|
|
<echo>ICU building dependency ${analyzers-common.jar}</echo>
|
|
<ant antfile="../common/build.xml" target="default" inheritall="false" dir="../common" />
|
|
</target>
|
|
|
|
<property name="gennorm2.src.dir" value="src/data/utr30"/>
|
|
<property name="gennorm2.src.files"
|
|
value="nfkc.txt nfkc_cf.txt BasicFoldings.txt DiacriticFolding.txt DingbatFolding.txt HanRadicalFolding.txt NativeDigitFolding.txt"/>
|
|
<property name="gennorm2.tmp" value="${build.dir}/gennorm2/utr30.tmp"/>
|
|
<property name="gennorm2.dst" value="src/resources/org/apache/lucene/analysis/icu/utr30.nrm"/>
|
|
<target name="gennorm2">
|
|
<echo>Note that the gennorm2 and icupkg tools must be on your PATH. These tools
|
|
are part of the ICU4C package. See http://site.icu-project.org/ </echo>
|
|
<mkdir dir="${build.dir}/gennorm2"/>
|
|
<exec executable="gennorm2" failonerror="true">
|
|
<arg value="-v"/>
|
|
<arg value="-s"/>
|
|
<arg value="${gennorm2.src.dir}"/>
|
|
<arg line="${gennorm2.src.files}"/>
|
|
<arg value="-o"/>
|
|
<arg value="${gennorm2.tmp}"/>
|
|
</exec>
|
|
<!-- now convert binary file to big-endian -->
|
|
<exec executable="icupkg" failonerror="true">
|
|
<arg value="-tb"/>
|
|
<arg value="${gennorm2.tmp}"/>
|
|
<arg value="${gennorm2.dst}"/>
|
|
</exec>
|
|
<delete file="${gennorm2.tmp}"/>
|
|
</target>
|
|
|
|
<property name="rbbi.src.dir" location="src/data/uax29"/>
|
|
<property name="rbbi.dst.dir" location="src/resources/org/apache/lucene/analysis/icu/segmentation"/>
|
|
|
|
<target name="genrbbi" depends="compile-tools">
|
|
<mkdir dir="${rbbi.dst.dir}"/>
|
|
<java
|
|
classname="org.apache.lucene.analysis.icu.RBBIRuleCompiler"
|
|
dir="."
|
|
fork="true"
|
|
failonerror="true">
|
|
<classpath>
|
|
<path refid="additional.dependencies"/>
|
|
<pathelement location="${build.dir}/classes/tools"/>
|
|
</classpath>
|
|
<arg value="${rbbi.src.dir}"/>
|
|
<arg value="${rbbi.dst.dir}"/>
|
|
</java>
|
|
</target>
|
|
|
|
<property name="uax29.supp.macros.output.file"
|
|
location="../common/src/java/org/apache/lucene/analysis/standard/SUPPLEMENTARY.jflex-macro"/>
|
|
|
|
<target name="gen-uax29-supp-macros" depends="compile-tools">
|
|
<java
|
|
classname="org.apache.lucene.analysis.icu.GenerateJFlexSupplementaryMacros"
|
|
dir="."
|
|
fork="true"
|
|
failonerror="true"
|
|
output="${uax29.supp.macros.output.file}">
|
|
<classpath>
|
|
<path refid="additional.dependencies"/>
|
|
<pathelement location="${build.dir}/classes/tools"/>
|
|
</classpath>
|
|
</java>
|
|
</target>
|
|
|
|
<target name="compile-tools" depends="common.compile-tools">
|
|
<compile
|
|
srcdir="src/tools/java"
|
|
destdir="${build.dir}/classes/tools">
|
|
<classpath refid="classpath"/>
|
|
</compile>
|
|
</target>
|
|
|
|
<target name="javadocs" depends="compile-core">
|
|
<sequential>
|
|
<mkdir dir="${javadoc.dir}/contrib-${name}"/>
|
|
<invoke-javadoc
|
|
destdir="${javadoc.dir}/contrib-${name}"
|
|
title="${Name} ${version} contrib-${name} API">
|
|
<sources>
|
|
<link href="../contrib-analyzers-common"/>
|
|
<link href=""/>
|
|
<packageset dir="${src.dir}"/>
|
|
</sources>
|
|
</invoke-javadoc>
|
|
<jarify basedir="${javadoc.dir}/contrib-${name}" destfile="${build.dir}/${final.name}-javadoc.jar"/>
|
|
</sequential>
|
|
</target>
|
|
</project>
|