Author: psteitz
Date: Sat Jan 24 18:44:58 2009
New Revision: 737417

URL: http://svn.apache.org/viewvc?rev=737417&view=rev
Log:
Replaced maven-generated ant build with standalone version adapted from [io].

Modified:
    commons/proper/math/trunk/build.xml

Modified: commons/proper/math/trunk/build.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/math/trunk/build.xml?rev=737417&r1=737416&r2=737417&view=diff
==============================================================================
--- commons/proper/math/trunk/build.xml (original)
+++ commons/proper/math/trunk/build.xml Sat Jan 24 18:44:58 2009
@@ -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>
+
+  <!-- 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>
-  <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>
-  </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>
+
+  <!-- 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="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">
+  </target>
+
+
+<!-- ========== 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>
+
+
+<!-- ========== Produce JavaDocs ========================================== -->
+
+  <target name="javadoc" depends="compile" description="Create component 
Javadoc documentation">
+    <mkdir dir="${build.home}/apidocs"/>
+    <tstamp>
+        <format property="current.year" pattern="yyyy"/>
+    </tstamp>
+    <javadoc sourcepath="${source.home}"
+                destdir="${build.home}/apidocs"
+           packagenames="org.apache.commons.*"
+                 author="true"
+                private="true"
+                version="true"
+               doctitle="&lt;h1&gt;${component.title} 
${component.version}&lt;/h1&gt;"
+            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>
+
+
+<!-- ========== 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>
+
+
+<!-- ========== 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="NOTICE.txt">
-        </include>
+        <include name="RELEASE-NOTES.txt"/>
+      </fileset>
+      <fileset dir="${build.home}">
+        <include name="*.jar"/>
       </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>
-  </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">
+
+    <!-- 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="${basedir}" includes="LICENSE*, README*">
+      <fileset dir="${build.home}">
+        <include name="*.jar"/>
       </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>
+    <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>
-  </target>
-  <target name="javadoc" description="o Generate javadoc" depends="get-deps">
-    <mkdir dir="${javadocdir}">
-    </mkdir>
-    <tstamp>
-      <format pattern="2003-yyyy" property="year">
-      </format>
-    </tstamp>
-    <property name="copyright" value="Copyright &amp;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>
-  </target>
-  <target name="get-deps" unless="noget" depends="init">
-    <!--Proxy settings works only with a JDK 1.2 and higher.-->
+    <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}"/>
 
-    <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>
-  </target>
-  <target name="noProxy" unless="useProxy" depends="init">
-    <echo>Proxy not used.</echo>
-  </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>
\ No newline at end of file
+
+
+<!-- ========== 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>
+


Reply via email to