poi/tools/antipede/build.xtarget
Nicola Ken Barozzi b462f48f4e Update to latest dev Centipede version with cents that behave correctly in the build dir
and references on the main page to new Centipede features.
Oh, and look at the grouped javadocs :-)
Need only to reference the uml dos and I've finished for now :-)


git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@352480 13f79535-47bb-0310-9956-ffa450edef68
2002-04-24 16:22:03 +00:00

268 lines
9.2 KiB
Plaintext

<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>
</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>