Replaced maven-generated ant build with standalone version adapted from [io].
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@737417 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
3ffa187429
commit
b5f0d0e102
492
build.xml
492
build.xml
|
@ -1,185 +1,337 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
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="Commons IO" default="jar" basedir=".">
|
||||
|
||||
<!--build.xml generated by maven from project.xml version 1.2-RC2
|
||||
on date April 24 2008, time 1634-->
|
||||
|
||||
<project default="jar" name="commons-math" basedir=".">
|
||||
<property name="defaulttargetdir" value="target">
|
||||
</property>
|
||||
<property name="libdir" value="target/lib">
|
||||
</property>
|
||||
<property name="classesdir" value="target/classes">
|
||||
</property>
|
||||
<property name="testclassesdir" value="target/test-classes">
|
||||
</property>
|
||||
<property name="testclassesdir" value="target/test-classes">
|
||||
</property>
|
||||
<property name="testreportdir" value="target/test-reports">
|
||||
</property>
|
||||
<property name="distdir" value="dist">
|
||||
</property>
|
||||
<property name="javadocdir" value="dist/docs/api">
|
||||
</property>
|
||||
<property name="final.name" value="commons-math-1.2-RC2">
|
||||
</property>
|
||||
<path id="build.classpath">
|
||||
<fileset dir="${libdir}">
|
||||
<include name="**/*.jar">
|
||||
</include>
|
||||
</fileset>
|
||||
<!--
|
||||
"Math" component of the Apache Commons Project
|
||||
$Id:$
|
||||
$Revision:$ $Date:$
|
||||
-->
|
||||
|
||||
|
||||
<!-- ========== Initialize Properties ===================================== -->
|
||||
|
||||
<property file="build.properties"/> <!-- Component local -->
|
||||
<property file="${user.home}/build.properties"/> <!-- User local -->
|
||||
|
||||
|
||||
<!-- ========== External Dependencies ===================================== -->
|
||||
|
||||
|
||||
<!-- Junit -->
|
||||
<property name="junit.version" value="4.4"/>
|
||||
<property name="junit.home" value="/usr/share/junit"/>
|
||||
<property name="junit.jar" value="${junit.home}/junit-${junit.version}.jar"/>
|
||||
|
||||
|
||||
<!-- ========== Component Declarations ==================================== -->
|
||||
|
||||
|
||||
<!-- The name of this component -->
|
||||
<property name="component.name" value="commons-math"/>
|
||||
|
||||
<!-- The primary package name of this component -->
|
||||
<property name="component.package" value="org.apache.commons.math"/>
|
||||
|
||||
<!-- The title of this component -->
|
||||
<property name="component.title" value="Commons MATH"/>
|
||||
|
||||
<!-- The current version number of this component -->
|
||||
<property name="component.version" value="2.0-SNAPSHOT"/>
|
||||
|
||||
<!-- The base directory for component sources -->
|
||||
<property name="source.home" value="src/java"/>
|
||||
|
||||
<!-- The base directory for unit test sources -->
|
||||
<property name="test.home" value="src/test"/>
|
||||
|
||||
<!-- Download lib dir -->
|
||||
<property name="download.lib.dir" value="lib"/>
|
||||
|
||||
<!-- The base directory for compilation targets -->
|
||||
<property name="build.home" value="target"/>
|
||||
|
||||
<!-- The base directory for distribution targets -->
|
||||
<property name="dist.home" value="${build.home}/dist"/>
|
||||
|
||||
<!-- Base file name for dist files -->
|
||||
<property name="final.name" value="${component.name}-${component.version}"/>
|
||||
|
||||
<!-- Directory where binary release files are staged -->
|
||||
<property name="stage.bin.dir" value="${dist.home}/stage-bin"/>
|
||||
|
||||
<!-- Directory where source release files are staged -->
|
||||
<property name="stage.src.dir" value="${dist.home}/stage-src"/>
|
||||
|
||||
<!-- ========== Compiler Defaults ========================================= -->
|
||||
|
||||
<!-- Should Java compilations set the 'debug' compiler option? -->
|
||||
<property name="compile.debug" value="true"/>
|
||||
|
||||
<!-- Should Java compilations set the 'deprecation' compiler option? -->
|
||||
<property name="compile.deprecation" value="false"/>
|
||||
|
||||
<!-- Should Java compilations set the 'optimize' compiler option? -->
|
||||
<property name="compile.optimize" value="true"/>
|
||||
|
||||
<!-- JDK level -->
|
||||
<property name="compile.source" value="1.5"/>
|
||||
<property name="compile.target" value="1.5"/>
|
||||
|
||||
<!-- Base compile classpath -->
|
||||
<path id="compile.classpath">
|
||||
<pathelement location="${build.home}/classes"/>
|
||||
</path>
|
||||
<target name="init" description="o Initializes some properties">
|
||||
<mkdir dir="${libdir}">
|
||||
</mkdir>
|
||||
<condition property="noget">
|
||||
<equals arg2="only" arg1="${build.sysclasspath}">
|
||||
</equals>
|
||||
</condition>
|
||||
<!--Test if JUNIT is present in ANT classpath-->
|
||||
|
||||
<available property="Junit.present" classname="junit.framework.Test">
|
||||
</available>
|
||||
<!-- External dependency classpath -->
|
||||
<path id="downloaded.lib.classpath">
|
||||
<pathelement location="${download.lib.dir}/junit-${junit.version}.jar"/>
|
||||
</path>
|
||||
|
||||
<!-- ========== Test Execution Defaults =================================== -->
|
||||
|
||||
|
||||
<!-- Construct unit test classpath -->
|
||||
<path id="test.classpath">
|
||||
<pathelement location="${build.home}/classes"/>
|
||||
<pathelement location="${build.home}/test-classes"/>
|
||||
<pathelement location="${junit.jar}"/>
|
||||
<path refid="downloaded.lib.classpath"/>
|
||||
</path>
|
||||
|
||||
<!-- Should the build fail if there are test failures? -->
|
||||
<property name="test.failonerror" value="true"/>
|
||||
|
||||
<!-- ========== Executable Targets ======================================== -->
|
||||
|
||||
<target name="clean" description="Clean build and distribution directories">
|
||||
<delete dir="${build.home}"/>
|
||||
</target>
|
||||
<target name="compile" description="o Compile the code" depends="get-deps">
|
||||
<mkdir dir="${classesdir}">
|
||||
</mkdir>
|
||||
<javac destdir="${classesdir}" deprecation="true" debug="true" optimize="false" excludes="**/package.html">
|
||||
<src>
|
||||
<pathelement location="src/java">
|
||||
</pathelement>
|
||||
</src>
|
||||
<classpath refid="build.classpath">
|
||||
</classpath>
|
||||
|
||||
|
||||
<target name="init"
|
||||
description="Initialize and evaluate conditionals">
|
||||
<echo message="-------- ${component.title} ${component.version} --------"/>
|
||||
<filter token="name" value="${component.name}"/>
|
||||
<filter token="package" value="${component.package}"/>
|
||||
<filter token="version" value="${component.version}"/>
|
||||
<filter token="compilesource" value="${compile.source}"/>
|
||||
<filter token="compiletarget" value="${compile.target}"/>
|
||||
<tstamp/>
|
||||
<mkdir dir="${build.home}"/>
|
||||
<mkdir dir="${build.home}/classes"/>
|
||||
<mkdir dir="${build.home}/test-classes"/>
|
||||
</target>
|
||||
|
||||
<!-- ========== Compile Targets =========================================== -->
|
||||
|
||||
<target name="compile" depends="init" description="Compile">
|
||||
|
||||
<javac srcdir="${source.home}"
|
||||
destdir="${build.home}/classes"
|
||||
source="${compile.source}"
|
||||
target="${compile.target}"
|
||||
debug="${compile.debug}"
|
||||
deprecation="${compile.deprecation}"
|
||||
optimize="${compile.optimize}">
|
||||
<classpath refid="compile.classpath"/>
|
||||
</javac>
|
||||
<mkdir dir="${classesdir}/META-INF">
|
||||
</mkdir>
|
||||
<copy todir="${classesdir}/META-INF">
|
||||
<fileset dir=".">
|
||||
<include name="NOTICE.txt">
|
||||
</include>
|
||||
</fileset>
|
||||
</copy>
|
||||
</target>
|
||||
<target name="jar" description="o Create the jar" depends="compile,test">
|
||||
<jar jarfile="${defaulttargetdir}/${final.name}.jar" excludes="**/package.html" basedir="${classesdir}">
|
||||
</jar>
|
||||
|
||||
|
||||
<!-- ========== Unit Test Targets ========================================= -->
|
||||
|
||||
<target name="compile.tests" depends="compile, download-dependencies" description="Compile unit tests.">
|
||||
|
||||
<javac srcdir="${test.home}"
|
||||
destdir="${build.home}/test-classes"
|
||||
debug="${compile.debug}"
|
||||
deprecation="${compile.deprecation}"
|
||||
optimize="${compile.optimize}">
|
||||
<classpath refid="test.classpath"/>
|
||||
</javac>
|
||||
|
||||
<copy todir="${build.home}/test-classes">
|
||||
<fileset dir="${test.home}">
|
||||
<include name="**/*.xml"/>
|
||||
<include name="**/*.txt"/>
|
||||
</fileset>
|
||||
</copy>
|
||||
|
||||
</target>
|
||||
|
||||
<target name="test" depends="compile.tests"
|
||||
description="Run unit tests">
|
||||
<junit printsummary="true"
|
||||
errorProperty="test.failed"
|
||||
failureProperty="test.failed"
|
||||
fork="true"
|
||||
showOutput="true">
|
||||
<formatter usefile="false" type="plain"/>
|
||||
<classpath refid="test.classpath"/>
|
||||
<batchtest>
|
||||
<fileset dir="${test.home}" includes="**/*Test.java"
|
||||
excludes="**/*AbstractTest.java"/>
|
||||
</batchtest>
|
||||
</junit>
|
||||
<fail message="There were test failures.">
|
||||
<condition>
|
||||
<and>
|
||||
<istrue value="${test.failonerror}"/>
|
||||
<isset property="test.failed"/>
|
||||
</and>
|
||||
</condition>
|
||||
</fail>
|
||||
</target>
|
||||
<target name="clean" description="o Clean up the generated directories">
|
||||
<delete dir="${defaulttargetdir}">
|
||||
</delete>
|
||||
<delete dir="${distdir}">
|
||||
</delete>
|
||||
</target>
|
||||
<target name="dist" description="o Create a distribution" depends="jar, javadoc">
|
||||
<mkdir dir="dist">
|
||||
</mkdir>
|
||||
<copy todir="dist">
|
||||
<fileset dir="${defaulttargetdir}" includes="*.jar">
|
||||
</fileset>
|
||||
<fileset dir="${basedir}" includes="LICENSE*, README*">
|
||||
</fileset>
|
||||
</copy>
|
||||
</target>
|
||||
<target name="test" description="o Run the test cases" if="test.failure" depends="internal-test">
|
||||
<fail message="There were test failures.">
|
||||
</fail>
|
||||
</target>
|
||||
<target name="internal-test" if="Junit.present" depends="junit-present,compile-tests">
|
||||
<mkdir dir="${testreportdir}">
|
||||
</mkdir>
|
||||
<junit dir="./" failureproperty="test.failure" printSummary="yes" fork="true" haltonerror="true">
|
||||
<sysproperty key="basedir" value=".">
|
||||
</sysproperty>
|
||||
<formatter type="xml">
|
||||
</formatter>
|
||||
<formatter usefile="false" type="plain">
|
||||
</formatter>
|
||||
<classpath>
|
||||
<path refid="build.classpath">
|
||||
</path>
|
||||
<pathelement path="${testclassesdir}">
|
||||
</pathelement>
|
||||
<pathelement path="${classesdir}">
|
||||
</pathelement>
|
||||
</classpath>
|
||||
<batchtest todir="${testreportdir}">
|
||||
<fileset dir="src/test">
|
||||
<include name="**/*Test.java">
|
||||
</include>
|
||||
<exclude name="**/*AbstractTest.java">
|
||||
</exclude>
|
||||
</fileset>
|
||||
</batchtest>
|
||||
</junit>
|
||||
</target>
|
||||
<target name="junit-present" unless="Junit.present" depends="init">
|
||||
<echo>================================= WARNING ================================</echo>
|
||||
<echo>Junit isn't present in your ${ANT_HOME}/lib directory. Tests not executed.</echo>
|
||||
<echo>==========================================================================</echo>
|
||||
</target>
|
||||
<target name="compile-tests" if="Junit.present" depends="junit-present,compile">
|
||||
<mkdir dir="${testclassesdir}">
|
||||
</mkdir>
|
||||
<javac destdir="${testclassesdir}" deprecation="true" debug="true" optimize="false" excludes="**/package.html">
|
||||
<src>
|
||||
<pathelement location="src/test">
|
||||
</pathelement>
|
||||
</src>
|
||||
<classpath>
|
||||
<path refid="build.classpath">
|
||||
</path>
|
||||
<pathelement path="${classesdir}">
|
||||
</pathelement>
|
||||
</classpath>
|
||||
</javac>
|
||||
<copy todir="${testclassesdir}">
|
||||
<fileset dir="src/test">
|
||||
<include name="**/*.xml">
|
||||
</include>
|
||||
<include name="**/*.txt">
|
||||
</include>
|
||||
</fileset>
|
||||
</copy>
|
||||
</target>
|
||||
<target name="javadoc" description="o Generate javadoc" depends="get-deps">
|
||||
<mkdir dir="${javadocdir}">
|
||||
</mkdir>
|
||||
|
||||
|
||||
<!-- ========== Produce JavaDocs ========================================== -->
|
||||
|
||||
<target name="javadoc" depends="compile" description="Create component Javadoc documentation">
|
||||
<mkdir dir="${build.home}/apidocs"/>
|
||||
<tstamp>
|
||||
<format pattern="2003-yyyy" property="year">
|
||||
</format>
|
||||
<format property="current.year" pattern="yyyy"/>
|
||||
</tstamp>
|
||||
<property name="copyright" value="Copyright &copy; The Apache Software Foundation. All Rights Reserved.">
|
||||
</property>
|
||||
<property name="title" value="Math 1.2-RC2 API">
|
||||
</property>
|
||||
<javadoc use="true" private="true" destdir="${javadocdir}" author="true" version="true" sourcepath="src/java" packagenames="org.apache.commons.math.*">
|
||||
<classpath>
|
||||
<path refid="build.classpath">
|
||||
</path>
|
||||
</classpath>
|
||||
<javadoc sourcepath="${source.home}"
|
||||
destdir="${build.home}/apidocs"
|
||||
packagenames="org.apache.commons.*"
|
||||
author="true"
|
||||
private="true"
|
||||
version="true"
|
||||
doctitle="<h1>${component.title} ${component.version}</h1>"
|
||||
windowtitle="${component.title} ${component.version}"
|
||||
bottom="Copyright (c) 2003-${current.year} Apache Software Foundation"
|
||||
classpathref="compile.classpath">
|
||||
<link href="http://java.sun.com/j2se/1.5.0/docs/api/"/>
|
||||
<link href="http://commons.apache.org/collections/api"/>
|
||||
</javadoc>
|
||||
</target>
|
||||
<target name="get-deps" unless="noget" depends="init">
|
||||
<!--Proxy settings works only with a JDK 1.2 and higher.-->
|
||||
|
||||
<echo>Proxy used :</echo>
|
||||
<echo>Proxy host [${proxy.host}]</echo>
|
||||
<echo>Proxy port [${proxy.port}]</echo>
|
||||
<echo>Proxy user [${proxy.username}]</echo>
|
||||
<setproxy proxyuser="${proxy.username}" proxyport="${proxy.port}" proxypassword="${proxy.password}" proxyhost="${proxy.host}">
|
||||
</setproxy>
|
||||
<get dest="${libdir}/maven-cobertura-plugin-1.1.1.jar" usetimestamp="true" ignoreerrors="true" src="http://repo1.maven.org/maven/maven-plugins/plugins/maven-cobertura-plugin-1.1.1.jar">
|
||||
</get>
|
||||
<get dest="${libdir}/maven-xdoc-plugin-1.9.2.jar" usetimestamp="true" ignoreerrors="true" src="http://repo1.maven.org/maven/maven/plugins/maven-xdoc-plugin-1.9.2.jar">
|
||||
</get>
|
||||
|
||||
<!-- ========== Create Jar ================================================ -->
|
||||
|
||||
<target name="jar" depends="test" description="Create jar file">
|
||||
|
||||
<mkdir dir="${build.home}/classes/META-INF"/>
|
||||
<copy file="LICENSE.txt" tofile="${build.home}/classes/META-INF/LICENSE.txt"/>
|
||||
<copy file="NOTICE.txt" tofile="${build.home}/classes/META-INF/NOTICE.txt"/>
|
||||
|
||||
<manifest file="${build.home}/MANIFEST.MF">
|
||||
<attribute name="Specification-Title" value="${component.title}"/>
|
||||
<attribute name="Specification-Version" value="${component.version}"/>
|
||||
<attribute name="Specification-Vendor" value="Apache Software Foundation"/>
|
||||
<attribute name="Implementation-Title" value="${component.title}"/>
|
||||
<attribute name="Implementation-Version" value="${component.version}"/>
|
||||
<attribute name="Implementation-Vendor" value="Apache Software Foundation"/>
|
||||
<attribute name="Implementation-Vendor-Id" value="org.apache"/>
|
||||
<attribute name="X-Compile-Source-JDK" value="${compile.source}"/>
|
||||
<attribute name="X-Compile-Target-JDK" value="${compile.target}"/>
|
||||
</manifest>
|
||||
|
||||
<jar jarfile="${build.home}/${final.name}.jar"
|
||||
basedir="${build.home}/classes"
|
||||
manifest="${build.home}/MANIFEST.MF"/>
|
||||
</target>
|
||||
<target name="noProxy" unless="useProxy" depends="init">
|
||||
<echo>Proxy not used.</echo>
|
||||
|
||||
|
||||
<!-- ========== Distribution Target =========================================== -->
|
||||
|
||||
<target name="dist" depends="clean,jar,javadoc" description="Create distribution artifacts">
|
||||
|
||||
<mkdir dir="${dist.home}"/>
|
||||
|
||||
<!-- jar(s) -->
|
||||
<copy todir="${dist.home}">
|
||||
<fileset dir=".">
|
||||
<include name="RELEASE-NOTES.txt"/>
|
||||
</fileset>
|
||||
<fileset dir="${build.home}">
|
||||
<include name="*.jar"/>
|
||||
</fileset>
|
||||
</copy>
|
||||
|
||||
<!-- Binary Distro -->
|
||||
<mkdir dir="${stage.bin.dir}/${final.name}"/>
|
||||
<copy todir="${stage.bin.dir}/${final.name}">
|
||||
<fileset dir=".">
|
||||
<include name="LICENSE.txt"/>
|
||||
<include name="NOTICE.txt"/>
|
||||
<include name="RELEASE-NOTES.txt"/>
|
||||
</fileset>
|
||||
<fileset dir="${build.home}">
|
||||
<include name="*.jar"/>
|
||||
</fileset>
|
||||
</copy>
|
||||
<copy todir="${stage.bin.dir}/${final.name}/apidocs">
|
||||
<fileset dir="${build.home}/apidocs" />
|
||||
</copy>
|
||||
|
||||
<!-- Source Distro -->
|
||||
<mkdir dir="${stage.src.dir}/${final.name}-src"/>
|
||||
<copy todir="${stage.src.dir}/${final.name}-src">
|
||||
<fileset dir=".">
|
||||
<include name="*.xml"/>
|
||||
<include name="*.txt"/>
|
||||
<include name="*.html"/>
|
||||
</fileset>
|
||||
</copy>
|
||||
<copy todir="${stage.src.dir}/${final.name}-src/src">
|
||||
<fileset dir="src" excludes="mantissa/**,experimental/**" />
|
||||
</copy>
|
||||
<zip zipfile="${dist.home}/${final.name}.zip" basedir="${stage.bin.dir}"/>
|
||||
<zip zipfile="${dist.home}/${final.name}-src.zip" basedir="${stage.src.dir}"/>
|
||||
<tar tarfile="${dist.home}/${final.name}.tar" basedir="${stage.bin.dir}" longfile="gnu"/>
|
||||
<tar tarfile="${dist.home}/${final.name}-src.tar" basedir="${stage.src.dir}" longfile="gnu"/>
|
||||
<gzip src="${dist.home}/${final.name}.tar" zipfile="${dist.home}/${final.name}.tar.gz"/>
|
||||
<gzip src="${dist.home}/${final.name}-src.tar" zipfile="${dist.home}/${final.name}-src.tar.gz"/>
|
||||
|
||||
<!-- clean up staging directories -->
|
||||
<delete dir="${stage.bin.dir}"/>
|
||||
<delete dir="${stage.src.dir}"/>
|
||||
|
||||
</target>
|
||||
<target name="install-maven">
|
||||
<get dest="${user.home}/maven-install-latest.jar" usetimestamp="true" src="${repo}/maven/maven-install-latest.jar">
|
||||
</get>
|
||||
<unjar dest="${maven.home}" src="${user.home}/maven-install-latest.jar">
|
||||
</unjar>
|
||||
</target>
|
||||
</project>
|
||||
|
||||
|
||||
<!-- ========== Gump Target ===================================================== -->
|
||||
|
||||
<target name="gump" depends="clean,test,javadoc,jar" description="Gump Target - clean,test,javadoc,jar"/>
|
||||
|
||||
|
||||
<!-- ========== Download Dependencies =========================================== -->
|
||||
|
||||
<target name="download-dependencies"
|
||||
depends="check-availability" unless="skip.download">
|
||||
<echo message="doing download-dependencies..." />
|
||||
<antcall target="download-junit" />
|
||||
</target>
|
||||
|
||||
<target name="check-availability">
|
||||
<echo message="doing check-availability..." />
|
||||
<available file="${junit.jar}" property="junit.found"/>
|
||||
</target>
|
||||
|
||||
<target name="download-junit" unless="junit.found">
|
||||
<echo message="Downloading junit..."/>
|
||||
<mkdir dir="${download.lib.dir}" />
|
||||
<get dest="${download.lib.dir}/junit-${junit.version}.jar"
|
||||
usetimestamp="true" ignoreerrors="true"
|
||||
src="http://repo1.maven.org/maven2/junit/junit/${junit.version}/junit-${junit.version}.jar"/>
|
||||
</target>
|
||||
|
||||
</project>
|
||||
|
||||
|
|
Loading…
Reference in New Issue