mirror of https://github.com/apache/lucene.git
145 lines
6.0 KiB
XML
145 lines
6.0 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-common" default="default">
|
|
|
|
<description>
|
|
Analyzers
|
|
</description>
|
|
|
|
<property name="build.dir" location="../build/common" />
|
|
<property name="dist.dir" location="../dist/common" />
|
|
|
|
<!-- some files for testing that do not have license headers -->
|
|
<property name="rat.excludes" value="**/*.aff,**/*.dic,**/*.txt,**/charfilter/*.htm*,**/*LuceneResourcesWikiPage.html"/>
|
|
|
|
<import file="../../../lucene/module-build.xml"/>
|
|
|
|
<target name="compile-core" depends="jflex-notice, common.compile-core"/>
|
|
|
|
<target name="jflex" depends="jflex-check,clean-jflex,gen-uax29-supp-macros,
|
|
jflex-StandardAnalyzer,jflex-UAX29URLEmailTokenizer,
|
|
jflex-wiki-tokenizer,jflex-HTMLStripCharFilter"/>
|
|
|
|
<target name="gen-uax29-supp-macros">
|
|
<subant target="gen-uax29-supp-macros">
|
|
<fileset dir="../icu" includes="build.xml"/>
|
|
</subant>
|
|
</target>
|
|
|
|
<target name="jflex-HTMLStripCharFilter"
|
|
depends="init,jflex-check,generate-jflex-html-char-entities"
|
|
if="jflex.present">
|
|
<taskdef classname="jflex.anttask.JFlexTask" name="jflex">
|
|
<classpath refid="jflex.classpath"/>
|
|
</taskdef>
|
|
<jflex file="src/java/org/apache/lucene/analysis/charfilter/HTMLStripCharFilter.jflex"
|
|
outdir="src/java/org/apache/lucene/analysis/charfilter"
|
|
nobak="on"/>
|
|
<!-- Remove the inappropriate JFlex-generated constructors -->
|
|
<replaceregexp file="src/java/org/apache/lucene/analysis/charfilter/HTMLStripCharFilter.java"
|
|
match="/\*\*\s*\*\s*Creates a new scanner.*this\(new java\.io\.InputStreamReader\(in\)\);\s*\}"
|
|
replace="" flags="sg"/>
|
|
</target>
|
|
|
|
<target name="generate-jflex-html-char-entities">
|
|
<exec dir="src/java/org/apache/lucene/analysis/charfilter"
|
|
output="src/java/org/apache/lucene/analysis/charfilter/HTMLCharacterEntities.jflex"
|
|
executable="${python.exe}" failonerror="true" logerror="true">
|
|
<arg value="htmlentity.py"/>
|
|
</exec>
|
|
</target>
|
|
|
|
<target name="jflex-wiki-tokenizer" depends="init,jflex-check" if="jflex.present">
|
|
<taskdef classname="jflex.anttask.JFlexTask" name="jflex">
|
|
<classpath refid="jflex.classpath"/>
|
|
</taskdef>
|
|
<jflex file="src/java/org/apache/lucene/analysis/wikipedia/WikipediaTokenizerImpl.jflex"
|
|
outdir="src/java/org/apache/lucene/analysis/wikipedia"
|
|
nobak="on"/>
|
|
</target>
|
|
|
|
<target name="jflex-StandardAnalyzer" depends="init,jflex-check" if="jflex.present">
|
|
<taskdef classname="jflex.anttask.JFlexTask" name="jflex">
|
|
<classpath refid="jflex.classpath"/>
|
|
</taskdef>
|
|
|
|
<jflex file="src/java/org/apache/lucene/analysis/standard/StandardTokenizerImpl.jflex"
|
|
outdir="src/java/org/apache/lucene/analysis/standard"
|
|
nobak="on" />
|
|
<jflex file="src/java/org/apache/lucene/analysis/standard/ClassicTokenizerImpl.jflex"
|
|
outdir="src/java/org/apache/lucene/analysis/standard"
|
|
nobak="on" />
|
|
<jflex file="src/java/org/apache/lucene/analysis/standard/std31/StandardTokenizerImpl31.jflex"
|
|
outdir="src/java/org/apache/lucene/analysis/standard/std31"
|
|
nobak="on" />
|
|
</target>
|
|
|
|
<target name="jflex-UAX29URLEmailTokenizer" depends="jflex-check" if="jflex.present">
|
|
<taskdef classname="jflex.anttask.JFlexTask" name="jflex">
|
|
<classpath refid="jflex.classpath"/>
|
|
</taskdef>
|
|
<jflex file="src/java/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizerImpl.jflex"
|
|
outdir="src/java/org/apache/lucene/analysis/standard"
|
|
nobak="on" />
|
|
<jflex file="src/java/org/apache/lucene/analysis/standard/std31/UAX29URLEmailTokenizerImpl31.jflex"
|
|
outdir="src/java/org/apache/lucene/analysis/standard/std31"
|
|
nobak="on" />
|
|
<jflex file="src/java/org/apache/lucene/analysis/standard/std34/UAX29URLEmailTokenizerImpl34.jflex"
|
|
outdir="src/java/org/apache/lucene/analysis/standard/std34"
|
|
nobak="on" />
|
|
</target>
|
|
|
|
<target name="clean-jflex">
|
|
<delete>
|
|
<fileset dir="src/java/org/apache/lucene/analysis/wikipedia" includes="*.java">
|
|
<containsregexp expression="generated.*by.*JFlex"/>
|
|
</fileset>
|
|
<fileset dir="src/java/org/apache/lucene/analysis/standard" includes="**/*.java">
|
|
<containsregexp expression="generated.*by.*JFlex"/>
|
|
</fileset>
|
|
</delete>
|
|
</target>
|
|
|
|
<property name="tld.zones" value="http://www.internic.net/zones/root.zone"/>
|
|
<property name="tld.output" location="src/java/org/apache/lucene/analysis/standard/ASCIITLD.jflex-macro"/>
|
|
|
|
<target name="gen-tlds" depends="compile-tools">
|
|
<java
|
|
classname="org.apache.lucene.analysis.standard.GenerateJflexTLDMacros"
|
|
dir="."
|
|
fork="true"
|
|
failonerror="true">
|
|
<classpath>
|
|
<pathelement location="${build.dir}/classes/tools"/>
|
|
</classpath>
|
|
<arg value="${tld.zones}"/>
|
|
<arg value="${tld.output}"/>
|
|
</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>
|
|
</project>
|