You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by mk...@apache.org on 2003/04/01 23:46:35 UTC
cvs commit: xml-xalan/java build.xml xsltc_todo.xml
mkwan 2003/04/01 13:46:35
Modified: java build.xml xsltc_todo.xml
Log:
Merging XSLTC_DTM and common serializer to the head
Update build.xml and xsltc_todo.xml.
Now the default build target is a big xalan.jar which
includes both Xalan-J Interpretive and XSLTC.
Revision Changes Path
1.187 +275 -138 xml-xalan/java/build.xml
Index: build.xml
===================================================================
RCS file: /home/cvs/xml-xalan/java/build.xml,v
retrieving revision 1.186
retrieving revision 1.187
diff -u -r1.186 -r1.187
--- build.xml 21 Feb 2003 19:55:10 -0000 1.186
+++ build.xml 1 Apr 2003 21:46:35 -0000 1.187
@@ -78,11 +78,12 @@
<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"/>
+
<!-- Defines general variables used by the other targets; name controls output xalan.jar -->
<property name="version.VERSION" value="2"/>
- <property name="version.RELEASE" value="5"/>
- <property name="version.DEVELOPER" value="D"/><!-- Set this to 'D' if a developer release; blank "" if maintenance release -->
+ <property name="version.RELEASE" value="5"/>
+ <property name="version.DEVELOPER" value="D"/><!-- Set this to 'D' if a developer release; blank "" if maintenance release -->
<property name="version.MINOR" value="1"/><!-- EITHER the developer release number, or a maintenance release number -->
<property name="version" value="${version.VERSION}_${version.RELEASE}_${version.DEVELOPER}${version.MINOR}"/><!-- GUMP: version # of dist file -->
<property name="impl.version" value="${version.VERSION}.${version.RELEASE}.${version.DEVELOPER}${version.MINOR}"/><!-- Used in jar task for filtering MANIFEST.MF file -->
@@ -93,7 +94,7 @@
<!-- Relative locations of source directories -->
<property name="manifest.mf" value="./src/MANIFEST.MF"/>
<property name="manifest.xsltc.mf" value="./src/manifest.xsltc"/>
- <property name="XSLTInfo.props" value="./src/org/apache/xalan/res/XSLTInfo.properties"/>
+ <property name="XSLTInfo.props" value="./src/org/apache/xalan/res/XSLTInfo.properties"/>
<property name="src.dir" value="./src"/>
<property name="apachexml.reldir" value="org/apache/xml"/>
<property name="xpath.reldir" value="org/apache/xpath"/>
@@ -107,6 +108,8 @@
<!-- 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.xsltc.jar" value="${build.dir}/xsltc.jar"/>
<property name="build.classes" value="${build.dir}/classes"/>
<property name="build.docs" value="${build.dir}/docs"/>
@@ -126,6 +129,11 @@
<property name="samples.dir" value="./samples"/>
<property name="build.samples.jar" value="${build.dir}/xalansamples.jar"/>
<property name="build.servlet.war" value="${build.dir}/xalanservlet.war"/>
+ <property name="build.xsltc.applet.jar" value="${build.dir}/xsltcapplet.jar"/>
+ <property name="build.xsltc.brazil.jar" value="${build.dir}/xsltcbrazil.jar"/>
+ <property name="build.xsltc.ejb.jar" value="${build.dir}/xsltcejb.jar"/>
+ <property name="build.xsltc.servlet.jar"
+ value="${build.dir}/xsltcservlet.jar"/>
<property name="xdocs.dir" value="./xdocs"/>
<property name="xdocs.book" value="${xdocs.dir}/sources/xalan-jlocal.xml"/>
<property name="xdocs.style" value="${xdocs.dir}/style"/>
@@ -221,42 +229,61 @@
</target>
<!-- =================================================================== -->
- <!-- Compile entire source tree -->
+ <!-- Compile the DTM implementation and xml utilities -->
<!-- =================================================================== -->
- <target name="compile" depends="prepare"
- description="Compile Xalan-J 2.x (skips XSLTC)" >
- <echo message="compile entire source tree and copy .properties and .res files to build tree."/>
- <javac srcdir="${src.dir}"
+ <target name="xml.compile" depends="prepare">
+ <echo message="Compiling DTM implementation and utilities" />
+ <javac srcdir="${src.dir}"
destdir="${build.classes}"
debug="${build.debug}"
target="1.1" >
<include name="${apachexml.reldir}/**/*.java" />
<!-- But exclude unused synthetic* files; should be obsoleted from CVS -->
- <exclude name="${apachexml.reldir}/utils/synthetic/**/*.java" />
+ <exclude name="${apachexml.reldir}/utils/synthetic/**/*.java" />
+ <exclude name="**/IncrementalSAXSource_Xerces.java"
+ unless="xerces.present" />
+ <classpath refid="compile.class.path" />
+ <bootclasspath refid="xslt.boot.class.path" />
+ </javac>
+ <!-- Copy needed properties, resource, etc. files to be put into .jar file -->
+ <copy todir="${build.classes}">
+ <fileset dir="${src.dir}" includes="${apachexml.reldir}/**/*.properties,${apachexml.reldir}/**/*.res"/>
+ </copy>
+ </target>
+
+ <!-- =================================================================== -->
+ <!-- Compile the Xalan interpreter source tree -->
+ <!-- =================================================================== -->
+ <target name="xalan-interpretive.compile" depends="xml.compile"
+ description="Compile the Xalan interpretive classes (skips XSLTC)" >
+ <echo message="Compiling Xalan interpretive classes" />
+ <javac srcdir="${src.dir}"
+ destdir="${build.classes}"
+ debug="${build.debug}"
+ target="1.1" >
<include name="${xpath.reldir}/**/*.java" />
+ <include name="${domxpath.reldir}/**/*.java" />
<include name="${xalan.reldir}/**/*.java" />
<exclude name="${xsltc.reldir}/**/*.java" />
- <include name="${domxpath.reldir}/**/*.java" />
- <exclude name="**/CoroutineSAXFilterTest.java"
- unless="xerces.present" />
- <exclude name="**/CoroutineSAXParser_Xerces.java"
- unless="xerces.present" />
- <exclude name="**/IncrementalSAXSource_Xerces.java"
- unless="xerces.present" />
<classpath refid="compile.class.path" />
<bootclasspath refid="xslt.boot.class.path" />
<sourcepath refid="compile.source.path" />
</javac>
<!-- Copy needed properties, resource, etc. files to be put into .jar file -->
<copy todir="${build.classes}">
- <fileset dir="${src.dir}" includes="**/*.properties,**/*.res,META-INF/services/*" excludes="**/XSLTInfo.properties"/>
+ <fileset dir="${src.dir}" includes="**/*.properties,**/*.res,META-INF/services/*" excludes="**/XSLTInfo.properties"/>
</copy>
- <filter token="impl.version" value="${impl.version}"/>
- <copy todir="${build.classes}/org/apache/xalan/res" file="${XSLTInfo.props}" filtering="true"/>
+ <filter token="impl.version" value="${impl.version}"/>
+ <copy todir="${build.classes}/org/apache/xalan/res" file="${XSLTInfo.props}" filtering="true"/>
+ </target>
+
+ <!-- Compile all java sources (Xalan interpretive and XSLTC) -->
+ <target name="compile" depends="xalan-interpretive.compile,xsltc.compile"
+ description="Compile all java source files (Xalan interpretive + XSLTC)" >
</target>
<!-- =================================================================== -->
- <!-- Compile just the XSLTC compiler portion (to be integrated soon!) -->
+ <!-- Compile just the XSLTC compiler portion -->
<!-- =================================================================== -->
<path id="xsltc.class.path">
<pathelement location="${xmlapis.jar}" />
@@ -286,19 +313,24 @@
actually need to generate the java_cup and jlex files
in the two sub-targets below
-->
- <!-- NOTE: The two uptodate tasks below do not yet work! 28-Nov-01 -sc -->
- <uptodate property="xsltc.java_cup.needed" >
- <srcfiles dir= "${src.dir}/${xsltc.reldir}/compiler" includes="xpath.cup"/>
- <mapper type="merge" to="${generated.xpathparser}"/>
- </uptodate>
- <uptodate property="xsltc.jlex.needed" >
- <srcfiles dir= "${src.dir}/${xsltc.reldir}/compiler" includes="xpath.lex"/>
- <mapper type="merge" to="${generated.xpathlexer}"/>
+ <uptodate property="xsltc.java_cup.not_needed" targetfile="${generated.xpathparser}" >
+ <srcfiles dir="${src.dir}/${xsltc.reldir}/compiler" includes="xpath.cup" />
</uptodate>
+
+ <uptodate property="xsltc.jlex.not_needed" targetfile="${generated.xpathlexer}" >
+ <srcfiles dir="${src.dir}/${xsltc.reldir}/compiler" includes="xpath.lex" />
+ </uptodate>
+
+ <!-- Determine whether the support jars are already expanded -->
+ <available file="${build.classes}/org/apache/bcel" type="dir" property="xsltc.bcel_jar.not_needed" />
+ <available file="${build.classes}/JLex" type="dir" property="xsltc.jlex_jar.not_needed" />
+ <available file="${build.classes}/java_cup/Main.class" type="file" property="xsltc.java_cup_jar.not_needed" />
+ <available file="${build.classes}/java_cup/runtime" type="dir" property="xsltc.runtime_jar.not_needed" />
+ <available file="${build.classes}/org/apache/regexp" type="dir" property="xsltc.regexp_jar.not_needed" />
</target>
- <!-- Generate code sources for xsltc if needed -->
- <target name="xsltc.java_cup" depends="xsltc.prepare" > <!-- if="xsltc.java_cup.needed" -->
+ <!-- Generate the XPath parser sources for xsltc if needed -->
+ <target name="xsltc.java_cup" depends="xsltc.prepare" unless="xsltc.java_cup.not_needed">
<!-- The second step generates sym.java and XPathParser.java. -->
<echo message="java_cup preparsing"/>
<java fork="yes" failonerror="true"
@@ -311,9 +343,10 @@
<echo message="java_cup move output files"/>
<move file="XPathParser.java" tofile="${generated.xpathparser}"/>
<move file="sym.java" tofile="${generated.xpathsym}"/>
-
</target>
- <target name="xsltc.jlex" depends="xsltc.java_cup" ><!--if="xsltc.jlex.needed" -->
+
+ <!-- Generate the XPath lexer sources for xsltc if needed -->
+ <target name="xsltc.jlex" depends="xsltc.java_cup" unless="xsltc.jlex.not_needed">
<!-- The third step generates XPathLexer.java. The lexiographical analyser
has to be generated after sym.java, so order is important. -->
<echo message="JLex preparsing"/>
@@ -325,11 +358,8 @@
<move file="${src.dir}/${xsltc.reldir}/compiler/xpath.lex.java" tofile="${generated.xpathlexer}"/>
</target>
- <!-- The xsltc.compile target should be rewritten to properly
- do dependencies on the generated sources: right now, it
- will always regenerate the sources, even if it's not needed
- (which forces all later steps to re-run as well) -->
- <target name="xsltc.compile" depends="xsltc.java_cup,xsltc.jlex"
+ <!-- Compile the main XSLTC classes -->
+ <target name="xsltc.compile" depends="xsltc.java_cup,xsltc.jlex,xml.compile"
description="Compile just the XSLTC classes" >
<echo message="Compiling remaining XSLTC classes"/>
<javac srcdir="${src.dir}"
@@ -341,7 +371,8 @@
</javac>
</target>
- <target name="xsltc.fcompile"
+ <!-- Compile just the XSLTC classes w/o JLex, JCup recompilation -->
+ <target name="xsltc.fcompile" depends="xml.compile"
description="Compile just the XSLTC classes w/o JLex, JCup recompilation" >
<echo message="Compiling remaining XSLTC classes"/>
<javac srcdir="${src.dir}"
@@ -353,6 +384,7 @@
</javac>
</target>
+ <!-- Jar up the XSLTC classes w/o the support jars -->
<target name="xsltc.unbundledjar" depends="xsltc.compile"
description="Jar just the xsltc.jar file" >
<!-- Copy over the manifest, with filtering (for version number) -->
@@ -360,85 +392,68 @@
<copy todir="${build.dir}" file="${manifest.xsltc.mf}" filtering="true"/>
<jar jarfile="${build.xsltc.jar}" manifest="${build.dir}/manifest.xsltc" basedir="${build.classes}" >
<patternset><!-- relative to jar/@basedir -->
+ <include name="org/apache/xml/**" />
<include name="${xsltc.reldir}/**/*" />
</patternset>
</jar>
</target>
+ <!-- Copy license and readme files for XSLTC support jars -->
+ <target name="xsltc.copy-licenses" depends="xsltc.prepare">
+ <echo message="Copying license files for XSLTC support jars"/>
+ <copy todir="${build.classes}">
+ <fileset dir="${bin.dir}" casesensitive="no" includes="${xsltc.deps.license}"/>
+ </copy>
+ </target>
- <target name="xsltc.jar" depends="xsltc.compile"
- description="Jar xsltc, BCEL,JLex,java_cup,runtime and jakarta regexp">
- <!-- make a tmp directory to work in -->
- <delete dir="${build.dir}/xsltctmp" includeEmptyDirs="true" quiet="true"/>
- <mkdir dir="${build.dir}/xsltctmp" />
-
- <!-- create jar of xsltc classes in the tmp directory -->
- <jar jarfile="${build.dir}/xsltctmp/xsltc.jar"
- basedir="${build.dir}/classes"
- includes="org/apache/xalan/xsltc/**" />
+ <!-- A parametrized target which is used to copy and expand a XSLTC support jar -->
+ <target name="xsltc.copy-deps-jar" unless="${param_unless}">
+ <!-- copy the jar file to the build/classes directory -->
+ <copy todir="${build.classes}" file="${bin.dir}/${param_jar_name}"/>
+
+ <!-- unjar the jar file -->
+ <unjar src="${build.classes}/${param_jar_name}" dest="${build.classes}" />
+
+ <!-- remove the jar file -->
+ <delete file="${build.classes}/${param_jar_name}" />
+ </target>
+
+ <!-- Copy and expand the XSLTC support jars if needed -->
+ <target name="xsltc.copy-deps-jars" depends="xsltc.copy-licenses">
+ <echo message="Copying XSLTC support jars" />
+ <!-- copy the 3rd party support jar files -->
+ <antcall target="xsltc.copy-deps-jar">
+ <param name="param_unless" value="xsltc.bcel_jar.not_needed" />
+ <param name="param_jar_name" value="${bcel.jar.name}" />
+ </antcall>
+
+ <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}" />
+ </antcall>
+
+ <antcall target="xsltc.copy-deps-jar">
+ <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" />
+ <param name="param_jar_name" value="${runtime.jar.name}" />
+ </antcall>
+
+ <antcall target="xsltc.copy-deps-jar">
+ <param name="param_unless" value="xsltc.regexp_jar.not_needed" />
+ <param name="param_jar_name" value="${regexp.jar.name}" />
+ </antcall>
+
+ <!-- remove the old META-INF/MANIFEST.MF file -->
+ <delete file="${build.classes}/META-INF/MANIFEST.MF" quiet="true"/>
+ </target>
- <!-- copy the xsltc 3rd party support jar files and licenses
- to tmp dist dir
- -->
- <copy todir="${build.dir}/xsltctmp"
- file="${bin.dir}/BCEL.jar"/>
- <copy todir="${build.dir}/xsltctmp"
- file="${bin.dir}/BCEL.LICENSE.txt"/>
- <copy todir="${build.dir}/xsltctmp"
- file="${bin.dir}/BCEL.README.txt"/>
-
- <copy todir="${build.dir}/xsltctmp"
- file="${bin.dir}/JLex.jar"/>
- <copy todir="${build.dir}/xsltctmp"
- file="${bin.dir}/JLex.LICENSE.txt"/>
- <copy todir="${build.dir}/xsltctmp"
- file="${bin.dir}/JLex.README.txt"/>
-
- <copy todir="${build.dir}/xsltctmp"
- file="${bin.dir}/java_cup.jar"/>
- <copy todir="${build.dir}/xsltctmp"
- file="${bin.dir}/java_cup.LICENSE.txt"/>
- <copy todir="${build.dir}/xsltctmp"
- file="${bin.dir}/java_cup.README.txt"/>
-
- <copy todir="${build.dir}/xsltctmp"
- file="${bin.dir}/runtime.jar"/>
- <copy todir="${build.dir}/xsltctmp"
- file="${bin.dir}/runtime.LICENSE.txt"/>
- <copy todir="${build.dir}/xsltctmp"
- file="${bin.dir}/runtime.README.txt"/>
-
- <copy todir="${build.dir}/xsltctmp"
- file="${bin.dir}/regexp.jar"/>
- <copy todir="${build.dir}/xsltctmp"
- file="${bin.dir}/regexp.LICENSE.txt"/>
- <copy todir="${build.dir}/xsltctmp"
- file="${bin.dir}/regexp.README.txt"/>
-
- <!-- unjar all jars -->
- <unjar src="${build.dir}/xsltctmp/xsltc.jar"
- dest="${build.dir}/xsltctmp" />
- <unjar src="${build.dir}/xsltctmp/BCEL.jar"
- dest="${build.dir}/xsltctmp" />
- <unjar src="${build.dir}/xsltctmp/JLex.jar"
- dest="${build.dir}/xsltctmp" />
- <unjar src="${build.dir}/xsltctmp/java_cup.jar"
- dest="${build.dir}/xsltctmp" />
- <unjar src="${build.dir}/xsltctmp/runtime.jar"
- dest="${build.dir}/xsltctmp" />
- <unjar src="${build.dir}/xsltctmp/regexp.jar"
- dest="${build.dir}/xsltctmp" />
-
- <!-- remove jar files -->
- <delete file="${build.dir}/xsltctmp/xsltc.jar" />
- <delete file="${build.dir}/xsltctmp/BCEL.jar" />
- <delete file="${build.dir}/xsltctmp/JLex.jar" />
- <delete file="${build.dir}/xsltctmp/java_cup.jar" />
- <delete file="${build.dir}/xsltctmp/runtime.jar" />
-
- <!-- remove old META-INF dir -->
- <delete dir="${build.dir}/xsltctmp/META-INF"
- includeEmptyDirs="true" quiet="true"/>
+ <!-- Jar up all XSLTC classes including the 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">
<!-- create new META-INF dir w/ transformer factory default -->
<!-- GTM: comment this out so that bundled xsltc.jar does not have
@@ -455,29 +470,71 @@
<copy todir="${build.dir}" file="${manifest.xsltc.mf}" filtering="true"/>
<!-- make bundled jar named xsltc.jar -->
- <jar jarfile="${build.dir}/xsltc.jar" manifest="${build.dir}/manifest.xsltc"
- basedir="${build.dir}/xsltctmp" />
+ <jar jarfile="${build.dir}/xsltc.jar" manifest="${build.dir}/manifest.xsltc" >
+ <fileset dir="${build.classes}" includes="org/apache/xalan/xsltc/**" />
+ <fileset dir="${build.classes}" includes="org/apache/xml/**" />
+ <fileset dir="${build.classes}" includes="org/apache/bcel/**" />
+ <fileset dir="${build.classes}" includes="JLex/**" />
+ <fileset dir="${build.classes}" includes="java_cup/**" />
+ <fileset dir="${build.classes}" includes="org/apache/regexp/**" />
+ <fileset dir="${build.classes}" includes="${xsltc.deps.license}" />
+ </jar>
- <!-- clean up tmp directory -->
- <delete dir="${build.dir}/xsltctmp" includeEmptyDirs="true" quiet="true"/>
</target>
<!-- =================================================================== -->
- <!-- Creates the xalan JAR -->
+ <!-- Creates the xalan interpretive jar -->
<!-- =================================================================== -->
- <target name="jar" depends="compile"
- description="Jar up xalan.jar, plus the ${xmlapis.jar.name}" >
+ <target name="xalan-interpretive.jar" depends="xalan-interpretive.compile"
+ description="Jar up everything in Xalan interpretive (without XSLTC)" >
<!-- Copy over the manifest, with filtering (for version number) -->
<filter token="impl.version" value="${impl.version}"/>
<copy todir="${build.dir}" file="${manifest.mf}" filtering="true"/>
- <jar jarfile="${build.xalan.jar}" manifest="${build.dir}/MANIFEST.MF" basedir="${build.classes}" >
+ <jar jarfile="${build.xalan-interpretive.jar}" manifest="${build.dir}/MANIFEST.MF" basedir="${build.classes}" >
<patternset><!-- relative to jar/@basedir -->
+ <include name="${apachexml.reldir}/**/*" />
+ <include name="${xpath.reldir}/**/*" />
+ <include name="${xalan.reldir}/**/*" />
+ <include name="META-INF/services/*" />
<exclude name="${xsltc.reldir}/**/*" />
</patternset>
</jar>
</target>
<!-- =================================================================== -->
+ <!-- Creates the xalan unbundled jar (Xalan interpretive + XSLTC) -->
+ <!-- =================================================================== -->
+ <target name="unbundledjar" depends="xalan-interpretive.compile,xsltc.compile"
+ description="Jar up Xalan and XSLTC, without the XSLTC dependencies" >
+ <filter token="impl.version" value="${impl.version}"/>
+ <copy todir="${build.dir}" file="${manifest.mf}" filtering="true"/>
+ <jar jarfile="${build.xalan-unbundled.jar}" manifest="${build.dir}/MANIFEST.MF" basedir="${build.classes}" >
+ <patternset>
+ <include name="${apachexml.reldir}/**/*" />
+ <include name="${xpath.reldir}/**/*" />
+ <include name="${xalan.reldir}/**/*" />
+ <include name="META-INF/services/*" />
+ </patternset>
+ </jar>
+ </target>
+
+ <!-- =================================================================== -->
+ <!-- Creates one big xalan jar (Xalan interpretive + XSLTC + support jars) -->
+ <!-- =================================================================== -->
+ <target name="jar" depends="xalan-interpretive.compile,xsltc.compile,xsltc.copy-deps-jars"
+ description="Jar up everything (Xalan, XSLTC and XSLTC dependencies)" >
+
+ <!-- Copy over the manifest, with filtering (for version number) -->
+ <filter token="impl.version" value="${impl.version}"/>
+ <copy todir="${build.dir}" file="${manifest.mf}" filtering="true"/>
+
+ <!-- make bundled jar named xalan.jar -->
+ <jar jarfile="${build.xalan.jar}" manifest="${build.dir}/MANIFEST.MF"
+ basedir="${build.classes}" />
+
+ </target>
+
+ <!-- =================================================================== -->
<!-- Default all target simply Creates the xalan JAR -->
<!-- =================================================================== -->
<target name="all" depends="jar"><!-- 'Standardizing build.xml files' <bl...@apache.org> -->
@@ -487,7 +544,7 @@
<!-- =================================================================== -->
<!-- Compiles the samples (servlet excluded) and jars the class files -->
<!-- =================================================================== -->
- <target name="samples" depends="jar"
+ <target name="samples" depends="jar,xsltc.samples"
description="Compile and jar the samples (except servlet)" >
<property name="exclude" value="*.xml,*.xsl,*.txt,*.html,*.properties,*.out"/>
<mkdir dir="${build.samples}"/>
@@ -558,13 +615,20 @@
<classpath refid="samples.class.path" />
</javac>
<jar jarfile="${build.samples.jar}" basedir="${build.samples}"
- includes="*.class"/>
+ includes="*.class"/>
</target>
-
+
<!-- =================================================================== -->
- <!-- Compiles the sample servlet and jars the class files. -->
- <!-- The javax.servlet and javax.servlet.http packages -->
- <!-- must be on the classpath -->
+ <!-- Compiles all samples that require extra components in order to -->
+ <!-- compile. -->
+ <!-- =================================================================== -->
+ <target name="extra.samples"
+ depends="servlet,xsltc.applet,xsltc.brazil,xsltc.ejb,xsltc.servlet"/>
+
+ <!-- =================================================================== -->
+ <!-- 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"
description="Compile and jar the servlet samples in xalanservlet.war" >
@@ -599,19 +663,76 @@
</target>
<!-- =================================================================== -->
- <!-- Compiles (does not jar) the translet samples in translets. -->
+ <!-- Compiles (does not jar) the translet samples. -->
<!-- For time being, classes are generated in place. -->
<!-- To run these samples, add xsltc.jar, runtime.jar, bcel.jar, -->
<!-- and java_cup.jar (all in the bin directory) to the classpath -->
<!-- -->
<!-- When we have straightened out classpath issues, -->
- <!-- add samples in CompiledApplet, CompiledBrazil, and CompiledServlet -->
+ <!-- add samples in CompiledApplet, CompiledBrazil, CompiledEJB and -->
+ <!-- CompiledServlet. -->
<!-- =================================================================== -->
- <target name="xsltc.samples" depends="jar,xsltc.jar">
- <javac srcdir="${samples.dir}/translets" classpath="${java.class.path}:${build.xsltc.jar}"
- destdir="${samples.dir}/translets" excludes="${exclude}"
- debug="${build.debug}"
- bootclasspathref="xslt.boot.class.path" />
+ <target name="xsltc.samples" depends="jar">
+ <mkdir dir="${build.samples}"/>
+ <javac srcdir="${samples.dir}/translets"
+ classpath="${java.class.path}:${build.xalan.jar}"
+ destdir="${build.samples}" excludes="${exclude}"
+ debug="${build.debug}" bootclasspathref="xslt.boot.class.path" />
+ <javac srcdir="${samples.dir}/CompiledJAXP"
+ destdir="${build.samples}" excludes="${exclude}"
+ debug="${build.debug}" bootclasspathref="xslt.boot.class.path" />
+ </target>
+
+ <!-- =================================================================== -->
+ <!-- Compiles the XSLTC applet example and jars the class files. -->
+ <!-- =================================================================== -->
+ <target name="xsltc.applet" depends="jar">
+ <mkdir dir="${build.samples}/CompiledApplet"/>
+ <javac srcdir="${samples.dir}/CompiledApplet"
+ destdir="${build.samples}/CompiledApplet" excludes="${exclude}"
+ debug="${build.debug}" bootclasspathref="xslt.boot.class.path" />
+ <jar jarfile="${build.xsltc.applet.jar}"
+ basedir="${build.samples}/CompiledApplet"
+ includes="*.class"/>
+ </target>
+
+ <!-- =================================================================== -->
+ <!-- Compiles the XSLTC brazil example and jars the class files. -->
+ <!-- =================================================================== -->
+ <target name="xsltc.brazil" depends="jar">
+ <mkdir dir="${build.samples}/CompiledBrazil"/>
+ <javac srcdir="${samples.dir}/CompiledBrazil"
+ destdir="${build.samples}/CompiledBrazil" excludes="${exclude}"
+ debug="${build.debug}" bootclasspathref="xslt.boot.class.path" />
+ <jar jarfile="${build.xsltc.brazil.jar}"
+ basedir="${build.samples}/CompiledBrazil"
+ includes="*.class"/>
+ </target>
+
+ <!-- =================================================================== -->
+ <!-- Compiles the XSLTC EJB example and jars the class files. -->
+ <!-- =================================================================== -->
+ <target name="xsltc.ejb" depends="jar">
+ <mkdir dir="${build.samples}/CompiledEJB"/>
+ <javac srcdir="${samples.dir}/CompiledEJB"
+ destdir="${build.samples}/CompiledEJB" excludes="${exclude}"
+ debug="${build.debug}" bootclasspathref="xslt.boot.class.path" />
+ <jar jarfile="${build.xsltc.ejb.jar}"
+ basedir="${build.samples}/CompiledEJB"
+ includes="*.class"/>
+ </target>
+
+ <!-- =================================================================== -->
+ <!-- Compiles the XSLTC servlet example and jars the class files. -->
+ <!-- =================================================================== -->
+ <target name="xsltc.servlet" depends="jar">
+ <mkdir dir="${build.samples}/CompiledServlet"/>
+ <javac srcdir="${samples.dir}/CompiledServlet"
+ destdir="${build.samples}/CompiledServlet" excludes="${exclude}"
+ debug="${build.debug}" bootclasspathref="xslt.boot.class.path" />
+ <jar jarfile="${build.xsltc.servlet.jar}"
+ basedir="${build.samples}/CompiledServlet"
+ includes="*.class"/>
</target>
@@ -681,6 +802,16 @@
packages="org.apache.xalan.xsltc*"/>
</javadoc>
+ <!-- remove the xml-commons sources -->
+ <delete dir="${src.dir}/javax" />
+ <delete includeEmptyDirs="true" quiet="true">
+ <fileset dir="${src.dir}/org/w3c">
+ <exclude name="dom/xpath/**"/>
+ </fileset>
+ </delete>
+ <delete dir="${src.dir}/org/xml" />
+ <delete dir="${src.dir}/org/apache/xmlcommons" />
+ <delete file="${src.dir}/manifest.commons" />
</target>
<!-- =================================================================== -->
@@ -730,7 +861,7 @@
<!-- =================================================================== -->
<!-- Creates the distribution -->
<!-- =================================================================== -->
- <target name="dist" depends="jar,docs,javadocs,samples,servlet,xsltc.jar,xsltc.docs,autodist"
+ <target name="dist" depends="jar,docs,javadocs,samples,extra.samples,xsltc.docs,autodist"
description="Create a .zip/.tar.gz distribution module" >
<echo message="dist is human-useable target for distribution, with all dependencies"/>
</target>
@@ -767,6 +898,10 @@
</copy>
<copy file="${build.dir}/xalansamples.jar" todir="${dist.dir}/bin"/>
<copy file="${build.dir}/xalanservlet.war" todir="${dist.dir}/bin"/>
+ <copy file="${build.dir}/xsltcapplet.jar" todir="${dist.dir}/bin"/>
+ <copy file="${build.dir}/xsltcbrazil.jar" todir="${dist.dir}/bin"/>
+ <copy file="${build.dir}/xsltcejb.jar" todir="${dist.dir}/bin"/>
+ <copy file="${build.dir}/xsltcservlet.jar" todir="${dist.dir}/bin"/>
<!-- Copy various built product .jars into the bin directory
of the distro, note that changes to what .jars we ship
@@ -775,7 +910,6 @@
*-bin.zip/tar.gz and *-src.zip/tar.gz files.
-->
<copy file="${build.xalan.jar}" todir="${dist.dir}/bin" />
- <copy file="${build.xsltc.jar}" todir="${dist.dir}/bin"/>
<copy todir="${dist.dir}">
<fileset dir="." includes="readme.html,KEYS,License,build.xml,build.sh,build.bat,xsltc_todo.xml,todo.xsl,commits.xml"/>
@@ -791,11 +925,14 @@
<include name="${dist.file}/KEYS"/>
<include name="${dist.file}/bin/${name}.jar"/>
<include name="${dist.file}/bin/${xmlapis.jar.name}"/>
- <include name="${dist.file}/bin/xsltc.jar"/>
- <include name="${dist.file}/bin/xercesImpl.jar"/>
<include name="${dist.file}/bin/${bsf.jar.name}"/>
+ <include name="${dist.file}/bin/xercesImpl.jar"/>
<include name="${dist.file}/bin/xalansamples.jar"/>
<include name="${dist.file}/bin/xalanservlet.war"/>
+ <include name="${dist.file}/bin/xsltcapplet.jar"/>
+ <include name="${dist.file}/bin/xsltcbrazil.jar"/>
+ <include name="${dist.file}/bin/xsltcejb.jar"/>
+ <include name="${dist.file}/bin/xsltcservlet.jar"/>
<include name="${dist.file}/samples/"/>
<include name="${dist.file}/docs/"/>
</patternset>
1.9 +94 -37 xml-xalan/java/xsltc_todo.xml
Index: xsltc_todo.xml
===================================================================
RCS file: /home/cvs/xml-xalan/java/xsltc_todo.xml,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- xsltc_todo.xml 30 Jan 2003 17:34:35 -0000 1.8
+++ xsltc_todo.xml 1 Apr 2003 21:46:35 -0000 1.9
@@ -1,45 +1,102 @@
<?xml version="1.0"?>
-
-<todo title="Credits" project="XSLTC" major-version="1">
-
+<todo project="DTM Support for XSLTC">
<devs>
- <person name="Jacek Ambroziak" email="jacek_ambroziak@yahoo.com" id="JA" expertise="code" status="emeritus">
- Inventor, architect, former lead developer and evangelist.
- </person>
- <person name="Tom Amiro" email="Tom.Amiro@Sun.COM" id="TA" expertise="testing">
- Testing.
- </person>
- <person name="Morten JØrgensen" email="morten@xml.apache.org" id="MJ" expertise="code, doc" status="emeritus">
- Key contributor on design documentation, ID/Keys, performance, and JAXP.
- </person>
- <person name="G. Todd Miller" email="Glenn.Miller@Sun.COM" id="TM" expertise="code">
- Developer - key contributor on TrAX.
- </person>
- <person name="Santiago Pericas-Geertsen" email="santiago@cs.bu.edu" id="SP" expertise="code">
- Developer - key contributor on compilation strategy.
+ <person name="Tom Amiro" email="Tom.Amiro@Sun.COM" id="TA"
+ expertise="testing">
+ Testing.
+ </person>
+ <person name="Gordon R. Chiu" email="grchiu@ca.ibm.com" id="GC"
+ expertise="code">
+ Developer on Interpretive Xalan and XSLTC
+ </person>
+ <person name="Igor Hersht" email="igorh@ca.ibm.com" id="IH"
+ expertise="code">
+ Developer on Interpretive Xalan and XSLTC
+ </person>
+ <person name="Morris Kwan" email="mkwan@ca.ibm.com" id="MK"
+ expertise="code">
+ Developer on Interpretive Xalan and XSLTC
+ </person>
+ <person name="G. Todd Miller" email="Glenn.Miller@Sun.COM" id="TM"
+ expertise="code">
+ Developer - key contributor on TrAX.
+ </person>
+ <person name="Santiago Pericas-Geertsen" email="santiago@cs.bu.edu" id="SP"
+ expertise="code">
+ Developer - key contributor on compilation strategy.
+ </person>
+ <person name="Ilene Seelemann" email="ilene@ca.ibm.com" id="IS"
+ expertise="code">
+ Developer on Interpretive Xalan and XSLTC
+ </person>
+ <person name="Henry Zongaro" email="zongaro@ca.ibm.com" id="HZ"
+ expertise="code">
+ Developer on Interpretive Xalan and XSLTC
+ </person>
+ <person name="Your Name Here" email="you@example.org" id="unassigned"
+ expertise="code">
+ This could be you!
+ </person>
+ <person name="Jacek Ambroziak" email="jacek_ambroziak@yahoo.com" id="JA"
+ expertise="code" status='emeritus'>
+ Inventor, architect, former lead developer and evangelist.
+ </person>
+ <person name="Morten JØrgensen" email="morten@xml.apache.org" id="MJ"
+ expertise="code, doc" status='emeritus'>
+ Former lead developer - key contributor on design documentation, ID/Keys,
+ performance, JAXP.
</person>
</devs>
-
-<!--
- <actions>
- <target-release-description>
- <date>09/??/01</date>
- <level>????</level>
- <goal type="conformance">XSLT 1.0 compliant 100%.</goal>
- <goal type="performance">Maintain current level.</goal>
- <goal type="stability"> Stable, reasonable.</goal>
- <goal type="api">API Complete.</goal>
- <goal type="documentation">Documentation functionally complete.</goal>
- </target-release-description>
-
- <action context="test, packages:org.apache.xalan.xsltc"
- category="tests"
- who="TA, Shane"
- priority="high">
- Modify Xalan test enviroment to test XSLTC as a component of XalanJ2.
- </action>
+ <actions>
+ <action category="samples" who="HZ">
+ Change samples to no longer use the XSLTC Native API.
+ </action>
+ <action category="test" who="HZ">
+ Change test harness to no longer use XSLTC Native API with jar.xsltc
+ target.
+ </action>
+ <action category="performance" who="MK">
+ Investigate performance of SuballocatedIntVector
+ </action>
+ <action category="performance" who="MK">
+ Enable StepPattern[last()] optimization
+ </action>
+ <action category="packaging" who="MK">
+ Enable building stand-alone versions of XSLTC and interpretive Xalan.
+ </action>
+ <action category="clean-up" who="HZ">
+ Drop MultiDOM(?) class
+ </action>
+ <action category="clean-up" who="HZ">
+ Eliminate uses of DTM.ROOTNODE value; it was dropped on MAIN branch
+ </action>
+ <action category="clean-up" who="HZ">
+ Keep XSLTC_DTM up-to-date with changes in HEAD
+ </action>
+ <action category="documentation" who="HZ">
+ Update XSLTC design documentation
+ </action>
</actions>
--->
+ <completed>
+ <action category="feature" who="MK">
+ Add support for incremental building of the DTM
+ </action>
+ <action category="feature" who="HZ">
+ Fix (or abandon?) DOMImpl and SAXImpl readExternal() and writeExternal()
+ methods
+ </action>
+ <action category="documentation" who="HZ">
+ Update documentation to remove references to XSLTC Native API
+ </action>
+ <action category="documentation" who="HZ">
+ Update documentation to describe new build procedures, how to select
+ right TransformerFactory, etc.
+ </action>
+ <action category="clean-up, performance" who="MK">
+ Reconcile DTM handling of whitespace with XSLTC DOM handling.
+ Might improve performance, as well as simplifying code.
+ </action>
+ </completed>
</todo>
---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-cvs-help@xml.apache.org