jakarta regexp ant script
<?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. - - CVS $Id: build.xml 519715 2007-03-18 22:35:01Z vgritsenko $ --> <!-- ----------------------------------------------------------------------- --> <!-- Jakarta Regexp Build file --> <!-- ----------------------------------------------------------------------- --> <project name="Jakarta-Regexp" default="jar" basedir="."> <!-- Allow the user to have multiple configuration files and specify them using -Dconfiguration.file=filename --> <property name="configuration.file" value="build.properties"/> <!-- Give user a chance to override without editing this file (and without using -D arguments each time they build) --> <property file="${user.home}/jakarta-regexp.build.properties" /> <property file="${user.home}/build.properties" /> <property file="${basedir}/${configuration.file}" /> <property file="${basedir}/default.properties" /> <!-- ------------------------------------------------------------------- --> <!-- Initializes some variables --> <!-- ------------------------------------------------------------------- --> <property name="ant.home" value="."/> <property name="Name" value="Jakarta-Regexp"/> <property name="year" value="2001-2007"/> <property name="version" value="1.5"/> <property name="project" value="jakarta-regexp"/> <property name="build.dir" value="build"/> <property name="build.src" value="${build.dir}/src"/> <property name="build.dest" value="${build.dir}/classes"/> <property name="src.java.dir" value="src/java"/> <property name="javadoc.destdir" value="docs/api/"/> <property name="final.name" value="${project}-${version}"/> <property name="final.dir" value="${final.name}/"/> <property name="debug" value="off"/> <property name="optimize" value="on"/> <property name="deprecation" value="off"/> <property name="RETest.txt" value="docs/RETest.txt"/> <property name="jakarta-site.dir" value="../jakarta-site/"/> <!-- Anakia --> <property name="docs.src" value="xdocs"/> <property name="docs.dest" value="docs"/> <!-- ------------------------------------------------------------------- --> <!-- Copies the source code to the build directory and does filtering --> <!-- ------------------------------------------------------------------- --> <target name="prepare"> <tstamp/> <filter token="year" value="${year}"/> <filter token="version" value="${version}"/> <filter token="date" value="${TODAY}"/> <mkdir dir="${build.dir}"/> <mkdir dir="${build.dest}"/> <mkdir dir="${build.src}"/> <chmod dir="${build.dir}" perm="774"/> <copy todir="${build.src}" filtering="yes"> <fileset dir="${src.java.dir}"> <include name="**/*.java"/> <include name="**/*.properties"/> <include name="**/package.html"/> </fileset> </copy> </target> <!-- ------------------------------------------------------------------- --> <!-- Compiles the source directory --> <!-- ------------------------------------------------------------------- --> <target name="compile" depends="prepare"> <echo message="Compiling with Java ${ant.java.version}, debug ${debug}, optimize ${optimize}, deprecation ${deprecation}"/> <javac srcdir="${build.src}" destdir="${build.dest}" excludes="**/package.html" debug="${debug}" deprecation="${deprecation}" optimize="${optimize}"/> </target> <!-- ------------------------------------------------------------------- --> <!-- Compiles the source directory and creates a .jar file --> <!-- ------------------------------------------------------------------- --> <target name="jar" depends="compile"> <jar jarfile="${build.dir}/${final.name}.jar" basedir="${build.dest}" excludes="**/package.html"> <metainf dir="." includes="LICENSE,NOTICE"/> </jar> </target> <!-- ------------------------------------------------------------------- --> <!-- Creates the API documentation --> <!-- ------------------------------------------------------------------- --> <target name="javadocs" depends="prepare"> <mkdir dir="${javadoc.destdir}"/> <javadoc sourcepath="${build.src}" packagenames="org.apache.regexp.*" destdir="${javadoc.destdir}" author="true" private="true" version="true" use="true" windowtitle="${Name} ${version} API" doctitle="${Name} ${version} API" bottom="Copyright &copy; ${year} Apache Software Foundation. All Rights Reserved."> </javadoc> </target> <!-- ------------------------------------------------------------------- --> <!-- Package --> <!-- ------------------------------------------------------------------- --> <target name="package" depends="jar, docs, javadocs"> <mkdir dir="${final.dir}"/> <copy todir="${final.dir}/src/java"> <fileset dir="${src.java.dir}"/> </copy> <copy todir="${final.dir}/docs"> <fileset dir="${docs.dest}"> <exclude name="**/dist/**"/> </fileset> </copy> <copy todir="${final.dir}/xdocs"> <fileset dir="${docs.src}"/> </copy> <copy file="build.xml" tofile="${final.dir}/build.xml"/> <copy file="LICENSE" tofile="${final.dir}/LICENSE"/> <copy file="NOTICE" tofile="${final.dir}/NOTICE"/> <copy file="README" tofile="${final.dir}/README"/> <copy file="${build.dir}/${final.name}.jar" tofile="${final.dir}/${final.name}.jar"/> </target> <!-- ------------------------------------------------------------------- --> <!-- Packages the distribution with ZIP --> <!-- ------------------------------------------------------------------- --> <target name="package-zip" depends="package"> <delete file="${final.name}.zip" verbose="false"/> <zip zipfile="${final.name}.zip" basedir="./" includes="${final.name}/**"/> </target> <!-- ------------------------------------------------------------------- --> <!-- Packages the distribution with TAR-GZIP --> <!-- ------------------------------------------------------------------- --> <target name="package-tgz" depends="package"> <delete file="${final.name}.tar" verbose="false"/> <delete file="${final.name}.tar.gz" verbose="false"/> <tar tarfile="${final.name}.tar" basedir="./" includes="**/${final.name}/**"/> <gzip zipfile="${final.name}.tar.gz" src="${final.name}.tar"/> </target> <!-- ------------------------------------------------------------------- --> <!-- Packages the distribution with ZIP and TAG-GZIP --> <!-- ------------------------------------------------------------------- --> <target name="package-all" depends="package-zip, package-tgz"> </target> <!-- ----------------------------------------------------------------== --> <!-- I N S T A L L J A R --> <!-- ----------------------------------------------------------------== --> <target name="install-jar" depends="jar" description="--> Installs .jar file in ${lib.repo}"> <copy todir="${lib.repo}" filtering="no"> <fileset dir="${build.dir}"> <include name="${final.name}.jar"/> </fileset> </copy> </target> <!-- ----------------------------------------------------------------== --> <!-- Run RE Test Suite --> <!-- ----------------------------------------------------------------== --> <target name="test" depends="jar"> <java classname="org.apache.regexp.RETest" fork="yes" failonerror="yes"> <arg value="${RETest.txt}"/> <classpath> <fileset dir="${build.dir}"> <include name="${final.name}.jar"/> </fileset> </classpath> </java> </target> <!-- ----------------------------------------------------------------== --> <!-- Cleans up the build directory --> <!-- ----------------------------------------------------------------== --> <target name="clean"> <delete dir="${build.dir}"/> </target> <!-- ----------------------------------------------------------------== --> <!-- XSLT Documentation Builder --> <!-- ----------------------------------------------------------------== --> <target name="docs" depends="jar"> <xslt basedir="${docs.src}" destdir="${docs.dest}" style="${jakarta-site.dir}/xdocs/stylesheets/site.xsl" includes="**/*.xml" excludes="**/stylesheets/** empty.xml"> <param name="sitenav-path" expression="${basedir}/xdocs/stylesheets/site.xml"/> </xslt> <copy todir="${docs.dest}" filtering="no"> <fileset dir="${docs.src}"> <include name="RETest.txt"/> </fileset> </copy> <copy tofile="${docs.dest}/jakarta-regexp.jar" file="${build.dir}/${final.name}.jar"/> </target> </project>