pylucene 3.5.0-3
[pylucene.git] / lucene-java-3.5.0 / lucene / contrib / contrib-build.xml
diff --git a/lucene-java-3.5.0/lucene/contrib/contrib-build.xml b/lucene-java-3.5.0/lucene/contrib/contrib-build.xml
new file mode 100644 (file)
index 0000000..99a54e5
--- /dev/null
@@ -0,0 +1,263 @@
+<?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="contrib-build" xmlns:artifact="antlib:org.apache.maven.artifact.ant">
+  <echo>Building ${ant.project.name}...</echo>
+
+  <!-- TODO: adjust build.dir/dist.dir appropriately when a contrib project is run individually -->
+  <property name="build.dir" location="../../build/contrib/${ant.project.name}"/>
+  <property name="dist.dir" location="../../dist/contrib/${ant.project.name}"/>
+  <property name="maven.dist.dir" location="../../dist/maven"/>
+       
+  <import file="../common-build.xml"/>
+
+  <available property="contrib.has.tests" type="dir" file="src/test" />
+  
+  <!-- if you extend the classpath refid in one contrib's build.xml (add JARs), use this as basis: -->
+  <path id="base.classpath">
+   <pathelement location="${common.dir}/build/classes/java"/>
+   <pathelement path="${project.classpath}"/>
+  </path>
+  
+  <!-- default classpath refid, can be overridden by contrib's build.xml (use the above base.classpath as basis): -->
+  <path id="classpath" refid="base.classpath"/>
+  
+  <path id="test.base.classpath">
+    <path refid="classpath"/>
+    <pathelement location="${common.dir}/build/classes/test-framework"/>
+    <path refid="junit-path"/>
+    <pathelement location="${build.dir}/classes/java"/>
+  </path>
+
+  <path id="test.classpath" refid="test.base.classpath"/>
+
+  <path id="junit.classpath">
+    <path refid="test.classpath"/>
+    <pathelement location="${build.dir}/classes/test"/>
+    <pathelement path="${java.class.path}"/>
+  </path>
+
+  <target name="init" depends="common.init,compile-lucene-core"/>
+  <target name="compile-test" depends="init" if="contrib.has.tests">
+    <antcall target="common.compile-test" inheritRefs="true" />
+  </target>
+  <target name="test" depends="init" if="contrib.has.tests">
+    <antcall target="common.test" inheritRefs="true" />
+  </target>
+  <target name="build-artifacts-and-tests" depends="jar, compile-test" />
+       
+  <available 
+    type="file" 
+    file="pom.xml" 
+    property="pom.xml.present">
+  </available>
+
+<target name="dist-maven" if="pom.xml.present" depends="jar-core, jar-src, javadocs">
+  <taskdef resource="org/apache/maven/artifact/ant/antlib.xml"
+           uri="antlib:org.apache.maven.artifact.ant"
+           classpathref="maven-ant-tasks.classpath"/>
+    <sequential>
+      <m2-deploy>
+        <artifact-attachments>
+          <attach file="${build.dir}/${final.name}-src.jar"
+                  classifier="sources"/>
+          <attach file="${build.dir}/${final.name}-javadoc.jar"
+                  classifier="javadoc"/>
+        </artifact-attachments>
+      </m2-deploy>
+    </sequential>
+  </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=""/>
+           <packageset dir="${src.dir}"/>
+        </sources>
+      </invoke-javadoc>
+      <jarify basedir="${javadoc.dir}/contrib-${name}" destfile="${build.dir}/${final.name}-javadoc.jar"/>
+    </sequential>
+  </target>    
+
+  <target name="javadocs-index.html" description="Generate line for index.html of JavaDocs">
+    <echo file="${javadoc.dir}/index.html" append="true">
+<![CDATA[
+  <li><a href="contrib-${name}/index.html">${name}</a></li>
+]]></echo>
+  </target>
+  
+  <macrodef name="contrib-uptodate">
+    <attribute name="name"/>
+    <attribute name="property"/>
+    <attribute name="jarfile"/>
+    <attribute name="contrib-src-name" default="@{name}"/>
+    <sequential>
+      <uptodate property="@{property}" targetfile="@{jarfile}">
+        <srcfiles dir="${common.dir}/contrib/@{contrib-src-name}/src/java" includes="**/*.java"/>
+      </uptodate>
+    </sequential>
+  </macrodef>
+
+  <property name="analyzers-common.jar" value="${common.dir}/build/contrib/analyzers/common/lucene-analyzers-${version}.jar"/>
+  <target name="check-analyzers-common-uptodate" unless="analyzers-common.uptodate">
+    <contrib-uptodate name="analyzers/common" jarfile="${analyzers-common.jar}" property="analyzers-common.uptodate"/>
+  </target>
+  <target name="jar-analyzers-common" unless="analyzers-common.uptodate" depends="check-analyzers-common-uptodate">
+    <ant dir="${common.dir}/contrib/analyzers/common" target="jar-core" inheritall="false">
+      <propertyset refid="uptodate.and.compiled.properties"/>
+    </ant>
+    <property name="analyzers-common.uptodate" value="true"/>
+  </target>
+
+  <property name="facet.jar" value="${common.dir}/build/contrib/facet/lucene-facet-${version}.jar"/>
+  <target name="check-facet-uptodate" unless="facet.uptodate">
+    <contrib-uptodate name="facet" jarfile="${facet.jar}" property="facet.uptodate"/>
+  </target>
+  <target name="jar-facet" unless="facet.uptodate" depends="check-facet-uptodate">
+    <ant dir="${common.dir}/contrib/facet" target="jar-core" inheritall="false">
+      <propertyset refid="uptodate.and.compiled.properties"/>
+    </ant>
+    <property name="facet.uptodate" value="true"/>
+  </target>
+
+  <property name="analyzers-smartcn.jar" value="${common.dir}/build/contrib/analyzers/smartcn/lucene-smartcn-${version}.jar"/>
+  <target name="check-analyzers-smartcn-uptodate" unless="analyzers-smartcn.uptodate">
+    <contrib-uptodate name="analyzers/smartcn" jarfile="${analyzers-smartcn.jar}" property="analyzers-smartcn.uptodate"/>
+  </target>
+  <target name="jar-analyzers-smartcn" unless="analyzers-smartcn.uptodate" depends="check-analyzers-smartcn-uptodate">
+       <ant dir="${common.dir}/contrib/analyzers/smartcn" target="jar-core" inheritAll="false">
+      <propertyset refid="uptodate.and.compiled.properties"/>
+    </ant>
+    <property name="analyzers-smartcn.uptodate" value="true"/>
+  </target>
+
+  <property name="analyzers-stempel.jar" value="${common.dir}/build/contrib/analyzers/stempel/lucene-stempel-${version}.jar"/>
+  <target name="check-analyzers-stempel-uptodate" unless="analyzers-stempel.uptodate">
+    <contrib-uptodate name="analyzers/stempel" jarfile="${analyzers-stempel.jar}" property="analyzers-stempel.uptodate"/>
+  </target>
+  <target name="jar-analyzers-stempel" unless="analyzers-stempel.uptodate" depends="check-analyzers-stempel-uptodate">
+       <ant dir="${common.dir}/contrib/analyzers/stempel" target="jar-core" inheritAll="false">
+      <propertyset refid="uptodate.and.compiled.properties"/>
+    </ant>
+    <property name="analyzers-stempel.uptodate" value="true"/>
+  </target>
+
+  <property name="grouping.jar" value="${common.dir}/build/contrib/grouping/lucene-grouping-${version}.jar"/>
+  <target name="check-grouping-uptodate" unless="grouping.uptodate">
+    <contrib-uptodate name="grouping" jarfile="${grouping.jar}" property="grouping.uptodate"/>
+  </target>
+  <target name="jar-grouping" unless="grouping.uptodate" depends="check-grouping-uptodate">
+       <ant dir="${common.dir}/contrib/grouping" target="jar-core" inheritAll="false">
+      <propertyset refid="uptodate.and.compiled.properties"/>
+    </ant>
+    <property name="grouping.uptodate" value="true"/>
+  </target>
+
+  <property name="highlighter.jar" value="${common.dir}/build/contrib/highlighter/lucene-highlighter-${version}.jar"/>
+  <target name="check-highlighter-uptodate" unless="highlighter.uptodate">
+    <contrib-uptodate name="highlighter" jarfile="${highlighter.jar}" property="highlighter.uptodate"/>
+  </target>
+  <target name="jar-highlighter" unless="highlighter.uptodate" depends="check-highlighter-uptodate">
+    <ant dir="${common.dir}/contrib/highlighter" target="jar-core" inheritall="false">
+      <propertyset refid="uptodate.and.compiled.properties"/>
+    </ant>
+    <property name="highlighter.uptodate" value="true"/>
+  </target>
+
+  <property name="icu.jar" value="${common.dir}/build/contrib/icu/lucene-icu-${version}.jar"/>
+  <target name="check-icu-uptodate" unless="icu.uptodate">
+    <contrib-uptodate name="icu" jarfile="${icu.jar}" property="icu.uptodate"/>
+  </target>
+  <target name="jar-icu" unless="icu.uptodate" depends="check-icu-uptodate">
+       <ant dir="${common.dir}/contrib/icu" target="jar-core" inheritAll="false">
+      <propertyset refid="uptodate.and.compiled.properties"/>
+    </ant>
+    <property name="icu.uptodate" value="true"/>
+  </target>
+
+  <property name="memory.jar" value="${common.dir}/build/contrib/memory/lucene-memory-${version}.jar"/>
+  <target name="check-memory-uptodate" unless="memory.uptodate">
+    <contrib-uptodate name="memory" jarfile="${memory.jar}" property="memory.uptodate"/>
+  </target>
+  <target name="jar-memory" unless="memory.uptodate" depends="check-memory-uptodate">
+    <ant dir="${common.dir}/contrib/memory" target="jar-core" inheritall="false">
+      <propertyset refid="uptodate.and.compiled.properties"/>
+    </ant>
+    <property name="memory.uptodate" value="true"/>
+  </target>
+
+  <property name="misc.jar" value="${common.dir}/build/contrib/misc/lucene-misc-${version}.jar"/>
+  <target name="check-misc-uptodate" unless="misc.uptodate">
+    <contrib-uptodate name="misc" jarfile="${misc.jar}" property="misc.uptodate"/>
+  </target>
+  <target name="jar-misc" unless="misc.uptodate" depends="check-misc-uptodate">
+       <ant dir="${common.dir}/contrib/misc" target="jar-core" inheritAll="false">
+      <propertyset refid="uptodate.and.compiled.properties"/>
+    </ant>
+    <property name="misc.uptodate" value="true"/>
+  </target>
+
+  <property name="queries.jar" value="${common.dir}/build/contrib/queries/lucene-queries-${version}.jar"/>
+  <target name="check-queries-uptodate" unless="queries.uptodate">
+    <contrib-uptodate name="queries" jarfile="${queries.jar}" property="queries.uptodate"/>
+  </target>
+  <target name="jar-queries" unless="queries.uptodate" depends="check-queries-uptodate">
+    <ant dir="${common.dir}/contrib/queries" target="jar-core" inheritall="false">
+      <propertyset refid="uptodate.and.compiled.properties"/>
+    </ant>
+    <property name="queries.uptodate" value="true"/>
+  </target>
+
+  <property name="queryparser.jar" value="${common.dir}/build/contrib/queryparser/lucene-queryparser-${version}.jar"/>
+  <target name="check-queryparser-uptodate" unless="queryparser.uptodate">
+    <contrib-uptodate name="queryparser" jarfile="${queryparser.jar}" property="queryparser.uptodate"/>
+  </target>
+  <target name="jar-queryparser" unless="queryparser.uptodate" depends="check-queryparser-uptodate">
+    <ant dir="${common.dir}/contrib/queryparser" target="jar-core" inheritall="false">
+      <propertyset refid="uptodate.and.compiled.properties"/>
+    </ant>
+    <property name="queryparser.uptodate" value="true"/>
+  </target>
+
+  <property name="spatial.jar" value="${common.dir}/build/contrib/spatial/lucene-spatial-${version}.jar"/>
+  <target name="check-spatial-uptodate" unless="spatial.uptodate">
+    <contrib-uptodate name="spatial" jarfile="${spatial.jar}" property="spatial.uptodate"/>
+  </target>
+  <target name="jar-spatial" unless="spatial.uptodate" depends="check-spatial-uptodate">
+       <ant dir="${common.dir}/contrib/spatial" target="jar-core" inheritAll="false">
+      <propertyset refid="uptodate.and.compiled.properties"/>
+    </ant>
+    <property name="spatial.uptodate" value="true"/>
+  </target>
+
+  <property name="spellchecker.jar" value="${common.dir}/build/contrib/spellchecker/lucene-spellchecker-${version}.jar"/>
+  <target name="check-spellchecker-uptodate" unless="spellchecker.uptodate">
+    <contrib-uptodate name="spellchecker" jarfile="${spellchecker.jar}" property="spellchecker.uptodate"/>
+  </target>
+  <target name="jar-spellchecker" unless="spellchecker.uptodate" depends="check-spellchecker-uptodate">
+       <ant dir="${common.dir}/contrib/spellchecker" target="jar-core" inheritAll="false">
+      <propertyset refid="uptodate.and.compiled.properties"/>
+    </ant>
+    <property name="spellchecker.uptodate" value="true"/>
+  </target>
+</project>