ilene 2003/05/26 12:48:29
Modified: test build.xml
java/xdocs/sources/xalan resources.xml builds.xml
downloads.xml
java build.xml
java/src/org/apache/xalan/xslt EnvironmentCheck.java
Log:
Patch from Sarah McNamara ([EMAIL PROTECTED]) which improves documentation
about packaging and adds support for building and testing an alternate
binary distribution which provides xalan-interpretive and xsltc in separate
jars.
Revision Changes Path
1.63 +14 -2 xml-xalan/test/build.xml
Index: build.xml
===================================================================
RCS file: /home/cvs/xml-xalan/test/build.xml,v
retrieving revision 1.62
retrieving revision 1.63
diff -u -r1.62 -r1.63
--- build.xml 16 Apr 2003 19:18:10 -0000 1.62
+++ build.xml 26 May 2003 19:48:28 -0000 1.63
@@ -129,6 +129,8 @@
<path id="compiletest.class.path">
<pathelement path="${java.class.path}" />
<pathelement location="${xalan.jar}" />
+ <pathelement location="${xsltc.jar}" /> <!-- add this so we can
test the
+ separate jar
distribution -->
<pathelement location="${xml-apis.jar}" />
<pathelement location="${parserjar}" />
<pathelement location="${jtidy.jar}" />
@@ -159,6 +161,8 @@
build.bat/build.sh can still build on JDK 1.4 as normal. -->
<path id="boot.class.path">
<pathelement location="${xalan.jar}" />
+ <pathelement location="${xsltc.jar}" /> <!-- add this so we can
test the
+ separate jar
distribution -->
<pathelement location="${java.class.path}" />
<pathelement location="${xml-apis.jar}" />
<pathelement location="${parserjar}" />
@@ -1351,6 +1355,10 @@
<path id="xsltc.runtime.class.path">
<pathelement path="${java.class.path}" />
<pathelement location="${xalan.build.dir}/xalan.jar" />
+
+ <!-- add xsltc.jar so we can test the separate jar distribution -->
+ <pathelement location="${xalan.build.dir}/xsltc.jar" />
+
<pathelement location="${testxsl.jar}" />
<pathelement location="${parserjar}" />
<pathelement location="${xml-apis.jar}" />
@@ -1359,6 +1367,10 @@
<path id="xsltc.compile.class.path">
<pathelement path="${java.class.path}" />
<pathelement location="${xalan.build.dir}/xalan.jar" />
+
+ <!-- add xsltc.jar so we can test the separate jar distribution -->
+ <pathelement location="${xalan.build.dir}/xsltc.jar" />
+
<pathelement location="${testxsl.jar}" />
<pathelement location="${parserjar}" />
<pathelement location="${xml-apis.jar}" />
1.34 +6 -0 xml-xalan/java/xdocs/sources/xalan/resources.xml
Index: resources.xml
===================================================================
RCS file: /home/cvs/xml-xalan/java/xdocs/sources/xalan/resources.xml,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -r1.33 -r1.34
--- resources.xml 10 Apr 2003 14:34:58 -0000 1.33
+++ resources.xml 26 May 2003 19:48:28 -0000 1.34
@@ -41,6 +41,12 @@
<resource id="xslt4j-dist-bin-targz"
title="&xslt4j-dist-bin;.tar.gz"
location="&xslt4j-distdir;&xslt4j-dist-bin;.tar.gz"/>
+ <resource id="xslt4j-dist-bin-2jars-zip"
+ title="&xslt4j-dist-bin;-2jars.zip"
+ location="&xslt4j-distdir;&xslt4j-dist-bin;-2jars.zip"/>
+ <resource id="xslt4j-dist-bin-2jars-targz"
+ title="&xslt4j-dist-bin;-2jars.tar.gz"
+ location="&xslt4j-distdir;&xslt4j-dist-bin;-2jars.tar.gz"/>
<resource id="xslt4j-dist-src-zip"
title="&xslt4j-dist-src;.zip"
location="&xslt4j-distdir;&xslt4j-dist-src;.zip"/>
1.7 +51 -13 xml-xalan/java/xdocs/sources/xalan/builds.xml
Index: builds.xml
===================================================================
RCS file: /home/cvs/xml-xalan/java/xdocs/sources/xalan/builds.xml,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- builds.xml 21 Feb 2003 20:10:07 -0000 1.6
+++ builds.xml 26 May 2003 19:48:28 -0000 1.7
@@ -134,7 +134,7 @@
<anchor name="builds"/>
<s2 title="Running Product Builds - Overview">
<p>Official builds of &xslt4j; require a few more steps than simply doing
-'build dist smoketest'. This is a quick checklist of the steps; if you are
+'build fulldist'. This is a quick checklist of the steps; if you are
not comfortable following this list, then please seek help on xalan-dev.</p>
<s3 title="Release Types">
@@ -165,7 +165,9 @@
<li>Verify any doc updates for code changes are in.<br/><br/></li>
<li>Update build numbers in doc, code, and build scripts.<br/><br/></li>
<li>Do a clean checkout and tag the sources.<br/><br/></li>
-<li>build dist smoketest -logfile ..\dist.log<br/><br/></li>
+<li>build fulldist -logfile ..\fulldist.log<br/><br/></li>
+<li>build fulldist-separatejars -logfile
..\fulldist-separatejars.log<br/><br/></li>
+<li>Run the smoketest for Xalan Interpretive and XSLTC.<br/><br/></li>
<li>Verify smoketest passed; check docs built with new build
numbers.<br/><br/></li>
<li>PGP/GPG sign all .zip/.tar.gz distribution files
(distros).<br/><br/></li>
<li>Copy distros up to the website.<br/><br/></li>
@@ -240,8 +242,9 @@
<property name="version.DEVELOPER" value="D"/><!-- Set this to "D" if
a developer release; blank "" if maintenance point release -->
<property name="version.MINOR" value="1"/><!-- EITHER the developer
release number, or a maintenance point release number -->
<br/><br/></li>
+<!--
<li>src/org/apache/xalan/res/XSLTInfo.properties:<br/>
-Update the version number.<br/><br/></li>
+Update the version number.<br/><br/></li> -->
<li>xml-xalan/java/xdocs/sources/entities.ent (xslt4j-current, xslt4j-dist)
documentation updates. The xsl4j-dist is used to construct links to the actual
distribution units, and must be coordinated with whatever
xml-xalan/java/build.xml uses for ${version}.<br/><br/></li>
@@ -273,22 +276,53 @@
<ul>
-<li>build dist site smoketest -logfile ..\dist.log</li>
+<li>build fulldist site -logfile ..\fulldist.log</li>
</ul>
-<p>The above command will build the 'dist' or distribution .zip/.tar.gz
-files, as well as building the full product plus all documentation. It will
then
-run the smoketest, and saves all of it's output in ..\dist.log. Note that
this
-will take up a moderate amount of space, especially when building the
.tar.gz files,
-so ensure you have plenty of disk space first.</p>
+<p>The above command will build the binary and source distribution
.zip/.tar.gz
+files, in which the Xalan Interpretive and Xalan Compiled (XSLTC) processors
+are combined into the xalan.jar file. All the samples and the documentation
+are built as well. The log of the build is saved in ..\fulldist.log. Note
+that this will take up a moderate amount of space, especially when building
+the .tar.gz files, so ensure you have plenty of disk space first.</p>
+<p>Review the fulldist.log file quickly to ensure there were no build
errors.
+Note that you can ignore any 'warnings' from the javadoc target; however any
+'error's in the documentation must be fixed.</p>
<ul>
-<li>Verify smoketest passed; check docs built with new build numbers.</li>
+<li>build fulldist-separatejars site -logfile
..\fulldist-separatejars.log</li>
</ul>
-<p>Review the dist.log quickly to ensure there were no build errors.
+<p>Before running this command, rename the generated
<strong>./build</strong> directory from
+the 'fulldist' command above to another name, for example,
build-combinedjar. The
+'fulldist-separatejars' command will build the binary and source
distribution
+.zip/.tar.gz files, in which the Xalan Interpretive and Xalan Compiled
(XSLTC) processors
+are built into separate jars; xalan.jar and xsltc.jar respectively. All the
samples and
+the documentation are built as well. The log of the build is saved in
..\fulldist-separatejars.log.
+Note that this will take up a moderate amount of space, especially when
building the .tar.gz
+files, so ensure you have plenty of disk space first.</p>
+<p>Review the fulldist-separatejars.log file quickly to ensure there were no
build errors.
Note that you can ignore any 'warnings' from the javadoc target; however any
'error's in the documentation must be fixed.</p>
-<p>The logfile should also report the Smoketest results at the end; if it
does
-not say that the Smoketest passed, then you must fix the test results before
+<p>The results of the build will be
+placed in the ./build directory. Rename the xalan-j_2_x_x-bin.zip and
xalan-j_2_x_x-bin.tar.gz
+files to xalan-j_2_x_x-bin-2jars.zip and xalan-j_2_x_x-bin-2jars.tar.gz
respectively so that
+this binary distribution can be distinguished from the binary distributions
created by the
+'fulldist' target. The source distributions, xalan-j_2_x_x-src.zip and
xalan-j_2_x_x-src.tar.gz
+are duplicates of those created by the 'fulldist' target.</p>
+
+<ul>
+<li>Run the smoketest for Xalan Interpretive and XSLTC.</li>
+</ul>
+<p>Change to the xml-xalan\test directory and build the test harness by
entering
+"build jar -logfile jar.log". Run the smoketest for the Xalan Interpretive
processor by
+entering "build smoketest -logfile smoketest.log". Run the smoketest for the
XSLTC by
+entering "build smoketest.xsltc -logfile smoketest.xsltc.log".
+</p>
+
+<ul>
+<li>Verify smoketest passed; check docs built with new build numbers.</li>
+</ul>
+<p>Review the smoketest.log and smoketest.xsltc.log files. If they do not
say
+that the Smoketest passed, then you must fix the test results before
posting the build. Even for developer's builds, we must ensure that at
least
the Smoketest passes. For major or minor releases, we should also perform
more
testing to ensure stability. More detailed log files for the Smoketest can
@@ -309,6 +343,10 @@
ensure the integrity of their public distributions. This is most commonly
done
by signing the actual .zip/.tar.gz files with your personal PGP or GPG key.
Note that you must sign the files before copying them up to the website.</p>
+<p>The Xalan Java distributions consist of: the source distribution files
+(xalan-j_x_x_x-src.zip and xalan-j_x_x_x-src.tar.gz) and the two binary
distributions
+files (xalan-j_x_x_x-bin.zip and xalan-j_x_x_x-bin.tar.gz, and
xalan-j_x_x_x-bin-2jars.zip
+and xalan-j_x_x_x-bin-2jars.tar.gz).</p>
<p>Two prerequisites to signing the distribution are: 1) you must have a
personal PGP or GPG key, and 2) the public half of your key must be in the
appropriate KEYS file before you begin a build. If you hadn't previously
checked
1.2 +19 -5 xml-xalan/java/xdocs/sources/xalan/downloads.xml
Index: downloads.xml
===================================================================
RCS file: /home/cvs/xml-xalan/java/xdocs/sources/xalan/downloads.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- downloads.xml 24 Feb 2003 14:46:38 -0000 1.1
+++ downloads.xml 26 May 2003 19:48:28 -0000 1.2
@@ -73,15 +73,29 @@
<p>You can get the JDK or JRE from <jump
href="http://www.ibm.com/java/jdk">ibm.com/java/jdk/</jump>
or <jump href="http://www.java.sun.com">java.sun.com</jump>.</p>
- <p>To get the &xslt4j; binary distribution (all you need to use and
develop applications with &xslt4j;),
- download and unzip either of the following from the <resource-ref
idref="xslt4j-distdir"/>:</p>
+ <p>There are 2 binary distributions available; you only need to choose one
of them. The first
+ binary distribution contains the Xalan Interpretive processor and the
Xalan Compiled processor
+ (XSLTC) and the runtime support packages into a single jar, called
xalan.jar. The second binary
+ distribution contains the Xalan Interpretive processor in xalan.jar and
the Xalan Compiled
+ processor (XSLTC) and the runtime support packages in xsltc.jar. The
runtime support packages
+ required by XSLTC are: java_cup runtime version 0.10j, bcel version
5.0, and regexp version 1.2.
+ Both binary distributions contain xml-apis.jar (the JAXP 1.2
implementation) and
+ &xml4j-jar; from <resource-ref idref="xml4j-used"/>.</p>
+
+ <p>To get the first &xslt4j; binary distribution, download and unzip
either of the following from
+ the <resource-ref idref="xslt4j-distdir"/>:</p>
<ul>
<li><resource-ref idref="xslt4j-dist-bin-zip"/></li>
<li><resource-ref idref="xslt4j-dist-bin-targz"/></li>
</ul>
- <p>The binary distribution contains &xslt4j-current; (xalan.jar and
xml-apis.jar) and
- &xml4j-jar; from <resource-ref idref="xml4j-used"/>.</p>
-
+
+ <p>To get the second &xslt4j; binary distribution, download and unzip
either of the following from
+ the <resource-ref idref="xslt4j-distdir"/>:</p>
+ <ul>
+ <li><resource-ref idref="xslt4j-dist-bin-2jars-zip"/></li>
+ <li><resource-ref idref="xslt4j-dist-bin-2jars-targz"/></li>
+ </ul>
+
<p>To get the &xslt4j; source distribution (with which you can do your own
&xslt4j; build; see
<link idref="readme" anchor="build">Build notes</link>), download and
unzip either of the
following from the <resource-ref idref="xslt4j-distdir"/>:</p>
1.191 +91 -22 xml-xalan/java/build.xml
Index: build.xml
===================================================================
RCS file: /home/cvs/xml-xalan/java/build.xml,v
retrieving revision 1.190
retrieving revision 1.191
diff -u -r1.190 -r1.191
--- build.xml 10 Apr 2003 14:35:02 -0000 1.190
+++ build.xml 26 May 2003 19:48:28 -0000 1.191
@@ -78,7 +78,9 @@
<property name="runtime.jar" value="${bin.dir}/${runtime.jar.name}"/>
<property name="regexp.jar.name" value="regexp.jar"/>
<property name="regexp.jar" value="${bin.dir}/${regexp.jar.name}"/>
- <property name="xsltc.deps.license"
value="BCEL.LICENSE.txt,BCEL.README.txt,JLex.LICENSE.txt,JLex.README.txt,java_cup.LICENSE.txt,java_cup.README.txt,runtime.LICENSE.txt,runtime.README.txt,regexp.LICENSE.txt,regexp.README.txt"/>
+<!-- We don't need to package JLex in the xalan.jar, therefore the JLex
license and readme files are not required -->
+<!-- <property name="xsltc.deps.license"
value="BCEL.LICENSE.txt,BCEL.README.txt,JLex.LICENSE.txt,JLex.README.txt,java_cup.LICENSE.txt,java_cup.README.txt,runtime.LICENSE.txt,runtime.README.txt,regexp.LICENSE.txt,regexp.README.txt"/>
-->
+ <property name="xsltc.deps.license"
value="BCEL.LICENSE.txt,BCEL.README.txt,java_cup.LICENSE.txt,java_cup.README.txt,runtime.LICENSE.txt,runtime.README.txt,regexp.LICENSE.txt,regexp.README.txt"/>
<!-- Defines general variables used by the other targets; name controls
output xalan.jar -->
<property name="version.VERSION" value="2"/>
@@ -105,11 +107,12 @@
<property name="generated.xpathlexer"
value="${src.dir}/${xsltc.reldir}/compiler/XPathLexer.java"/>
<property name="generated.xpathsym"
value="${src.dir}/${xsltc.reldir}/compiler/sym.java"/>
+
<!-- Build and distribution output areas -->
<property name="build.dir" value="./build"/><!-- GUMP: root of all normal
builds output -->
<property name="build.xalan.jar" value="${build.dir}/${name}.jar"/><!--
GUMP: actual path/name of jar target output -->
<property name="build.xalan-unbundled.jar"
value="${build.dir}/${name}-unbundled.jar"/>
- <property name="build.xalan-interpretive.jar"
value="${build.dir}/${name}-interpretive.jar"/>
+ <property name="build.xalan-interpretive.jar"
value="${build.dir}/${name}.jar"/>
<property name="build.xsltc.jar" value="${build.dir}/xsltc.jar"/>
<property name="build.classes" value="${build.dir}/classes"/>
<property name="build.docs" value="${build.dir}/docs"/>
@@ -185,7 +188,7 @@
<path id="compile.source.path">
<dirset dir="${src.dir}" includes="/org/apache/**" />
</path>
-
+
<!-- ===================================================================
-->
<!-- Creates output build directories and doc prerequistes
-->
@@ -204,7 +207,9 @@
</target>
<!-- Must depend on jar since we use Xalan to process xml files -->
- <target name="prepare.docs" depends="jar">
+ <target name="prepare.docs" depends="jar,prepare.docs.nojardepends"/>
+
+ <target name="prepare.docs.nojardepends">
<mkdir dir="${build.docs}"/>
<mkdir dir="${build.apidocs}"/>
@@ -427,6 +432,9 @@
<param name="param_jar_name" value="${bcel.jar.name}" />
</antcall>
+<!-- We don't need to package the JLex or java_cup jars in the xalan.jar.
+ These are only required for building XSLTC, not for using XSLTC.
+
<antcall target="xsltc.copy-deps-jar">
<param name="param_unless" value="xsltc.jlex_jar.not_needed" />
<param name="param_jar_name" value="${jlex.jar.name}" />
@@ -436,6 +444,7 @@
<param name="param_unless" value="xsltc.java_cup_jar.not_needed" />
<param name="param_jar_name" value="${java_cup.jar.name}" />
</antcall>
+-->
<antcall target="xsltc.copy-deps-jar">
<param name="param_unless" value="xsltc.runtime_jar.not_needed" />
@@ -451,7 +460,9 @@
<delete file="${build.classes}/META-INF/MANIFEST.MF" quiet="true"/>
</target>
- <!-- Jar up all XSLTC classes including the support jars -->
+ <!-- ===================================================================
-->
+ <!-- Creates the xsltc jar including all support jars
-->
+ <!-- ===================================================================
-->
<target name="xsltc.jar" depends="xsltc.compile,xsltc.copy-deps-jars"
description="Jar xsltc,xml,BCEL,JLex,java_cup,runtime and jakarta
regexp">
@@ -483,7 +494,7 @@
</target>
<!-- ===================================================================
-->
- <!-- Creates the xalan interpretive jar
-->
+ <!-- Creates the xalan interpretive jar
-->
<!-- ===================================================================
-->
<target name="xalan-interpretive.jar" depends="xalan-interpretive.compile"
description="Jar up everything in Xalan interpretive (without XSLTC)" >
@@ -502,7 +513,8 @@
</target>
<!-- ===================================================================
-->
- <!-- Creates the xalan unbundled jar (Xalan interpretive + XSLTC)
-->
+ <!-- Creates the xalan unbundled jar (Xalan interpretive + XSLTC -
-->
+ <!-- support jars
-->
<!-- ===================================================================
-->
<target name="unbundledjar"
depends="xalan-interpretive.compile,xsltc.compile"
description="Jar up Xalan and XSLTC, without the XSLTC dependencies" >
@@ -544,7 +556,9 @@
<!-- ===================================================================
-->
<!-- Compiles the samples (servlet excluded) and jars the class files
-->
<!-- ===================================================================
-->
- <target name="samples" depends="jar,xsltc.samples"
+ <target name="samples" depends="jar,samples.nojardepends,xsltc.samples"/>
+
+ <target name="samples.nojardepends" depends="xsltc.samples.nojardepends"
description="Compile and jar the samples (except servlet)" >
<property name="exclude"
value="*.xml,*.xsl,*.txt,*.html,*.properties,*.out"/>
<mkdir dir="${build.samples}"/>
@@ -624,19 +638,27 @@
<!-- ===================================================================
-->
<target name="extra.std.samples"
depends="servlet,xsltc.applet,xsltc.ejb,xsltc.servlet"/>
+
+ <target name="extra.std.samples.nojardepends"
+ depends="servlet.nojardepends,xsltc.applet.nojardepends,
+ xsltc.ejb.nojardepends,xsltc.servlet.nojardepends"/>
<!-- ===================================================================
-->
<!-- Compiles all samples that require extra non-standard components in
-->
<!-- order to compile.
-->
<!-- ===================================================================
-->
<target name="extra.nonstd.samples" depends="xsltc.brazil"/>
+
+ <target name="extra.nonstd.samples.nojardepends"
depends="xsltc.brazil.nojardepends"/>
<!-- ===================================================================
-->
<!-- Compiles the sample servlet and jars the class files.
-->
<!-- The javax.servlet and javax.servlet.http packages
-->
<!-- must be on the classpath
-->
<!-- ===================================================================
-->
- <target name="servlet" depends="jar"
+ <target name="servlet" depends="jar,servlet.nojardepends"/>
+
+ <target name="servlet.nojardepends"
description="Compile and jar the servlet samples in xalanservlet.war" >
<echo message="To compile the sample servlets, javax.servlet and
javax.servlet.http must be on the classpath"/>
<mkdir dir="${build.servlet}"/>
@@ -678,7 +700,9 @@
<!-- add samples in CompiledApplet, CompiledBrazil, CompiledEJB and
-->
<!-- CompiledServlet.
-->
<!-- ===================================================================
-->
- <target name="xsltc.samples" depends="jar">
+ <target name="xsltc.samples" depends="jar,xsltc.samples.nojardepends"/>
+
+ <target name="xsltc.samples.nojardepends">
<mkdir dir="${build.samples}"/>
<javac srcdir="${samples.dir}/translets"
classpath="${java.class.path}:${build.xalan.jar}"
@@ -692,7 +716,9 @@
<!-- ===================================================================
-->
<!-- Compiles the XSLTC applet example and jars the class files.
-->
<!-- ===================================================================
-->
- <target name="xsltc.applet" depends="jar">
+ <target name="xsltc.applet" depends="jar,xsltc.applet.nojardepends"/>
+
+ <target name="xsltc.applet.nojardepends">
<mkdir dir="${build.samples}/CompiledApplet"/>
<javac srcdir="${samples.dir}/CompiledApplet"
destdir="${build.samples}/CompiledApplet" excludes="${exclude}"
@@ -705,7 +731,9 @@
<!-- ===================================================================
-->
<!-- Compiles the XSLTC brazil example and jars the class files.
-->
<!-- ===================================================================
-->
- <target name="xsltc.brazil" depends="jar">
+ <target name="xsltc.brazil" depends="jar,xsltc.brazil.nojardepends"/>
+
+ <target name="xsltc.brazil.nojardepends">
<mkdir dir="${build.samples}/CompiledBrazil"/>
<javac srcdir="${samples.dir}/CompiledBrazil"
destdir="${build.samples}/CompiledBrazil" excludes="${exclude}"
@@ -720,7 +748,9 @@
<!-- ejb.jar must be on the classpath to compile this sample.
-->
<!-- EJB 2.0 can be found at http://java.sun.com/products/ejb/docs.html
-->
<!-- ===================================================================
-->
- <target name="xsltc.ejb" depends="jar">
+ <target name="xsltc.ejb" depends="jar,xsltc.ejb.nojardepends"/>
+
+ <target name="xsltc.ejb.nojardepends">
<mkdir dir="${build.samples}/CompiledEJB"/>
<javac srcdir="${samples.dir}/CompiledEJB"
destdir="${build.samples}/CompiledEJB" excludes="${exclude}"
@@ -733,7 +763,9 @@
<!-- ===================================================================
-->
<!-- Compiles the XSLTC servlet example and jars the class files.
-->
<!-- ===================================================================
-->
- <target name="xsltc.servlet" depends="jar">
+ <target name="xsltc.servlet" depends="jar,xsltc.servlet.nojardepends" />
+
+ <target name="xsltc.servlet.nojardepends">
<mkdir dir="${build.samples}/CompiledServlet"/>
<javac srcdir="${samples.dir}/CompiledServlet"
destdir="${build.samples}/CompiledServlet" excludes="${exclude}"
@@ -747,7 +779,9 @@
<!-- ===================================================================
-->
<!-- Generate HTML docs
-->
<!-- ===================================================================
-->
- <target name="docs" depends="jar,prepare.docs,autodocs"
+ <target name="docs" depends="jar,docs.nojardepends"/>
+
+ <target name="docs.nojardepends"
depends="prepare.docs.nojardepends,autodocs"
description="Build the documentation (overview, readme, etc.)" >
<echo message="docs is human-usable target with dependencies"/>
</target>
@@ -764,7 +798,9 @@
<!-- ===================================================================
-->
<!-- Creates the API documentation
-->
<!-- ===================================================================
-->
- <target name="javadocs" depends="jar,prepare.docs,autojavadocs"
+ <target name="javadocs" depends="jar,javadocs.nojardepends"/>
+
+ <target name="javadocs.nojardepends"
depends="prepare.docs.nojardepends,autojavadocs"
description="Build the Javadocs for Xalan 2.x and xml-commons sources" >
<echo message="javadocs is human-usable target with dependencies"/>
</target>
@@ -877,7 +913,8 @@
</target>
<!-- ===================================================================
-->
- <!-- Creates a complete distribution
-->
+ <!-- Creates a complete distribution in which the xalan.jar contains
-->
+ <!-- the interpretive, compiled and the common packages
-->
<!-- ===================================================================
-->
<target name="fulldist" depends="build.nonstd.dist,autodist"
description="Create a .zip/.tar.gz distribution module containing
@@ -885,6 +922,16 @@
<echo message="fulldist is human-useable target for distribution, with
all dependencies"/>
</target>
+ <!-- ===================================================================
-->
+ <!-- Creates a complete distribution with separate xalan.jar and
-->
+ <!-- xsltc.jar. The common packages are contained in each jar.
-->
+ <!-- ===================================================================
-->
+ <target name="fulldist-separatejars"
depends="build.nonstd-separatejars.dist,autodist"
+ description="Create a .zip/.tar.gz distribution module containing
+ all components.">
+ <echo message="fulldist is human-useable target for distribution, with
all dependencies"/>
+ </target>
+
<target name="build.std.dist" depends="build.std.parts">
<property name="has.nonstd.parts" value="false"/>
</target>
@@ -892,10 +939,23 @@
<target name="build.nonstd.dist"
depends="build.std.parts,build.nonstd.parts">
<property name="has.nonstd.parts" value="true"/>
</target>
+
+ <target name="build.nonstd-separatejars.dist"
depends="build.std-separatejars.parts,
+
build.nonstd-separatejars.parts">
+ <property name="has.nonstd.parts" value="true"/>
+ </target>
<target name="build.std.parts"
depends="jar,docs,javadocs,samples,extra.std.samples,xsltc.docs"/>
+
+ <target name="build.std-separatejars.parts"
+ depends="xalan-interpretive.jar,xsltc.jar,
+ docs.nojardepends,javadocs.nojardepends,
+ samples.nojardepends,extra.std.samples.nojardepends,
+ xsltc.docs"/>
+
<target name="build.nonstd.parts" depends="extra.nonstd.samples"/>
+ <target name="build.nonstd-separatejars.parts"
depends="extra.nonstd.samples.nojardepends"/>
<target name="autodist">
<echo message="autodist is for automated build processes, without
dependencies"/>
@@ -943,6 +1003,11 @@
*-bin.zip/tar.gz and *-src.zip/tar.gz files.
-->
<copy file="${build.xalan.jar}" todir="${dist.dir}/bin" />
+
+ <!-- only copy the xsltc.jar file if it has been built -->
+ <copy todir="${dist.dir}/bin">
+ <fileset dir="${build.dir}" includes="xsltc.jar"/>
+ </copy>
<copy todir="${dist.dir}">
<fileset dir="."
includes="readme.html,KEYS,License,build.xml,build.sh,build.bat,xsltc_todo.xml,todo.xsl,commits.xml"/>
@@ -957,6 +1022,10 @@
<include name="${dist.file}/License"/>
<include name="${dist.file}/KEYS"/>
<include name="${dist.file}/bin/${name}.jar"/>
+
+ <!-- only pick up the xsltc.jar file if it has been built -->
+ <include name="${dist.file}/bin/xsltc.jar"/>
+
<include name="${dist.file}/bin/${xmlapis.jar.name}"/>
<include name="${dist.file}/bin/${bsf.jar.name}"/>
<include name="${dist.file}/bin/${parser.jar.name}"/>
@@ -1029,7 +1098,7 @@
<!-- ===================================================================
-->
<!-- Creates the documentation tree for the org.apache.xml website
-->
<!-- ===================================================================
-->
- <target name="site" depends="prepare.docs"
+ <target name="site" depends="prepare.docs.nojardepends"
description="Build documentation for posting to the website" >
<mkdir dir="${site.dir}/apidocs"/>
@@ -1113,7 +1182,7 @@
<!-- This is VERY preliminary, not yet for inclusion in distribution
-->
<!-- ===================================================================
-->
<!--Collate the xml sources into a single xml source with a litle extra
structure -->
- <target name="printerdocs" depends="prepare.docs">
+ <target name="printerdocs" depends="prepare.docs.nojardepends">
<echo message="NOTICE: requires fop.jar and xml.jar on the classpath"/>
<java fork="yes"
classname="${xalan.cmdline.class}"
@@ -1149,7 +1218,7 @@
<!-- ===================================================================
-->
- <target name="xsltc.prepare.docs" depends="prepare.docs">
+ <target name="xsltc.prepare.docs" depends="prepare.docs.nojardepends">
<echo message="Transform xsltc_todo.xml and put the result in
${build.docs}/xsltc"/>
<mkdir dir="${build.docs}/xsltc"/>
<java fork="yes" classname="${xalan.cmdline.class}">
1.20 +21 -7
xml-xalan/java/src/org/apache/xalan/xslt/EnvironmentCheck.java
Index: EnvironmentCheck.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/xslt/EnvironmentCheck.java,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- EnvironmentCheck.java 10 Apr 2003 14:16:32 -0000 1.19
+++ EnvironmentCheck.java 26 May 2003 19:48:29 -0000 1.20
@@ -722,8 +722,22 @@
Hashtable h = new Hashtable(2);
// Note "-" char is looked for in appendFoundJars
h.put(jars[i] + "-path", f.getAbsolutePath());
- h.put(jars[i] + "-apparent.version",
+
+ // We won't bother reporting on the xalan.jar on the
+ // foundclasses.java.class.path since this requires
+ // knowing the size of the xalan.jar and putting that
+ // value in the hashtable below before we build the
+ // jar. Once we do that and perform a build, the
+ // xalan.jar size changes!. If we find a better way
+ // to do this, we can reable this function. The user
+ // will still be given information on the xalan.jar
+ // found on the java.class.path.
+ // For other jars, eg. xml-apis.jar and xercesImpl.jar, we
+ // report the apparent version of the file we've found
+ if (!("xalan.jar".equalsIgnoreCase(jars[i]))) {
+ h.put(jars[i] + "-apparent.version",
getApparentVersion(jars[i], f.length()));
+ }
v.addElement(h);
}
catch (Exception e)
@@ -780,8 +794,8 @@
else
{
if ("xerces.jar".equalsIgnoreCase(jarName)
- || "xercesImpl.jar".equalsIgnoreCase(jarName)
- || "xalan.jar".equalsIgnoreCase(jarName))
+ || "xercesImpl.jar".equalsIgnoreCase(jarName))
+// || "xalan.jar".equalsIgnoreCase(jarName))
{
// For xalan.jar and xerces.jar/xercesImpl.jar, which we ship
together:
@@ -826,7 +840,7 @@
Method method = clazz.getMethod(JAXP11_METHOD, noArgs);
// If we succeeded, we at least have JAXP 1.1 available
- h.put(VERSION + "JAXP", "1.1");
+ h.put(VERSION + "JAXP", "1.1 or higher");
}
catch (Exception e)
{
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]