mirror of https://github.com/apache/lucene.git
300 lines
10 KiB
Plaintext
300 lines
10 KiB
Plaintext
|
<!-- =================================================================== -->
|
||
|
<!-- Prepares the source code -->
|
||
|
<!-- =================================================================== -->
|
||
|
<target name="-prepare-src">
|
||
|
|
||
|
<mkdir dir="${xlayout.build.java.dir}"/>
|
||
|
<mkdir dir="${xlayout.build.classes.dir}"/>
|
||
|
<copy todir="${xlayout.build.java.dir}" filtering="off">
|
||
|
<fileset dir="${xlayout.source.java.dir}"/>
|
||
|
</copy>
|
||
|
|
||
|
<mkdir dir="${xlayout.build.scratchpad.java.dir}"/>
|
||
|
<mkdir dir="${xlayout.build.scratchpad.classes.dir}"/>
|
||
|
<copy todir="${xlayout.build.scratchpad.java.dir}" filtering="off">
|
||
|
<fileset dir="${xlayout.source.scratchpad.java.dir}"/>
|
||
|
</copy>
|
||
|
|
||
|
<mkdir dir="${xlayout.build.examples.java.dir}"/>
|
||
|
<mkdir dir="${xlayout.build.examples.classes.dir}"/>
|
||
|
<copy todir="${xlayout.build.examples.java.dir}" filtering="off">
|
||
|
<fileset dir="${xlayout.source.examples.java.dir}"/>
|
||
|
</copy>
|
||
|
|
||
|
<mkdir dir="${xlayout.build.contributions.java.dir}"/>
|
||
|
<mkdir dir="${xlayout.build.contributions.classes.dir}"/>
|
||
|
<copy todir="${xlayout.build.contributions.java.dir}" filtering="off">
|
||
|
<fileset dir="${xlayout.source.contributions.java.dir}"/>
|
||
|
</copy>
|
||
|
|
||
|
</target>
|
||
|
|
||
|
<target name="-init" unless="${antipede.init.already.called}">
|
||
|
<tstamp>
|
||
|
<format property="YEAR" pattern="yyyy" locale="en"/>
|
||
|
</tstamp>
|
||
|
|
||
|
<buildnumber/>
|
||
|
|
||
|
<property name="antipede.init.already.called" value="true"/>
|
||
|
|
||
|
<echo>
|
||
|
--------------------------------------------------------------
|
||
|
|
||
|
Using ${ant.version}
|
||
|
Build file ${ant.file}
|
||
|
Build number ${build.number}
|
||
|
Project Name ${ant.project.name}
|
||
|
Java Version ${ant.java.version}
|
||
|
Timestamp ${DSTAMP}${TSTAMP}
|
||
|
|
||
|
--------------------------------------------------------------
|
||
|
</echo>
|
||
|
|
||
|
<!--
|
||
|
The location of tools.jar, relative to the JAVA_HOME home.
|
||
|
If tools.jar is not present, exit with an error, since it
|
||
|
means that a JDK is not installed.
|
||
|
-->
|
||
|
<property name="tools.jar" value="${java.home}/../lib/tools.jar"/>
|
||
|
<available file="${tools.jar}" property="tools.jar.present"/>
|
||
|
<fail unless="tools.jar.present" message="tools.jar not found. Probably you are using the JRE and the JDK is not installed. Please download the JDK from the Java Sun website www.javasoft.com ."/>
|
||
|
|
||
|
|
||
|
<!-- fixed centipede dirs -->
|
||
|
<property name="tools.dir" value="tools"/>
|
||
|
|
||
|
<property name="temp.dir" value="tools/tmp"/>
|
||
|
<mkdir dir="${temp.dir}"/>
|
||
|
<property name="cents.dir" value="tools/cents"/>
|
||
|
<mkdir dir="${cents.dir}"/>
|
||
|
|
||
|
<property name="antipede.dir" value="tools/antipede"/>
|
||
|
<property name="antipede.lib.dir" value="tools/antipede/lib"/>
|
||
|
|
||
|
<property name="cent.lib.dir.name" value="lib"/>
|
||
|
<property name="task.properties.name" value="tasks.properties"/>
|
||
|
<property name="cent.jar.suffix" value="cent.jar"/>
|
||
|
<property name="cent.dir.suffix" value="cent"/>
|
||
|
|
||
|
|
||
|
<!-- define all ant tasks in antipede -->
|
||
|
<taskdef file="${antipede.dir}/${task.properties.name}">
|
||
|
<classpath>
|
||
|
<path>
|
||
|
<fileset dir="${antipede.lib.dir}" casesensitive="yes">
|
||
|
<include name="*.jar"/>
|
||
|
<include name="*.zip"/>
|
||
|
</fileset>
|
||
|
</path>
|
||
|
</classpath>
|
||
|
</taskdef>
|
||
|
|
||
|
<!--
|
||
|
Load project information
|
||
|
-->
|
||
|
<xmlproperty file="module.xml" prefix="xgump" keeproot="true" collapseAttributes="true" />
|
||
|
<xmlproperty file="status.xml" prefix="xstatus" keeproot="false" collapseAttributes="true" />
|
||
|
<xmlproperty file="layout.xml" prefix="xlayout" keeproot="false" collapseAttributes="true" />
|
||
|
<xmlproperty file="properties.xml" keeproot="false" collapseAttributes="true" />
|
||
|
|
||
|
<antcall target="get-needed-cents"/>
|
||
|
|
||
|
<delete file="${temp.dir}/${task.properties.name}"/>
|
||
|
|
||
|
<!-- put all ant task definitions in cents in a single file -->
|
||
|
<antipede-trycatch><try>
|
||
|
|
||
|
<concat destfile="${temp.dir}/${task.properties.name}" append="no">
|
||
|
<fileset dir=".">
|
||
|
<patternset>
|
||
|
<include name="${cents.dir}/*.${cent.dir.suffix}/${task.properties.name}"/>
|
||
|
</patternset>
|
||
|
</fileset>
|
||
|
</concat>
|
||
|
|
||
|
<!-- define the tasks found in cents -->
|
||
|
<taskdef file="${temp.dir}/${task.properties.name}">
|
||
|
<classpath>
|
||
|
<fileset dir="./tools">
|
||
|
<include name="**/*.jar"/>
|
||
|
</fileset>
|
||
|
</classpath>
|
||
|
</taskdef>
|
||
|
|
||
|
</try>
|
||
|
<catch><echo message="Unable to load tasks... could be already loaded." /></catch>
|
||
|
</antipede-trycatch>
|
||
|
|
||
|
<antcall target="-prepare-src"/>
|
||
|
|
||
|
</target>
|
||
|
|
||
|
<!-- ================================ -->
|
||
|
<!-- Used only by the -init target -->
|
||
|
<!-- =================================-->
|
||
|
<target name="get-needed-cents">
|
||
|
|
||
|
<style basedir="."
|
||
|
destdir="${temp.dir}"
|
||
|
includes="properties.xml"
|
||
|
extension=".build.xml"
|
||
|
style="${antipede.dir}/resources/stylesheets/getcent.xsl"/>
|
||
|
|
||
|
<ant antfile="${temp.dir}/properties.build.xml"
|
||
|
inheritall="true"
|
||
|
dir="."
|
||
|
target="getcents" />
|
||
|
|
||
|
<style basedir="."
|
||
|
destdir="${temp.dir}"
|
||
|
includes="module.xml"
|
||
|
extension=".build.xml"
|
||
|
style="${antipede.dir}/resources/stylesheets/getcorelibs.xsl"/>
|
||
|
<!--
|
||
|
<ant antfile="${temp.dir}/module.build.xml"
|
||
|
inheritall="true"
|
||
|
dir="."
|
||
|
target="getcorelibs" />
|
||
|
-->
|
||
|
|
||
|
<!-- Unpack jarred cents -->
|
||
|
<antipede-foreach target="-cent-unjar" param="current.cent.jar">
|
||
|
<fileset dir="." casesensitive="yes">
|
||
|
<patternset>
|
||
|
<include name="${cents.dir}/*.${cent.jar.suffix}"/>
|
||
|
</patternset>
|
||
|
</fileset>
|
||
|
</antipede-foreach>
|
||
|
|
||
|
<delete dir="${cents.dir}/META-INF"/>
|
||
|
|
||
|
</target>
|
||
|
|
||
|
<!-- ================================ -->
|
||
|
<!-- Used only by the -init target -->
|
||
|
<!-- =================================-->
|
||
|
<target name="-cent-unjar" depends="-cent-unjar-expand,-cent-unjar-keep"/>
|
||
|
|
||
|
<!-- ================================ -->
|
||
|
<!-- Used only by the -init target -->
|
||
|
<!-- =================================-->
|
||
|
<target name="-cent-unjar-check">
|
||
|
|
||
|
<basename property="current.cent.jar.name" file="${current.cent.jar}" suffix=".jar"/>
|
||
|
|
||
|
<condition property="cent-unjar.not.required">
|
||
|
<and>
|
||
|
<uptodate targetfile="${cents.dir}/${current.cent.jar.name}.${cent.dir.suffix}/${task.properties.name}"
|
||
|
srcfile="${current.cent.jar}"/>
|
||
|
<available type="file" file="${cents.dir}/${current.cent.jar.name}.${cent.dir.suffix}/${task.properties.name}"/>
|
||
|
</and>
|
||
|
</condition>
|
||
|
|
||
|
</target>
|
||
|
|
||
|
<!-- ====================================== -->
|
||
|
<!-- Used only by the -cent-unjar target -->
|
||
|
<!-- ====================================== -->
|
||
|
<target name="-cent-unjar-expand" unless="cent-unjar.not.required"
|
||
|
depends="-cent-unjar-check">
|
||
|
<echo message="Expanding ${current.cent.jar}..." />
|
||
|
<unjar src="${current.cent.jar}" dest="${cents.dir}"/>
|
||
|
<touch>
|
||
|
<fileset dir="${cents.dir}/${current.cent.jar.name}.${cent.dir.suffix}"/>
|
||
|
</touch>
|
||
|
<echo message="... ${current.cent.jar} expanded in ${current.cent.jar.name}." />
|
||
|
</target>
|
||
|
|
||
|
<!-- ====================================== -->
|
||
|
<!-- Used only by the -cent-unjar target -->
|
||
|
<!-- =======================================-->
|
||
|
<target name="-cent-unjar-keep" if="cent-unjar.not.required"
|
||
|
depends="-cent-unjar-check">
|
||
|
<echo message="${current.cent.jar} is uptodate with respect to ${current.cent.jar.name}." />
|
||
|
<echo message="No need to expand it." />
|
||
|
</target>
|
||
|
|
||
|
<!-- ============================================= -->
|
||
|
<!-- Simple utility target to call a cent target -->
|
||
|
<!-- ==============================================-->
|
||
|
<target name="call-cent">
|
||
|
<ant antfile="tools/cents/${cent-name}.cent/xbuild.xml"
|
||
|
inheritall="true"
|
||
|
dir="."
|
||
|
target="${cent-target}" />
|
||
|
</target>
|
||
|
|
||
|
<!-- ============================================= -->
|
||
|
<!-- Simple utility target to call a cent target -->
|
||
|
<!-- ==============================================-->
|
||
|
<target name="cent-target" depends="-init">
|
||
|
<ant antfile="tools/cents/${cent-name}.cent/xbuild.xml"
|
||
|
inheritall="true"
|
||
|
dir="."
|
||
|
target="${cent-target}" />
|
||
|
</target>
|
||
|
|
||
|
<!-- ================================== -->
|
||
|
<!-- Create a cent.jar package -->
|
||
|
<!-- using an already deployed cent -->
|
||
|
<!-- ================================== -->
|
||
|
|
||
|
<target name="jar-cent" depends="-init">
|
||
|
|
||
|
<antcall target="call-cent">
|
||
|
<param name="cent-name" value="centipede"/>
|
||
|
<param name="cent-target" value="jar-cent"/>
|
||
|
</antcall>
|
||
|
|
||
|
</target>
|
||
|
|
||
|
<!-- ================================== -->
|
||
|
<!-- Create a cent.jar package -->
|
||
|
<!-- using an already deployed cent -->
|
||
|
<!-- ================================== -->
|
||
|
|
||
|
<target name="update-cent">
|
||
|
|
||
|
<centipede-user-input name="cent-name">Please select a cent to update: </centipede-user-input>
|
||
|
<delete file="${cents.dir}/${cent-name}.${cent.jar.suffix}"/>
|
||
|
<delete dir="${cents.dir}/${cent-name}.${cent.dir.suffix}"/>
|
||
|
|
||
|
<antcall target="get-needed-cents"/>
|
||
|
|
||
|
</target>
|
||
|
|
||
|
<!-- ================================== -->
|
||
|
<!-- Create a cent.jar package -->
|
||
|
<!-- using an already deployed cent -->
|
||
|
<!-- ================================== -->
|
||
|
|
||
|
<target name="update-all-cents">
|
||
|
|
||
|
<property name="yn" value="n"/>
|
||
|
<centipede-user-input name="yn">This will delete and download all cents. Are you sure? [y/n]: </centipede-user-input>
|
||
|
|
||
|
|
||
|
<condition property="stopit">
|
||
|
<not>
|
||
|
<equals arg1="${yn}" arg2="y"/>
|
||
|
</not>
|
||
|
</condition>
|
||
|
|
||
|
<fail if="stopit"/>
|
||
|
|
||
|
<delete dir="${cents.dir}"/>
|
||
|
<mkdir dir="${cents.dir}"/>
|
||
|
|
||
|
<antcall target="get-needed-cents"/>
|
||
|
|
||
|
</target>
|
||
|
|
||
|
<!-- ================================== -->
|
||
|
<!-- Create a cent.jar package -->
|
||
|
<!-- using an already deployed cent -->
|
||
|
<!-- ================================== -->
|
||
|
|
||
|
<target name="create-dtd" depends="-init">
|
||
|
<antstructure output="${xlayout.build.dir}/build.dtd"/>
|
||
|
</target>
|