You are viewing a plain text version of this content. The canonical link for it is here.
Posted to servletapi-dev@jakarta.apache.org by cr...@apache.org on 2001/07/20 21:19:49 UTC
cvs commit: jakarta-servletapi-4 BUILDING.txt README.txt build.xml README build.bat build.sh
craigmcc 01/07/20 12:19:49
Modified: . build.xml
Added: . BUILDING.txt README.txt
Removed: . README build.bat build.sh
Log:
Bring "jakarta-servletapi-4" up to current build procedures for Jakarta
subprojects (including up-to-date documentation on building from source).
Revision Changes Path
1.4 +53 -13 jakarta-servletapi-4/build.xml
Index: build.xml
===================================================================
RCS file: /home/cvs/jakarta-servletapi-4/build.xml,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- build.xml 2001/05/21 22:36:49 1.3
+++ build.xml 2001/07/20 19:19:48 1.4
@@ -1,54 +1,75 @@
<project name="Servlet API Classes" default="compile" basedir=".">
+
<!-- =================== Environmental Properties ======================= -->
+ <!-- Load user property definition overrides -->
<property file="build.properties"/>
<property file="${user.home}/build.properties"/>
- <property name="build.compiler" value="classic"/>
+ <!-- Establish property definition defaults -->
<property name="servletapi.build" value="build"/>
<property name="servletapi.dist" value="dist"/>
<property name="servletapi.lib" value="lib"/>
+
<!-- ===================== Prepare Directories ========================= -->
<target name="prepare">
+
<!-- "Build" Hierarchy -->
<mkdir dir="${servletapi.build}"/>
<mkdir dir="${servletapi.build}/classes"/>
- <mkdir dir="${servletapi.build}/classes/javax"/>
- <mkdir dir="${servletapi.build}/classes/javax/servlet"/>
- <mkdir dir="${servletapi.build}/classes/javax/servlet/resources"/>
- <mkdir dir="${servletapi.build}/classes/javax/servlet/jsp"/>
- <mkdir dir="${servletapi.build}/classes/javax/servlet/jsp/resources"/>
<mkdir dir="${servletapi.build}/docs"/>
<mkdir dir="${servletapi.build}/docs/api"/>
+
<!-- "Dist" Hierarchy -->
<mkdir dir="${servletapi.dist}"/>
<mkdir dir="${servletapi.dist}/docs"/>
<mkdir dir="${servletapi.dist}/docs/api"/>
<mkdir dir="${servletapi.dist}/lib"/>
<mkdir dir="${servletapi.dist}/src"/>
+
<!-- "Library" Hierarchy -->
<mkdir dir="${servletapi.lib}"/>
+
</target>
+
+ <!-- ======================= Static Files ============================== -->
+ <target name="static" depends="prepare">
+
+ <!-- "Dist" Hierarchy -->
+ <copy todir="${servletapi.dist}">
+ <fileset dir="." includes="BUILDING.txt"/>
+ <fileset dir="." includes="LICENSE"/>
+ <fileset dir="." includes="README.txt"/>
+ </copy>
+
+ </target>
+
+
<!-- ======================== Compile Classes ========================== -->
- <target name="compile" depends="prepare">
+ <target name="compile" depends="static"
+ description="Compile API classes (Default)">
+
<!-- Java classes -->
<javac srcdir="src/share" destdir="${servletapi.build}/classes"
debug="on" optimize="on" deprecation="on"/>
+
<!-- Associated property files -->
<copy todir="${servletapi.build}/classes">
<fileset dir="src/share">
<include name="**/*.properties"/>
</fileset>
</copy>
+
<!-- Servlet resources -->
<copy todir="${servletapi.build}/classes/javax/servlet/resources">
<fileset dir="src/share/dtd">
<include name="web-app*.dtd"/>
</fileset>
</copy>
+
<!-- JSP resources -->
<copy todir="${servletapi.build}/classes/javax/servlet/jsp/resources">
<fileset dir="src/share/dtd">
@@ -56,44 +77,63 @@
<include name="jspxml.*"/>
</fileset>
</copy>
+
</target>
+
<!-- ======================== Build JavaDoc =========================== -->
<target name="javadoc" depends="prepare">
+
<javadoc packagenames="javax.servlet.*"
sourcepath="${basedir}/src/share"
destdir="${servletapi.build}/docs/api"
use="true"
windowtitle="Servlet and JavaServer Pages API Documentation"
doctitle="Servlet and JavaServer Pages API Documentation"
- bottom="Copyright &copy; 1999-2000 The Apache Software Foundation. All Rights Reserved."/>
+ bottom="Copyright &copy; 1999-2001 The Apache Software Foundation. All Rights Reserved."/>
+
</target>
<!-- ===================== Distribution Files ========================= -->
- <target name="dist" depends="compile,javadoc">
+ <target name="dist" depends="compile,javadoc"
+ description="Create binary distribution">
+
+ <!-- Copy Javadocs -->
<copy todir="${servletapi.dist}/docs/api">
<fileset dir="${servletapi.build}/docs/api"/>
</copy>
+ <!-- Create JAR file -->
<jar jarfile="${servletapi.dist}/lib/servlet.jar"
basedir="${servletapi.build}/classes"/>
- <copy file="build.xml" tofile="${servletapi.dist}/lib/build.xml"/>
+ <!-- Copy API source files -->
<copy todir="${servletapi.dist}/src">
<fileset dir="src/share"/>
</copy>
- <copy file="${servletapi.dist}/lib/servlet.jar" tofile="${servletapi.lib}/servlet.jar"/>
+
+ <!-- Copy JAR file to ${servletapi.lib} (legacy reasons) -->
+ <copy file="${servletapi.dist}/lib/servlet.jar"
+ tofile="${servletapi.lib}/servlet.jar"/>
+
</target>
+
<!-- ====================== Clean Generated Files ===================== -->
- <target name="clean">
+ <target name="clean"
+ description="Clean previous build results">
+
<delete dir="${servletapi.build}"/>
<delete dir="${servletapi.dist}"/>
<delete dir="${servletapi.lib}"/>
+
</target>
+
<!-- ========================= All In One Build ======================= -->
- <target name="all" depends="clean,dist"/>
+ <target name="all" depends="clean,dist"
+ description="Clean, compile, and dist"/>
+
</project>
1.1 jakarta-servletapi-4/BUILDING.txt
Index: BUILDING.txt
===================================================================
$Id: BUILDING.txt,v 1.1 2001/07/20 19:19:48 craigmcc Exp $
Building The Java Servlet and JSP API Classes
=============================================
This subproject contains the source code for the implementation classes of the
Java Servlet and JSP APIs (packages javax.servlet, javax.servlet.http,
javax.servlet.jsp, and javax.servlet.jsp.tagext). In order to build these
sources successfully, you must do the following:
(1) Download and Install the Ant Binary Distribution
NOTE: These instructions assume that you are using the Ant 1.3 release.
Procedures for Ant 1.4 and later versions should be similar, but have not
been tested.
* Download a binary distribution of Ant 1.3 from:
http://jakarta.apache.org/builds/jakarta-ant/release/v1.3/bin/
On a Windows platform, you will need:
jakarta-ant-1.3-bin.zip
jakarta-ant-1.3-optional.jar
On a Unix platform, you will need:
jakarta-ant-1.3-bin.tar.gz
jakarta-ant-1.3-optional.jar
* Unpack the binary distribution into a convenient location so that the
Ant release resides in its own directory (conventionally named
"jakarta-ant-1.3"). For the purposes of the remainder of this document,
the symbolic name "${ant.home}" is used to refer to the full pathname of
the release directory.
* Copy the file "jakarta-ant-1.3-optional.jar", downloaded above, into
the directory "${ant.home}/lib". This makes available several Ant
extension commands that are commonly required when building Jakarta
based projects.
* Modify the PATH environment variable to include directory
"${ant.home}/bin" in its list. This makes the "ant" command line script
available, which will be used to actually perform the build.
(2) Download and Install the JAXP/1.1 Reference Implementation (OPTIONAL)
NOTE: Although this step is not required to build this particular subproject,
it is commonly required to build other Jakarta projects. Hence, the steps
required are documented here.
* Download a binary distribution of JAXP 1.1 (Final Version) from:
http://java.sun.com/xml/download.html
* Unpack the binary distribution into a convenient location so that the
JAXP/1.1 release resides in its own directory (conventionally named
"jaxp-1.1". For the purposes of the remainder of this document, the
symbolic name "${jaxp.home}" is used to refer to the full pathname of
the release directory.
* Make the JAR files of this distribution ("crimson.jar", "jaxp.jar", and
"xalan.jar") available for use by performing ONE of the following options:
- Remove the existing "jaxp.jar" and "parser.jar" files found in the
"${ant.home}/lib" directory, and copy these JAR files into the
"${ant.home}/lib" directory (prefered option).
- Add these files to your CLASSPATH environment variable.
(3) Download and Install Subproject Source Code
* Use Anonymous CVS (as described on the Jakarta web site at
<http://jakarta.apache.org/site/cvsindex.html>, or
download a source distribution from:
http://jakarta.apache.org/builds/jakarta-servletapi-4/nightly/src/
On a Windows platform, you will need:
jakarta-servletapi-4-src-YYYYMMDD.zip
On a Unix platform, you will need:
jakarta-servletapi-4-src-YYYYMMDD.zip
(Alternatively, you can download the Servlet API source distribution
from the same directory as you find a released version of Tomcat 4.
Such distributions will contain exactly the Servlet API classes used
to build the "servlet.jar" file inside that Tomcat distribution.)
* Unpack the source distribution into a convenient location so that the
distribution resides in its own directory (conventionally named
"jakarta-servletapi-4"). For the purposes of the remainder of this document,
the symbolic name "${servletapi.source}" is used to refer to the full
pathname of the release directory.
(4) Customize Build Properties For This Subproject
Most Jakarta subprojects allow you to customize Ant properties (with default
values defined in the "build.xml" file. This is done by creating a text file
named "build.properties" in the source distribution directory (for property
definitions local to this subproject) and/or your user home directory (for
property definitions shared across subprojects).
The "jakarta-servletapi-4" subproject does not define any customizable
build properties.
(5) Build A Binary Distribution
Open a command line shell, and issue the following commands:
cd ${servletapi.source}
ant -projecthelp
If everything is installed correctly, you should see a list of the Ant
"targets" that represent different commands you might wish to build. By
convention, the "dist" target creates a complete binary distribution. To
execute it, type the following commands:
cd ${servletapi.source}
ant dist
This will create a complete binary distribution of the subproject (equivalent
in structure to the corresponding binary distribution downloadable from the
Jakarta web site), in the "${servletapi.source}/dist" directory. It will have
the contents described in the corresponding "README.txt" file.
The file most commonly required by other projects will be the "servlet.jar"
file, found in "${servletapi.source}/lib/servlet.jar". Make a note of the
full pathname to this file, because you will need it when customizing build
properties for other Jakarta subprojects that depend on these classes.
1.1 jakarta-servletapi-4/README.txt
Index: README.txt
===================================================================
$Id: README.txt,v 1.1 2001/07/20 19:19:48 craigmcc Exp $
Java Servlet and JSP API Classes
================================
This subproject contains the compiled code for the implementation classes of
the Java Servlet and JSP APIs (packages javax.servlet, javax.servlet.http,
javax.servlet.jsp, and javax.servlet.jsp.tagext). It includes the following
contents:
BUILDING.txt Instructions for building from sources
LICENSE Apache Software License for this release
README.txt This document
docs/ Documentation for this release
api/ Javadocs for Servlet and JSP API classes
lib/ Binary JAR files for this release
servlet.jar Binary Servlet and JSP API classes
src/ Sources for Servlet and JSP API classes
In general, you will need to add the "servlet.jar" file (found in the "lib"
subdirectory of this release) into the compilation class path for your
projects that depend on these APIs.
The compiled "servlet.jar" file included in this subproject is automatically
included in binary distributions of Tomcat 4.0, so you need not download this
subproject separately unless you wish to utilize the Javadocs, or peruse the
source code to see how the API classes are implemented.