aboutsummaryrefslogtreecommitdiff
path: root/libjava
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2005-03-24 00:04:22 +0000
committerTom Tromey <tromey@gcc.gnu.org>2005-03-24 00:04:22 +0000
commitaa893047e8c09ca8b27e3583edd2829ade0a2318 (patch)
tree41feeca3037911da241efe1e734ed5c9ba7164c8 /libjava
parent85624ffd341567caea1762d5534acf63c4d630db (diff)
downloadgcc-aa893047e8c09ca8b27e3583edd2829ade0a2318.zip
gcc-aa893047e8c09ca8b27e3583edd2829ade0a2318.tar.gz
gcc-aa893047e8c09ca8b27e3583edd2829ade0a2318.tar.bz2
Makefile.in: Rebuilt.
* Makefile.in: Rebuilt. * Makefile.am (AM_CXXFLAGS): Define TOOLEXECLIBDIR. (libgcj0_convenience_la_SOURCES): Don't include gnu_xml_source_files. (libgcj0_convenience_la_LIBADD): New variable. (libgcj_la_LIBADD): Don't include sax or w3c_dom. (all_java_source_files): javax_imageio_source_files, javax_xml_source_files, and gnu_java_beans_source_files. ($(gnu_xml_source_files:.java=.lo)): Removed target. (gnu-xml.lo): New target. (javax-imageio.lo): Likewise. (javax-xml.lo): Likewise. (gnu-java-beans.lo): Likewise. (gnu_java_beans_source_files): New variable. (javax_imageio_source_files): Likewise. (javax_xml_source_files): Likewise. (javax_source_files): Moved files to other variable. (awt_java_source_files): Likewise. (ordinary_java_source_files): Added BootClassLoader.java. * java/lang/natVMClassLoader.cc (defineClass): Use boot loader, not system class loader. (initBootLoader): New method. (loadClass): Search bootLoader. * java/lang/natClassLoader.cc (_Jv_RegisterInitiatingLoader): Use boot loader, not system class loader. (_Jv_UnregisterInitiatingLoader): Likewise. (_Jv_FindClass): Likewise. Ensure entries in bootstrap_class_list are unique. * java/lang/natClass.cc (getClassLoader): Don't special case system class loader. * java/lang/VMClassLoader.java (bootLoader): New field. (getResource): Use bootLoader. (getResources): Likewise. (initBootLoader): Declare. * gnu/gcj/runtime/BootClassLoader.java: New file. * external/sax/org/xml/sax/helpers/NamespaceSupport.java (EMPTY_ENUMERATION): Now package-private. * external/w3c_com/Makefile.in: Rebuilt. * external/w3c_com/Makefile.am (MULTIBUILDTOP): New variable. (w3c.jar): New target. (classes.stamp): Updated. (toolexeclib_LTLIBRARIES): Renamed from noinst_LTLIBRARIES. Changed name of library. (libw3c_gcj_la_SOURCES): New variable. (libw3c_gcj_la_GCJFLAGS): Likewise. (source_files): Renamed from lib3c_convenience_la_SOURCES. * external/sax/Makefile.in: Rebuilt. * external/sax/Makefile.am (MULTIBUILDTOP): New variable. (sax.jar): New target. (classes.stamp): Updated. (toolexeclib_LTLIBRARIES): Renamed from noinst_LTLIBRARIES. Changed name of library. (libsax_gcj_la_SOURCES): New variable. (libsax_gcj_la_GCJFLAGS): Likewise. (source_files): Renamed from libsax_convenience_la_SOURCES. * stacktrace.cc (non_system_trace_fn): Don't look at system class loader. * prims.cc (_Jv_CreateJavaVM): Initialize the bootstrap class loader. (_Jv_RunMain): Handle case where 'runtime' is NULL at exit. From-SVN: r96960
Diffstat (limited to 'libjava')
-rw-r--r--libjava/ChangeLog63
-rw-r--r--libjava/Makefile.am255
-rw-r--r--libjava/Makefile.in2871
-rw-r--r--libjava/aclocal.m4460
-rw-r--r--libjava/external/Makefile.in24
-rw-r--r--libjava/external/sax/Makefile.am19
-rw-r--r--libjava/external/sax/Makefile.in360
-rw-r--r--libjava/external/sax/org/xml/sax/helpers/NamespaceSupport.java5
-rw-r--r--libjava/external/w3c_dom/Makefile.am19
-rw-r--r--libjava/external/w3c_dom/Makefile.in1138
-rw-r--r--libjava/gcj/Makefile.in4
-rw-r--r--libjava/gnu/gcj/runtime/BootClassLoader.java102
-rw-r--r--libjava/gnu/xml/aelfred2/JAXPFactory.java273
-rw-r--r--libjava/gnu/xml/aelfred2/SAXDriver.java2456
-rw-r--r--libjava/gnu/xml/aelfred2/XmlParser.java10240
-rw-r--r--libjava/gnu/xml/aelfred2/XmlReader.java515
-rw-r--r--libjava/include/Makefile.in4
-rw-r--r--libjava/java/lang/VMClassLoader.java12
-rw-r--r--libjava/java/lang/natClass.cc20
-rw-r--r--libjava/java/lang/natClassLoader.cc36
-rw-r--r--libjava/java/lang/natVMClassLoader.cc25
-rw-r--r--libjava/prims.cc9
-rw-r--r--libjava/stacktrace.cc2
-rw-r--r--libjava/testsuite/Makefile.in4
24 files changed, 8359 insertions, 10557 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index dc31111..b2d5002 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,66 @@
+2005-03-23 Tom Tromey <tromey@redhat.com>
+
+ * Makefile.in: Rebuilt.
+ * Makefile.am (AM_CXXFLAGS): Define TOOLEXECLIBDIR.
+ (libgcj0_convenience_la_SOURCES): Don't include
+ gnu_xml_source_files.
+ (libgcj0_convenience_la_LIBADD): New variable.
+ (libgcj_la_LIBADD): Don't include sax or w3c_dom.
+ (all_java_source_files): javax_imageio_source_files,
+ javax_xml_source_files, and gnu_java_beans_source_files.
+ ($(gnu_xml_source_files:.java=.lo)): Removed target.
+ (gnu-xml.lo): New target.
+ (javax-imageio.lo): Likewise.
+ (javax-xml.lo): Likewise.
+ (gnu-java-beans.lo): Likewise.
+ (gnu_java_beans_source_files): New variable.
+ (javax_imageio_source_files): Likewise.
+ (javax_xml_source_files): Likewise.
+ (javax_source_files): Moved files to other variable.
+ (awt_java_source_files): Likewise.
+ (ordinary_java_source_files): Added BootClassLoader.java.
+ * java/lang/natVMClassLoader.cc (defineClass): Use boot loader,
+ not system class loader.
+ (initBootLoader): New method.
+ (loadClass): Search bootLoader.
+ * java/lang/natClassLoader.cc (_Jv_RegisterInitiatingLoader): Use
+ boot loader, not system class loader.
+ (_Jv_UnregisterInitiatingLoader): Likewise.
+ (_Jv_FindClass): Likewise. Ensure entries in
+ bootstrap_class_list are unique.
+ * java/lang/natClass.cc (getClassLoader): Don't special case
+ system class loader.
+ * java/lang/VMClassLoader.java (bootLoader): New field.
+ (getResource): Use bootLoader.
+ (getResources): Likewise.
+ (initBootLoader): Declare.
+ * gnu/gcj/runtime/BootClassLoader.java: New file.
+ * external/sax/org/xml/sax/helpers/NamespaceSupport.java
+ (EMPTY_ENUMERATION): Now package-private.
+ * external/w3c_com/Makefile.in: Rebuilt.
+ * external/w3c_com/Makefile.am (MULTIBUILDTOP): New variable.
+ (w3c.jar): New target.
+ (classes.stamp): Updated.
+ (toolexeclib_LTLIBRARIES): Renamed from noinst_LTLIBRARIES.
+ Changed name of library.
+ (libw3c_gcj_la_SOURCES): New variable.
+ (libw3c_gcj_la_GCJFLAGS): Likewise.
+ (source_files): Renamed from lib3c_convenience_la_SOURCES.
+ * external/sax/Makefile.in: Rebuilt.
+ * external/sax/Makefile.am (MULTIBUILDTOP): New variable.
+ (sax.jar): New target.
+ (classes.stamp): Updated.
+ (toolexeclib_LTLIBRARIES): Renamed from noinst_LTLIBRARIES.
+ Changed name of library.
+ (libsax_gcj_la_SOURCES): New variable.
+ (libsax_gcj_la_GCJFLAGS): Likewise.
+ (source_files): Renamed from libsax_convenience_la_SOURCES.
+ * stacktrace.cc (non_system_trace_fn): Don't look at system class
+ loader.
+ * prims.cc (_Jv_CreateJavaVM): Initialize the bootstrap class
+ loader.
+ (_Jv_RunMain): Handle case where 'runtime' is NULL at exit.
+
2005-03-23 Sven de Marothy <sven@physto.se>
PR libgcj/2641, PR libgcj/9854, PR libgcj/14892, PR libgcj/18083,
diff --git a/libjava/Makefile.am b/libjava/Makefile.am
index a9141a0..5ca1844 100644
--- a/libjava/Makefile.am
+++ b/libjava/Makefile.am
@@ -184,7 +184,8 @@ AM_CXXFLAGS = \
-DLIBDIR="\"$(libdir)\"" \
-DBOOT_CLASS_PATH="\"$(jardir)/$(jar_DATA)\"" \
-DJAVA_EXT_DIRS="\"$(jardir)/ext\"" \
- -DLIBGCJ_DEFAULT_DATABASE="\"$(dbexecdir)/$(db_name)\""
+ -DLIBGCJ_DEFAULT_DATABASE="\"$(dbexecdir)/$(db_name)\"" \
+ -DTOOLEXECLIBDIR="\"$(toolexeclibdir)\""
AM_GCJFLAGS = \
@LIBGCJ_JAVAFLAGS@ \
@@ -233,12 +234,16 @@ libgij_la_LDFLAGS = -rpath $(toolexeclibdir) \
libgcj0_convenience_la_SOURCES = prims.cc jni.cc exception.cc stacktrace.cc \
link.cc defineclass.cc interpret.cc verify.cc \
$(nat_source_files) $(math_c_source_files) $(java_source_files) \
- $(gnu_xml_source_files) $(built_java_source_files) \
+ $(built_java_source_files) \
$(BOEHMGC_SRC) $(NOGC_SRC) \
$(BACKTRACE_SRC) \
$(POSIX_PLATFORM_SRC) $(WIN32_PLATFORM_SRC) $(ECOS_PLATFORM_SRC) \
$(DARWIN_CRT_SRC) \
$(POSIX_THREAD_SRC) $(WIN32_THREAD_SRC) $(NO_THREAD_SRC)
+libgcj0_convenience_la_LIBADD = \
+ gnu-xml.lo javax-imageio.lo \
+ javax-xml.lo gnu-java-beans.lo
+
noinst_LTLIBRARIES = libgcj0_convenience.la
libgcj_la_SOURCES =
@@ -254,8 +259,6 @@ libgcj_la_LDFLAGS = -rpath $(toolexeclibdir) $(THREADLDFLAGS) $(THREADLIBS) \
$(LIBLTDL) $(SYS_ZLIBS) \
-version-info `grep -v '^\#' $(srcdir)/libtool-version`
libgcj_la_LIBADD = \
- external/sax/libsax_convenience.la \
- external/w3c_dom/libw3c_convenience.la \
libgcj0_convenience.la \
$(LIBFFI) $(ZLIBS) $(GCLIBS) $(propertyo_files)
libgcj_la_DEPENDENCIES = libgcj-$(gcc_version).jar \
@@ -515,7 +518,10 @@ all_java_source_files = \
$(built_java_source_files) \
$(gtk_awt_peer_sources) \
$(xlib_java_source_files) \
- $(gnu_xml_source_files)
+ $(gnu_xml_source_files) \
+ $(javax_imageio_source_files) \
+ $(javax_xml_source_files) \
+ $(gnu_java_beans_source_files)
all_java_class_files = $(all_java_source_files:.java=.class)
@@ -610,7 +616,7 @@ SUFFIXES = .class .java .h .properties
$(javao_files) $(xlib_javao_files): %.lo: %.java
$(LTGCJCOMPILE) -o $@ -c $<
-$(gtk_awt_peer_sources:.java=.lo) $(gnu_xml_source_files:.java=.lo): %.lo: %.java
+$(gtk_awt_peer_sources:.java=.lo): %.lo: %.java
$(LTGCJCOMPILE) -fjni -o $@ -c $<
## Pass the list of object files to libtool in a temporary file to
@@ -631,6 +637,58 @@ lib-gnu-awt-xlib.la: $(lib_gnu_awt_xlib_la_OBJECTS) $(lib_gnu_awt_xlib_la_DEPEND
## ################################################################
##
+## Some packages must be built with the binary compatibility ABI. We
+## compile each such package into a .so, broken down more or less by
+## conceptual unit.
+##
+
+## Depend on the sources, even though we are going to compile the
+## classes.
+gnu-xml.lo: $(gnu_xml_source_files)
+## FIXME: this is ugly. We want to make sure the .class files have
+## been built, but we don't want a real dependency on them as this
+## would cause our target to be rebuilt whenever any .java file is
+## touched.
+ $(MAKE) classes.stamp
+ $(LTGCJCOMPILE) -fjni -findirect-dispatch -c -o gnu-xml.lo \
+ `find gnu/xml -name '*.class' -print`
+
+## Depend on the sources, even though we are going to compile the
+## classes.
+javax-imageio.lo: $(javax_imageio_source_files)
+## FIXME: this is ugly. We want to make sure the .class files have
+## been built, but we don't want a real dependency on them as this
+## would cause our target to be rebuilt whenever any .java file is
+## touched.
+ $(MAKE) classes.stamp
+ $(LTGCJCOMPILE) -findirect-dispatch -c -o javax-imageio.lo \
+ `find javax/imageio -name '*.class' -print`
+
+## Depend on the sources, even though we are going to compile the
+## classes.
+javax-xml.lo: $(javax_xml_source_files)
+## FIXME: this is ugly. We want to make sure the .class files have
+## been built, but we don't want a real dependency on them as this
+## would cause our target to be rebuilt whenever any .java file is
+## touched.
+ $(MAKE) classes.stamp
+ $(LTGCJCOMPILE) -findirect-dispatch -c -o javax-xml.lo \
+ `find javax/xml -name '*.class' -print`
+
+## Depend on the sources, even though we are going to compile the
+## classes.
+gnu-java-beans.lo: $(gnu_java_beans_source_files)
+## FIXME: this is ugly. We want to make sure the .class files have
+## been built, but we don't want a real dependency on them as this
+## would cause our target to be rebuilt whenever any .java file is
+## touched.
+ $(MAKE) classes.stamp
+ $(LTGCJCOMPILE) -findirect-dispatch -c -o gnu-java-beans.lo \
+ `find gnu/java/beans -name '*.class' -print`
+
+## ################################################################
+
+##
## How to build header files.
##
@@ -1054,40 +1112,7 @@ gnu/gcj/convert/UnicodeToBytes.java
## hand.
special_java_source_files = java/lang/Class.java java/lang/Object.java
-awt_java_source_files = \
-gnu/awt/LightweightRedirector.java \
-gnu/awt/j2d/AbstractGraphicsState.java \
-gnu/awt/j2d/DirectRasterGraphics.java \
-gnu/awt/j2d/Graphics2DImpl.java \
-gnu/awt/j2d/IntegerGraphicsState.java \
-gnu/awt/j2d/MappedRaster.java \
-gnu/java/awt/BitMaskExtent.java \
-gnu/java/awt/Buffers.java \
-gnu/java/awt/BitwiseXORComposite.java \
-gnu/java/awt/ComponentDataBlitOp.java \
-gnu/java/awt/ClasspathToolkit.java \
-gnu/java/awt/EmbeddedWindow.java \
-gnu/java/awt/EmbeddedWindowSupport.java \
-gnu/java/awt/EventModifier.java \
-gnu/java/awt/color/CieXyzConverter.java \
-gnu/java/awt/color/ClutProfileConverter.java \
-gnu/java/awt/color/ColorLookUpTable.java \
-gnu/java/awt/color/ColorSpaceConverter.java \
-gnu/java/awt/color/GrayProfileConverter.java \
-gnu/java/awt/color/GrayScaleConverter.java \
-gnu/java/awt/color/LinearRGBConverter.java \
-gnu/java/awt/color/ProfileHeader.java \
-gnu/java/awt/color/PyccConverter.java \
-gnu/java/awt/color/RgbProfileConverter.java \
-gnu/java/awt/color/SrgbConverter.java \
-gnu/java/awt/color/TagEntry.java \
-gnu/java/awt/color/ToneReproductionCurve.java \
-gnu/java/awt/image/ImageDecoder.java \
-gnu/java/awt/image/XBMDecoder.java \
-gnu/java/awt/peer/EmbeddedWindowPeer.java \
-gnu/java/awt/peer/GLightweightPeer.java \
-gnu/java/awt/peer/ClasspathFontPeer.java \
-gnu/java/awt/peer/ClasspathTextLayoutPeer.java \
+gnu_java_beans_source_files = \
gnu/java/beans/decoder/AbstractContext.java \
gnu/java/beans/decoder/AbstractCreatableObjectContext.java \
gnu/java/beans/decoder/AbstractElementHandler.java \
@@ -1139,7 +1164,42 @@ gnu/java/beans/BeanInfoEmbryo.java \
gnu/java/beans/DummyAppletContext.java \
gnu/java/beans/DummyAppletStub.java \
gnu/java/beans/ExplicitBeanInfo.java \
-gnu/java/beans/IntrospectionIncubator.java \
+gnu/java/beans/IntrospectionIncubator.java
+
+awt_java_source_files = \
+gnu/awt/LightweightRedirector.java \
+gnu/awt/j2d/AbstractGraphicsState.java \
+gnu/awt/j2d/DirectRasterGraphics.java \
+gnu/awt/j2d/Graphics2DImpl.java \
+gnu/awt/j2d/IntegerGraphicsState.java \
+gnu/awt/j2d/MappedRaster.java \
+gnu/java/awt/BitMaskExtent.java \
+gnu/java/awt/Buffers.java \
+gnu/java/awt/BitwiseXORComposite.java \
+gnu/java/awt/ComponentDataBlitOp.java \
+gnu/java/awt/ClasspathToolkit.java \
+gnu/java/awt/EmbeddedWindow.java \
+gnu/java/awt/EmbeddedWindowSupport.java \
+gnu/java/awt/EventModifier.java \
+gnu/java/awt/color/CieXyzConverter.java \
+gnu/java/awt/color/ClutProfileConverter.java \
+gnu/java/awt/color/ColorLookUpTable.java \
+gnu/java/awt/color/ColorSpaceConverter.java \
+gnu/java/awt/color/GrayProfileConverter.java \
+gnu/java/awt/color/GrayScaleConverter.java \
+gnu/java/awt/color/LinearRGBConverter.java \
+gnu/java/awt/color/ProfileHeader.java \
+gnu/java/awt/color/PyccConverter.java \
+gnu/java/awt/color/RgbProfileConverter.java \
+gnu/java/awt/color/SrgbConverter.java \
+gnu/java/awt/color/TagEntry.java \
+gnu/java/awt/color/ToneReproductionCurve.java \
+gnu/java/awt/image/ImageDecoder.java \
+gnu/java/awt/image/XBMDecoder.java \
+gnu/java/awt/peer/EmbeddedWindowPeer.java \
+gnu/java/awt/peer/GLightweightPeer.java \
+gnu/java/awt/peer/ClasspathFontPeer.java \
+gnu/java/awt/peer/ClasspathTextLayoutPeer.java \
java/applet/Applet.java \
java/applet/AppletStub.java \
java/applet/AppletContext.java \
@@ -1982,7 +2042,7 @@ gnu/java/rmi/server/UnicastRemoteStub.java \
gnu/java/rmi/server/UnicastServer.java \
gnu/java/rmi/server/UnicastServerRef.java
-javax_source_files = \
+javax_imageio_source_files = \
javax/imageio/ImageWriteParam.java \
javax/imageio/ImageReader.java \
javax/imageio/ImageWriter.java \
@@ -2028,7 +2088,63 @@ javax/imageio/event/IIOWriteProgressListener.java \
javax/imageio/ImageTranscoder.java \
javax/imageio/ImageTypeSpecifier.java \
javax/imageio/ImageIO.java \
-javax/imageio/IIOImage.java \
+javax/imageio/IIOImage.java
+
+javax_xml_source_files = \
+javax/xml/xpath/XPathConstants.java \
+javax/xml/xpath/XPathFunction.java \
+javax/xml/xpath/XPathVariableResolver.java \
+javax/xml/xpath/XPathExpressionException.java \
+javax/xml/xpath/XPathFunctionResolver.java \
+javax/xml/xpath/XPath.java \
+javax/xml/xpath/XPathFactoryConfigurationException.java \
+javax/xml/xpath/XPathFactory.java \
+javax/xml/xpath/XPathException.java \
+javax/xml/xpath/XPathExpression.java \
+javax/xml/xpath/XPathFunctionException.java \
+javax/xml/validation/ValidatorHandler.java \
+javax/xml/validation/Validator.java \
+javax/xml/validation/TypeInfoProvider.java \
+javax/xml/validation/SchemaFactory.java \
+javax/xml/validation/Schema.java \
+javax/xml/parsers/SAXParserFactory.java \
+javax/xml/parsers/FactoryConfigurationError.java \
+javax/xml/parsers/SAXParser.java \
+javax/xml/parsers/DocumentBuilderFactory.java \
+javax/xml/parsers/ParserConfigurationException.java \
+javax/xml/parsers/DocumentBuilder.java \
+javax/xml/datatype/DatatypeFactory.java \
+javax/xml/datatype/XMLGregorianCalendar.java \
+javax/xml/datatype/Duration.java \
+javax/xml/datatype/DatatypeConfigurationException.java \
+javax/xml/datatype/DatatypeConstants.java \
+javax/xml/XMLConstants.java \
+javax/xml/namespace/NamespaceContext.java \
+javax/xml/namespace/QName.java \
+javax/xml/transform/TransformerException.java \
+javax/xml/transform/TransformerFactoryConfigurationError.java \
+javax/xml/transform/sax/SAXResult.java \
+javax/xml/transform/sax/TransformerHandler.java \
+javax/xml/transform/sax/SAXTransformerFactory.java \
+javax/xml/transform/sax/SAXSource.java \
+javax/xml/transform/sax/TemplatesHandler.java \
+javax/xml/transform/OutputKeys.java \
+javax/xml/transform/stream/StreamResult.java \
+javax/xml/transform/stream/StreamSource.java \
+javax/xml/transform/Source.java \
+javax/xml/transform/SourceLocator.java \
+javax/xml/transform/ErrorListener.java \
+javax/xml/transform/TransformerConfigurationException.java \
+javax/xml/transform/Templates.java \
+javax/xml/transform/Result.java \
+javax/xml/transform/URIResolver.java \
+javax/xml/transform/dom/DOMSource.java \
+javax/xml/transform/dom/DOMLocator.java \
+javax/xml/transform/dom/DOMResult.java \
+javax/xml/transform/Transformer.java \
+javax/xml/transform/TransformerFactory.java
+
+javax_source_files = \
javax/net/VanillaSocketFactory.java \
javax/net/ssl/TrustManagerFactorySpi.java \
javax/net/ssl/SSLKeyException.java \
@@ -2267,58 +2383,6 @@ javax/naming/NameClassPair.java \
javax/naming/RefAddr.java \
javax/naming/CompositeName.java \
javax/naming/Name.java \
-javax/xml/xpath/XPathConstants.java \
-javax/xml/xpath/XPathFunction.java \
-javax/xml/xpath/XPathVariableResolver.java \
-javax/xml/xpath/XPathExpressionException.java \
-javax/xml/xpath/XPathFunctionResolver.java \
-javax/xml/xpath/XPath.java \
-javax/xml/xpath/XPathFactoryConfigurationException.java \
-javax/xml/xpath/XPathFactory.java \
-javax/xml/xpath/XPathException.java \
-javax/xml/xpath/XPathExpression.java \
-javax/xml/xpath/XPathFunctionException.java \
-javax/xml/validation/ValidatorHandler.java \
-javax/xml/validation/Validator.java \
-javax/xml/validation/TypeInfoProvider.java \
-javax/xml/validation/SchemaFactory.java \
-javax/xml/validation/Schema.java \
-javax/xml/parsers/SAXParserFactory.java \
-javax/xml/parsers/FactoryConfigurationError.java \
-javax/xml/parsers/SAXParser.java \
-javax/xml/parsers/DocumentBuilderFactory.java \
-javax/xml/parsers/ParserConfigurationException.java \
-javax/xml/parsers/DocumentBuilder.java \
-javax/xml/datatype/DatatypeFactory.java \
-javax/xml/datatype/XMLGregorianCalendar.java \
-javax/xml/datatype/Duration.java \
-javax/xml/datatype/DatatypeConfigurationException.java \
-javax/xml/datatype/DatatypeConstants.java \
-javax/xml/XMLConstants.java \
-javax/xml/namespace/NamespaceContext.java \
-javax/xml/namespace/QName.java \
-javax/xml/transform/TransformerException.java \
-javax/xml/transform/TransformerFactoryConfigurationError.java \
-javax/xml/transform/sax/SAXResult.java \
-javax/xml/transform/sax/TransformerHandler.java \
-javax/xml/transform/sax/SAXTransformerFactory.java \
-javax/xml/transform/sax/SAXSource.java \
-javax/xml/transform/sax/TemplatesHandler.java \
-javax/xml/transform/OutputKeys.java \
-javax/xml/transform/stream/StreamResult.java \
-javax/xml/transform/stream/StreamSource.java \
-javax/xml/transform/Source.java \
-javax/xml/transform/SourceLocator.java \
-javax/xml/transform/ErrorListener.java \
-javax/xml/transform/TransformerConfigurationException.java \
-javax/xml/transform/Templates.java \
-javax/xml/transform/Result.java \
-javax/xml/transform/URIResolver.java \
-javax/xml/transform/dom/DOMSource.java \
-javax/xml/transform/dom/DOMLocator.java \
-javax/xml/transform/dom/DOMResult.java \
-javax/xml/transform/Transformer.java \
-javax/xml/transform/TransformerFactory.java \
javax/security/cert/CertificateNotYetValidException.java \
javax/security/cert/Certificate.java \
javax/security/cert/X509Certificate.java \
@@ -2919,6 +2983,7 @@ gnu/gcj/RawDataManaged.java \
gnu/gcj/io/DefaultMimeTypes.java \
gnu/gcj/io/MimeTypes.java \
gnu/gcj/io/SimpleSHSStream.java \
+gnu/gcj/runtime/BootClassLoader.java \
gnu/gcj/runtime/FileDeleter.java \
gnu/gcj/runtime/FinalizerThread.java \
gnu/gcj/runtime/JNIWeakRef.java \
diff --git a/libjava/Makefile.in b/libjava/Makefile.in
index c98a225..79f4ee9 100644
--- a/libjava/Makefile.in
+++ b/libjava/Makefile.in
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# Makefile.in generated by automake 1.9.3 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005 Free Software Foundation, Inc.
+# 2003, 2004 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -324,7 +324,8 @@ am__DEPENDENCIES_2 = gnu/regexp/MessagesBundle.properties.lo \
am__DEPENDENCIES_3 = $(am__DEPENDENCIES_2)
am_libgcj_la_OBJECTS =
libgcj_la_OBJECTS = $(am_libgcj_la_OBJECTS)
-libgcj0_convenience_la_LIBADD =
+libgcj0_convenience_la_DEPENDENCIES = gnu-xml.lo javax-imageio.lo \
+ javax-xml.lo gnu-java-beans.lo
am__libgcj0_convenience_la_SOURCES_DIST = prims.cc jni.cc exception.cc \
stacktrace.cc link.cc defineclass.cc interpret.cc verify.cc \
gnu/gcj/natCore.cc gnu/gcj/convert/JIS0208_to_Unicode.cc \
@@ -546,6 +547,7 @@ am__libgcj0_convenience_la_SOURCES_DIST = prims.cc jni.cc exception.cc \
gnu/gcj/Core.java gnu/gcj/RawData.java \
gnu/gcj/RawDataManaged.java gnu/gcj/io/DefaultMimeTypes.java \
gnu/gcj/io/MimeTypes.java gnu/gcj/io/SimpleSHSStream.java \
+ gnu/gcj/runtime/BootClassLoader.java \
gnu/gcj/runtime/FileDeleter.java \
gnu/gcj/runtime/FinalizerThread.java \
gnu/gcj/runtime/JNIWeakRef.java \
@@ -1306,58 +1308,6 @@ am__libgcj0_convenience_la_SOURCES_DIST = prims.cc jni.cc exception.cc \
gnu/java/awt/peer/GLightweightPeer.java \
gnu/java/awt/peer/ClasspathFontPeer.java \
gnu/java/awt/peer/ClasspathTextLayoutPeer.java \
- gnu/java/beans/decoder/AbstractContext.java \
- gnu/java/beans/decoder/AbstractCreatableObjectContext.java \
- gnu/java/beans/decoder/AbstractElementHandler.java \
- gnu/java/beans/decoder/AbstractObjectContext.java \
- gnu/java/beans/decoder/ArrayContext.java \
- gnu/java/beans/decoder/ArrayHandler.java \
- gnu/java/beans/decoder/AssemblyException.java \
- gnu/java/beans/decoder/BooleanHandler.java \
- gnu/java/beans/decoder/ByteHandler.java \
- gnu/java/beans/decoder/CharHandler.java \
- gnu/java/beans/decoder/ClassHandler.java \
- gnu/java/beans/decoder/ConstructorContext.java \
- gnu/java/beans/decoder/Context.java \
- gnu/java/beans/decoder/DecoderContext.java \
- gnu/java/beans/decoder/DefaultExceptionListener.java \
- gnu/java/beans/decoder/DoubleHandler.java \
- gnu/java/beans/decoder/DummyContext.java \
- gnu/java/beans/decoder/DummyHandler.java \
- gnu/java/beans/decoder/ElementHandler.java \
- gnu/java/beans/decoder/FloatHandler.java \
- gnu/java/beans/decoder/GrowableArrayContext.java \
- gnu/java/beans/decoder/IndexContext.java \
- gnu/java/beans/decoder/IntHandler.java \
- gnu/java/beans/decoder/JavaHandler.java \
- gnu/java/beans/decoder/LongHandler.java \
- gnu/java/beans/decoder/MethodContext.java \
- gnu/java/beans/decoder/MethodFinder.java \
- gnu/java/beans/decoder/NullHandler.java \
- gnu/java/beans/decoder/ObjectContext.java \
- gnu/java/beans/decoder/ObjectHandler.java \
- gnu/java/beans/decoder/PersistenceParser.java \
- gnu/java/beans/decoder/PropertyContext.java \
- gnu/java/beans/decoder/ShortHandler.java \
- gnu/java/beans/decoder/SimpleHandler.java \
- gnu/java/beans/decoder/StaticMethodContext.java \
- gnu/java/beans/decoder/StringHandler.java \
- gnu/java/beans/decoder/VoidHandler.java \
- gnu/java/beans/editors/ColorEditor.java \
- gnu/java/beans/editors/FontEditor.java \
- gnu/java/beans/editors/NativeBooleanEditor.java \
- gnu/java/beans/editors/NativeByteEditor.java \
- gnu/java/beans/editors/NativeDoubleEditor.java \
- gnu/java/beans/editors/NativeFloatEditor.java \
- gnu/java/beans/editors/NativeIntEditor.java \
- gnu/java/beans/editors/NativeLongEditor.java \
- gnu/java/beans/editors/NativeShortEditor.java \
- gnu/java/beans/editors/StringEditor.java \
- gnu/java/beans/BeanInfoEmbryo.java \
- gnu/java/beans/DummyAppletContext.java \
- gnu/java/beans/DummyAppletStub.java \
- gnu/java/beans/ExplicitBeanInfo.java \
- gnu/java/beans/IntrospectionIncubator.java \
java/applet/Applet.java java/applet/AppletStub.java \
java/applet/AppletContext.java java/applet/AudioClip.java \
java/awt/AWTError.java java/awt/AWTEvent.java \
@@ -1989,49 +1939,6 @@ am__libgcj0_convenience_la_SOURCES_DIST = prims.cc jni.cc exception.cc \
gnu/gcj/convert/Output_UTF8.java \
gnu/gcj/convert/Output_iconv.java \
gnu/gcj/convert/UnicodeToBytes.java \
- javax/imageio/ImageWriteParam.java \
- javax/imageio/ImageReader.java javax/imageio/ImageWriter.java \
- javax/imageio/IIOException.java \
- javax/imageio/IIOParamController.java \
- javax/imageio/ImageReadParam.java javax/imageio/IIOParam.java \
- javax/imageio/spi/IIORegistry.java \
- javax/imageio/spi/ImageWriterSpi.java \
- javax/imageio/spi/ImageOutputStreamSpi.java \
- javax/imageio/spi/ServiceRegistry.java \
- javax/imageio/spi/ImageTranscoderSpi.java \
- javax/imageio/spi/ImageReaderSpi.java \
- javax/imageio/spi/IIOServiceProvider.java \
- javax/imageio/spi/ImageReaderWriterSpi.java \
- javax/imageio/spi/ImageInputStreamSpi.java \
- javax/imageio/spi/RegisterableService.java \
- javax/imageio/metadata/IIOAttr.java \
- javax/imageio/metadata/IIONamedNodeMap.java \
- javax/imageio/metadata/IIONodeList.java \
- javax/imageio/metadata/IIOMetadataFormatImpl.java \
- javax/imageio/metadata/IIOInvalidTreeException.java \
- javax/imageio/metadata/IIOMetadataFormat.java \
- javax/imageio/metadata/IIOMetadataController.java \
- javax/imageio/metadata/IIOMetadataNode.java \
- javax/imageio/metadata/IIOMetadata.java \
- javax/imageio/stream/FileImageOutputStream.java \
- javax/imageio/stream/ImageInputStream.java \
- javax/imageio/stream/IIOByteBuffer.java \
- javax/imageio/stream/FileCacheImageInputStream.java \
- javax/imageio/stream/ImageInputStreamImpl.java \
- javax/imageio/stream/ImageOutputStreamImpl.java \
- javax/imageio/stream/MemoryCacheImageInputStream.java \
- javax/imageio/stream/FileCacheImageOutputStream.java \
- javax/imageio/stream/ImageOutputStream.java \
- javax/imageio/stream/MemoryCacheImageOutputStream.java \
- javax/imageio/stream/FileImageInputStream.java \
- javax/imageio/event/IIOReadProgressListener.java \
- javax/imageio/event/IIOWriteWarningListener.java \
- javax/imageio/event/IIOReadWarningListener.java \
- javax/imageio/event/IIOReadUpdateListener.java \
- javax/imageio/event/IIOWriteProgressListener.java \
- javax/imageio/ImageTranscoder.java \
- javax/imageio/ImageTypeSpecifier.java \
- javax/imageio/ImageIO.java javax/imageio/IIOImage.java \
javax/net/VanillaSocketFactory.java \
javax/net/ssl/TrustManagerFactorySpi.java \
javax/net/ssl/SSLKeyException.java \
@@ -2260,58 +2167,6 @@ am__libgcj0_convenience_la_SOURCES_DIST = prims.cc jni.cc exception.cc \
javax/naming/Reference.java javax/naming/NameParser.java \
javax/naming/NameClassPair.java javax/naming/RefAddr.java \
javax/naming/CompositeName.java javax/naming/Name.java \
- javax/xml/xpath/XPathConstants.java \
- javax/xml/xpath/XPathFunction.java \
- javax/xml/xpath/XPathVariableResolver.java \
- javax/xml/xpath/XPathExpressionException.java \
- javax/xml/xpath/XPathFunctionResolver.java \
- javax/xml/xpath/XPath.java \
- javax/xml/xpath/XPathFactoryConfigurationException.java \
- javax/xml/xpath/XPathFactory.java \
- javax/xml/xpath/XPathException.java \
- javax/xml/xpath/XPathExpression.java \
- javax/xml/xpath/XPathFunctionException.java \
- javax/xml/validation/ValidatorHandler.java \
- javax/xml/validation/Validator.java \
- javax/xml/validation/TypeInfoProvider.java \
- javax/xml/validation/SchemaFactory.java \
- javax/xml/validation/Schema.java \
- javax/xml/parsers/SAXParserFactory.java \
- javax/xml/parsers/FactoryConfigurationError.java \
- javax/xml/parsers/SAXParser.java \
- javax/xml/parsers/DocumentBuilderFactory.java \
- javax/xml/parsers/ParserConfigurationException.java \
- javax/xml/parsers/DocumentBuilder.java \
- javax/xml/datatype/DatatypeFactory.java \
- javax/xml/datatype/XMLGregorianCalendar.java \
- javax/xml/datatype/Duration.java \
- javax/xml/datatype/DatatypeConfigurationException.java \
- javax/xml/datatype/DatatypeConstants.java \
- javax/xml/XMLConstants.java \
- javax/xml/namespace/NamespaceContext.java \
- javax/xml/namespace/QName.java \
- javax/xml/transform/TransformerException.java \
- javax/xml/transform/TransformerFactoryConfigurationError.java \
- javax/xml/transform/sax/SAXResult.java \
- javax/xml/transform/sax/TransformerHandler.java \
- javax/xml/transform/sax/SAXTransformerFactory.java \
- javax/xml/transform/sax/SAXSource.java \
- javax/xml/transform/sax/TemplatesHandler.java \
- javax/xml/transform/OutputKeys.java \
- javax/xml/transform/stream/StreamResult.java \
- javax/xml/transform/stream/StreamSource.java \
- javax/xml/transform/Source.java \
- javax/xml/transform/SourceLocator.java \
- javax/xml/transform/ErrorListener.java \
- javax/xml/transform/TransformerConfigurationException.java \
- javax/xml/transform/Templates.java \
- javax/xml/transform/Result.java \
- javax/xml/transform/URIResolver.java \
- javax/xml/transform/dom/DOMSource.java \
- javax/xml/transform/dom/DOMLocator.java \
- javax/xml/transform/dom/DOMResult.java \
- javax/xml/transform/Transformer.java \
- javax/xml/transform/TransformerFactory.java \
javax/security/cert/CertificateNotYetValidException.java \
javax/security/cert/Certificate.java \
javax/security/cert/X509Certificate.java \
@@ -2448,151 +2303,6 @@ am__libgcj0_convenience_la_SOURCES_DIST = prims.cc jni.cc exception.cc \
org/ietf/jgss/GSSName.java org/ietf/jgss/GSSContext.java \
org/ietf/jgss/Oid.java org/ietf/jgss/GSSCredential.java \
org/ietf/jgss/ChannelBinding.java \
- gnu/xml/xpath/EqualityExpr.java \
- gnu/xml/xpath/NumberFunction.java \
- gnu/xml/xpath/StringLengthFunction.java \
- gnu/xml/xpath/NameFunction.java gnu/xml/xpath/SumFunction.java \
- gnu/xml/xpath/Pattern.java gnu/xml/xpath/StringFunction.java \
- gnu/xml/xpath/NegativeExpr.java gnu/xml/xpath/UnionExpr.java \
- gnu/xml/xpath/SubstringFunction.java gnu/xml/xpath/Expr.java \
- gnu/xml/xpath/XPathFactoryImpl.java \
- gnu/xml/xpath/NormalizeSpaceFunction.java \
- gnu/xml/xpath/Constant.java gnu/xml/xpath/Predicate.java \
- gnu/xml/xpath/Path.java gnu/xml/xpath/OrExpr.java \
- gnu/xml/xpath/LangFunction.java \
- gnu/xml/xpath/StartsWithFunction.java \
- gnu/xml/xpath/SubstringAfterFunction.java \
- gnu/xml/xpath/FloorFunction.java \
- gnu/xml/xpath/NotFunction.java gnu/xml/xpath/Root.java \
- gnu/xml/xpath/PositionFunction.java \
- gnu/xml/xpath/VariableReference.java \
- gnu/xml/xpath/DocumentOrderComparator.java \
- gnu/xml/xpath/LocalNameFunction.java \
- gnu/xml/xpath/NamespaceUriFunction.java \
- gnu/xml/xpath/TranslateFunction.java \
- gnu/xml/xpath/FalseFunction.java gnu/xml/xpath/AndExpr.java \
- gnu/xml/xpath/XPathParser.java \
- gnu/xml/xpath/NamespaceTest.java \
- gnu/xml/xpath/ConcatFunction.java gnu/xml/xpath/NameTest.java \
- gnu/xml/xpath/CountFunction.java gnu/xml/xpath/IdFunction.java \
- gnu/xml/xpath/LastFunction.java \
- gnu/xml/xpath/XPathTokenizer.java gnu/xml/xpath/Steps.java \
- gnu/xml/xpath/TrueFunction.java \
- gnu/xml/xpath/BooleanFunction.java \
- gnu/xml/xpath/ParenthesizedExpr.java \
- gnu/xml/xpath/XPathImpl.java gnu/xml/xpath/Selector.java \
- gnu/xml/xpath/RoundFunction.java \
- gnu/xml/xpath/SubstringBeforeFunction.java \
- gnu/xml/xpath/Function.java gnu/xml/xpath/CeilingFunction.java \
- gnu/xml/xpath/RelationalExpr.java \
- gnu/xml/xpath/FunctionCall.java \
- gnu/xml/xpath/NodeTypeTest.java \
- gnu/xml/xpath/ArithmeticExpr.java gnu/xml/xpath/Test.java \
- gnu/xml/xpath/ContainsFunction.java \
- gnu/xml/pipeline/EventFilter.java \
- gnu/xml/pipeline/NSFilter.java \
- gnu/xml/pipeline/XsltFilter.java \
- gnu/xml/pipeline/ValidationConsumer.java \
- gnu/xml/pipeline/PipelineFactory.java \
- gnu/xml/pipeline/TextConsumer.java \
- gnu/xml/pipeline/LinkFilter.java \
- gnu/xml/pipeline/TeeConsumer.java \
- gnu/xml/pipeline/DomConsumer.java \
- gnu/xml/pipeline/EventConsumer.java \
- gnu/xml/pipeline/WellFormednessFilter.java \
- gnu/xml/pipeline/XIncludeFilter.java \
- gnu/xml/pipeline/CallFilter.java \
- gnu/xml/aelfred2/XmlParser.java \
- gnu/xml/aelfred2/XmlReader.java \
- gnu/xml/aelfred2/JAXPFactory.java \
- gnu/xml/aelfred2/ContentHandler2.java \
- gnu/xml/aelfred2/SAXDriver.java gnu/xml/util/XCat.java \
- gnu/xml/util/DomParser.java gnu/xml/util/XMLWriter.java \
- gnu/xml/util/Resolver.java gnu/xml/util/DoParse.java \
- gnu/xml/util/XHTMLWriter.java \
- gnu/xml/util/SAXNullTransformerFactory.java \
- gnu/xml/dom/DomXPathNSResolver.java \
- gnu/xml/dom/ls/FilteredSAXEventSink.java \
- gnu/xml/dom/ls/DomLSException.java \
- gnu/xml/dom/ls/DomLSSerializer.java \
- gnu/xml/dom/ls/DomLSInput.java gnu/xml/dom/ls/DomLSOutput.java \
- gnu/xml/dom/ls/SAXEventSink.java \
- gnu/xml/dom/ls/DomLSParser.java \
- gnu/xml/dom/ls/ReaderInputStream.java \
- gnu/xml/dom/ls/WriterOutputStream.java \
- gnu/xml/dom/DomElement.java gnu/xml/dom/DomNsNode.java \
- gnu/xml/dom/DomAttr.java gnu/xml/dom/DTDAttributeTypeInfo.java \
- gnu/xml/dom/DomDocumentBuilder.java \
- gnu/xml/dom/DTDElementTypeInfo.java \
- gnu/xml/dom/DomDocument.java \
- gnu/xml/dom/DomXPathExpression.java \
- gnu/xml/dom/DomDocumentConfiguration.java \
- gnu/xml/dom/DomDocumentFragment.java \
- gnu/xml/dom/DomProcessingInstruction.java \
- gnu/xml/dom/Consumer.java gnu/xml/dom/DomComment.java \
- gnu/xml/dom/DomCharacterData.java gnu/xml/dom/DomExtern.java \
- gnu/xml/dom/DomEntityReference.java \
- gnu/xml/dom/DomNamedNodeMap.java \
- gnu/xml/dom/ImplementationList.java \
- gnu/xml/dom/ImplementationSource.java gnu/xml/dom/DomImpl.java \
- gnu/xml/dom/DomDoctype.java gnu/xml/dom/DomNode.java \
- gnu/xml/dom/DomXPathResult.java \
- gnu/xml/dom/DomDocumentBuilderFactory.java \
- gnu/xml/dom/DomText.java gnu/xml/dom/DomNSResolverContext.java \
- gnu/xml/dom/DomNodeIterator.java gnu/xml/dom/DomNotation.java \
- gnu/xml/dom/JAXPFactory.java gnu/xml/dom/DomIterator.java \
- gnu/xml/dom/DomEvent.java gnu/xml/dom/DomEntity.java \
- gnu/xml/dom/DomCDATASection.java \
- gnu/xml/dom/DomDOMException.java \
- gnu/xml/transform/GenerateIdFunction.java \
- gnu/xml/transform/FormatNumberFunction.java \
- gnu/xml/transform/ValueOfNode.java \
- gnu/xml/transform/ApplyImportsNode.java \
- gnu/xml/transform/WithParam.java \
- gnu/xml/transform/DocumentFunction.java \
- gnu/xml/transform/SAXSerializer.java \
- gnu/xml/transform/FunctionAvailableFunction.java \
- gnu/xml/transform/ElementAvailableFunction.java \
- gnu/xml/transform/IfNode.java \
- gnu/xml/transform/ApplyTemplatesNode.java \
- gnu/xml/transform/SortKey.java gnu/xml/transform/Key.java \
- gnu/xml/transform/ElementNode.java \
- gnu/xml/transform/CurrentFunction.java \
- gnu/xml/transform/XSLComparator.java \
- gnu/xml/transform/CallTemplateNode.java \
- gnu/xml/transform/TemplatesImpl.java \
- gnu/xml/transform/ChooseNode.java \
- gnu/xml/transform/NumberNode.java \
- gnu/xml/transform/CopyOfNode.java \
- gnu/xml/transform/ParameterNode.java \
- gnu/xml/transform/TransformerFactoryImpl.java \
- gnu/xml/transform/TextNode.java \
- gnu/xml/transform/CopyNode.java \
- gnu/xml/transform/SystemPropertyFunction.java \
- gnu/xml/transform/Stylesheet.java \
- gnu/xml/transform/ProcessingInstructionNode.java \
- gnu/xml/transform/UnparsedEntityUriFunction.java \
- gnu/xml/transform/URIResolverEntityResolver.java \
- gnu/xml/transform/ErrorListenerErrorHandler.java \
- gnu/xml/transform/Bindings.java \
- gnu/xml/transform/AttributeSet.java \
- gnu/xml/transform/Template.java \
- gnu/xml/transform/MessageNode.java \
- gnu/xml/transform/LiteralNode.java \
- gnu/xml/transform/StreamSerializer.java \
- gnu/xml/transform/XSLURIResolver.java \
- gnu/xml/transform/AttributeNode.java \
- gnu/xml/transform/CommentNode.java \
- gnu/xml/transform/ForEachNode.java \
- gnu/xml/transform/KeyFunction.java \
- gnu/xml/transform/TransformerImpl.java \
- gnu/xml/transform/WhenNode.java \
- gnu/xml/transform/NodeNumberNode.java \
- gnu/xml/transform/OtherwiseNode.java \
- gnu/xml/transform/AbstractNumberNode.java \
- gnu/xml/transform/TemplateNode.java \
- gnu/xml/transform/TransformerOutputProperties.java \
- gnu/xml/transform/DOMSourceLocator.java \
java/lang/ConcreteProcess.java \
gnu/classpath/Configuration.java boehm.cc nogc.cc \
sysdep/dwarf2-backtrace.cc posix.cc win32.cc darwin.cc \
@@ -2908,67 +2618,16 @@ am__objects_11 = gnu/awt/LightweightRedirector.lo \
gnu/java/awt/peer/GLightweightPeer.lo \
gnu/java/awt/peer/ClasspathFontPeer.lo \
gnu/java/awt/peer/ClasspathTextLayoutPeer.lo \
- gnu/java/beans/decoder/AbstractContext.lo \
- gnu/java/beans/decoder/AbstractCreatableObjectContext.lo \
- gnu/java/beans/decoder/AbstractElementHandler.lo \
- gnu/java/beans/decoder/AbstractObjectContext.lo \
- gnu/java/beans/decoder/ArrayContext.lo \
- gnu/java/beans/decoder/ArrayHandler.lo \
- gnu/java/beans/decoder/AssemblyException.lo \
- gnu/java/beans/decoder/BooleanHandler.lo \
- gnu/java/beans/decoder/ByteHandler.lo \
- gnu/java/beans/decoder/CharHandler.lo \
- gnu/java/beans/decoder/ClassHandler.lo \
- gnu/java/beans/decoder/ConstructorContext.lo \
- gnu/java/beans/decoder/Context.lo \
- gnu/java/beans/decoder/DecoderContext.lo \
- gnu/java/beans/decoder/DefaultExceptionListener.lo \
- gnu/java/beans/decoder/DoubleHandler.lo \
- gnu/java/beans/decoder/DummyContext.lo \
- gnu/java/beans/decoder/DummyHandler.lo \
- gnu/java/beans/decoder/ElementHandler.lo \
- gnu/java/beans/decoder/FloatHandler.lo \
- gnu/java/beans/decoder/GrowableArrayContext.lo \
- gnu/java/beans/decoder/IndexContext.lo \
- gnu/java/beans/decoder/IntHandler.lo \
- gnu/java/beans/decoder/JavaHandler.lo \
- gnu/java/beans/decoder/LongHandler.lo \
- gnu/java/beans/decoder/MethodContext.lo \
- gnu/java/beans/decoder/MethodFinder.lo \
- gnu/java/beans/decoder/NullHandler.lo \
- gnu/java/beans/decoder/ObjectContext.lo \
- gnu/java/beans/decoder/ObjectHandler.lo \
- gnu/java/beans/decoder/PersistenceParser.lo \
- gnu/java/beans/decoder/PropertyContext.lo \
- gnu/java/beans/decoder/ShortHandler.lo \
- gnu/java/beans/decoder/SimpleHandler.lo \
- gnu/java/beans/decoder/StaticMethodContext.lo \
- gnu/java/beans/decoder/StringHandler.lo \
- gnu/java/beans/decoder/VoidHandler.lo \
- gnu/java/beans/editors/ColorEditor.lo \
- gnu/java/beans/editors/FontEditor.lo \
- gnu/java/beans/editors/NativeBooleanEditor.lo \
- gnu/java/beans/editors/NativeByteEditor.lo \
- gnu/java/beans/editors/NativeDoubleEditor.lo \
- gnu/java/beans/editors/NativeFloatEditor.lo \
- gnu/java/beans/editors/NativeIntEditor.lo \
- gnu/java/beans/editors/NativeLongEditor.lo \
- gnu/java/beans/editors/NativeShortEditor.lo \
- gnu/java/beans/editors/StringEditor.lo \
- gnu/java/beans/BeanInfoEmbryo.lo \
- gnu/java/beans/DummyAppletContext.lo \
- gnu/java/beans/DummyAppletStub.lo \
- gnu/java/beans/ExplicitBeanInfo.lo \
- gnu/java/beans/IntrospectionIncubator.lo java/applet/Applet.lo \
- java/applet/AppletStub.lo java/applet/AppletContext.lo \
- java/applet/AudioClip.lo java/awt/AWTError.lo \
- java/awt/AWTEvent.lo java/awt/AWTEventMulticaster.lo \
- java/awt/AWTException.lo java/awt/AWTPermission.lo \
- java/awt/ActiveEvent.lo java/awt/Adjustable.lo \
- java/awt/BorderLayout.lo java/awt/Button.lo java/awt/Canvas.lo \
- java/awt/CardLayout.lo java/awt/Checkbox.lo \
- java/awt/CheckboxGroup.lo java/awt/CheckboxMenuItem.lo \
- java/awt/Choice.lo java/awt/Color.lo java/awt/Component.lo \
+ java/applet/Applet.lo java/applet/AppletStub.lo \
+ java/applet/AppletContext.lo java/applet/AudioClip.lo \
+ java/awt/AWTError.lo java/awt/AWTEvent.lo \
+ java/awt/AWTEventMulticaster.lo java/awt/AWTException.lo \
+ java/awt/AWTPermission.lo java/awt/ActiveEvent.lo \
+ java/awt/Adjustable.lo java/awt/BorderLayout.lo \
+ java/awt/Button.lo java/awt/Canvas.lo java/awt/CardLayout.lo \
+ java/awt/Checkbox.lo java/awt/CheckboxGroup.lo \
+ java/awt/CheckboxMenuItem.lo java/awt/Choice.lo \
+ java/awt/Color.lo java/awt/Component.lo \
java/awt/ComponentOrientation.lo java/awt/Container.lo \
java/awt/Cursor.lo java/awt/Dialog.lo java/awt/Dimension.lo \
java/awt/Event.lo java/awt/EventDispatchThread.lo \
@@ -3536,49 +3195,7 @@ am__objects_12 = gnu/gcj/convert/BytesToUnicode.lo \
gnu/gcj/convert/Output_UnicodeLittleUnmarked.lo \
gnu/gcj/convert/Output_UTF8.lo gnu/gcj/convert/Output_iconv.lo \
gnu/gcj/convert/UnicodeToBytes.lo
-am__objects_13 = javax/imageio/ImageWriteParam.lo \
- javax/imageio/ImageReader.lo javax/imageio/ImageWriter.lo \
- javax/imageio/IIOException.lo \
- javax/imageio/IIOParamController.lo \
- javax/imageio/ImageReadParam.lo javax/imageio/IIOParam.lo \
- javax/imageio/spi/IIORegistry.lo \
- javax/imageio/spi/ImageWriterSpi.lo \
- javax/imageio/spi/ImageOutputStreamSpi.lo \
- javax/imageio/spi/ServiceRegistry.lo \
- javax/imageio/spi/ImageTranscoderSpi.lo \
- javax/imageio/spi/ImageReaderSpi.lo \
- javax/imageio/spi/IIOServiceProvider.lo \
- javax/imageio/spi/ImageReaderWriterSpi.lo \
- javax/imageio/spi/ImageInputStreamSpi.lo \
- javax/imageio/spi/RegisterableService.lo \
- javax/imageio/metadata/IIOAttr.lo \
- javax/imageio/metadata/IIONamedNodeMap.lo \
- javax/imageio/metadata/IIONodeList.lo \
- javax/imageio/metadata/IIOMetadataFormatImpl.lo \
- javax/imageio/metadata/IIOInvalidTreeException.lo \
- javax/imageio/metadata/IIOMetadataFormat.lo \
- javax/imageio/metadata/IIOMetadataController.lo \
- javax/imageio/metadata/IIOMetadataNode.lo \
- javax/imageio/metadata/IIOMetadata.lo \
- javax/imageio/stream/FileImageOutputStream.lo \
- javax/imageio/stream/ImageInputStream.lo \
- javax/imageio/stream/IIOByteBuffer.lo \
- javax/imageio/stream/FileCacheImageInputStream.lo \
- javax/imageio/stream/ImageInputStreamImpl.lo \
- javax/imageio/stream/ImageOutputStreamImpl.lo \
- javax/imageio/stream/MemoryCacheImageInputStream.lo \
- javax/imageio/stream/FileCacheImageOutputStream.lo \
- javax/imageio/stream/ImageOutputStream.lo \
- javax/imageio/stream/MemoryCacheImageOutputStream.lo \
- javax/imageio/stream/FileImageInputStream.lo \
- javax/imageio/event/IIOReadProgressListener.lo \
- javax/imageio/event/IIOWriteWarningListener.lo \
- javax/imageio/event/IIOReadWarningListener.lo \
- javax/imageio/event/IIOReadUpdateListener.lo \
- javax/imageio/event/IIOWriteProgressListener.lo \
- javax/imageio/ImageTranscoder.lo \
- javax/imageio/ImageTypeSpecifier.lo javax/imageio/ImageIO.lo \
- javax/imageio/IIOImage.lo javax/net/VanillaSocketFactory.lo \
+am__objects_13 = javax/net/VanillaSocketFactory.lo \
javax/net/ssl/TrustManagerFactorySpi.lo \
javax/net/ssl/SSLKeyException.lo javax/net/ssl/TrustManager.lo \
javax/net/ssl/SSLServerSocket.lo \
@@ -3798,57 +3415,6 @@ am__objects_13 = javax/imageio/ImageWriteParam.lo \
javax/naming/Reference.lo javax/naming/NameParser.lo \
javax/naming/NameClassPair.lo javax/naming/RefAddr.lo \
javax/naming/CompositeName.lo javax/naming/Name.lo \
- javax/xml/xpath/XPathConstants.lo \
- javax/xml/xpath/XPathFunction.lo \
- javax/xml/xpath/XPathVariableResolver.lo \
- javax/xml/xpath/XPathExpressionException.lo \
- javax/xml/xpath/XPathFunctionResolver.lo \
- javax/xml/xpath/XPath.lo \
- javax/xml/xpath/XPathFactoryConfigurationException.lo \
- javax/xml/xpath/XPathFactory.lo \
- javax/xml/xpath/XPathException.lo \
- javax/xml/xpath/XPathExpression.lo \
- javax/xml/xpath/XPathFunctionException.lo \
- javax/xml/validation/ValidatorHandler.lo \
- javax/xml/validation/Validator.lo \
- javax/xml/validation/TypeInfoProvider.lo \
- javax/xml/validation/SchemaFactory.lo \
- javax/xml/validation/Schema.lo \
- javax/xml/parsers/SAXParserFactory.lo \
- javax/xml/parsers/FactoryConfigurationError.lo \
- javax/xml/parsers/SAXParser.lo \
- javax/xml/parsers/DocumentBuilderFactory.lo \
- javax/xml/parsers/ParserConfigurationException.lo \
- javax/xml/parsers/DocumentBuilder.lo \
- javax/xml/datatype/DatatypeFactory.lo \
- javax/xml/datatype/XMLGregorianCalendar.lo \
- javax/xml/datatype/Duration.lo \
- javax/xml/datatype/DatatypeConfigurationException.lo \
- javax/xml/datatype/DatatypeConstants.lo \
- javax/xml/XMLConstants.lo \
- javax/xml/namespace/NamespaceContext.lo \
- javax/xml/namespace/QName.lo \
- javax/xml/transform/TransformerException.lo \
- javax/xml/transform/TransformerFactoryConfigurationError.lo \
- javax/xml/transform/sax/SAXResult.lo \
- javax/xml/transform/sax/TransformerHandler.lo \
- javax/xml/transform/sax/SAXTransformerFactory.lo \
- javax/xml/transform/sax/SAXSource.lo \
- javax/xml/transform/sax/TemplatesHandler.lo \
- javax/xml/transform/OutputKeys.lo \
- javax/xml/transform/stream/StreamResult.lo \
- javax/xml/transform/stream/StreamSource.lo \
- javax/xml/transform/Source.lo \
- javax/xml/transform/SourceLocator.lo \
- javax/xml/transform/ErrorListener.lo \
- javax/xml/transform/TransformerConfigurationException.lo \
- javax/xml/transform/Templates.lo javax/xml/transform/Result.lo \
- javax/xml/transform/URIResolver.lo \
- javax/xml/transform/dom/DOMSource.lo \
- javax/xml/transform/dom/DOMLocator.lo \
- javax/xml/transform/dom/DOMResult.lo \
- javax/xml/transform/Transformer.lo \
- javax/xml/transform/TransformerFactory.lo \
javax/security/cert/CertificateNotYetValidException.lo \
javax/security/cert/Certificate.lo \
javax/security/cert/X509Certificate.lo \
@@ -3984,7 +3550,9 @@ am__objects_15 = $(am__objects_9) gnu/classpath/ServiceFactory.lo \
gnu/classpath/ServiceProviderLoadingAction.lo gnu/gcj/Core.lo \
gnu/gcj/RawData.lo gnu/gcj/RawDataManaged.lo \
gnu/gcj/io/DefaultMimeTypes.lo gnu/gcj/io/MimeTypes.lo \
- gnu/gcj/io/SimpleSHSStream.lo gnu/gcj/runtime/FileDeleter.lo \
+ gnu/gcj/io/SimpleSHSStream.lo \
+ gnu/gcj/runtime/BootClassLoader.lo \
+ gnu/gcj/runtime/FileDeleter.lo \
gnu/gcj/runtime/FinalizerThread.lo \
gnu/gcj/runtime/JNIWeakRef.lo gnu/gcj/runtime/NameFinder.lo \
gnu/gcj/runtime/PersistentByteMap.lo \
@@ -4592,155 +4160,25 @@ am__objects_15 = $(am__objects_9) gnu/classpath/ServiceFactory.lo \
$(am__objects_11) $(am__objects_12) $(am__objects_13) \
$(am__objects_14)
am__objects_16 = $(am__objects_8) $(am__objects_15)
-am__objects_17 = gnu/xml/xpath/EqualityExpr.lo \
- gnu/xml/xpath/NumberFunction.lo \
- gnu/xml/xpath/StringLengthFunction.lo \
- gnu/xml/xpath/NameFunction.lo gnu/xml/xpath/SumFunction.lo \
- gnu/xml/xpath/Pattern.lo gnu/xml/xpath/StringFunction.lo \
- gnu/xml/xpath/NegativeExpr.lo gnu/xml/xpath/UnionExpr.lo \
- gnu/xml/xpath/SubstringFunction.lo gnu/xml/xpath/Expr.lo \
- gnu/xml/xpath/XPathFactoryImpl.lo \
- gnu/xml/xpath/NormalizeSpaceFunction.lo \
- gnu/xml/xpath/Constant.lo gnu/xml/xpath/Predicate.lo \
- gnu/xml/xpath/Path.lo gnu/xml/xpath/OrExpr.lo \
- gnu/xml/xpath/LangFunction.lo \
- gnu/xml/xpath/StartsWithFunction.lo \
- gnu/xml/xpath/SubstringAfterFunction.lo \
- gnu/xml/xpath/FloorFunction.lo gnu/xml/xpath/NotFunction.lo \
- gnu/xml/xpath/Root.lo gnu/xml/xpath/PositionFunction.lo \
- gnu/xml/xpath/VariableReference.lo \
- gnu/xml/xpath/DocumentOrderComparator.lo \
- gnu/xml/xpath/LocalNameFunction.lo \
- gnu/xml/xpath/NamespaceUriFunction.lo \
- gnu/xml/xpath/TranslateFunction.lo \
- gnu/xml/xpath/FalseFunction.lo gnu/xml/xpath/AndExpr.lo \
- gnu/xml/xpath/XPathParser.lo gnu/xml/xpath/NamespaceTest.lo \
- gnu/xml/xpath/ConcatFunction.lo gnu/xml/xpath/NameTest.lo \
- gnu/xml/xpath/CountFunction.lo gnu/xml/xpath/IdFunction.lo \
- gnu/xml/xpath/LastFunction.lo gnu/xml/xpath/XPathTokenizer.lo \
- gnu/xml/xpath/Steps.lo gnu/xml/xpath/TrueFunction.lo \
- gnu/xml/xpath/BooleanFunction.lo \
- gnu/xml/xpath/ParenthesizedExpr.lo gnu/xml/xpath/XPathImpl.lo \
- gnu/xml/xpath/Selector.lo gnu/xml/xpath/RoundFunction.lo \
- gnu/xml/xpath/SubstringBeforeFunction.lo \
- gnu/xml/xpath/Function.lo gnu/xml/xpath/CeilingFunction.lo \
- gnu/xml/xpath/RelationalExpr.lo gnu/xml/xpath/FunctionCall.lo \
- gnu/xml/xpath/NodeTypeTest.lo gnu/xml/xpath/ArithmeticExpr.lo \
- gnu/xml/xpath/Test.lo gnu/xml/xpath/ContainsFunction.lo \
- gnu/xml/pipeline/EventFilter.lo gnu/xml/pipeline/NSFilter.lo \
- gnu/xml/pipeline/XsltFilter.lo \
- gnu/xml/pipeline/ValidationConsumer.lo \
- gnu/xml/pipeline/PipelineFactory.lo \
- gnu/xml/pipeline/TextConsumer.lo \
- gnu/xml/pipeline/LinkFilter.lo gnu/xml/pipeline/TeeConsumer.lo \
- gnu/xml/pipeline/DomConsumer.lo \
- gnu/xml/pipeline/EventConsumer.lo \
- gnu/xml/pipeline/WellFormednessFilter.lo \
- gnu/xml/pipeline/XIncludeFilter.lo \
- gnu/xml/pipeline/CallFilter.lo gnu/xml/aelfred2/XmlParser.lo \
- gnu/xml/aelfred2/XmlReader.lo gnu/xml/aelfred2/JAXPFactory.lo \
- gnu/xml/aelfred2/ContentHandler2.lo \
- gnu/xml/aelfred2/SAXDriver.lo gnu/xml/util/XCat.lo \
- gnu/xml/util/DomParser.lo gnu/xml/util/XMLWriter.lo \
- gnu/xml/util/Resolver.lo gnu/xml/util/DoParse.lo \
- gnu/xml/util/XHTMLWriter.lo \
- gnu/xml/util/SAXNullTransformerFactory.lo \
- gnu/xml/dom/DomXPathNSResolver.lo \
- gnu/xml/dom/ls/FilteredSAXEventSink.lo \
- gnu/xml/dom/ls/DomLSException.lo \
- gnu/xml/dom/ls/DomLSSerializer.lo gnu/xml/dom/ls/DomLSInput.lo \
- gnu/xml/dom/ls/DomLSOutput.lo gnu/xml/dom/ls/SAXEventSink.lo \
- gnu/xml/dom/ls/DomLSParser.lo \
- gnu/xml/dom/ls/ReaderInputStream.lo \
- gnu/xml/dom/ls/WriterOutputStream.lo gnu/xml/dom/DomElement.lo \
- gnu/xml/dom/DomNsNode.lo gnu/xml/dom/DomAttr.lo \
- gnu/xml/dom/DTDAttributeTypeInfo.lo \
- gnu/xml/dom/DomDocumentBuilder.lo \
- gnu/xml/dom/DTDElementTypeInfo.lo gnu/xml/dom/DomDocument.lo \
- gnu/xml/dom/DomXPathExpression.lo \
- gnu/xml/dom/DomDocumentConfiguration.lo \
- gnu/xml/dom/DomDocumentFragment.lo \
- gnu/xml/dom/DomProcessingInstruction.lo \
- gnu/xml/dom/Consumer.lo gnu/xml/dom/DomComment.lo \
- gnu/xml/dom/DomCharacterData.lo gnu/xml/dom/DomExtern.lo \
- gnu/xml/dom/DomEntityReference.lo \
- gnu/xml/dom/DomNamedNodeMap.lo \
- gnu/xml/dom/ImplementationList.lo \
- gnu/xml/dom/ImplementationSource.lo gnu/xml/dom/DomImpl.lo \
- gnu/xml/dom/DomDoctype.lo gnu/xml/dom/DomNode.lo \
- gnu/xml/dom/DomXPathResult.lo \
- gnu/xml/dom/DomDocumentBuilderFactory.lo \
- gnu/xml/dom/DomText.lo gnu/xml/dom/DomNSResolverContext.lo \
- gnu/xml/dom/DomNodeIterator.lo gnu/xml/dom/DomNotation.lo \
- gnu/xml/dom/JAXPFactory.lo gnu/xml/dom/DomIterator.lo \
- gnu/xml/dom/DomEvent.lo gnu/xml/dom/DomEntity.lo \
- gnu/xml/dom/DomCDATASection.lo gnu/xml/dom/DomDOMException.lo \
- gnu/xml/transform/GenerateIdFunction.lo \
- gnu/xml/transform/FormatNumberFunction.lo \
- gnu/xml/transform/ValueOfNode.lo \
- gnu/xml/transform/ApplyImportsNode.lo \
- gnu/xml/transform/WithParam.lo \
- gnu/xml/transform/DocumentFunction.lo \
- gnu/xml/transform/SAXSerializer.lo \
- gnu/xml/transform/FunctionAvailableFunction.lo \
- gnu/xml/transform/ElementAvailableFunction.lo \
- gnu/xml/transform/IfNode.lo \
- gnu/xml/transform/ApplyTemplatesNode.lo \
- gnu/xml/transform/SortKey.lo gnu/xml/transform/Key.lo \
- gnu/xml/transform/ElementNode.lo \
- gnu/xml/transform/CurrentFunction.lo \
- gnu/xml/transform/XSLComparator.lo \
- gnu/xml/transform/CallTemplateNode.lo \
- gnu/xml/transform/TemplatesImpl.lo \
- gnu/xml/transform/ChooseNode.lo \
- gnu/xml/transform/NumberNode.lo \
- gnu/xml/transform/CopyOfNode.lo \
- gnu/xml/transform/ParameterNode.lo \
- gnu/xml/transform/TransformerFactoryImpl.lo \
- gnu/xml/transform/TextNode.lo gnu/xml/transform/CopyNode.lo \
- gnu/xml/transform/SystemPropertyFunction.lo \
- gnu/xml/transform/Stylesheet.lo \
- gnu/xml/transform/ProcessingInstructionNode.lo \
- gnu/xml/transform/UnparsedEntityUriFunction.lo \
- gnu/xml/transform/URIResolverEntityResolver.lo \
- gnu/xml/transform/ErrorListenerErrorHandler.lo \
- gnu/xml/transform/Bindings.lo \
- gnu/xml/transform/AttributeSet.lo \
- gnu/xml/transform/Template.lo gnu/xml/transform/MessageNode.lo \
- gnu/xml/transform/LiteralNode.lo \
- gnu/xml/transform/StreamSerializer.lo \
- gnu/xml/transform/XSLURIResolver.lo \
- gnu/xml/transform/AttributeNode.lo \
- gnu/xml/transform/CommentNode.lo \
- gnu/xml/transform/ForEachNode.lo \
- gnu/xml/transform/KeyFunction.lo \
- gnu/xml/transform/TransformerImpl.lo \
- gnu/xml/transform/WhenNode.lo \
- gnu/xml/transform/NodeNumberNode.lo \
- gnu/xml/transform/OtherwiseNode.lo \
- gnu/xml/transform/AbstractNumberNode.lo \
- gnu/xml/transform/TemplateNode.lo \
- gnu/xml/transform/TransformerOutputProperties.lo \
- gnu/xml/transform/DOMSourceLocator.lo
-am__objects_18 = java/lang/ConcreteProcess.lo \
+am__objects_17 = java/lang/ConcreteProcess.lo \
gnu/classpath/Configuration.lo
-@USING_BOEHMGC_TRUE@am__objects_19 = boehm.lo
-@USING_NOGC_TRUE@am__objects_20 = nogc.lo
-@SUPPLY_BACKTRACE_TRUE@am__objects_21 = sysdep/dwarf2-backtrace.lo
-@USING_POSIX_PLATFORM_TRUE@am__objects_22 = posix.lo
-@USING_WIN32_PLATFORM_TRUE@am__objects_23 = win32.lo
-@USING_ECOS_PLATFORM_TRUE@am__objects_24 = posix.lo
-@USING_DARWIN_CRT_TRUE@am__objects_25 = darwin.lo
-@USING_POSIX_THREADS_TRUE@am__objects_26 = posix-threads.lo
-@USING_WIN32_THREADS_TRUE@am__objects_27 = win32-threads.lo
-@USING_NO_THREADS_TRUE@am__objects_28 = no-threads.lo
+@USING_BOEHMGC_TRUE@am__objects_18 = boehm.lo
+@USING_NOGC_TRUE@am__objects_19 = nogc.lo
+@SUPPLY_BACKTRACE_TRUE@am__objects_20 = sysdep/dwarf2-backtrace.lo
+@USING_POSIX_PLATFORM_TRUE@am__objects_21 = posix.lo
+@USING_WIN32_PLATFORM_TRUE@am__objects_22 = win32.lo
+@USING_ECOS_PLATFORM_TRUE@am__objects_23 = posix.lo
+@USING_DARWIN_CRT_TRUE@am__objects_24 = darwin.lo
+@USING_POSIX_THREADS_TRUE@am__objects_25 = posix-threads.lo
+@USING_WIN32_THREADS_TRUE@am__objects_26 = win32-threads.lo
+@USING_NO_THREADS_TRUE@am__objects_27 = no-threads.lo
am_libgcj0_convenience_la_OBJECTS = prims.lo jni.lo exception.lo \
stacktrace.lo link.lo defineclass.lo interpret.lo verify.lo \
$(am__objects_6) $(am__objects_7) $(am__objects_16) \
$(am__objects_17) $(am__objects_18) $(am__objects_19) \
$(am__objects_20) $(am__objects_21) $(am__objects_22) \
$(am__objects_23) $(am__objects_24) $(am__objects_25) \
- $(am__objects_26) $(am__objects_27) $(am__objects_28)
+ $(am__objects_26) $(am__objects_27)
libgcj0_convenience_la_OBJECTS = $(am_libgcj0_convenience_la_OBJECTS)
am_libgij_la_OBJECTS = gij.lo
libgij_la_OBJECTS = $(am_libgij_la_OBJECTS)
@@ -5128,7 +4566,8 @@ AM_CXXFLAGS = \
-DLIBDIR="\"$(libdir)\"" \
-DBOOT_CLASS_PATH="\"$(jardir)/$(jar_DATA)\"" \
-DJAVA_EXT_DIRS="\"$(jardir)/ext\"" \
- -DLIBGCJ_DEFAULT_DATABASE="\"$(dbexecdir)/$(db_name)\""
+ -DLIBGCJ_DEFAULT_DATABASE="\"$(dbexecdir)/$(db_name)\"" \
+ -DTOOLEXECLIBDIR="\"$(toolexeclibdir)\""
AM_GCJFLAGS = \
@LIBGCJ_JAVAFLAGS@ \
@@ -5160,13 +4599,17 @@ libgij_la_LDFLAGS = -rpath $(toolexeclibdir) \
libgcj0_convenience_la_SOURCES = prims.cc jni.cc exception.cc stacktrace.cc \
link.cc defineclass.cc interpret.cc verify.cc \
$(nat_source_files) $(math_c_source_files) $(java_source_files) \
- $(gnu_xml_source_files) $(built_java_source_files) \
+ $(built_java_source_files) \
$(BOEHMGC_SRC) $(NOGC_SRC) \
$(BACKTRACE_SRC) \
$(POSIX_PLATFORM_SRC) $(WIN32_PLATFORM_SRC) $(ECOS_PLATFORM_SRC) \
$(DARWIN_CRT_SRC) \
$(POSIX_THREAD_SRC) $(WIN32_THREAD_SRC) $(NO_THREAD_SRC)
+libgcj0_convenience_la_LIBADD = \
+ gnu-xml.lo javax-imageio.lo \
+ javax-xml.lo gnu-java-beans.lo
+
noinst_LTLIBRARIES = libgcj0_convenience.la
libgcj_la_SOURCES =
nat_files = $(nat_source_files:.cc=.lo)
@@ -5179,8 +4622,6 @@ libgcj_la_LDFLAGS = -rpath $(toolexeclibdir) $(THREADLDFLAGS) $(THREADLIBS) \
-version-info `grep -v '^\#' $(srcdir)/libtool-version`
libgcj_la_LIBADD = \
- external/sax/libsax_convenience.la \
- external/w3c_dom/libw3c_convenience.la \
libgcj0_convenience.la \
$(LIBFFI) $(ZLIBS) $(GCLIBS) $(propertyo_files)
@@ -5335,7 +4776,10 @@ all_java_source_files = \
$(built_java_source_files) \
$(gtk_awt_peer_sources) \
$(xlib_java_source_files) \
- $(gnu_xml_source_files)
+ $(gnu_xml_source_files) \
+ $(javax_imageio_source_files) \
+ $(javax_xml_source_files) \
+ $(gnu_java_beans_source_files)
all_java_class_files = $(all_java_source_files:.java=.class)
all_property_files = $(property_files) \
@@ -5437,40 +4881,7 @@ gnu/gcj/convert/Output_iconv.java \
gnu/gcj/convert/UnicodeToBytes.java
special_java_source_files = java/lang/Class.java java/lang/Object.java
-awt_java_source_files = \
-gnu/awt/LightweightRedirector.java \
-gnu/awt/j2d/AbstractGraphicsState.java \
-gnu/awt/j2d/DirectRasterGraphics.java \
-gnu/awt/j2d/Graphics2DImpl.java \
-gnu/awt/j2d/IntegerGraphicsState.java \
-gnu/awt/j2d/MappedRaster.java \
-gnu/java/awt/BitMaskExtent.java \
-gnu/java/awt/Buffers.java \
-gnu/java/awt/BitwiseXORComposite.java \
-gnu/java/awt/ComponentDataBlitOp.java \
-gnu/java/awt/ClasspathToolkit.java \
-gnu/java/awt/EmbeddedWindow.java \
-gnu/java/awt/EmbeddedWindowSupport.java \
-gnu/java/awt/EventModifier.java \
-gnu/java/awt/color/CieXyzConverter.java \
-gnu/java/awt/color/ClutProfileConverter.java \
-gnu/java/awt/color/ColorLookUpTable.java \
-gnu/java/awt/color/ColorSpaceConverter.java \
-gnu/java/awt/color/GrayProfileConverter.java \
-gnu/java/awt/color/GrayScaleConverter.java \
-gnu/java/awt/color/LinearRGBConverter.java \
-gnu/java/awt/color/ProfileHeader.java \
-gnu/java/awt/color/PyccConverter.java \
-gnu/java/awt/color/RgbProfileConverter.java \
-gnu/java/awt/color/SrgbConverter.java \
-gnu/java/awt/color/TagEntry.java \
-gnu/java/awt/color/ToneReproductionCurve.java \
-gnu/java/awt/image/ImageDecoder.java \
-gnu/java/awt/image/XBMDecoder.java \
-gnu/java/awt/peer/EmbeddedWindowPeer.java \
-gnu/java/awt/peer/GLightweightPeer.java \
-gnu/java/awt/peer/ClasspathFontPeer.java \
-gnu/java/awt/peer/ClasspathTextLayoutPeer.java \
+gnu_java_beans_source_files = \
gnu/java/beans/decoder/AbstractContext.java \
gnu/java/beans/decoder/AbstractCreatableObjectContext.java \
gnu/java/beans/decoder/AbstractElementHandler.java \
@@ -5522,7 +4933,42 @@ gnu/java/beans/BeanInfoEmbryo.java \
gnu/java/beans/DummyAppletContext.java \
gnu/java/beans/DummyAppletStub.java \
gnu/java/beans/ExplicitBeanInfo.java \
-gnu/java/beans/IntrospectionIncubator.java \
+gnu/java/beans/IntrospectionIncubator.java
+
+awt_java_source_files = \
+gnu/awt/LightweightRedirector.java \
+gnu/awt/j2d/AbstractGraphicsState.java \
+gnu/awt/j2d/DirectRasterGraphics.java \
+gnu/awt/j2d/Graphics2DImpl.java \
+gnu/awt/j2d/IntegerGraphicsState.java \
+gnu/awt/j2d/MappedRaster.java \
+gnu/java/awt/BitMaskExtent.java \
+gnu/java/awt/Buffers.java \
+gnu/java/awt/BitwiseXORComposite.java \
+gnu/java/awt/ComponentDataBlitOp.java \
+gnu/java/awt/ClasspathToolkit.java \
+gnu/java/awt/EmbeddedWindow.java \
+gnu/java/awt/EmbeddedWindowSupport.java \
+gnu/java/awt/EventModifier.java \
+gnu/java/awt/color/CieXyzConverter.java \
+gnu/java/awt/color/ClutProfileConverter.java \
+gnu/java/awt/color/ColorLookUpTable.java \
+gnu/java/awt/color/ColorSpaceConverter.java \
+gnu/java/awt/color/GrayProfileConverter.java \
+gnu/java/awt/color/GrayScaleConverter.java \
+gnu/java/awt/color/LinearRGBConverter.java \
+gnu/java/awt/color/ProfileHeader.java \
+gnu/java/awt/color/PyccConverter.java \
+gnu/java/awt/color/RgbProfileConverter.java \
+gnu/java/awt/color/SrgbConverter.java \
+gnu/java/awt/color/TagEntry.java \
+gnu/java/awt/color/ToneReproductionCurve.java \
+gnu/java/awt/image/ImageDecoder.java \
+gnu/java/awt/image/XBMDecoder.java \
+gnu/java/awt/peer/EmbeddedWindowPeer.java \
+gnu/java/awt/peer/GLightweightPeer.java \
+gnu/java/awt/peer/ClasspathFontPeer.java \
+gnu/java/awt/peer/ClasspathTextLayoutPeer.java \
java/applet/Applet.java \
java/applet/AppletStub.java \
java/applet/AppletContext.java \
@@ -6365,7 +5811,7 @@ gnu/java/rmi/server/UnicastRemoteStub.java \
gnu/java/rmi/server/UnicastServer.java \
gnu/java/rmi/server/UnicastServerRef.java
-javax_source_files = \
+javax_imageio_source_files = \
javax/imageio/ImageWriteParam.java \
javax/imageio/ImageReader.java \
javax/imageio/ImageWriter.java \
@@ -6411,7 +5857,63 @@ javax/imageio/event/IIOWriteProgressListener.java \
javax/imageio/ImageTranscoder.java \
javax/imageio/ImageTypeSpecifier.java \
javax/imageio/ImageIO.java \
-javax/imageio/IIOImage.java \
+javax/imageio/IIOImage.java
+
+javax_xml_source_files = \
+javax/xml/xpath/XPathConstants.java \
+javax/xml/xpath/XPathFunction.java \
+javax/xml/xpath/XPathVariableResolver.java \
+javax/xml/xpath/XPathExpressionException.java \
+javax/xml/xpath/XPathFunctionResolver.java \
+javax/xml/xpath/XPath.java \
+javax/xml/xpath/XPathFactoryConfigurationException.java \
+javax/xml/xpath/XPathFactory.java \
+javax/xml/xpath/XPathException.java \
+javax/xml/xpath/XPathExpression.java \
+javax/xml/xpath/XPathFunctionException.java \
+javax/xml/validation/ValidatorHandler.java \
+javax/xml/validation/Validator.java \
+javax/xml/validation/TypeInfoProvider.java \
+javax/xml/validation/SchemaFactory.java \
+javax/xml/validation/Schema.java \
+javax/xml/parsers/SAXParserFactory.java \
+javax/xml/parsers/FactoryConfigurationError.java \
+javax/xml/parsers/SAXParser.java \
+javax/xml/parsers/DocumentBuilderFactory.java \
+javax/xml/parsers/ParserConfigurationException.java \
+javax/xml/parsers/DocumentBuilder.java \
+javax/xml/datatype/DatatypeFactory.java \
+javax/xml/datatype/XMLGregorianCalendar.java \
+javax/xml/datatype/Duration.java \
+javax/xml/datatype/DatatypeConfigurationException.java \
+javax/xml/datatype/DatatypeConstants.java \
+javax/xml/XMLConstants.java \
+javax/xml/namespace/NamespaceContext.java \
+javax/xml/namespace/QName.java \
+javax/xml/transform/TransformerException.java \
+javax/xml/transform/TransformerFactoryConfigurationError.java \
+javax/xml/transform/sax/SAXResult.java \
+javax/xml/transform/sax/TransformerHandler.java \
+javax/xml/transform/sax/SAXTransformerFactory.java \
+javax/xml/transform/sax/SAXSource.java \
+javax/xml/transform/sax/TemplatesHandler.java \
+javax/xml/transform/OutputKeys.java \
+javax/xml/transform/stream/StreamResult.java \
+javax/xml/transform/stream/StreamSource.java \
+javax/xml/transform/Source.java \
+javax/xml/transform/SourceLocator.java \
+javax/xml/transform/ErrorListener.java \
+javax/xml/transform/TransformerConfigurationException.java \
+javax/xml/transform/Templates.java \
+javax/xml/transform/Result.java \
+javax/xml/transform/URIResolver.java \
+javax/xml/transform/dom/DOMSource.java \
+javax/xml/transform/dom/DOMLocator.java \
+javax/xml/transform/dom/DOMResult.java \
+javax/xml/transform/Transformer.java \
+javax/xml/transform/TransformerFactory.java
+
+javax_source_files = \
javax/net/VanillaSocketFactory.java \
javax/net/ssl/TrustManagerFactorySpi.java \
javax/net/ssl/SSLKeyException.java \
@@ -6650,58 +6152,6 @@ javax/naming/NameClassPair.java \
javax/naming/RefAddr.java \
javax/naming/CompositeName.java \
javax/naming/Name.java \
-javax/xml/xpath/XPathConstants.java \
-javax/xml/xpath/XPathFunction.java \
-javax/xml/xpath/XPathVariableResolver.java \
-javax/xml/xpath/XPathExpressionException.java \
-javax/xml/xpath/XPathFunctionResolver.java \
-javax/xml/xpath/XPath.java \
-javax/xml/xpath/XPathFactoryConfigurationException.java \
-javax/xml/xpath/XPathFactory.java \
-javax/xml/xpath/XPathException.java \
-javax/xml/xpath/XPathExpression.java \
-javax/xml/xpath/XPathFunctionException.java \
-javax/xml/validation/ValidatorHandler.java \
-javax/xml/validation/Validator.java \
-javax/xml/validation/TypeInfoProvider.java \
-javax/xml/validation/SchemaFactory.java \
-javax/xml/validation/Schema.java \
-javax/xml/parsers/SAXParserFactory.java \
-javax/xml/parsers/FactoryConfigurationError.java \
-javax/xml/parsers/SAXParser.java \
-javax/xml/parsers/DocumentBuilderFactory.java \
-javax/xml/parsers/ParserConfigurationException.java \
-javax/xml/parsers/DocumentBuilder.java \
-javax/xml/datatype/DatatypeFactory.java \
-javax/xml/datatype/XMLGregorianCalendar.java \
-javax/xml/datatype/Duration.java \
-javax/xml/datatype/DatatypeConfigurationException.java \
-javax/xml/datatype/DatatypeConstants.java \
-javax/xml/XMLConstants.java \
-javax/xml/namespace/NamespaceContext.java \
-javax/xml/namespace/QName.java \
-javax/xml/transform/TransformerException.java \
-javax/xml/transform/TransformerFactoryConfigurationError.java \
-javax/xml/transform/sax/SAXResult.java \
-javax/xml/transform/sax/TransformerHandler.java \
-javax/xml/transform/sax/SAXTransformerFactory.java \
-javax/xml/transform/sax/SAXSource.java \
-javax/xml/transform/sax/TemplatesHandler.java \
-javax/xml/transform/OutputKeys.java \
-javax/xml/transform/stream/StreamResult.java \
-javax/xml/transform/stream/StreamSource.java \
-javax/xml/transform/Source.java \
-javax/xml/transform/SourceLocator.java \
-javax/xml/transform/ErrorListener.java \
-javax/xml/transform/TransformerConfigurationException.java \
-javax/xml/transform/Templates.java \
-javax/xml/transform/Result.java \
-javax/xml/transform/URIResolver.java \
-javax/xml/transform/dom/DOMSource.java \
-javax/xml/transform/dom/DOMLocator.java \
-javax/xml/transform/dom/DOMResult.java \
-javax/xml/transform/Transformer.java \
-javax/xml/transform/TransformerFactory.java \
javax/security/cert/CertificateNotYetValidException.java \
javax/security/cert/Certificate.java \
javax/security/cert/X509Certificate.java \
@@ -7291,6 +6741,7 @@ gnu/gcj/RawDataManaged.java \
gnu/gcj/io/DefaultMimeTypes.java \
gnu/gcj/io/MimeTypes.java \
gnu/gcj/io/SimpleSHSStream.java \
+gnu/gcj/runtime/BootClassLoader.java \
gnu/gcj/runtime/FileDeleter.java \
gnu/gcj/runtime/FinalizerThread.java \
gnu/gcj/runtime/JNIWeakRef.java \
@@ -9580,6 +9031,8 @@ gnu/gcj/io/MimeTypes.lo: gnu/gcj/io/$(am__dirstamp) \
gnu/gcj/io/$(DEPDIR)/$(am__dirstamp)
gnu/gcj/io/SimpleSHSStream.lo: gnu/gcj/io/$(am__dirstamp) \
gnu/gcj/io/$(DEPDIR)/$(am__dirstamp)
+gnu/gcj/runtime/BootClassLoader.lo: gnu/gcj/runtime/$(am__dirstamp) \
+ gnu/gcj/runtime/$(DEPDIR)/$(am__dirstamp)
gnu/gcj/runtime/FileDeleter.lo: gnu/gcj/runtime/$(am__dirstamp) \
gnu/gcj/runtime/$(DEPDIR)/$(am__dirstamp)
gnu/gcj/runtime/FinalizerThread.lo: gnu/gcj/runtime/$(am__dirstamp) \
@@ -12045,176 +11498,6 @@ gnu/java/awt/peer/ClasspathFontPeer.lo: \
gnu/java/awt/peer/ClasspathTextLayoutPeer.lo: \
gnu/java/awt/peer/$(am__dirstamp) \
gnu/java/awt/peer/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/$(am__dirstamp):
- @$(mkdir_p) gnu/java/beans/decoder
- @: > gnu/java/beans/decoder/$(am__dirstamp)
-gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) gnu/java/beans/decoder/$(DEPDIR)
- @: > gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/AbstractContext.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/AbstractCreatableObjectContext.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/AbstractElementHandler.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/AbstractObjectContext.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/ArrayContext.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/ArrayHandler.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/AssemblyException.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/BooleanHandler.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/ByteHandler.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/CharHandler.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/ClassHandler.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/ConstructorContext.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/Context.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/DecoderContext.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/DefaultExceptionListener.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/DoubleHandler.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/DummyContext.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/DummyHandler.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/ElementHandler.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/FloatHandler.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/GrowableArrayContext.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/IndexContext.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/IntHandler.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/JavaHandler.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/LongHandler.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/MethodContext.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/MethodFinder.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/NullHandler.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/ObjectContext.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/ObjectHandler.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/PersistenceParser.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/PropertyContext.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/ShortHandler.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/SimpleHandler.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/StaticMethodContext.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/StringHandler.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/decoder/VoidHandler.lo: \
- gnu/java/beans/decoder/$(am__dirstamp) \
- gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/editors/$(am__dirstamp):
- @$(mkdir_p) gnu/java/beans/editors
- @: > gnu/java/beans/editors/$(am__dirstamp)
-gnu/java/beans/editors/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) gnu/java/beans/editors/$(DEPDIR)
- @: > gnu/java/beans/editors/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/editors/ColorEditor.lo: \
- gnu/java/beans/editors/$(am__dirstamp) \
- gnu/java/beans/editors/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/editors/FontEditor.lo: \
- gnu/java/beans/editors/$(am__dirstamp) \
- gnu/java/beans/editors/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/editors/NativeBooleanEditor.lo: \
- gnu/java/beans/editors/$(am__dirstamp) \
- gnu/java/beans/editors/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/editors/NativeByteEditor.lo: \
- gnu/java/beans/editors/$(am__dirstamp) \
- gnu/java/beans/editors/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/editors/NativeDoubleEditor.lo: \
- gnu/java/beans/editors/$(am__dirstamp) \
- gnu/java/beans/editors/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/editors/NativeFloatEditor.lo: \
- gnu/java/beans/editors/$(am__dirstamp) \
- gnu/java/beans/editors/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/editors/NativeIntEditor.lo: \
- gnu/java/beans/editors/$(am__dirstamp) \
- gnu/java/beans/editors/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/editors/NativeLongEditor.lo: \
- gnu/java/beans/editors/$(am__dirstamp) \
- gnu/java/beans/editors/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/editors/NativeShortEditor.lo: \
- gnu/java/beans/editors/$(am__dirstamp) \
- gnu/java/beans/editors/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/editors/StringEditor.lo: \
- gnu/java/beans/editors/$(am__dirstamp) \
- gnu/java/beans/editors/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/$(am__dirstamp):
- @$(mkdir_p) gnu/java/beans
- @: > gnu/java/beans/$(am__dirstamp)
-gnu/java/beans/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) gnu/java/beans/$(DEPDIR)
- @: > gnu/java/beans/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/BeanInfoEmbryo.lo: gnu/java/beans/$(am__dirstamp) \
- gnu/java/beans/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/DummyAppletContext.lo: gnu/java/beans/$(am__dirstamp) \
- gnu/java/beans/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/DummyAppletStub.lo: gnu/java/beans/$(am__dirstamp) \
- gnu/java/beans/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/ExplicitBeanInfo.lo: gnu/java/beans/$(am__dirstamp) \
- gnu/java/beans/$(DEPDIR)/$(am__dirstamp)
-gnu/java/beans/IntrospectionIncubator.lo: \
- gnu/java/beans/$(am__dirstamp) \
- gnu/java/beans/$(DEPDIR)/$(am__dirstamp)
java/applet/$(am__dirstamp):
@$(mkdir_p) java/applet
@: > java/applet/$(am__dirstamp)
@@ -14141,162 +13424,6 @@ gnu/gcj/convert/Output_iconv.lo: gnu/gcj/convert/$(am__dirstamp) \
gnu/gcj/convert/$(DEPDIR)/$(am__dirstamp)
gnu/gcj/convert/UnicodeToBytes.lo: gnu/gcj/convert/$(am__dirstamp) \
gnu/gcj/convert/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/$(am__dirstamp):
- @$(mkdir_p) javax/imageio
- @: > javax/imageio/$(am__dirstamp)
-javax/imageio/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) javax/imageio/$(DEPDIR)
- @: > javax/imageio/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/ImageWriteParam.lo: javax/imageio/$(am__dirstamp) \
- javax/imageio/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/ImageReader.lo: javax/imageio/$(am__dirstamp) \
- javax/imageio/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/ImageWriter.lo: javax/imageio/$(am__dirstamp) \
- javax/imageio/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/IIOException.lo: javax/imageio/$(am__dirstamp) \
- javax/imageio/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/IIOParamController.lo: javax/imageio/$(am__dirstamp) \
- javax/imageio/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/ImageReadParam.lo: javax/imageio/$(am__dirstamp) \
- javax/imageio/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/IIOParam.lo: javax/imageio/$(am__dirstamp) \
- javax/imageio/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/spi/$(am__dirstamp):
- @$(mkdir_p) javax/imageio/spi
- @: > javax/imageio/spi/$(am__dirstamp)
-javax/imageio/spi/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) javax/imageio/spi/$(DEPDIR)
- @: > javax/imageio/spi/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/spi/IIORegistry.lo: javax/imageio/spi/$(am__dirstamp) \
- javax/imageio/spi/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/spi/ImageWriterSpi.lo: \
- javax/imageio/spi/$(am__dirstamp) \
- javax/imageio/spi/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/spi/ImageOutputStreamSpi.lo: \
- javax/imageio/spi/$(am__dirstamp) \
- javax/imageio/spi/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/spi/ServiceRegistry.lo: \
- javax/imageio/spi/$(am__dirstamp) \
- javax/imageio/spi/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/spi/ImageTranscoderSpi.lo: \
- javax/imageio/spi/$(am__dirstamp) \
- javax/imageio/spi/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/spi/ImageReaderSpi.lo: \
- javax/imageio/spi/$(am__dirstamp) \
- javax/imageio/spi/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/spi/IIOServiceProvider.lo: \
- javax/imageio/spi/$(am__dirstamp) \
- javax/imageio/spi/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/spi/ImageReaderWriterSpi.lo: \
- javax/imageio/spi/$(am__dirstamp) \
- javax/imageio/spi/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/spi/ImageInputStreamSpi.lo: \
- javax/imageio/spi/$(am__dirstamp) \
- javax/imageio/spi/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/spi/RegisterableService.lo: \
- javax/imageio/spi/$(am__dirstamp) \
- javax/imageio/spi/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/metadata/$(am__dirstamp):
- @$(mkdir_p) javax/imageio/metadata
- @: > javax/imageio/metadata/$(am__dirstamp)
-javax/imageio/metadata/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) javax/imageio/metadata/$(DEPDIR)
- @: > javax/imageio/metadata/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/metadata/IIOAttr.lo: \
- javax/imageio/metadata/$(am__dirstamp) \
- javax/imageio/metadata/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/metadata/IIONamedNodeMap.lo: \
- javax/imageio/metadata/$(am__dirstamp) \
- javax/imageio/metadata/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/metadata/IIONodeList.lo: \
- javax/imageio/metadata/$(am__dirstamp) \
- javax/imageio/metadata/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/metadata/IIOMetadataFormatImpl.lo: \
- javax/imageio/metadata/$(am__dirstamp) \
- javax/imageio/metadata/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/metadata/IIOInvalidTreeException.lo: \
- javax/imageio/metadata/$(am__dirstamp) \
- javax/imageio/metadata/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/metadata/IIOMetadataFormat.lo: \
- javax/imageio/metadata/$(am__dirstamp) \
- javax/imageio/metadata/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/metadata/IIOMetadataController.lo: \
- javax/imageio/metadata/$(am__dirstamp) \
- javax/imageio/metadata/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/metadata/IIOMetadataNode.lo: \
- javax/imageio/metadata/$(am__dirstamp) \
- javax/imageio/metadata/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/metadata/IIOMetadata.lo: \
- javax/imageio/metadata/$(am__dirstamp) \
- javax/imageio/metadata/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/stream/$(am__dirstamp):
- @$(mkdir_p) javax/imageio/stream
- @: > javax/imageio/stream/$(am__dirstamp)
-javax/imageio/stream/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) javax/imageio/stream/$(DEPDIR)
- @: > javax/imageio/stream/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/stream/FileImageOutputStream.lo: \
- javax/imageio/stream/$(am__dirstamp) \
- javax/imageio/stream/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/stream/ImageInputStream.lo: \
- javax/imageio/stream/$(am__dirstamp) \
- javax/imageio/stream/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/stream/IIOByteBuffer.lo: \
- javax/imageio/stream/$(am__dirstamp) \
- javax/imageio/stream/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/stream/FileCacheImageInputStream.lo: \
- javax/imageio/stream/$(am__dirstamp) \
- javax/imageio/stream/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/stream/ImageInputStreamImpl.lo: \
- javax/imageio/stream/$(am__dirstamp) \
- javax/imageio/stream/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/stream/ImageOutputStreamImpl.lo: \
- javax/imageio/stream/$(am__dirstamp) \
- javax/imageio/stream/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/stream/MemoryCacheImageInputStream.lo: \
- javax/imageio/stream/$(am__dirstamp) \
- javax/imageio/stream/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/stream/FileCacheImageOutputStream.lo: \
- javax/imageio/stream/$(am__dirstamp) \
- javax/imageio/stream/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/stream/ImageOutputStream.lo: \
- javax/imageio/stream/$(am__dirstamp) \
- javax/imageio/stream/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/stream/MemoryCacheImageOutputStream.lo: \
- javax/imageio/stream/$(am__dirstamp) \
- javax/imageio/stream/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/stream/FileImageInputStream.lo: \
- javax/imageio/stream/$(am__dirstamp) \
- javax/imageio/stream/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/event/$(am__dirstamp):
- @$(mkdir_p) javax/imageio/event
- @: > javax/imageio/event/$(am__dirstamp)
-javax/imageio/event/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) javax/imageio/event/$(DEPDIR)
- @: > javax/imageio/event/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/event/IIOReadProgressListener.lo: \
- javax/imageio/event/$(am__dirstamp) \
- javax/imageio/event/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/event/IIOWriteWarningListener.lo: \
- javax/imageio/event/$(am__dirstamp) \
- javax/imageio/event/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/event/IIOReadWarningListener.lo: \
- javax/imageio/event/$(am__dirstamp) \
- javax/imageio/event/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/event/IIOReadUpdateListener.lo: \
- javax/imageio/event/$(am__dirstamp) \
- javax/imageio/event/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/event/IIOWriteProgressListener.lo: \
- javax/imageio/event/$(am__dirstamp) \
- javax/imageio/event/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/ImageTranscoder.lo: javax/imageio/$(am__dirstamp) \
- javax/imageio/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/ImageTypeSpecifier.lo: javax/imageio/$(am__dirstamp) \
- javax/imageio/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/ImageIO.lo: javax/imageio/$(am__dirstamp) \
- javax/imageio/$(DEPDIR)/$(am__dirstamp)
-javax/imageio/IIOImage.lo: javax/imageio/$(am__dirstamp) \
- javax/imageio/$(DEPDIR)/$(am__dirstamp)
javax/net/$(am__dirstamp):
@$(mkdir_p) javax/net
@: > javax/net/$(am__dirstamp)
@@ -14994,208 +14121,6 @@ javax/naming/CompositeName.lo: javax/naming/$(am__dirstamp) \
javax/naming/$(DEPDIR)/$(am__dirstamp)
javax/naming/Name.lo: javax/naming/$(am__dirstamp) \
javax/naming/$(DEPDIR)/$(am__dirstamp)
-javax/xml/xpath/$(am__dirstamp):
- @$(mkdir_p) javax/xml/xpath
- @: > javax/xml/xpath/$(am__dirstamp)
-javax/xml/xpath/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) javax/xml/xpath/$(DEPDIR)
- @: > javax/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-javax/xml/xpath/XPathConstants.lo: javax/xml/xpath/$(am__dirstamp) \
- javax/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-javax/xml/xpath/XPathFunction.lo: javax/xml/xpath/$(am__dirstamp) \
- javax/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-javax/xml/xpath/XPathVariableResolver.lo: \
- javax/xml/xpath/$(am__dirstamp) \
- javax/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-javax/xml/xpath/XPathExpressionException.lo: \
- javax/xml/xpath/$(am__dirstamp) \
- javax/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-javax/xml/xpath/XPathFunctionResolver.lo: \
- javax/xml/xpath/$(am__dirstamp) \
- javax/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-javax/xml/xpath/XPath.lo: javax/xml/xpath/$(am__dirstamp) \
- javax/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-javax/xml/xpath/XPathFactoryConfigurationException.lo: \
- javax/xml/xpath/$(am__dirstamp) \
- javax/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-javax/xml/xpath/XPathFactory.lo: javax/xml/xpath/$(am__dirstamp) \
- javax/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-javax/xml/xpath/XPathException.lo: javax/xml/xpath/$(am__dirstamp) \
- javax/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-javax/xml/xpath/XPathExpression.lo: javax/xml/xpath/$(am__dirstamp) \
- javax/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-javax/xml/xpath/XPathFunctionException.lo: \
- javax/xml/xpath/$(am__dirstamp) \
- javax/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-javax/xml/validation/$(am__dirstamp):
- @$(mkdir_p) javax/xml/validation
- @: > javax/xml/validation/$(am__dirstamp)
-javax/xml/validation/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) javax/xml/validation/$(DEPDIR)
- @: > javax/xml/validation/$(DEPDIR)/$(am__dirstamp)
-javax/xml/validation/ValidatorHandler.lo: \
- javax/xml/validation/$(am__dirstamp) \
- javax/xml/validation/$(DEPDIR)/$(am__dirstamp)
-javax/xml/validation/Validator.lo: \
- javax/xml/validation/$(am__dirstamp) \
- javax/xml/validation/$(DEPDIR)/$(am__dirstamp)
-javax/xml/validation/TypeInfoProvider.lo: \
- javax/xml/validation/$(am__dirstamp) \
- javax/xml/validation/$(DEPDIR)/$(am__dirstamp)
-javax/xml/validation/SchemaFactory.lo: \
- javax/xml/validation/$(am__dirstamp) \
- javax/xml/validation/$(DEPDIR)/$(am__dirstamp)
-javax/xml/validation/Schema.lo: javax/xml/validation/$(am__dirstamp) \
- javax/xml/validation/$(DEPDIR)/$(am__dirstamp)
-javax/xml/parsers/$(am__dirstamp):
- @$(mkdir_p) javax/xml/parsers
- @: > javax/xml/parsers/$(am__dirstamp)
-javax/xml/parsers/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) javax/xml/parsers/$(DEPDIR)
- @: > javax/xml/parsers/$(DEPDIR)/$(am__dirstamp)
-javax/xml/parsers/SAXParserFactory.lo: \
- javax/xml/parsers/$(am__dirstamp) \
- javax/xml/parsers/$(DEPDIR)/$(am__dirstamp)
-javax/xml/parsers/FactoryConfigurationError.lo: \
- javax/xml/parsers/$(am__dirstamp) \
- javax/xml/parsers/$(DEPDIR)/$(am__dirstamp)
-javax/xml/parsers/SAXParser.lo: javax/xml/parsers/$(am__dirstamp) \
- javax/xml/parsers/$(DEPDIR)/$(am__dirstamp)
-javax/xml/parsers/DocumentBuilderFactory.lo: \
- javax/xml/parsers/$(am__dirstamp) \
- javax/xml/parsers/$(DEPDIR)/$(am__dirstamp)
-javax/xml/parsers/ParserConfigurationException.lo: \
- javax/xml/parsers/$(am__dirstamp) \
- javax/xml/parsers/$(DEPDIR)/$(am__dirstamp)
-javax/xml/parsers/DocumentBuilder.lo: \
- javax/xml/parsers/$(am__dirstamp) \
- javax/xml/parsers/$(DEPDIR)/$(am__dirstamp)
-javax/xml/datatype/$(am__dirstamp):
- @$(mkdir_p) javax/xml/datatype
- @: > javax/xml/datatype/$(am__dirstamp)
-javax/xml/datatype/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) javax/xml/datatype/$(DEPDIR)
- @: > javax/xml/datatype/$(DEPDIR)/$(am__dirstamp)
-javax/xml/datatype/DatatypeFactory.lo: \
- javax/xml/datatype/$(am__dirstamp) \
- javax/xml/datatype/$(DEPDIR)/$(am__dirstamp)
-javax/xml/datatype/XMLGregorianCalendar.lo: \
- javax/xml/datatype/$(am__dirstamp) \
- javax/xml/datatype/$(DEPDIR)/$(am__dirstamp)
-javax/xml/datatype/Duration.lo: javax/xml/datatype/$(am__dirstamp) \
- javax/xml/datatype/$(DEPDIR)/$(am__dirstamp)
-javax/xml/datatype/DatatypeConfigurationException.lo: \
- javax/xml/datatype/$(am__dirstamp) \
- javax/xml/datatype/$(DEPDIR)/$(am__dirstamp)
-javax/xml/datatype/DatatypeConstants.lo: \
- javax/xml/datatype/$(am__dirstamp) \
- javax/xml/datatype/$(DEPDIR)/$(am__dirstamp)
-javax/xml/$(am__dirstamp):
- @$(mkdir_p) javax/xml
- @: > javax/xml/$(am__dirstamp)
-javax/xml/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) javax/xml/$(DEPDIR)
- @: > javax/xml/$(DEPDIR)/$(am__dirstamp)
-javax/xml/XMLConstants.lo: javax/xml/$(am__dirstamp) \
- javax/xml/$(DEPDIR)/$(am__dirstamp)
-javax/xml/namespace/$(am__dirstamp):
- @$(mkdir_p) javax/xml/namespace
- @: > javax/xml/namespace/$(am__dirstamp)
-javax/xml/namespace/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) javax/xml/namespace/$(DEPDIR)
- @: > javax/xml/namespace/$(DEPDIR)/$(am__dirstamp)
-javax/xml/namespace/NamespaceContext.lo: \
- javax/xml/namespace/$(am__dirstamp) \
- javax/xml/namespace/$(DEPDIR)/$(am__dirstamp)
-javax/xml/namespace/QName.lo: javax/xml/namespace/$(am__dirstamp) \
- javax/xml/namespace/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/$(am__dirstamp):
- @$(mkdir_p) javax/xml/transform
- @: > javax/xml/transform/$(am__dirstamp)
-javax/xml/transform/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) javax/xml/transform/$(DEPDIR)
- @: > javax/xml/transform/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/TransformerException.lo: \
- javax/xml/transform/$(am__dirstamp) \
- javax/xml/transform/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/TransformerFactoryConfigurationError.lo: \
- javax/xml/transform/$(am__dirstamp) \
- javax/xml/transform/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/sax/$(am__dirstamp):
- @$(mkdir_p) javax/xml/transform/sax
- @: > javax/xml/transform/sax/$(am__dirstamp)
-javax/xml/transform/sax/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) javax/xml/transform/sax/$(DEPDIR)
- @: > javax/xml/transform/sax/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/sax/SAXResult.lo: \
- javax/xml/transform/sax/$(am__dirstamp) \
- javax/xml/transform/sax/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/sax/TransformerHandler.lo: \
- javax/xml/transform/sax/$(am__dirstamp) \
- javax/xml/transform/sax/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/sax/SAXTransformerFactory.lo: \
- javax/xml/transform/sax/$(am__dirstamp) \
- javax/xml/transform/sax/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/sax/SAXSource.lo: \
- javax/xml/transform/sax/$(am__dirstamp) \
- javax/xml/transform/sax/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/sax/TemplatesHandler.lo: \
- javax/xml/transform/sax/$(am__dirstamp) \
- javax/xml/transform/sax/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/OutputKeys.lo: \
- javax/xml/transform/$(am__dirstamp) \
- javax/xml/transform/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/stream/$(am__dirstamp):
- @$(mkdir_p) javax/xml/transform/stream
- @: > javax/xml/transform/stream/$(am__dirstamp)
-javax/xml/transform/stream/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) javax/xml/transform/stream/$(DEPDIR)
- @: > javax/xml/transform/stream/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/stream/StreamResult.lo: \
- javax/xml/transform/stream/$(am__dirstamp) \
- javax/xml/transform/stream/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/stream/StreamSource.lo: \
- javax/xml/transform/stream/$(am__dirstamp) \
- javax/xml/transform/stream/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/Source.lo: javax/xml/transform/$(am__dirstamp) \
- javax/xml/transform/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/SourceLocator.lo: \
- javax/xml/transform/$(am__dirstamp) \
- javax/xml/transform/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/ErrorListener.lo: \
- javax/xml/transform/$(am__dirstamp) \
- javax/xml/transform/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/TransformerConfigurationException.lo: \
- javax/xml/transform/$(am__dirstamp) \
- javax/xml/transform/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/Templates.lo: javax/xml/transform/$(am__dirstamp) \
- javax/xml/transform/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/Result.lo: javax/xml/transform/$(am__dirstamp) \
- javax/xml/transform/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/URIResolver.lo: \
- javax/xml/transform/$(am__dirstamp) \
- javax/xml/transform/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/dom/$(am__dirstamp):
- @$(mkdir_p) javax/xml/transform/dom
- @: > javax/xml/transform/dom/$(am__dirstamp)
-javax/xml/transform/dom/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) javax/xml/transform/dom/$(DEPDIR)
- @: > javax/xml/transform/dom/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/dom/DOMSource.lo: \
- javax/xml/transform/dom/$(am__dirstamp) \
- javax/xml/transform/dom/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/dom/DOMLocator.lo: \
- javax/xml/transform/dom/$(am__dirstamp) \
- javax/xml/transform/dom/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/dom/DOMResult.lo: \
- javax/xml/transform/dom/$(am__dirstamp) \
- javax/xml/transform/dom/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/Transformer.lo: \
- javax/xml/transform/$(am__dirstamp) \
- javax/xml/transform/$(DEPDIR)/$(am__dirstamp)
-javax/xml/transform/TransformerFactory.lo: \
- javax/xml/transform/$(am__dirstamp) \
- javax/xml/transform/$(DEPDIR)/$(am__dirstamp)
javax/security/cert/$(am__dirstamp):
@$(mkdir_p) javax/security/cert
@: > javax/security/cert/$(am__dirstamp)
@@ -15682,426 +14607,6 @@ org/ietf/jgss/GSSCredential.lo: org/ietf/jgss/$(am__dirstamp) \
org/ietf/jgss/$(DEPDIR)/$(am__dirstamp)
org/ietf/jgss/ChannelBinding.lo: org/ietf/jgss/$(am__dirstamp) \
org/ietf/jgss/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/$(am__dirstamp):
- @$(mkdir_p) gnu/xml/xpath
- @: > gnu/xml/xpath/$(am__dirstamp)
-gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) gnu/xml/xpath/$(DEPDIR)
- @: > gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/EqualityExpr.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/NumberFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/StringLengthFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/NameFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/SumFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/Pattern.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/StringFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/NegativeExpr.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/UnionExpr.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/SubstringFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/Expr.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/XPathFactoryImpl.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/NormalizeSpaceFunction.lo: \
- gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/Constant.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/Predicate.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/Path.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/OrExpr.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/LangFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/StartsWithFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/SubstringAfterFunction.lo: \
- gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/FloorFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/NotFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/Root.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/PositionFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/VariableReference.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/DocumentOrderComparator.lo: \
- gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/LocalNameFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/NamespaceUriFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/TranslateFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/FalseFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/AndExpr.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/XPathParser.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/NamespaceTest.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/ConcatFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/NameTest.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/CountFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/IdFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/LastFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/XPathTokenizer.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/Steps.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/TrueFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/BooleanFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/ParenthesizedExpr.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/XPathImpl.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/Selector.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/RoundFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/SubstringBeforeFunction.lo: \
- gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/Function.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/CeilingFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/RelationalExpr.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/FunctionCall.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/NodeTypeTest.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/ArithmeticExpr.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/Test.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/xpath/ContainsFunction.lo: gnu/xml/xpath/$(am__dirstamp) \
- gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/pipeline/$(am__dirstamp):
- @$(mkdir_p) gnu/xml/pipeline
- @: > gnu/xml/pipeline/$(am__dirstamp)
-gnu/xml/pipeline/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) gnu/xml/pipeline/$(DEPDIR)
- @: > gnu/xml/pipeline/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/pipeline/EventFilter.lo: gnu/xml/pipeline/$(am__dirstamp) \
- gnu/xml/pipeline/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/pipeline/NSFilter.lo: gnu/xml/pipeline/$(am__dirstamp) \
- gnu/xml/pipeline/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/pipeline/XsltFilter.lo: gnu/xml/pipeline/$(am__dirstamp) \
- gnu/xml/pipeline/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/pipeline/ValidationConsumer.lo: \
- gnu/xml/pipeline/$(am__dirstamp) \
- gnu/xml/pipeline/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/pipeline/PipelineFactory.lo: gnu/xml/pipeline/$(am__dirstamp) \
- gnu/xml/pipeline/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/pipeline/TextConsumer.lo: gnu/xml/pipeline/$(am__dirstamp) \
- gnu/xml/pipeline/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/pipeline/LinkFilter.lo: gnu/xml/pipeline/$(am__dirstamp) \
- gnu/xml/pipeline/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/pipeline/TeeConsumer.lo: gnu/xml/pipeline/$(am__dirstamp) \
- gnu/xml/pipeline/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/pipeline/DomConsumer.lo: gnu/xml/pipeline/$(am__dirstamp) \
- gnu/xml/pipeline/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/pipeline/EventConsumer.lo: gnu/xml/pipeline/$(am__dirstamp) \
- gnu/xml/pipeline/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/pipeline/WellFormednessFilter.lo: \
- gnu/xml/pipeline/$(am__dirstamp) \
- gnu/xml/pipeline/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/pipeline/XIncludeFilter.lo: gnu/xml/pipeline/$(am__dirstamp) \
- gnu/xml/pipeline/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/pipeline/CallFilter.lo: gnu/xml/pipeline/$(am__dirstamp) \
- gnu/xml/pipeline/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/aelfred2/$(am__dirstamp):
- @$(mkdir_p) gnu/xml/aelfred2
- @: > gnu/xml/aelfred2/$(am__dirstamp)
-gnu/xml/aelfred2/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) gnu/xml/aelfred2/$(DEPDIR)
- @: > gnu/xml/aelfred2/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/aelfred2/XmlParser.lo: gnu/xml/aelfred2/$(am__dirstamp) \
- gnu/xml/aelfred2/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/aelfred2/XmlReader.lo: gnu/xml/aelfred2/$(am__dirstamp) \
- gnu/xml/aelfred2/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/aelfred2/JAXPFactory.lo: gnu/xml/aelfred2/$(am__dirstamp) \
- gnu/xml/aelfred2/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/aelfred2/ContentHandler2.lo: gnu/xml/aelfred2/$(am__dirstamp) \
- gnu/xml/aelfred2/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/aelfred2/SAXDriver.lo: gnu/xml/aelfred2/$(am__dirstamp) \
- gnu/xml/aelfred2/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/util/$(am__dirstamp):
- @$(mkdir_p) gnu/xml/util
- @: > gnu/xml/util/$(am__dirstamp)
-gnu/xml/util/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) gnu/xml/util/$(DEPDIR)
- @: > gnu/xml/util/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/util/XCat.lo: gnu/xml/util/$(am__dirstamp) \
- gnu/xml/util/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/util/DomParser.lo: gnu/xml/util/$(am__dirstamp) \
- gnu/xml/util/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/util/XMLWriter.lo: gnu/xml/util/$(am__dirstamp) \
- gnu/xml/util/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/util/Resolver.lo: gnu/xml/util/$(am__dirstamp) \
- gnu/xml/util/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/util/DoParse.lo: gnu/xml/util/$(am__dirstamp) \
- gnu/xml/util/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/util/XHTMLWriter.lo: gnu/xml/util/$(am__dirstamp) \
- gnu/xml/util/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/util/SAXNullTransformerFactory.lo: \
- gnu/xml/util/$(am__dirstamp) \
- gnu/xml/util/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/$(am__dirstamp):
- @$(mkdir_p) gnu/xml/dom
- @: > gnu/xml/dom/$(am__dirstamp)
-gnu/xml/dom/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) gnu/xml/dom/$(DEPDIR)
- @: > gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomXPathNSResolver.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/ls/$(am__dirstamp):
- @$(mkdir_p) gnu/xml/dom/ls
- @: > gnu/xml/dom/ls/$(am__dirstamp)
-gnu/xml/dom/ls/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) gnu/xml/dom/ls/$(DEPDIR)
- @: > gnu/xml/dom/ls/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/ls/FilteredSAXEventSink.lo: \
- gnu/xml/dom/ls/$(am__dirstamp) \
- gnu/xml/dom/ls/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/ls/DomLSException.lo: gnu/xml/dom/ls/$(am__dirstamp) \
- gnu/xml/dom/ls/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/ls/DomLSSerializer.lo: gnu/xml/dom/ls/$(am__dirstamp) \
- gnu/xml/dom/ls/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/ls/DomLSInput.lo: gnu/xml/dom/ls/$(am__dirstamp) \
- gnu/xml/dom/ls/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/ls/DomLSOutput.lo: gnu/xml/dom/ls/$(am__dirstamp) \
- gnu/xml/dom/ls/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/ls/SAXEventSink.lo: gnu/xml/dom/ls/$(am__dirstamp) \
- gnu/xml/dom/ls/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/ls/DomLSParser.lo: gnu/xml/dom/ls/$(am__dirstamp) \
- gnu/xml/dom/ls/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/ls/ReaderInputStream.lo: gnu/xml/dom/ls/$(am__dirstamp) \
- gnu/xml/dom/ls/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/ls/WriterOutputStream.lo: gnu/xml/dom/ls/$(am__dirstamp) \
- gnu/xml/dom/ls/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomElement.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomNsNode.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomAttr.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DTDAttributeTypeInfo.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomDocumentBuilder.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DTDElementTypeInfo.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomDocument.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomXPathExpression.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomDocumentConfiguration.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomDocumentFragment.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomProcessingInstruction.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/Consumer.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomComment.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomCharacterData.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomExtern.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomEntityReference.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomNamedNodeMap.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/ImplementationList.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/ImplementationSource.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomImpl.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomDoctype.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomNode.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomXPathResult.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomDocumentBuilderFactory.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomText.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomNSResolverContext.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomNodeIterator.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomNotation.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/JAXPFactory.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomIterator.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomEvent.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomEntity.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomCDATASection.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/dom/DomDOMException.lo: gnu/xml/dom/$(am__dirstamp) \
- gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/$(am__dirstamp):
- @$(mkdir_p) gnu/xml/transform
- @: > gnu/xml/transform/$(am__dirstamp)
-gnu/xml/transform/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) gnu/xml/transform/$(DEPDIR)
- @: > gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/GenerateIdFunction.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/FormatNumberFunction.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/ValueOfNode.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/ApplyImportsNode.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/WithParam.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/DocumentFunction.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/SAXSerializer.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/FunctionAvailableFunction.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/ElementAvailableFunction.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/IfNode.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/ApplyTemplatesNode.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/SortKey.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/Key.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/ElementNode.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/CurrentFunction.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/XSLComparator.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/CallTemplateNode.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/TemplatesImpl.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/ChooseNode.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/NumberNode.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/CopyOfNode.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/ParameterNode.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/TransformerFactoryImpl.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/TextNode.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/CopyNode.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/SystemPropertyFunction.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/Stylesheet.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/ProcessingInstructionNode.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/UnparsedEntityUriFunction.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/URIResolverEntityResolver.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/ErrorListenerErrorHandler.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/Bindings.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/AttributeSet.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/Template.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/MessageNode.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/LiteralNode.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/StreamSerializer.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/XSLURIResolver.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/AttributeNode.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/CommentNode.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/ForEachNode.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/KeyFunction.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/TransformerImpl.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/WhenNode.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/NodeNumberNode.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/OtherwiseNode.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/AbstractNumberNode.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/TemplateNode.lo: gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/TransformerOutputProperties.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
-gnu/xml/transform/DOMSourceLocator.lo: \
- gnu/xml/transform/$(am__dirstamp) \
- gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
java/lang/ConcreteProcess.lo: java/lang/$(am__dirstamp) \
java/lang/$(DEPDIR)/$(am__dirstamp)
gnu/classpath/Configuration.lo: gnu/classpath/$(am__dirstamp) \
@@ -16327,6 +14832,8 @@ mostlyclean-compile:
-rm -f gnu/gcj/io/shs.lo
-rm -f gnu/gcj/natCore.$(OBJEXT)
-rm -f gnu/gcj/natCore.lo
+ -rm -f gnu/gcj/runtime/BootClassLoader.$(OBJEXT)
+ -rm -f gnu/gcj/runtime/BootClassLoader.lo
-rm -f gnu/gcj/runtime/FileDeleter.$(OBJEXT)
-rm -f gnu/gcj/runtime/FileDeleter.lo
-rm -f gnu/gcj/runtime/FinalizerThread.$(OBJEXT)
@@ -16590,110 +15097,6 @@ mostlyclean-compile:
-rm -f gnu/java/awt/peer/gtk/lib_gnu_java_awt_peer_gtk_la-GtkToolkit.lo
-rm -f gnu/java/awt/peer/gtk/lib_gnu_java_awt_peer_gtk_la-GtkWindowPeer.$(OBJEXT)
-rm -f gnu/java/awt/peer/gtk/lib_gnu_java_awt_peer_gtk_la-GtkWindowPeer.lo
- -rm -f gnu/java/beans/BeanInfoEmbryo.$(OBJEXT)
- -rm -f gnu/java/beans/BeanInfoEmbryo.lo
- -rm -f gnu/java/beans/DummyAppletContext.$(OBJEXT)
- -rm -f gnu/java/beans/DummyAppletContext.lo
- -rm -f gnu/java/beans/DummyAppletStub.$(OBJEXT)
- -rm -f gnu/java/beans/DummyAppletStub.lo
- -rm -f gnu/java/beans/ExplicitBeanInfo.$(OBJEXT)
- -rm -f gnu/java/beans/ExplicitBeanInfo.lo
- -rm -f gnu/java/beans/IntrospectionIncubator.$(OBJEXT)
- -rm -f gnu/java/beans/IntrospectionIncubator.lo
- -rm -f gnu/java/beans/decoder/AbstractContext.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/AbstractContext.lo
- -rm -f gnu/java/beans/decoder/AbstractCreatableObjectContext.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/AbstractCreatableObjectContext.lo
- -rm -f gnu/java/beans/decoder/AbstractElementHandler.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/AbstractElementHandler.lo
- -rm -f gnu/java/beans/decoder/AbstractObjectContext.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/AbstractObjectContext.lo
- -rm -f gnu/java/beans/decoder/ArrayContext.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/ArrayContext.lo
- -rm -f gnu/java/beans/decoder/ArrayHandler.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/ArrayHandler.lo
- -rm -f gnu/java/beans/decoder/AssemblyException.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/AssemblyException.lo
- -rm -f gnu/java/beans/decoder/BooleanHandler.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/BooleanHandler.lo
- -rm -f gnu/java/beans/decoder/ByteHandler.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/ByteHandler.lo
- -rm -f gnu/java/beans/decoder/CharHandler.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/CharHandler.lo
- -rm -f gnu/java/beans/decoder/ClassHandler.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/ClassHandler.lo
- -rm -f gnu/java/beans/decoder/ConstructorContext.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/ConstructorContext.lo
- -rm -f gnu/java/beans/decoder/Context.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/Context.lo
- -rm -f gnu/java/beans/decoder/DecoderContext.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/DecoderContext.lo
- -rm -f gnu/java/beans/decoder/DefaultExceptionListener.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/DefaultExceptionListener.lo
- -rm -f gnu/java/beans/decoder/DoubleHandler.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/DoubleHandler.lo
- -rm -f gnu/java/beans/decoder/DummyContext.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/DummyContext.lo
- -rm -f gnu/java/beans/decoder/DummyHandler.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/DummyHandler.lo
- -rm -f gnu/java/beans/decoder/ElementHandler.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/ElementHandler.lo
- -rm -f gnu/java/beans/decoder/FloatHandler.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/FloatHandler.lo
- -rm -f gnu/java/beans/decoder/GrowableArrayContext.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/GrowableArrayContext.lo
- -rm -f gnu/java/beans/decoder/IndexContext.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/IndexContext.lo
- -rm -f gnu/java/beans/decoder/IntHandler.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/IntHandler.lo
- -rm -f gnu/java/beans/decoder/JavaHandler.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/JavaHandler.lo
- -rm -f gnu/java/beans/decoder/LongHandler.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/LongHandler.lo
- -rm -f gnu/java/beans/decoder/MethodContext.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/MethodContext.lo
- -rm -f gnu/java/beans/decoder/MethodFinder.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/MethodFinder.lo
- -rm -f gnu/java/beans/decoder/NullHandler.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/NullHandler.lo
- -rm -f gnu/java/beans/decoder/ObjectContext.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/ObjectContext.lo
- -rm -f gnu/java/beans/decoder/ObjectHandler.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/ObjectHandler.lo
- -rm -f gnu/java/beans/decoder/PersistenceParser.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/PersistenceParser.lo
- -rm -f gnu/java/beans/decoder/PropertyContext.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/PropertyContext.lo
- -rm -f gnu/java/beans/decoder/ShortHandler.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/ShortHandler.lo
- -rm -f gnu/java/beans/decoder/SimpleHandler.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/SimpleHandler.lo
- -rm -f gnu/java/beans/decoder/StaticMethodContext.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/StaticMethodContext.lo
- -rm -f gnu/java/beans/decoder/StringHandler.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/StringHandler.lo
- -rm -f gnu/java/beans/decoder/VoidHandler.$(OBJEXT)
- -rm -f gnu/java/beans/decoder/VoidHandler.lo
- -rm -f gnu/java/beans/editors/ColorEditor.$(OBJEXT)
- -rm -f gnu/java/beans/editors/ColorEditor.lo
- -rm -f gnu/java/beans/editors/FontEditor.$(OBJEXT)
- -rm -f gnu/java/beans/editors/FontEditor.lo
- -rm -f gnu/java/beans/editors/NativeBooleanEditor.$(OBJEXT)
- -rm -f gnu/java/beans/editors/NativeBooleanEditor.lo
- -rm -f gnu/java/beans/editors/NativeByteEditor.$(OBJEXT)
- -rm -f gnu/java/beans/editors/NativeByteEditor.lo
- -rm -f gnu/java/beans/editors/NativeDoubleEditor.$(OBJEXT)
- -rm -f gnu/java/beans/editors/NativeDoubleEditor.lo
- -rm -f gnu/java/beans/editors/NativeFloatEditor.$(OBJEXT)
- -rm -f gnu/java/beans/editors/NativeFloatEditor.lo
- -rm -f gnu/java/beans/editors/NativeIntEditor.$(OBJEXT)
- -rm -f gnu/java/beans/editors/NativeIntEditor.lo
- -rm -f gnu/java/beans/editors/NativeLongEditor.$(OBJEXT)
- -rm -f gnu/java/beans/editors/NativeLongEditor.lo
- -rm -f gnu/java/beans/editors/NativeShortEditor.$(OBJEXT)
- -rm -f gnu/java/beans/editors/NativeShortEditor.lo
- -rm -f gnu/java/beans/editors/StringEditor.$(OBJEXT)
- -rm -f gnu/java/beans/editors/StringEditor.lo
-rm -f gnu/java/io/ASN1ParsingException.$(OBJEXT)
-rm -f gnu/java/io/ASN1ParsingException.lo
-rm -f gnu/java/io/Base64InputStream.$(OBJEXT)
@@ -17470,354 +15873,6 @@ mostlyclean-compile:
-rm -f gnu/regexp/RETokenWordBoundary.lo
-rm -f gnu/regexp/UncheckedRE.$(OBJEXT)
-rm -f gnu/regexp/UncheckedRE.lo
- -rm -f gnu/xml/aelfred2/ContentHandler2.$(OBJEXT)
- -rm -f gnu/xml/aelfred2/ContentHandler2.lo
- -rm -f gnu/xml/aelfred2/JAXPFactory.$(OBJEXT)
- -rm -f gnu/xml/aelfred2/JAXPFactory.lo
- -rm -f gnu/xml/aelfred2/SAXDriver.$(OBJEXT)
- -rm -f gnu/xml/aelfred2/SAXDriver.lo
- -rm -f gnu/xml/aelfred2/XmlParser.$(OBJEXT)
- -rm -f gnu/xml/aelfred2/XmlParser.lo
- -rm -f gnu/xml/aelfred2/XmlReader.$(OBJEXT)
- -rm -f gnu/xml/aelfred2/XmlReader.lo
- -rm -f gnu/xml/dom/Consumer.$(OBJEXT)
- -rm -f gnu/xml/dom/Consumer.lo
- -rm -f gnu/xml/dom/DTDAttributeTypeInfo.$(OBJEXT)
- -rm -f gnu/xml/dom/DTDAttributeTypeInfo.lo
- -rm -f gnu/xml/dom/DTDElementTypeInfo.$(OBJEXT)
- -rm -f gnu/xml/dom/DTDElementTypeInfo.lo
- -rm -f gnu/xml/dom/DomAttr.$(OBJEXT)
- -rm -f gnu/xml/dom/DomAttr.lo
- -rm -f gnu/xml/dom/DomCDATASection.$(OBJEXT)
- -rm -f gnu/xml/dom/DomCDATASection.lo
- -rm -f gnu/xml/dom/DomCharacterData.$(OBJEXT)
- -rm -f gnu/xml/dom/DomCharacterData.lo
- -rm -f gnu/xml/dom/DomComment.$(OBJEXT)
- -rm -f gnu/xml/dom/DomComment.lo
- -rm -f gnu/xml/dom/DomDOMException.$(OBJEXT)
- -rm -f gnu/xml/dom/DomDOMException.lo
- -rm -f gnu/xml/dom/DomDoctype.$(OBJEXT)
- -rm -f gnu/xml/dom/DomDoctype.lo
- -rm -f gnu/xml/dom/DomDocument.$(OBJEXT)
- -rm -f gnu/xml/dom/DomDocument.lo
- -rm -f gnu/xml/dom/DomDocumentBuilder.$(OBJEXT)
- -rm -f gnu/xml/dom/DomDocumentBuilder.lo
- -rm -f gnu/xml/dom/DomDocumentBuilderFactory.$(OBJEXT)
- -rm -f gnu/xml/dom/DomDocumentBuilderFactory.lo
- -rm -f gnu/xml/dom/DomDocumentConfiguration.$(OBJEXT)
- -rm -f gnu/xml/dom/DomDocumentConfiguration.lo
- -rm -f gnu/xml/dom/DomDocumentFragment.$(OBJEXT)
- -rm -f gnu/xml/dom/DomDocumentFragment.lo
- -rm -f gnu/xml/dom/DomElement.$(OBJEXT)
- -rm -f gnu/xml/dom/DomElement.lo
- -rm -f gnu/xml/dom/DomEntity.$(OBJEXT)
- -rm -f gnu/xml/dom/DomEntity.lo
- -rm -f gnu/xml/dom/DomEntityReference.$(OBJEXT)
- -rm -f gnu/xml/dom/DomEntityReference.lo
- -rm -f gnu/xml/dom/DomEvent.$(OBJEXT)
- -rm -f gnu/xml/dom/DomEvent.lo
- -rm -f gnu/xml/dom/DomExtern.$(OBJEXT)
- -rm -f gnu/xml/dom/DomExtern.lo
- -rm -f gnu/xml/dom/DomImpl.$(OBJEXT)
- -rm -f gnu/xml/dom/DomImpl.lo
- -rm -f gnu/xml/dom/DomIterator.$(OBJEXT)
- -rm -f gnu/xml/dom/DomIterator.lo
- -rm -f gnu/xml/dom/DomNSResolverContext.$(OBJEXT)
- -rm -f gnu/xml/dom/DomNSResolverContext.lo
- -rm -f gnu/xml/dom/DomNamedNodeMap.$(OBJEXT)
- -rm -f gnu/xml/dom/DomNamedNodeMap.lo
- -rm -f gnu/xml/dom/DomNode.$(OBJEXT)
- -rm -f gnu/xml/dom/DomNode.lo
- -rm -f gnu/xml/dom/DomNodeIterator.$(OBJEXT)
- -rm -f gnu/xml/dom/DomNodeIterator.lo
- -rm -f gnu/xml/dom/DomNotation.$(OBJEXT)
- -rm -f gnu/xml/dom/DomNotation.lo
- -rm -f gnu/xml/dom/DomNsNode.$(OBJEXT)
- -rm -f gnu/xml/dom/DomNsNode.lo
- -rm -f gnu/xml/dom/DomProcessingInstruction.$(OBJEXT)
- -rm -f gnu/xml/dom/DomProcessingInstruction.lo
- -rm -f gnu/xml/dom/DomText.$(OBJEXT)
- -rm -f gnu/xml/dom/DomText.lo
- -rm -f gnu/xml/dom/DomXPathExpression.$(OBJEXT)
- -rm -f gnu/xml/dom/DomXPathExpression.lo
- -rm -f gnu/xml/dom/DomXPathNSResolver.$(OBJEXT)
- -rm -f gnu/xml/dom/DomXPathNSResolver.lo
- -rm -f gnu/xml/dom/DomXPathResult.$(OBJEXT)
- -rm -f gnu/xml/dom/DomXPathResult.lo
- -rm -f gnu/xml/dom/ImplementationList.$(OBJEXT)
- -rm -f gnu/xml/dom/ImplementationList.lo
- -rm -f gnu/xml/dom/ImplementationSource.$(OBJEXT)
- -rm -f gnu/xml/dom/ImplementationSource.lo
- -rm -f gnu/xml/dom/JAXPFactory.$(OBJEXT)
- -rm -f gnu/xml/dom/JAXPFactory.lo
- -rm -f gnu/xml/dom/ls/DomLSException.$(OBJEXT)
- -rm -f gnu/xml/dom/ls/DomLSException.lo
- -rm -f gnu/xml/dom/ls/DomLSInput.$(OBJEXT)
- -rm -f gnu/xml/dom/ls/DomLSInput.lo
- -rm -f gnu/xml/dom/ls/DomLSOutput.$(OBJEXT)
- -rm -f gnu/xml/dom/ls/DomLSOutput.lo
- -rm -f gnu/xml/dom/ls/DomLSParser.$(OBJEXT)
- -rm -f gnu/xml/dom/ls/DomLSParser.lo
- -rm -f gnu/xml/dom/ls/DomLSSerializer.$(OBJEXT)
- -rm -f gnu/xml/dom/ls/DomLSSerializer.lo
- -rm -f gnu/xml/dom/ls/FilteredSAXEventSink.$(OBJEXT)
- -rm -f gnu/xml/dom/ls/FilteredSAXEventSink.lo
- -rm -f gnu/xml/dom/ls/ReaderInputStream.$(OBJEXT)
- -rm -f gnu/xml/dom/ls/ReaderInputStream.lo
- -rm -f gnu/xml/dom/ls/SAXEventSink.$(OBJEXT)
- -rm -f gnu/xml/dom/ls/SAXEventSink.lo
- -rm -f gnu/xml/dom/ls/WriterOutputStream.$(OBJEXT)
- -rm -f gnu/xml/dom/ls/WriterOutputStream.lo
- -rm -f gnu/xml/pipeline/CallFilter.$(OBJEXT)
- -rm -f gnu/xml/pipeline/CallFilter.lo
- -rm -f gnu/xml/pipeline/DomConsumer.$(OBJEXT)
- -rm -f gnu/xml/pipeline/DomConsumer.lo
- -rm -f gnu/xml/pipeline/EventConsumer.$(OBJEXT)
- -rm -f gnu/xml/pipeline/EventConsumer.lo
- -rm -f gnu/xml/pipeline/EventFilter.$(OBJEXT)
- -rm -f gnu/xml/pipeline/EventFilter.lo
- -rm -f gnu/xml/pipeline/LinkFilter.$(OBJEXT)
- -rm -f gnu/xml/pipeline/LinkFilter.lo
- -rm -f gnu/xml/pipeline/NSFilter.$(OBJEXT)
- -rm -f gnu/xml/pipeline/NSFilter.lo
- -rm -f gnu/xml/pipeline/PipelineFactory.$(OBJEXT)
- -rm -f gnu/xml/pipeline/PipelineFactory.lo
- -rm -f gnu/xml/pipeline/TeeConsumer.$(OBJEXT)
- -rm -f gnu/xml/pipeline/TeeConsumer.lo
- -rm -f gnu/xml/pipeline/TextConsumer.$(OBJEXT)
- -rm -f gnu/xml/pipeline/TextConsumer.lo
- -rm -f gnu/xml/pipeline/ValidationConsumer.$(OBJEXT)
- -rm -f gnu/xml/pipeline/ValidationConsumer.lo
- -rm -f gnu/xml/pipeline/WellFormednessFilter.$(OBJEXT)
- -rm -f gnu/xml/pipeline/WellFormednessFilter.lo
- -rm -f gnu/xml/pipeline/XIncludeFilter.$(OBJEXT)
- -rm -f gnu/xml/pipeline/XIncludeFilter.lo
- -rm -f gnu/xml/pipeline/XsltFilter.$(OBJEXT)
- -rm -f gnu/xml/pipeline/XsltFilter.lo
- -rm -f gnu/xml/transform/AbstractNumberNode.$(OBJEXT)
- -rm -f gnu/xml/transform/AbstractNumberNode.lo
- -rm -f gnu/xml/transform/ApplyImportsNode.$(OBJEXT)
- -rm -f gnu/xml/transform/ApplyImportsNode.lo
- -rm -f gnu/xml/transform/ApplyTemplatesNode.$(OBJEXT)
- -rm -f gnu/xml/transform/ApplyTemplatesNode.lo
- -rm -f gnu/xml/transform/AttributeNode.$(OBJEXT)
- -rm -f gnu/xml/transform/AttributeNode.lo
- -rm -f gnu/xml/transform/AttributeSet.$(OBJEXT)
- -rm -f gnu/xml/transform/AttributeSet.lo
- -rm -f gnu/xml/transform/Bindings.$(OBJEXT)
- -rm -f gnu/xml/transform/Bindings.lo
- -rm -f gnu/xml/transform/CallTemplateNode.$(OBJEXT)
- -rm -f gnu/xml/transform/CallTemplateNode.lo
- -rm -f gnu/xml/transform/ChooseNode.$(OBJEXT)
- -rm -f gnu/xml/transform/ChooseNode.lo
- -rm -f gnu/xml/transform/CommentNode.$(OBJEXT)
- -rm -f gnu/xml/transform/CommentNode.lo
- -rm -f gnu/xml/transform/CopyNode.$(OBJEXT)
- -rm -f gnu/xml/transform/CopyNode.lo
- -rm -f gnu/xml/transform/CopyOfNode.$(OBJEXT)
- -rm -f gnu/xml/transform/CopyOfNode.lo
- -rm -f gnu/xml/transform/CurrentFunction.$(OBJEXT)
- -rm -f gnu/xml/transform/CurrentFunction.lo
- -rm -f gnu/xml/transform/DOMSourceLocator.$(OBJEXT)
- -rm -f gnu/xml/transform/DOMSourceLocator.lo
- -rm -f gnu/xml/transform/DocumentFunction.$(OBJEXT)
- -rm -f gnu/xml/transform/DocumentFunction.lo
- -rm -f gnu/xml/transform/ElementAvailableFunction.$(OBJEXT)
- -rm -f gnu/xml/transform/ElementAvailableFunction.lo
- -rm -f gnu/xml/transform/ElementNode.$(OBJEXT)
- -rm -f gnu/xml/transform/ElementNode.lo
- -rm -f gnu/xml/transform/ErrorListenerErrorHandler.$(OBJEXT)
- -rm -f gnu/xml/transform/ErrorListenerErrorHandler.lo
- -rm -f gnu/xml/transform/ForEachNode.$(OBJEXT)
- -rm -f gnu/xml/transform/ForEachNode.lo
- -rm -f gnu/xml/transform/FormatNumberFunction.$(OBJEXT)
- -rm -f gnu/xml/transform/FormatNumberFunction.lo
- -rm -f gnu/xml/transform/FunctionAvailableFunction.$(OBJEXT)
- -rm -f gnu/xml/transform/FunctionAvailableFunction.lo
- -rm -f gnu/xml/transform/GenerateIdFunction.$(OBJEXT)
- -rm -f gnu/xml/transform/GenerateIdFunction.lo
- -rm -f gnu/xml/transform/IfNode.$(OBJEXT)
- -rm -f gnu/xml/transform/IfNode.lo
- -rm -f gnu/xml/transform/Key.$(OBJEXT)
- -rm -f gnu/xml/transform/Key.lo
- -rm -f gnu/xml/transform/KeyFunction.$(OBJEXT)
- -rm -f gnu/xml/transform/KeyFunction.lo
- -rm -f gnu/xml/transform/LiteralNode.$(OBJEXT)
- -rm -f gnu/xml/transform/LiteralNode.lo
- -rm -f gnu/xml/transform/MessageNode.$(OBJEXT)
- -rm -f gnu/xml/transform/MessageNode.lo
- -rm -f gnu/xml/transform/NodeNumberNode.$(OBJEXT)
- -rm -f gnu/xml/transform/NodeNumberNode.lo
- -rm -f gnu/xml/transform/NumberNode.$(OBJEXT)
- -rm -f gnu/xml/transform/NumberNode.lo
- -rm -f gnu/xml/transform/OtherwiseNode.$(OBJEXT)
- -rm -f gnu/xml/transform/OtherwiseNode.lo
- -rm -f gnu/xml/transform/ParameterNode.$(OBJEXT)
- -rm -f gnu/xml/transform/ParameterNode.lo
- -rm -f gnu/xml/transform/ProcessingInstructionNode.$(OBJEXT)
- -rm -f gnu/xml/transform/ProcessingInstructionNode.lo
- -rm -f gnu/xml/transform/SAXSerializer.$(OBJEXT)
- -rm -f gnu/xml/transform/SAXSerializer.lo
- -rm -f gnu/xml/transform/SortKey.$(OBJEXT)
- -rm -f gnu/xml/transform/SortKey.lo
- -rm -f gnu/xml/transform/StreamSerializer.$(OBJEXT)
- -rm -f gnu/xml/transform/StreamSerializer.lo
- -rm -f gnu/xml/transform/Stylesheet.$(OBJEXT)
- -rm -f gnu/xml/transform/Stylesheet.lo
- -rm -f gnu/xml/transform/SystemPropertyFunction.$(OBJEXT)
- -rm -f gnu/xml/transform/SystemPropertyFunction.lo
- -rm -f gnu/xml/transform/Template.$(OBJEXT)
- -rm -f gnu/xml/transform/Template.lo
- -rm -f gnu/xml/transform/TemplateNode.$(OBJEXT)
- -rm -f gnu/xml/transform/TemplateNode.lo
- -rm -f gnu/xml/transform/TemplatesImpl.$(OBJEXT)
- -rm -f gnu/xml/transform/TemplatesImpl.lo
- -rm -f gnu/xml/transform/TextNode.$(OBJEXT)
- -rm -f gnu/xml/transform/TextNode.lo
- -rm -f gnu/xml/transform/TransformerFactoryImpl.$(OBJEXT)
- -rm -f gnu/xml/transform/TransformerFactoryImpl.lo
- -rm -f gnu/xml/transform/TransformerImpl.$(OBJEXT)
- -rm -f gnu/xml/transform/TransformerImpl.lo
- -rm -f gnu/xml/transform/TransformerOutputProperties.$(OBJEXT)
- -rm -f gnu/xml/transform/TransformerOutputProperties.lo
- -rm -f gnu/xml/transform/URIResolverEntityResolver.$(OBJEXT)
- -rm -f gnu/xml/transform/URIResolverEntityResolver.lo
- -rm -f gnu/xml/transform/UnparsedEntityUriFunction.$(OBJEXT)
- -rm -f gnu/xml/transform/UnparsedEntityUriFunction.lo
- -rm -f gnu/xml/transform/ValueOfNode.$(OBJEXT)
- -rm -f gnu/xml/transform/ValueOfNode.lo
- -rm -f gnu/xml/transform/WhenNode.$(OBJEXT)
- -rm -f gnu/xml/transform/WhenNode.lo
- -rm -f gnu/xml/transform/WithParam.$(OBJEXT)
- -rm -f gnu/xml/transform/WithParam.lo
- -rm -f gnu/xml/transform/XSLComparator.$(OBJEXT)
- -rm -f gnu/xml/transform/XSLComparator.lo
- -rm -f gnu/xml/transform/XSLURIResolver.$(OBJEXT)
- -rm -f gnu/xml/transform/XSLURIResolver.lo
- -rm -f gnu/xml/util/DoParse.$(OBJEXT)
- -rm -f gnu/xml/util/DoParse.lo
- -rm -f gnu/xml/util/DomParser.$(OBJEXT)
- -rm -f gnu/xml/util/DomParser.lo
- -rm -f gnu/xml/util/Resolver.$(OBJEXT)
- -rm -f gnu/xml/util/Resolver.lo
- -rm -f gnu/xml/util/SAXNullTransformerFactory.$(OBJEXT)
- -rm -f gnu/xml/util/SAXNullTransformerFactory.lo
- -rm -f gnu/xml/util/XCat.$(OBJEXT)
- -rm -f gnu/xml/util/XCat.lo
- -rm -f gnu/xml/util/XHTMLWriter.$(OBJEXT)
- -rm -f gnu/xml/util/XHTMLWriter.lo
- -rm -f gnu/xml/util/XMLWriter.$(OBJEXT)
- -rm -f gnu/xml/util/XMLWriter.lo
- -rm -f gnu/xml/xpath/AndExpr.$(OBJEXT)
- -rm -f gnu/xml/xpath/AndExpr.lo
- -rm -f gnu/xml/xpath/ArithmeticExpr.$(OBJEXT)
- -rm -f gnu/xml/xpath/ArithmeticExpr.lo
- -rm -f gnu/xml/xpath/BooleanFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/BooleanFunction.lo
- -rm -f gnu/xml/xpath/CeilingFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/CeilingFunction.lo
- -rm -f gnu/xml/xpath/ConcatFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/ConcatFunction.lo
- -rm -f gnu/xml/xpath/Constant.$(OBJEXT)
- -rm -f gnu/xml/xpath/Constant.lo
- -rm -f gnu/xml/xpath/ContainsFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/ContainsFunction.lo
- -rm -f gnu/xml/xpath/CountFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/CountFunction.lo
- -rm -f gnu/xml/xpath/DocumentOrderComparator.$(OBJEXT)
- -rm -f gnu/xml/xpath/DocumentOrderComparator.lo
- -rm -f gnu/xml/xpath/EqualityExpr.$(OBJEXT)
- -rm -f gnu/xml/xpath/EqualityExpr.lo
- -rm -f gnu/xml/xpath/Expr.$(OBJEXT)
- -rm -f gnu/xml/xpath/Expr.lo
- -rm -f gnu/xml/xpath/FalseFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/FalseFunction.lo
- -rm -f gnu/xml/xpath/FloorFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/FloorFunction.lo
- -rm -f gnu/xml/xpath/Function.$(OBJEXT)
- -rm -f gnu/xml/xpath/Function.lo
- -rm -f gnu/xml/xpath/FunctionCall.$(OBJEXT)
- -rm -f gnu/xml/xpath/FunctionCall.lo
- -rm -f gnu/xml/xpath/IdFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/IdFunction.lo
- -rm -f gnu/xml/xpath/LangFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/LangFunction.lo
- -rm -f gnu/xml/xpath/LastFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/LastFunction.lo
- -rm -f gnu/xml/xpath/LocalNameFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/LocalNameFunction.lo
- -rm -f gnu/xml/xpath/NameFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/NameFunction.lo
- -rm -f gnu/xml/xpath/NameTest.$(OBJEXT)
- -rm -f gnu/xml/xpath/NameTest.lo
- -rm -f gnu/xml/xpath/NamespaceTest.$(OBJEXT)
- -rm -f gnu/xml/xpath/NamespaceTest.lo
- -rm -f gnu/xml/xpath/NamespaceUriFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/NamespaceUriFunction.lo
- -rm -f gnu/xml/xpath/NegativeExpr.$(OBJEXT)
- -rm -f gnu/xml/xpath/NegativeExpr.lo
- -rm -f gnu/xml/xpath/NodeTypeTest.$(OBJEXT)
- -rm -f gnu/xml/xpath/NodeTypeTest.lo
- -rm -f gnu/xml/xpath/NormalizeSpaceFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/NormalizeSpaceFunction.lo
- -rm -f gnu/xml/xpath/NotFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/NotFunction.lo
- -rm -f gnu/xml/xpath/NumberFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/NumberFunction.lo
- -rm -f gnu/xml/xpath/OrExpr.$(OBJEXT)
- -rm -f gnu/xml/xpath/OrExpr.lo
- -rm -f gnu/xml/xpath/ParenthesizedExpr.$(OBJEXT)
- -rm -f gnu/xml/xpath/ParenthesizedExpr.lo
- -rm -f gnu/xml/xpath/Path.$(OBJEXT)
- -rm -f gnu/xml/xpath/Path.lo
- -rm -f gnu/xml/xpath/Pattern.$(OBJEXT)
- -rm -f gnu/xml/xpath/Pattern.lo
- -rm -f gnu/xml/xpath/PositionFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/PositionFunction.lo
- -rm -f gnu/xml/xpath/Predicate.$(OBJEXT)
- -rm -f gnu/xml/xpath/Predicate.lo
- -rm -f gnu/xml/xpath/RelationalExpr.$(OBJEXT)
- -rm -f gnu/xml/xpath/RelationalExpr.lo
- -rm -f gnu/xml/xpath/Root.$(OBJEXT)
- -rm -f gnu/xml/xpath/Root.lo
- -rm -f gnu/xml/xpath/RoundFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/RoundFunction.lo
- -rm -f gnu/xml/xpath/Selector.$(OBJEXT)
- -rm -f gnu/xml/xpath/Selector.lo
- -rm -f gnu/xml/xpath/StartsWithFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/StartsWithFunction.lo
- -rm -f gnu/xml/xpath/Steps.$(OBJEXT)
- -rm -f gnu/xml/xpath/Steps.lo
- -rm -f gnu/xml/xpath/StringFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/StringFunction.lo
- -rm -f gnu/xml/xpath/StringLengthFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/StringLengthFunction.lo
- -rm -f gnu/xml/xpath/SubstringAfterFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/SubstringAfterFunction.lo
- -rm -f gnu/xml/xpath/SubstringBeforeFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/SubstringBeforeFunction.lo
- -rm -f gnu/xml/xpath/SubstringFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/SubstringFunction.lo
- -rm -f gnu/xml/xpath/SumFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/SumFunction.lo
- -rm -f gnu/xml/xpath/Test.$(OBJEXT)
- -rm -f gnu/xml/xpath/Test.lo
- -rm -f gnu/xml/xpath/TranslateFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/TranslateFunction.lo
- -rm -f gnu/xml/xpath/TrueFunction.$(OBJEXT)
- -rm -f gnu/xml/xpath/TrueFunction.lo
- -rm -f gnu/xml/xpath/UnionExpr.$(OBJEXT)
- -rm -f gnu/xml/xpath/UnionExpr.lo
- -rm -f gnu/xml/xpath/VariableReference.$(OBJEXT)
- -rm -f gnu/xml/xpath/VariableReference.lo
- -rm -f gnu/xml/xpath/XPathFactoryImpl.$(OBJEXT)
- -rm -f gnu/xml/xpath/XPathFactoryImpl.lo
- -rm -f gnu/xml/xpath/XPathImpl.$(OBJEXT)
- -rm -f gnu/xml/xpath/XPathImpl.lo
- -rm -f gnu/xml/xpath/XPathParser.$(OBJEXT)
- -rm -f gnu/xml/xpath/XPathParser.lo
- -rm -f gnu/xml/xpath/XPathTokenizer.$(OBJEXT)
- -rm -f gnu/xml/xpath/XPathTokenizer.lo
-rm -f java/applet/Applet.$(OBJEXT)
-rm -f java/applet/Applet.lo
-rm -f java/applet/AppletContext.$(OBJEXT)
@@ -20210,98 +18265,6 @@ mostlyclean-compile:
-rm -f javax/crypto/spec/RC5ParameterSpec.lo
-rm -f javax/crypto/spec/SecretKeySpec.$(OBJEXT)
-rm -f javax/crypto/spec/SecretKeySpec.lo
- -rm -f javax/imageio/IIOException.$(OBJEXT)
- -rm -f javax/imageio/IIOException.lo
- -rm -f javax/imageio/IIOImage.$(OBJEXT)
- -rm -f javax/imageio/IIOImage.lo
- -rm -f javax/imageio/IIOParam.$(OBJEXT)
- -rm -f javax/imageio/IIOParam.lo
- -rm -f javax/imageio/IIOParamController.$(OBJEXT)
- -rm -f javax/imageio/IIOParamController.lo
- -rm -f javax/imageio/ImageIO.$(OBJEXT)
- -rm -f javax/imageio/ImageIO.lo
- -rm -f javax/imageio/ImageReadParam.$(OBJEXT)
- -rm -f javax/imageio/ImageReadParam.lo
- -rm -f javax/imageio/ImageReader.$(OBJEXT)
- -rm -f javax/imageio/ImageReader.lo
- -rm -f javax/imageio/ImageTranscoder.$(OBJEXT)
- -rm -f javax/imageio/ImageTranscoder.lo
- -rm -f javax/imageio/ImageTypeSpecifier.$(OBJEXT)
- -rm -f javax/imageio/ImageTypeSpecifier.lo
- -rm -f javax/imageio/ImageWriteParam.$(OBJEXT)
- -rm -f javax/imageio/ImageWriteParam.lo
- -rm -f javax/imageio/ImageWriter.$(OBJEXT)
- -rm -f javax/imageio/ImageWriter.lo
- -rm -f javax/imageio/event/IIOReadProgressListener.$(OBJEXT)
- -rm -f javax/imageio/event/IIOReadProgressListener.lo
- -rm -f javax/imageio/event/IIOReadUpdateListener.$(OBJEXT)
- -rm -f javax/imageio/event/IIOReadUpdateListener.lo
- -rm -f javax/imageio/event/IIOReadWarningListener.$(OBJEXT)
- -rm -f javax/imageio/event/IIOReadWarningListener.lo
- -rm -f javax/imageio/event/IIOWriteProgressListener.$(OBJEXT)
- -rm -f javax/imageio/event/IIOWriteProgressListener.lo
- -rm -f javax/imageio/event/IIOWriteWarningListener.$(OBJEXT)
- -rm -f javax/imageio/event/IIOWriteWarningListener.lo
- -rm -f javax/imageio/metadata/IIOAttr.$(OBJEXT)
- -rm -f javax/imageio/metadata/IIOAttr.lo
- -rm -f javax/imageio/metadata/IIOInvalidTreeException.$(OBJEXT)
- -rm -f javax/imageio/metadata/IIOInvalidTreeException.lo
- -rm -f javax/imageio/metadata/IIOMetadata.$(OBJEXT)
- -rm -f javax/imageio/metadata/IIOMetadata.lo
- -rm -f javax/imageio/metadata/IIOMetadataController.$(OBJEXT)
- -rm -f javax/imageio/metadata/IIOMetadataController.lo
- -rm -f javax/imageio/metadata/IIOMetadataFormat.$(OBJEXT)
- -rm -f javax/imageio/metadata/IIOMetadataFormat.lo
- -rm -f javax/imageio/metadata/IIOMetadataFormatImpl.$(OBJEXT)
- -rm -f javax/imageio/metadata/IIOMetadataFormatImpl.lo
- -rm -f javax/imageio/metadata/IIOMetadataNode.$(OBJEXT)
- -rm -f javax/imageio/metadata/IIOMetadataNode.lo
- -rm -f javax/imageio/metadata/IIONamedNodeMap.$(OBJEXT)
- -rm -f javax/imageio/metadata/IIONamedNodeMap.lo
- -rm -f javax/imageio/metadata/IIONodeList.$(OBJEXT)
- -rm -f javax/imageio/metadata/IIONodeList.lo
- -rm -f javax/imageio/spi/IIORegistry.$(OBJEXT)
- -rm -f javax/imageio/spi/IIORegistry.lo
- -rm -f javax/imageio/spi/IIOServiceProvider.$(OBJEXT)
- -rm -f javax/imageio/spi/IIOServiceProvider.lo
- -rm -f javax/imageio/spi/ImageInputStreamSpi.$(OBJEXT)
- -rm -f javax/imageio/spi/ImageInputStreamSpi.lo
- -rm -f javax/imageio/spi/ImageOutputStreamSpi.$(OBJEXT)
- -rm -f javax/imageio/spi/ImageOutputStreamSpi.lo
- -rm -f javax/imageio/spi/ImageReaderSpi.$(OBJEXT)
- -rm -f javax/imageio/spi/ImageReaderSpi.lo
- -rm -f javax/imageio/spi/ImageReaderWriterSpi.$(OBJEXT)
- -rm -f javax/imageio/spi/ImageReaderWriterSpi.lo
- -rm -f javax/imageio/spi/ImageTranscoderSpi.$(OBJEXT)
- -rm -f javax/imageio/spi/ImageTranscoderSpi.lo
- -rm -f javax/imageio/spi/ImageWriterSpi.$(OBJEXT)
- -rm -f javax/imageio/spi/ImageWriterSpi.lo
- -rm -f javax/imageio/spi/RegisterableService.$(OBJEXT)
- -rm -f javax/imageio/spi/RegisterableService.lo
- -rm -f javax/imageio/spi/ServiceRegistry.$(OBJEXT)
- -rm -f javax/imageio/spi/ServiceRegistry.lo
- -rm -f javax/imageio/stream/FileCacheImageInputStream.$(OBJEXT)
- -rm -f javax/imageio/stream/FileCacheImageInputStream.lo
- -rm -f javax/imageio/stream/FileCacheImageOutputStream.$(OBJEXT)
- -rm -f javax/imageio/stream/FileCacheImageOutputStream.lo
- -rm -f javax/imageio/stream/FileImageInputStream.$(OBJEXT)
- -rm -f javax/imageio/stream/FileImageInputStream.lo
- -rm -f javax/imageio/stream/FileImageOutputStream.$(OBJEXT)
- -rm -f javax/imageio/stream/FileImageOutputStream.lo
- -rm -f javax/imageio/stream/IIOByteBuffer.$(OBJEXT)
- -rm -f javax/imageio/stream/IIOByteBuffer.lo
- -rm -f javax/imageio/stream/ImageInputStream.$(OBJEXT)
- -rm -f javax/imageio/stream/ImageInputStream.lo
- -rm -f javax/imageio/stream/ImageInputStreamImpl.$(OBJEXT)
- -rm -f javax/imageio/stream/ImageInputStreamImpl.lo
- -rm -f javax/imageio/stream/ImageOutputStream.$(OBJEXT)
- -rm -f javax/imageio/stream/ImageOutputStream.lo
- -rm -f javax/imageio/stream/ImageOutputStreamImpl.$(OBJEXT)
- -rm -f javax/imageio/stream/ImageOutputStreamImpl.lo
- -rm -f javax/imageio/stream/MemoryCacheImageInputStream.$(OBJEXT)
- -rm -f javax/imageio/stream/MemoryCacheImageInputStream.lo
- -rm -f javax/imageio/stream/MemoryCacheImageOutputStream.$(OBJEXT)
- -rm -f javax/imageio/stream/MemoryCacheImageOutputStream.lo
-rm -f javax/naming/AuthenticationException.$(OBJEXT)
-rm -f javax/naming/AuthenticationException.lo
-rm -f javax/naming/AuthenticationNotSupportedException.$(OBJEXT)
@@ -21664,110 +19627,6 @@ mostlyclean-compile:
-rm -f javax/transaction/xa/XAResource.lo
-rm -f javax/transaction/xa/Xid.$(OBJEXT)
-rm -f javax/transaction/xa/Xid.lo
- -rm -f javax/xml/XMLConstants.$(OBJEXT)
- -rm -f javax/xml/XMLConstants.lo
- -rm -f javax/xml/datatype/DatatypeConfigurationException.$(OBJEXT)
- -rm -f javax/xml/datatype/DatatypeConfigurationException.lo
- -rm -f javax/xml/datatype/DatatypeConstants.$(OBJEXT)
- -rm -f javax/xml/datatype/DatatypeConstants.lo
- -rm -f javax/xml/datatype/DatatypeFactory.$(OBJEXT)
- -rm -f javax/xml/datatype/DatatypeFactory.lo
- -rm -f javax/xml/datatype/Duration.$(OBJEXT)
- -rm -f javax/xml/datatype/Duration.lo
- -rm -f javax/xml/datatype/XMLGregorianCalendar.$(OBJEXT)
- -rm -f javax/xml/datatype/XMLGregorianCalendar.lo
- -rm -f javax/xml/namespace/NamespaceContext.$(OBJEXT)
- -rm -f javax/xml/namespace/NamespaceContext.lo
- -rm -f javax/xml/namespace/QName.$(OBJEXT)
- -rm -f javax/xml/namespace/QName.lo
- -rm -f javax/xml/parsers/DocumentBuilder.$(OBJEXT)
- -rm -f javax/xml/parsers/DocumentBuilder.lo
- -rm -f javax/xml/parsers/DocumentBuilderFactory.$(OBJEXT)
- -rm -f javax/xml/parsers/DocumentBuilderFactory.lo
- -rm -f javax/xml/parsers/FactoryConfigurationError.$(OBJEXT)
- -rm -f javax/xml/parsers/FactoryConfigurationError.lo
- -rm -f javax/xml/parsers/ParserConfigurationException.$(OBJEXT)
- -rm -f javax/xml/parsers/ParserConfigurationException.lo
- -rm -f javax/xml/parsers/SAXParser.$(OBJEXT)
- -rm -f javax/xml/parsers/SAXParser.lo
- -rm -f javax/xml/parsers/SAXParserFactory.$(OBJEXT)
- -rm -f javax/xml/parsers/SAXParserFactory.lo
- -rm -f javax/xml/transform/ErrorListener.$(OBJEXT)
- -rm -f javax/xml/transform/ErrorListener.lo
- -rm -f javax/xml/transform/OutputKeys.$(OBJEXT)
- -rm -f javax/xml/transform/OutputKeys.lo
- -rm -f javax/xml/transform/Result.$(OBJEXT)
- -rm -f javax/xml/transform/Result.lo
- -rm -f javax/xml/transform/Source.$(OBJEXT)
- -rm -f javax/xml/transform/Source.lo
- -rm -f javax/xml/transform/SourceLocator.$(OBJEXT)
- -rm -f javax/xml/transform/SourceLocator.lo
- -rm -f javax/xml/transform/Templates.$(OBJEXT)
- -rm -f javax/xml/transform/Templates.lo
- -rm -f javax/xml/transform/Transformer.$(OBJEXT)
- -rm -f javax/xml/transform/Transformer.lo
- -rm -f javax/xml/transform/TransformerConfigurationException.$(OBJEXT)
- -rm -f javax/xml/transform/TransformerConfigurationException.lo
- -rm -f javax/xml/transform/TransformerException.$(OBJEXT)
- -rm -f javax/xml/transform/TransformerException.lo
- -rm -f javax/xml/transform/TransformerFactory.$(OBJEXT)
- -rm -f javax/xml/transform/TransformerFactory.lo
- -rm -f javax/xml/transform/TransformerFactoryConfigurationError.$(OBJEXT)
- -rm -f javax/xml/transform/TransformerFactoryConfigurationError.lo
- -rm -f javax/xml/transform/URIResolver.$(OBJEXT)
- -rm -f javax/xml/transform/URIResolver.lo
- -rm -f javax/xml/transform/dom/DOMLocator.$(OBJEXT)
- -rm -f javax/xml/transform/dom/DOMLocator.lo
- -rm -f javax/xml/transform/dom/DOMResult.$(OBJEXT)
- -rm -f javax/xml/transform/dom/DOMResult.lo
- -rm -f javax/xml/transform/dom/DOMSource.$(OBJEXT)
- -rm -f javax/xml/transform/dom/DOMSource.lo
- -rm -f javax/xml/transform/sax/SAXResult.$(OBJEXT)
- -rm -f javax/xml/transform/sax/SAXResult.lo
- -rm -f javax/xml/transform/sax/SAXSource.$(OBJEXT)
- -rm -f javax/xml/transform/sax/SAXSource.lo
- -rm -f javax/xml/transform/sax/SAXTransformerFactory.$(OBJEXT)
- -rm -f javax/xml/transform/sax/SAXTransformerFactory.lo
- -rm -f javax/xml/transform/sax/TemplatesHandler.$(OBJEXT)
- -rm -f javax/xml/transform/sax/TemplatesHandler.lo
- -rm -f javax/xml/transform/sax/TransformerHandler.$(OBJEXT)
- -rm -f javax/xml/transform/sax/TransformerHandler.lo
- -rm -f javax/xml/transform/stream/StreamResult.$(OBJEXT)
- -rm -f javax/xml/transform/stream/StreamResult.lo
- -rm -f javax/xml/transform/stream/StreamSource.$(OBJEXT)
- -rm -f javax/xml/transform/stream/StreamSource.lo
- -rm -f javax/xml/validation/Schema.$(OBJEXT)
- -rm -f javax/xml/validation/Schema.lo
- -rm -f javax/xml/validation/SchemaFactory.$(OBJEXT)
- -rm -f javax/xml/validation/SchemaFactory.lo
- -rm -f javax/xml/validation/TypeInfoProvider.$(OBJEXT)
- -rm -f javax/xml/validation/TypeInfoProvider.lo
- -rm -f javax/xml/validation/Validator.$(OBJEXT)
- -rm -f javax/xml/validation/Validator.lo
- -rm -f javax/xml/validation/ValidatorHandler.$(OBJEXT)
- -rm -f javax/xml/validation/ValidatorHandler.lo
- -rm -f javax/xml/xpath/XPath.$(OBJEXT)
- -rm -f javax/xml/xpath/XPath.lo
- -rm -f javax/xml/xpath/XPathConstants.$(OBJEXT)
- -rm -f javax/xml/xpath/XPathConstants.lo
- -rm -f javax/xml/xpath/XPathException.$(OBJEXT)
- -rm -f javax/xml/xpath/XPathException.lo
- -rm -f javax/xml/xpath/XPathExpression.$(OBJEXT)
- -rm -f javax/xml/xpath/XPathExpression.lo
- -rm -f javax/xml/xpath/XPathExpressionException.$(OBJEXT)
- -rm -f javax/xml/xpath/XPathExpressionException.lo
- -rm -f javax/xml/xpath/XPathFactory.$(OBJEXT)
- -rm -f javax/xml/xpath/XPathFactory.lo
- -rm -f javax/xml/xpath/XPathFactoryConfigurationException.$(OBJEXT)
- -rm -f javax/xml/xpath/XPathFactoryConfigurationException.lo
- -rm -f javax/xml/xpath/XPathFunction.$(OBJEXT)
- -rm -f javax/xml/xpath/XPathFunction.lo
- -rm -f javax/xml/xpath/XPathFunctionException.$(OBJEXT)
- -rm -f javax/xml/xpath/XPathFunctionException.lo
- -rm -f javax/xml/xpath/XPathFunctionResolver.$(OBJEXT)
- -rm -f javax/xml/xpath/XPathFunctionResolver.lo
- -rm -f javax/xml/xpath/XPathVariableResolver.$(OBJEXT)
- -rm -f javax/xml/xpath/XPathVariableResolver.lo
-rm -f jni/classpath/lib_gnu_java_awt_peer_gtk_la-native_state.$(OBJEXT)
-rm -f jni/classpath/lib_gnu_java_awt_peer_gtk_la-native_state.lo
-rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.$(OBJEXT)
@@ -21948,6 +19807,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/io/$(DEPDIR)/SimpleSHSStream.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/io/$(DEPDIR)/natSimpleSHSStream.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/io/$(DEPDIR)/shs.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/runtime/$(DEPDIR)/BootClassLoader.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/runtime/$(DEPDIR)/FileDeleter.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/runtime/$(DEPDIR)/FinalizerThread.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/runtime/$(DEPDIR)/JNIWeakRef.Plo@am__quote@
@@ -22080,58 +19940,6 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/awt/peer/gtk/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-GtkTextFieldPeer.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/awt/peer/gtk/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-GtkToolkit.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/awt/peer/gtk/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-GtkWindowPeer.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/$(DEPDIR)/BeanInfoEmbryo.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/$(DEPDIR)/DummyAppletContext.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/$(DEPDIR)/DummyAppletStub.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/$(DEPDIR)/ExplicitBeanInfo.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/$(DEPDIR)/IntrospectionIncubator.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/AbstractContext.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/AbstractCreatableObjectContext.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/AbstractElementHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/AbstractObjectContext.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/ArrayContext.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/ArrayHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/AssemblyException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/BooleanHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/ByteHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/CharHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/ClassHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/ConstructorContext.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/Context.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/DecoderContext.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/DefaultExceptionListener.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/DoubleHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/DummyContext.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/DummyHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/ElementHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/FloatHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/GrowableArrayContext.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/IndexContext.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/IntHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/JavaHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/LongHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/MethodContext.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/MethodFinder.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/NullHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/ObjectContext.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/ObjectHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/PersistenceParser.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/PropertyContext.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/ShortHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/SimpleHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/StaticMethodContext.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/StringHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/decoder/$(DEPDIR)/VoidHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/editors/$(DEPDIR)/ColorEditor.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/editors/$(DEPDIR)/FontEditor.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/editors/$(DEPDIR)/NativeBooleanEditor.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/editors/$(DEPDIR)/NativeByteEditor.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/editors/$(DEPDIR)/NativeDoubleEditor.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/editors/$(DEPDIR)/NativeFloatEditor.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/editors/$(DEPDIR)/NativeIntEditor.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/editors/$(DEPDIR)/NativeLongEditor.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/editors/$(DEPDIR)/NativeShortEditor.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/beans/editors/$(DEPDIR)/StringEditor.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/io/$(DEPDIR)/ASN1ParsingException.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/io/$(DEPDIR)/Base64InputStream.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@gnu/java/io/$(DEPDIR)/ClassLoaderObjectInputStream.Plo@am__quote@
@@ -22520,180 +20328,6 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@gnu/regexp/$(DEPDIR)/RETokenStart.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@gnu/regexp/$(DEPDIR)/RETokenWordBoundary.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@gnu/regexp/$(DEPDIR)/UncheckedRE.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/aelfred2/$(DEPDIR)/ContentHandler2.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/aelfred2/$(DEPDIR)/JAXPFactory.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/aelfred2/$(DEPDIR)/SAXDriver.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/aelfred2/$(DEPDIR)/XmlParser.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/aelfred2/$(DEPDIR)/XmlReader.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/Consumer.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DTDAttributeTypeInfo.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DTDElementTypeInfo.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomAttr.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomCDATASection.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomCharacterData.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomComment.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomDOMException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomDoctype.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomDocument.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomDocumentBuilder.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomDocumentBuilderFactory.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomDocumentConfiguration.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomDocumentFragment.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomEntity.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomEntityReference.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomEvent.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomExtern.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomImpl.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomIterator.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomNSResolverContext.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomNamedNodeMap.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomNodeIterator.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomNotation.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomNsNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomProcessingInstruction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomText.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomXPathExpression.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomXPathNSResolver.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/DomXPathResult.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/ImplementationList.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/ImplementationSource.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/$(DEPDIR)/JAXPFactory.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/ls/$(DEPDIR)/DomLSException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/ls/$(DEPDIR)/DomLSInput.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/ls/$(DEPDIR)/DomLSOutput.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/ls/$(DEPDIR)/DomLSParser.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/ls/$(DEPDIR)/DomLSSerializer.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/ls/$(DEPDIR)/FilteredSAXEventSink.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/ls/$(DEPDIR)/ReaderInputStream.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/ls/$(DEPDIR)/SAXEventSink.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/dom/ls/$(DEPDIR)/WriterOutputStream.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/pipeline/$(DEPDIR)/CallFilter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/pipeline/$(DEPDIR)/DomConsumer.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/pipeline/$(DEPDIR)/EventConsumer.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/pipeline/$(DEPDIR)/EventFilter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/pipeline/$(DEPDIR)/LinkFilter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/pipeline/$(DEPDIR)/NSFilter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/pipeline/$(DEPDIR)/PipelineFactory.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/pipeline/$(DEPDIR)/TeeConsumer.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/pipeline/$(DEPDIR)/TextConsumer.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/pipeline/$(DEPDIR)/ValidationConsumer.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/pipeline/$(DEPDIR)/WellFormednessFilter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/pipeline/$(DEPDIR)/XIncludeFilter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/pipeline/$(DEPDIR)/XsltFilter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/AbstractNumberNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/ApplyImportsNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/ApplyTemplatesNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/AttributeNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/AttributeSet.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/Bindings.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/CallTemplateNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/ChooseNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/CommentNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/CopyNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/CopyOfNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/CurrentFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/DOMSourceLocator.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/DocumentFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/ElementAvailableFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/ElementNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/ErrorListenerErrorHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/ForEachNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/FormatNumberFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/FunctionAvailableFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/GenerateIdFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/IfNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/Key.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/KeyFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/LiteralNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/MessageNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/NodeNumberNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/NumberNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/OtherwiseNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/ParameterNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/ProcessingInstructionNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/SAXSerializer.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/SortKey.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/StreamSerializer.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/Stylesheet.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/SystemPropertyFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/Template.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/TemplateNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/TemplatesImpl.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/TextNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/TransformerFactoryImpl.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/TransformerImpl.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/TransformerOutputProperties.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/URIResolverEntityResolver.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/UnparsedEntityUriFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/ValueOfNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/WhenNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/WithParam.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/XSLComparator.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/transform/$(DEPDIR)/XSLURIResolver.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/util/$(DEPDIR)/DoParse.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/util/$(DEPDIR)/DomParser.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/util/$(DEPDIR)/Resolver.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/util/$(DEPDIR)/SAXNullTransformerFactory.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/util/$(DEPDIR)/XCat.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/util/$(DEPDIR)/XHTMLWriter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/util/$(DEPDIR)/XMLWriter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/AndExpr.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/ArithmeticExpr.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/BooleanFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/CeilingFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/ConcatFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/Constant.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/ContainsFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/CountFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/DocumentOrderComparator.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/EqualityExpr.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/Expr.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/FalseFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/FloorFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/Function.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/FunctionCall.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/IdFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/LangFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/LastFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/LocalNameFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/NameFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/NameTest.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/NamespaceTest.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/NamespaceUriFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/NegativeExpr.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/NodeTypeTest.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/NormalizeSpaceFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/NotFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/NumberFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/OrExpr.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/ParenthesizedExpr.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/Path.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/Pattern.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/PositionFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/Predicate.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/RelationalExpr.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/Root.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/RoundFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/Selector.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/StartsWithFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/Steps.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/StringFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/StringLengthFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/SubstringAfterFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/SubstringBeforeFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/SubstringFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/SumFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/Test.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/TranslateFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/TrueFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/UnionExpr.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/VariableReference.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/XPathFactoryImpl.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/XPathImpl.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/XPathParser.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gnu/xml/xpath/$(DEPDIR)/XPathTokenizer.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@java/applet/$(DEPDIR)/Applet.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@java/applet/$(DEPDIR)/AppletContext.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@java/applet/$(DEPDIR)/AppletStub.Plo@am__quote@
@@ -23890,52 +21524,6 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@javax/crypto/spec/$(DEPDIR)/RC2ParameterSpec.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@javax/crypto/spec/$(DEPDIR)/RC5ParameterSpec.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@javax/crypto/spec/$(DEPDIR)/SecretKeySpec.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/$(DEPDIR)/IIOException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/$(DEPDIR)/IIOImage.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/$(DEPDIR)/IIOParam.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/$(DEPDIR)/IIOParamController.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/$(DEPDIR)/ImageIO.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/$(DEPDIR)/ImageReadParam.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/$(DEPDIR)/ImageReader.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/$(DEPDIR)/ImageTranscoder.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/$(DEPDIR)/ImageTypeSpecifier.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/$(DEPDIR)/ImageWriteParam.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/$(DEPDIR)/ImageWriter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/event/$(DEPDIR)/IIOReadProgressListener.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/event/$(DEPDIR)/IIOReadUpdateListener.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/event/$(DEPDIR)/IIOReadWarningListener.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/event/$(DEPDIR)/IIOWriteProgressListener.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/event/$(DEPDIR)/IIOWriteWarningListener.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/metadata/$(DEPDIR)/IIOAttr.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/metadata/$(DEPDIR)/IIOInvalidTreeException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/metadata/$(DEPDIR)/IIOMetadata.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/metadata/$(DEPDIR)/IIOMetadataController.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/metadata/$(DEPDIR)/IIOMetadataFormat.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/metadata/$(DEPDIR)/IIOMetadataFormatImpl.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/metadata/$(DEPDIR)/IIOMetadataNode.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/metadata/$(DEPDIR)/IIONamedNodeMap.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/metadata/$(DEPDIR)/IIONodeList.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/spi/$(DEPDIR)/IIORegistry.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/spi/$(DEPDIR)/IIOServiceProvider.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/spi/$(DEPDIR)/ImageInputStreamSpi.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/spi/$(DEPDIR)/ImageOutputStreamSpi.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/spi/$(DEPDIR)/ImageReaderSpi.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/spi/$(DEPDIR)/ImageReaderWriterSpi.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/spi/$(DEPDIR)/ImageTranscoderSpi.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/spi/$(DEPDIR)/ImageWriterSpi.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/spi/$(DEPDIR)/RegisterableService.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/spi/$(DEPDIR)/ServiceRegistry.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/stream/$(DEPDIR)/FileCacheImageInputStream.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/stream/$(DEPDIR)/FileCacheImageOutputStream.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/stream/$(DEPDIR)/FileImageInputStream.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/stream/$(DEPDIR)/FileImageOutputStream.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/stream/$(DEPDIR)/IIOByteBuffer.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/stream/$(DEPDIR)/ImageInputStream.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/stream/$(DEPDIR)/ImageInputStreamImpl.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/stream/$(DEPDIR)/ImageOutputStream.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/stream/$(DEPDIR)/ImageOutputStreamImpl.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/stream/$(DEPDIR)/MemoryCacheImageInputStream.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/imageio/stream/$(DEPDIR)/MemoryCacheImageOutputStream.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@javax/naming/$(DEPDIR)/AuthenticationException.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@javax/naming/$(DEPDIR)/AuthenticationNotSupportedException.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@javax/naming/$(DEPDIR)/BinaryRefAddr.Plo@am__quote@
@@ -24617,58 +22205,6 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@javax/transaction/xa/$(DEPDIR)/XAException.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@javax/transaction/xa/$(DEPDIR)/XAResource.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@javax/transaction/xa/$(DEPDIR)/Xid.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/$(DEPDIR)/XMLConstants.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/datatype/$(DEPDIR)/DatatypeConfigurationException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/datatype/$(DEPDIR)/DatatypeConstants.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/datatype/$(DEPDIR)/DatatypeFactory.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/datatype/$(DEPDIR)/Duration.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/datatype/$(DEPDIR)/XMLGregorianCalendar.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/namespace/$(DEPDIR)/NamespaceContext.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/namespace/$(DEPDIR)/QName.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/parsers/$(DEPDIR)/DocumentBuilder.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/parsers/$(DEPDIR)/DocumentBuilderFactory.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/parsers/$(DEPDIR)/FactoryConfigurationError.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/parsers/$(DEPDIR)/ParserConfigurationException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/parsers/$(DEPDIR)/SAXParser.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/parsers/$(DEPDIR)/SAXParserFactory.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/$(DEPDIR)/ErrorListener.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/$(DEPDIR)/OutputKeys.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/$(DEPDIR)/Result.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/$(DEPDIR)/Source.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/$(DEPDIR)/SourceLocator.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/$(DEPDIR)/Templates.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/$(DEPDIR)/Transformer.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/$(DEPDIR)/TransformerConfigurationException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/$(DEPDIR)/TransformerException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/$(DEPDIR)/TransformerFactory.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/$(DEPDIR)/TransformerFactoryConfigurationError.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/$(DEPDIR)/URIResolver.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/dom/$(DEPDIR)/DOMLocator.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/dom/$(DEPDIR)/DOMResult.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/dom/$(DEPDIR)/DOMSource.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/sax/$(DEPDIR)/SAXResult.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/sax/$(DEPDIR)/SAXSource.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/sax/$(DEPDIR)/SAXTransformerFactory.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/sax/$(DEPDIR)/TemplatesHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/sax/$(DEPDIR)/TransformerHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/stream/$(DEPDIR)/StreamResult.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/transform/stream/$(DEPDIR)/StreamSource.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/validation/$(DEPDIR)/Schema.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/validation/$(DEPDIR)/SchemaFactory.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/validation/$(DEPDIR)/TypeInfoProvider.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/validation/$(DEPDIR)/Validator.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/validation/$(DEPDIR)/ValidatorHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/xpath/$(DEPDIR)/XPath.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/xpath/$(DEPDIR)/XPathConstants.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/xpath/$(DEPDIR)/XPathException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/xpath/$(DEPDIR)/XPathExpression.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/xpath/$(DEPDIR)/XPathExpressionException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/xpath/$(DEPDIR)/XPathFactory.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/xpath/$(DEPDIR)/XPathFactoryConfigurationException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/xpath/$(DEPDIR)/XPathFunction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/xpath/$(DEPDIR)/XPathFunctionException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/xpath/$(DEPDIR)/XPathFunctionResolver.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@javax/xml/xpath/$(DEPDIR)/XPathVariableResolver.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@jni/classpath/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-native_state.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkFontPeer.Plo@am__quote@
@@ -25553,9 +23089,6 @@ clean-libtool:
-rm -rf gnu/java/awt/image/.libs gnu/java/awt/image/_libs
-rm -rf gnu/java/awt/peer/.libs gnu/java/awt/peer/_libs
-rm -rf gnu/java/awt/peer/gtk/.libs gnu/java/awt/peer/gtk/_libs
- -rm -rf gnu/java/beans/.libs gnu/java/beans/_libs
- -rm -rf gnu/java/beans/decoder/.libs gnu/java/beans/decoder/_libs
- -rm -rf gnu/java/beans/editors/.libs gnu/java/beans/editors/_libs
-rm -rf gnu/java/io/.libs gnu/java/io/_libs
-rm -rf gnu/java/lang/.libs gnu/java/lang/_libs
-rm -rf gnu/java/lang/reflect/.libs gnu/java/lang/reflect/_libs
@@ -25590,13 +23123,6 @@ clean-libtool:
-rm -rf gnu/java/util/.libs gnu/java/util/_libs
-rm -rf gnu/java/util/prefs/.libs gnu/java/util/prefs/_libs
-rm -rf gnu/regexp/.libs gnu/regexp/_libs
- -rm -rf gnu/xml/aelfred2/.libs gnu/xml/aelfred2/_libs
- -rm -rf gnu/xml/dom/.libs gnu/xml/dom/_libs
- -rm -rf gnu/xml/dom/ls/.libs gnu/xml/dom/ls/_libs
- -rm -rf gnu/xml/pipeline/.libs gnu/xml/pipeline/_libs
- -rm -rf gnu/xml/transform/.libs gnu/xml/transform/_libs
- -rm -rf gnu/xml/util/.libs gnu/xml/util/_libs
- -rm -rf gnu/xml/xpath/.libs gnu/xml/xpath/_libs
-rm -rf java/applet/.libs java/applet/_libs
-rm -rf java/awt/.libs java/awt/_libs
-rm -rf java/awt/color/.libs java/awt/color/_libs
@@ -25647,11 +23173,6 @@ clean-libtool:
-rm -rf javax/crypto/.libs javax/crypto/_libs
-rm -rf javax/crypto/interfaces/.libs javax/crypto/interfaces/_libs
-rm -rf javax/crypto/spec/.libs javax/crypto/spec/_libs
- -rm -rf javax/imageio/.libs javax/imageio/_libs
- -rm -rf javax/imageio/event/.libs javax/imageio/event/_libs
- -rm -rf javax/imageio/metadata/.libs javax/imageio/metadata/_libs
- -rm -rf javax/imageio/spi/.libs javax/imageio/spi/_libs
- -rm -rf javax/imageio/stream/.libs javax/imageio/stream/_libs
-rm -rf javax/naming/.libs javax/naming/_libs
-rm -rf javax/naming/directory/.libs javax/naming/directory/_libs
-rm -rf javax/naming/event/.libs javax/naming/event/_libs
@@ -25687,16 +23208,6 @@ clean-libtool:
-rm -rf javax/swing/undo/.libs javax/swing/undo/_libs
-rm -rf javax/transaction/.libs javax/transaction/_libs
-rm -rf javax/transaction/xa/.libs javax/transaction/xa/_libs
- -rm -rf javax/xml/.libs javax/xml/_libs
- -rm -rf javax/xml/datatype/.libs javax/xml/datatype/_libs
- -rm -rf javax/xml/namespace/.libs javax/xml/namespace/_libs
- -rm -rf javax/xml/parsers/.libs javax/xml/parsers/_libs
- -rm -rf javax/xml/transform/.libs javax/xml/transform/_libs
- -rm -rf javax/xml/transform/dom/.libs javax/xml/transform/dom/_libs
- -rm -rf javax/xml/transform/sax/.libs javax/xml/transform/sax/_libs
- -rm -rf javax/xml/transform/stream/.libs javax/xml/transform/stream/_libs
- -rm -rf javax/xml/validation/.libs javax/xml/validation/_libs
- -rm -rf javax/xml/xpath/.libs javax/xml/xpath/_libs
-rm -rf jni/classpath/.libs jni/classpath/_libs
-rm -rf jni/gtk-peer/.libs jni/gtk-peer/_libs
-rm -rf org/ietf/jgss/.libs org/ietf/jgss/_libs
@@ -25781,13 +23292,7 @@ uninstall-toolexecmainlibDATA:
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
- @failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
+ @set fnord $$MAKEFLAGS; amf=$$2; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
@@ -25799,7 +23304,7 @@ $(RECURSIVE_TARGETS):
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- || eval $$failcom; \
+ || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
@@ -25807,13 +23312,7 @@ $(RECURSIVE_TARGETS):
mostlyclean-recursive clean-recursive distclean-recursive \
maintainer-clean-recursive:
- @failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
+ @set fnord $$MAKEFLAGS; amf=$$2; \
dot_seen=no; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
@@ -25834,7 +23333,7 @@ maintainer-clean-recursive:
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- || eval $$failcom; \
+ || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
@@ -26109,12 +23608,6 @@ distclean-generic:
-rm -f gnu/java/awt/peer/$(am__dirstamp)
-rm -f gnu/java/awt/peer/gtk/$(DEPDIR)/$(am__dirstamp)
-rm -f gnu/java/awt/peer/gtk/$(am__dirstamp)
- -rm -f gnu/java/beans/$(DEPDIR)/$(am__dirstamp)
- -rm -f gnu/java/beans/$(am__dirstamp)
- -rm -f gnu/java/beans/decoder/$(DEPDIR)/$(am__dirstamp)
- -rm -f gnu/java/beans/decoder/$(am__dirstamp)
- -rm -f gnu/java/beans/editors/$(DEPDIR)/$(am__dirstamp)
- -rm -f gnu/java/beans/editors/$(am__dirstamp)
-rm -f gnu/java/io/$(DEPDIR)/$(am__dirstamp)
-rm -f gnu/java/io/$(am__dirstamp)
-rm -f gnu/java/lang/$(DEPDIR)/$(am__dirstamp)
@@ -26183,20 +23676,6 @@ distclean-generic:
-rm -f gnu/java/util/prefs/$(am__dirstamp)
-rm -f gnu/regexp/$(DEPDIR)/$(am__dirstamp)
-rm -f gnu/regexp/$(am__dirstamp)
- -rm -f gnu/xml/aelfred2/$(DEPDIR)/$(am__dirstamp)
- -rm -f gnu/xml/aelfred2/$(am__dirstamp)
- -rm -f gnu/xml/dom/$(DEPDIR)/$(am__dirstamp)
- -rm -f gnu/xml/dom/$(am__dirstamp)
- -rm -f gnu/xml/dom/ls/$(DEPDIR)/$(am__dirstamp)
- -rm -f gnu/xml/dom/ls/$(am__dirstamp)
- -rm -f gnu/xml/pipeline/$(DEPDIR)/$(am__dirstamp)
- -rm -f gnu/xml/pipeline/$(am__dirstamp)
- -rm -f gnu/xml/transform/$(DEPDIR)/$(am__dirstamp)
- -rm -f gnu/xml/transform/$(am__dirstamp)
- -rm -f gnu/xml/util/$(DEPDIR)/$(am__dirstamp)
- -rm -f gnu/xml/util/$(am__dirstamp)
- -rm -f gnu/xml/xpath/$(DEPDIR)/$(am__dirstamp)
- -rm -f gnu/xml/xpath/$(am__dirstamp)
-rm -f java/applet/$(DEPDIR)/$(am__dirstamp)
-rm -f java/applet/$(am__dirstamp)
-rm -f java/awt/$(DEPDIR)/$(am__dirstamp)
@@ -26297,16 +23776,6 @@ distclean-generic:
-rm -f javax/crypto/interfaces/$(am__dirstamp)
-rm -f javax/crypto/spec/$(DEPDIR)/$(am__dirstamp)
-rm -f javax/crypto/spec/$(am__dirstamp)
- -rm -f javax/imageio/$(DEPDIR)/$(am__dirstamp)
- -rm -f javax/imageio/$(am__dirstamp)
- -rm -f javax/imageio/event/$(DEPDIR)/$(am__dirstamp)
- -rm -f javax/imageio/event/$(am__dirstamp)
- -rm -f javax/imageio/metadata/$(DEPDIR)/$(am__dirstamp)
- -rm -f javax/imageio/metadata/$(am__dirstamp)
- -rm -f javax/imageio/spi/$(DEPDIR)/$(am__dirstamp)
- -rm -f javax/imageio/spi/$(am__dirstamp)
- -rm -f javax/imageio/stream/$(DEPDIR)/$(am__dirstamp)
- -rm -f javax/imageio/stream/$(am__dirstamp)
-rm -f javax/naming/$(DEPDIR)/$(am__dirstamp)
-rm -f javax/naming/$(am__dirstamp)
-rm -f javax/naming/directory/$(DEPDIR)/$(am__dirstamp)
@@ -26377,26 +23846,6 @@ distclean-generic:
-rm -f javax/transaction/$(am__dirstamp)
-rm -f javax/transaction/xa/$(DEPDIR)/$(am__dirstamp)
-rm -f javax/transaction/xa/$(am__dirstamp)
- -rm -f javax/xml/$(DEPDIR)/$(am__dirstamp)
- -rm -f javax/xml/$(am__dirstamp)
- -rm -f javax/xml/datatype/$(DEPDIR)/$(am__dirstamp)
- -rm -f javax/xml/datatype/$(am__dirstamp)
- -rm -f javax/xml/namespace/$(DEPDIR)/$(am__dirstamp)
- -rm -f javax/xml/namespace/$(am__dirstamp)
- -rm -f javax/xml/parsers/$(DEPDIR)/$(am__dirstamp)
- -rm -f javax/xml/parsers/$(am__dirstamp)
- -rm -f javax/xml/transform/$(DEPDIR)/$(am__dirstamp)
- -rm -f javax/xml/transform/$(am__dirstamp)
- -rm -f javax/xml/transform/dom/$(DEPDIR)/$(am__dirstamp)
- -rm -f javax/xml/transform/dom/$(am__dirstamp)
- -rm -f javax/xml/transform/sax/$(DEPDIR)/$(am__dirstamp)
- -rm -f javax/xml/transform/sax/$(am__dirstamp)
- -rm -f javax/xml/transform/stream/$(DEPDIR)/$(am__dirstamp)
- -rm -f javax/xml/transform/stream/$(am__dirstamp)
- -rm -f javax/xml/validation/$(DEPDIR)/$(am__dirstamp)
- -rm -f javax/xml/validation/$(am__dirstamp)
- -rm -f javax/xml/xpath/$(DEPDIR)/$(am__dirstamp)
- -rm -f javax/xml/xpath/$(am__dirstamp)
-rm -f jni/classpath/$(DEPDIR)/$(am__dirstamp)
-rm -f jni/classpath/$(am__dirstamp)
-rm -f jni/gtk-peer/$(DEPDIR)/$(am__dirstamp)
@@ -26417,7 +23866,7 @@ clean-am: clean-binPROGRAMS clean-generic clean-libtool clean-local \
distclean: distclean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
- -rm -rf ./$(DEPDIR) gnu/awt/$(DEPDIR) gnu/awt/j2d/$(DEPDIR) gnu/awt/xlib/$(DEPDIR) gnu/classpath/$(DEPDIR) gnu/gcj/$(DEPDIR) gnu/gcj/convert/$(DEPDIR) gnu/gcj/io/$(DEPDIR) gnu/gcj/runtime/$(DEPDIR) gnu/gcj/tools/gcj_dbtool/$(DEPDIR) gnu/gcj/util/$(DEPDIR) gnu/gcj/xlib/$(DEPDIR) gnu/java/awt/$(DEPDIR) gnu/java/awt/color/$(DEPDIR) gnu/java/awt/image/$(DEPDIR) gnu/java/awt/peer/$(DEPDIR) gnu/java/awt/peer/gtk/$(DEPDIR) gnu/java/beans/$(DEPDIR) gnu/java/beans/decoder/$(DEPDIR) gnu/java/beans/editors/$(DEPDIR) gnu/java/io/$(DEPDIR) gnu/java/lang/$(DEPDIR) gnu/java/lang/reflect/$(DEPDIR) gnu/java/locale/$(DEPDIR) gnu/java/math/$(DEPDIR) gnu/java/net/$(DEPDIR) gnu/java/net/protocol/core/$(DEPDIR) gnu/java/net/protocol/file/$(DEPDIR) gnu/java/net/protocol/ftp/$(DEPDIR) gnu/java/net/protocol/gcjlib/$(DEPDIR) gnu/java/net/protocol/http/$(DEPDIR) gnu/java/net/protocol/http/event/$(DEPDIR) gnu/java/net/protocol/jar/$(DEPDIR) gnu/java/nio/$(DEPDIR) gnu/java/nio/channels/$(DEPDIR) gnu/java/nio/charset/$(DEPDIR) gnu/java/rmi/$(DEPDIR) gnu/java/rmi/dgc/$(DEPDIR) gnu/java/rmi/registry/$(DEPDIR) gnu/java/rmi/rmic/$(DEPDIR) gnu/java/rmi/server/$(DEPDIR) gnu/java/security/$(DEPDIR) gnu/java/security/action/$(DEPDIR) gnu/java/security/ber/$(DEPDIR) gnu/java/security/der/$(DEPDIR) gnu/java/security/pkcs/$(DEPDIR) gnu/java/security/provider/$(DEPDIR) gnu/java/security/util/$(DEPDIR) gnu/java/security/x509/$(DEPDIR) gnu/java/security/x509/ext/$(DEPDIR) gnu/java/text/$(DEPDIR) gnu/java/util/$(DEPDIR) gnu/java/util/prefs/$(DEPDIR) gnu/regexp/$(DEPDIR) gnu/xml/aelfred2/$(DEPDIR) gnu/xml/dom/$(DEPDIR) gnu/xml/dom/ls/$(DEPDIR) gnu/xml/pipeline/$(DEPDIR) gnu/xml/transform/$(DEPDIR) gnu/xml/util/$(DEPDIR) gnu/xml/xpath/$(DEPDIR) java/applet/$(DEPDIR) java/awt/$(DEPDIR) java/awt/color/$(DEPDIR) java/awt/datatransfer/$(DEPDIR) java/awt/dnd/$(DEPDIR) java/awt/dnd/peer/$(DEPDIR) java/awt/event/$(DEPDIR) java/awt/font/$(DEPDIR) java/awt/geom/$(DEPDIR) java/awt/im/$(DEPDIR) java/awt/im/spi/$(DEPDIR) java/awt/image/$(DEPDIR) java/awt/image/renderable/$(DEPDIR) java/awt/peer/$(DEPDIR) java/awt/print/$(DEPDIR) java/beans/$(DEPDIR) java/beans/beancontext/$(DEPDIR) java/io/$(DEPDIR) java/lang/$(DEPDIR) java/lang/ref/$(DEPDIR) java/lang/reflect/$(DEPDIR) java/math/$(DEPDIR) java/net/$(DEPDIR) java/nio/$(DEPDIR) java/nio/channels/$(DEPDIR) java/nio/channels/spi/$(DEPDIR) java/nio/charset/$(DEPDIR) java/nio/charset/spi/$(DEPDIR) java/rmi/$(DEPDIR) java/rmi/activation/$(DEPDIR) java/rmi/dgc/$(DEPDIR) java/rmi/registry/$(DEPDIR) java/rmi/server/$(DEPDIR) java/security/$(DEPDIR) java/security/acl/$(DEPDIR) java/security/cert/$(DEPDIR) java/security/interfaces/$(DEPDIR) java/security/spec/$(DEPDIR) java/sql/$(DEPDIR) java/text/$(DEPDIR) java/util/$(DEPDIR) java/util/jar/$(DEPDIR) java/util/logging/$(DEPDIR) java/util/prefs/$(DEPDIR) java/util/regex/$(DEPDIR) java/util/zip/$(DEPDIR) javax/accessibility/$(DEPDIR) javax/crypto/$(DEPDIR) javax/crypto/interfaces/$(DEPDIR) javax/crypto/spec/$(DEPDIR) javax/imageio/$(DEPDIR) javax/imageio/event/$(DEPDIR) javax/imageio/metadata/$(DEPDIR) javax/imageio/spi/$(DEPDIR) javax/imageio/stream/$(DEPDIR) javax/naming/$(DEPDIR) javax/naming/directory/$(DEPDIR) javax/naming/event/$(DEPDIR) javax/naming/ldap/$(DEPDIR) javax/naming/spi/$(DEPDIR) javax/net/$(DEPDIR) javax/net/ssl/$(DEPDIR) javax/print/$(DEPDIR) javax/print/attribute/$(DEPDIR) javax/print/attribute/standard/$(DEPDIR) javax/print/event/$(DEPDIR) javax/security/auth/$(DEPDIR) javax/security/auth/callback/$(DEPDIR) javax/security/auth/login/$(DEPDIR) javax/security/auth/spi/$(DEPDIR) javax/security/auth/x500/$(DEPDIR) javax/security/cert/$(DEPDIR) javax/security/sasl/$(DEPDIR) javax/sql/$(DEPDIR) javax/swing/$(DEPDIR) javax/swing/border/$(DEPDIR) javax/swing/colorchooser/$(DEPDIR) javax/swing/event/$(DEPDIR) javax/swing/filechooser/$(DEPDIR) javax/swing/plaf/$(DEPDIR) javax/swing/plaf/basic/$(DEPDIR) javax/swing/plaf/metal/$(DEPDIR) javax/swing/table/$(DEPDIR) javax/swing/text/$(DEPDIR) javax/swing/text/html/$(DEPDIR) javax/swing/text/html/parser/$(DEPDIR) javax/swing/tree/$(DEPDIR) javax/swing/undo/$(DEPDIR) javax/transaction/$(DEPDIR) javax/transaction/xa/$(DEPDIR) javax/xml/$(DEPDIR) javax/xml/datatype/$(DEPDIR) javax/xml/namespace/$(DEPDIR) javax/xml/parsers/$(DEPDIR) javax/xml/transform/$(DEPDIR) javax/xml/transform/dom/$(DEPDIR) javax/xml/transform/sax/$(DEPDIR) javax/xml/transform/stream/$(DEPDIR) javax/xml/validation/$(DEPDIR) javax/xml/xpath/$(DEPDIR) jni/classpath/$(DEPDIR) jni/gtk-peer/$(DEPDIR) org/ietf/jgss/$(DEPDIR) sysdep/$(DEPDIR)
+ -rm -rf ./$(DEPDIR) gnu/awt/$(DEPDIR) gnu/awt/j2d/$(DEPDIR) gnu/awt/xlib/$(DEPDIR) gnu/classpath/$(DEPDIR) gnu/gcj/$(DEPDIR) gnu/gcj/convert/$(DEPDIR) gnu/gcj/io/$(DEPDIR) gnu/gcj/runtime/$(DEPDIR) gnu/gcj/tools/gcj_dbtool/$(DEPDIR) gnu/gcj/util/$(DEPDIR) gnu/gcj/xlib/$(DEPDIR) gnu/java/awt/$(DEPDIR) gnu/java/awt/color/$(DEPDIR) gnu/java/awt/image/$(DEPDIR) gnu/java/awt/peer/$(DEPDIR) gnu/java/awt/peer/gtk/$(DEPDIR) gnu/java/io/$(DEPDIR) gnu/java/lang/$(DEPDIR) gnu/java/lang/reflect/$(DEPDIR) gnu/java/locale/$(DEPDIR) gnu/java/math/$(DEPDIR) gnu/java/net/$(DEPDIR) gnu/java/net/protocol/core/$(DEPDIR) gnu/java/net/protocol/file/$(DEPDIR) gnu/java/net/protocol/ftp/$(DEPDIR) gnu/java/net/protocol/gcjlib/$(DEPDIR) gnu/java/net/protocol/http/$(DEPDIR) gnu/java/net/protocol/http/event/$(DEPDIR) gnu/java/net/protocol/jar/$(DEPDIR) gnu/java/nio/$(DEPDIR) gnu/java/nio/channels/$(DEPDIR) gnu/java/nio/charset/$(DEPDIR) gnu/java/rmi/$(DEPDIR) gnu/java/rmi/dgc/$(DEPDIR) gnu/java/rmi/registry/$(DEPDIR) gnu/java/rmi/rmic/$(DEPDIR) gnu/java/rmi/server/$(DEPDIR) gnu/java/security/$(DEPDIR) gnu/java/security/action/$(DEPDIR) gnu/java/security/ber/$(DEPDIR) gnu/java/security/der/$(DEPDIR) gnu/java/security/pkcs/$(DEPDIR) gnu/java/security/provider/$(DEPDIR) gnu/java/security/util/$(DEPDIR) gnu/java/security/x509/$(DEPDIR) gnu/java/security/x509/ext/$(DEPDIR) gnu/java/text/$(DEPDIR) gnu/java/util/$(DEPDIR) gnu/java/util/prefs/$(DEPDIR) gnu/regexp/$(DEPDIR) java/applet/$(DEPDIR) java/awt/$(DEPDIR) java/awt/color/$(DEPDIR) java/awt/datatransfer/$(DEPDIR) java/awt/dnd/$(DEPDIR) java/awt/dnd/peer/$(DEPDIR) java/awt/event/$(DEPDIR) java/awt/font/$(DEPDIR) java/awt/geom/$(DEPDIR) java/awt/im/$(DEPDIR) java/awt/im/spi/$(DEPDIR) java/awt/image/$(DEPDIR) java/awt/image/renderable/$(DEPDIR) java/awt/peer/$(DEPDIR) java/awt/print/$(DEPDIR) java/beans/$(DEPDIR) java/beans/beancontext/$(DEPDIR) java/io/$(DEPDIR) java/lang/$(DEPDIR) java/lang/ref/$(DEPDIR) java/lang/reflect/$(DEPDIR) java/math/$(DEPDIR) java/net/$(DEPDIR) java/nio/$(DEPDIR) java/nio/channels/$(DEPDIR) java/nio/channels/spi/$(DEPDIR) java/nio/charset/$(DEPDIR) java/nio/charset/spi/$(DEPDIR) java/rmi/$(DEPDIR) java/rmi/activation/$(DEPDIR) java/rmi/dgc/$(DEPDIR) java/rmi/registry/$(DEPDIR) java/rmi/server/$(DEPDIR) java/security/$(DEPDIR) java/security/acl/$(DEPDIR) java/security/cert/$(DEPDIR) java/security/interfaces/$(DEPDIR) java/security/spec/$(DEPDIR) java/sql/$(DEPDIR) java/text/$(DEPDIR) java/util/$(DEPDIR) java/util/jar/$(DEPDIR) java/util/logging/$(DEPDIR) java/util/prefs/$(DEPDIR) java/util/regex/$(DEPDIR) java/util/zip/$(DEPDIR) javax/accessibility/$(DEPDIR) javax/crypto/$(DEPDIR) javax/crypto/interfaces/$(DEPDIR) javax/crypto/spec/$(DEPDIR) javax/naming/$(DEPDIR) javax/naming/directory/$(DEPDIR) javax/naming/event/$(DEPDIR) javax/naming/ldap/$(DEPDIR) javax/naming/spi/$(DEPDIR) javax/net/$(DEPDIR) javax/net/ssl/$(DEPDIR) javax/print/$(DEPDIR) javax/print/attribute/$(DEPDIR) javax/print/attribute/standard/$(DEPDIR) javax/print/event/$(DEPDIR) javax/security/auth/$(DEPDIR) javax/security/auth/callback/$(DEPDIR) javax/security/auth/login/$(DEPDIR) javax/security/auth/spi/$(DEPDIR) javax/security/auth/x500/$(DEPDIR) javax/security/cert/$(DEPDIR) javax/security/sasl/$(DEPDIR) javax/sql/$(DEPDIR) javax/swing/$(DEPDIR) javax/swing/border/$(DEPDIR) javax/swing/colorchooser/$(DEPDIR) javax/swing/event/$(DEPDIR) javax/swing/filechooser/$(DEPDIR) javax/swing/plaf/$(DEPDIR) javax/swing/plaf/basic/$(DEPDIR) javax/swing/plaf/metal/$(DEPDIR) javax/swing/table/$(DEPDIR) javax/swing/text/$(DEPDIR) javax/swing/text/html/$(DEPDIR) javax/swing/text/html/parser/$(DEPDIR) javax/swing/tree/$(DEPDIR) javax/swing/undo/$(DEPDIR) javax/transaction/$(DEPDIR) javax/transaction/xa/$(DEPDIR) jni/classpath/$(DEPDIR) jni/gtk-peer/$(DEPDIR) org/ietf/jgss/$(DEPDIR) sysdep/$(DEPDIR)
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-libtool distclean-local distclean-tags
@@ -26448,7 +23897,7 @@ installcheck-am:
maintainer-clean: maintainer-clean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-rm -rf $(top_srcdir)/autom4te.cache
- -rm -rf ./$(DEPDIR) gnu/awt/$(DEPDIR) gnu/awt/j2d/$(DEPDIR) gnu/awt/xlib/$(DEPDIR) gnu/classpath/$(DEPDIR) gnu/gcj/$(DEPDIR) gnu/gcj/convert/$(DEPDIR) gnu/gcj/io/$(DEPDIR) gnu/gcj/runtime/$(DEPDIR) gnu/gcj/tools/gcj_dbtool/$(DEPDIR) gnu/gcj/util/$(DEPDIR) gnu/gcj/xlib/$(DEPDIR) gnu/java/awt/$(DEPDIR) gnu/java/awt/color/$(DEPDIR) gnu/java/awt/image/$(DEPDIR) gnu/java/awt/peer/$(DEPDIR) gnu/java/awt/peer/gtk/$(DEPDIR) gnu/java/beans/$(DEPDIR) gnu/java/beans/decoder/$(DEPDIR) gnu/java/beans/editors/$(DEPDIR) gnu/java/io/$(DEPDIR) gnu/java/lang/$(DEPDIR) gnu/java/lang/reflect/$(DEPDIR) gnu/java/locale/$(DEPDIR) gnu/java/math/$(DEPDIR) gnu/java/net/$(DEPDIR) gnu/java/net/protocol/core/$(DEPDIR) gnu/java/net/protocol/file/$(DEPDIR) gnu/java/net/protocol/ftp/$(DEPDIR) gnu/java/net/protocol/gcjlib/$(DEPDIR) gnu/java/net/protocol/http/$(DEPDIR) gnu/java/net/protocol/http/event/$(DEPDIR) gnu/java/net/protocol/jar/$(DEPDIR) gnu/java/nio/$(DEPDIR) gnu/java/nio/channels/$(DEPDIR) gnu/java/nio/charset/$(DEPDIR) gnu/java/rmi/$(DEPDIR) gnu/java/rmi/dgc/$(DEPDIR) gnu/java/rmi/registry/$(DEPDIR) gnu/java/rmi/rmic/$(DEPDIR) gnu/java/rmi/server/$(DEPDIR) gnu/java/security/$(DEPDIR) gnu/java/security/action/$(DEPDIR) gnu/java/security/ber/$(DEPDIR) gnu/java/security/der/$(DEPDIR) gnu/java/security/pkcs/$(DEPDIR) gnu/java/security/provider/$(DEPDIR) gnu/java/security/util/$(DEPDIR) gnu/java/security/x509/$(DEPDIR) gnu/java/security/x509/ext/$(DEPDIR) gnu/java/text/$(DEPDIR) gnu/java/util/$(DEPDIR) gnu/java/util/prefs/$(DEPDIR) gnu/regexp/$(DEPDIR) gnu/xml/aelfred2/$(DEPDIR) gnu/xml/dom/$(DEPDIR) gnu/xml/dom/ls/$(DEPDIR) gnu/xml/pipeline/$(DEPDIR) gnu/xml/transform/$(DEPDIR) gnu/xml/util/$(DEPDIR) gnu/xml/xpath/$(DEPDIR) java/applet/$(DEPDIR) java/awt/$(DEPDIR) java/awt/color/$(DEPDIR) java/awt/datatransfer/$(DEPDIR) java/awt/dnd/$(DEPDIR) java/awt/dnd/peer/$(DEPDIR) java/awt/event/$(DEPDIR) java/awt/font/$(DEPDIR) java/awt/geom/$(DEPDIR) java/awt/im/$(DEPDIR) java/awt/im/spi/$(DEPDIR) java/awt/image/$(DEPDIR) java/awt/image/renderable/$(DEPDIR) java/awt/peer/$(DEPDIR) java/awt/print/$(DEPDIR) java/beans/$(DEPDIR) java/beans/beancontext/$(DEPDIR) java/io/$(DEPDIR) java/lang/$(DEPDIR) java/lang/ref/$(DEPDIR) java/lang/reflect/$(DEPDIR) java/math/$(DEPDIR) java/net/$(DEPDIR) java/nio/$(DEPDIR) java/nio/channels/$(DEPDIR) java/nio/channels/spi/$(DEPDIR) java/nio/charset/$(DEPDIR) java/nio/charset/spi/$(DEPDIR) java/rmi/$(DEPDIR) java/rmi/activation/$(DEPDIR) java/rmi/dgc/$(DEPDIR) java/rmi/registry/$(DEPDIR) java/rmi/server/$(DEPDIR) java/security/$(DEPDIR) java/security/acl/$(DEPDIR) java/security/cert/$(DEPDIR) java/security/interfaces/$(DEPDIR) java/security/spec/$(DEPDIR) java/sql/$(DEPDIR) java/text/$(DEPDIR) java/util/$(DEPDIR) java/util/jar/$(DEPDIR) java/util/logging/$(DEPDIR) java/util/prefs/$(DEPDIR) java/util/regex/$(DEPDIR) java/util/zip/$(DEPDIR) javax/accessibility/$(DEPDIR) javax/crypto/$(DEPDIR) javax/crypto/interfaces/$(DEPDIR) javax/crypto/spec/$(DEPDIR) javax/imageio/$(DEPDIR) javax/imageio/event/$(DEPDIR) javax/imageio/metadata/$(DEPDIR) javax/imageio/spi/$(DEPDIR) javax/imageio/stream/$(DEPDIR) javax/naming/$(DEPDIR) javax/naming/directory/$(DEPDIR) javax/naming/event/$(DEPDIR) javax/naming/ldap/$(DEPDIR) javax/naming/spi/$(DEPDIR) javax/net/$(DEPDIR) javax/net/ssl/$(DEPDIR) javax/print/$(DEPDIR) javax/print/attribute/$(DEPDIR) javax/print/attribute/standard/$(DEPDIR) javax/print/event/$(DEPDIR) javax/security/auth/$(DEPDIR) javax/security/auth/callback/$(DEPDIR) javax/security/auth/login/$(DEPDIR) javax/security/auth/spi/$(DEPDIR) javax/security/auth/x500/$(DEPDIR) javax/security/cert/$(DEPDIR) javax/security/sasl/$(DEPDIR) javax/sql/$(DEPDIR) javax/swing/$(DEPDIR) javax/swing/border/$(DEPDIR) javax/swing/colorchooser/$(DEPDIR) javax/swing/event/$(DEPDIR) javax/swing/filechooser/$(DEPDIR) javax/swing/plaf/$(DEPDIR) javax/swing/plaf/basic/$(DEPDIR) javax/swing/plaf/metal/$(DEPDIR) javax/swing/table/$(DEPDIR) javax/swing/text/$(DEPDIR) javax/swing/text/html/$(DEPDIR) javax/swing/text/html/parser/$(DEPDIR) javax/swing/tree/$(DEPDIR) javax/swing/undo/$(DEPDIR) javax/transaction/$(DEPDIR) javax/transaction/xa/$(DEPDIR) javax/xml/$(DEPDIR) javax/xml/datatype/$(DEPDIR) javax/xml/namespace/$(DEPDIR) javax/xml/parsers/$(DEPDIR) javax/xml/transform/$(DEPDIR) javax/xml/transform/dom/$(DEPDIR) javax/xml/transform/sax/$(DEPDIR) javax/xml/transform/stream/$(DEPDIR) javax/xml/validation/$(DEPDIR) javax/xml/xpath/$(DEPDIR) jni/classpath/$(DEPDIR) jni/gtk-peer/$(DEPDIR) org/ietf/jgss/$(DEPDIR) sysdep/$(DEPDIR)
+ -rm -rf ./$(DEPDIR) gnu/awt/$(DEPDIR) gnu/awt/j2d/$(DEPDIR) gnu/awt/xlib/$(DEPDIR) gnu/classpath/$(DEPDIR) gnu/gcj/$(DEPDIR) gnu/gcj/convert/$(DEPDIR) gnu/gcj/io/$(DEPDIR) gnu/gcj/runtime/$(DEPDIR) gnu/gcj/tools/gcj_dbtool/$(DEPDIR) gnu/gcj/util/$(DEPDIR) gnu/gcj/xlib/$(DEPDIR) gnu/java/awt/$(DEPDIR) gnu/java/awt/color/$(DEPDIR) gnu/java/awt/image/$(DEPDIR) gnu/java/awt/peer/$(DEPDIR) gnu/java/awt/peer/gtk/$(DEPDIR) gnu/java/io/$(DEPDIR) gnu/java/lang/$(DEPDIR) gnu/java/lang/reflect/$(DEPDIR) gnu/java/locale/$(DEPDIR) gnu/java/math/$(DEPDIR) gnu/java/net/$(DEPDIR) gnu/java/net/protocol/core/$(DEPDIR) gnu/java/net/protocol/file/$(DEPDIR) gnu/java/net/protocol/ftp/$(DEPDIR) gnu/java/net/protocol/gcjlib/$(DEPDIR) gnu/java/net/protocol/http/$(DEPDIR) gnu/java/net/protocol/http/event/$(DEPDIR) gnu/java/net/protocol/jar/$(DEPDIR) gnu/java/nio/$(DEPDIR) gnu/java/nio/channels/$(DEPDIR) gnu/java/nio/charset/$(DEPDIR) gnu/java/rmi/$(DEPDIR) gnu/java/rmi/dgc/$(DEPDIR) gnu/java/rmi/registry/$(DEPDIR) gnu/java/rmi/rmic/$(DEPDIR) gnu/java/rmi/server/$(DEPDIR) gnu/java/security/$(DEPDIR) gnu/java/security/action/$(DEPDIR) gnu/java/security/ber/$(DEPDIR) gnu/java/security/der/$(DEPDIR) gnu/java/security/pkcs/$(DEPDIR) gnu/java/security/provider/$(DEPDIR) gnu/java/security/util/$(DEPDIR) gnu/java/security/x509/$(DEPDIR) gnu/java/security/x509/ext/$(DEPDIR) gnu/java/text/$(DEPDIR) gnu/java/util/$(DEPDIR) gnu/java/util/prefs/$(DEPDIR) gnu/regexp/$(DEPDIR) java/applet/$(DEPDIR) java/awt/$(DEPDIR) java/awt/color/$(DEPDIR) java/awt/datatransfer/$(DEPDIR) java/awt/dnd/$(DEPDIR) java/awt/dnd/peer/$(DEPDIR) java/awt/event/$(DEPDIR) java/awt/font/$(DEPDIR) java/awt/geom/$(DEPDIR) java/awt/im/$(DEPDIR) java/awt/im/spi/$(DEPDIR) java/awt/image/$(DEPDIR) java/awt/image/renderable/$(DEPDIR) java/awt/peer/$(DEPDIR) java/awt/print/$(DEPDIR) java/beans/$(DEPDIR) java/beans/beancontext/$(DEPDIR) java/io/$(DEPDIR) java/lang/$(DEPDIR) java/lang/ref/$(DEPDIR) java/lang/reflect/$(DEPDIR) java/math/$(DEPDIR) java/net/$(DEPDIR) java/nio/$(DEPDIR) java/nio/channels/$(DEPDIR) java/nio/channels/spi/$(DEPDIR) java/nio/charset/$(DEPDIR) java/nio/charset/spi/$(DEPDIR) java/rmi/$(DEPDIR) java/rmi/activation/$(DEPDIR) java/rmi/dgc/$(DEPDIR) java/rmi/registry/$(DEPDIR) java/rmi/server/$(DEPDIR) java/security/$(DEPDIR) java/security/acl/$(DEPDIR) java/security/cert/$(DEPDIR) java/security/interfaces/$(DEPDIR) java/security/spec/$(DEPDIR) java/sql/$(DEPDIR) java/text/$(DEPDIR) java/util/$(DEPDIR) java/util/jar/$(DEPDIR) java/util/logging/$(DEPDIR) java/util/prefs/$(DEPDIR) java/util/regex/$(DEPDIR) java/util/zip/$(DEPDIR) javax/accessibility/$(DEPDIR) javax/crypto/$(DEPDIR) javax/crypto/interfaces/$(DEPDIR) javax/crypto/spec/$(DEPDIR) javax/naming/$(DEPDIR) javax/naming/directory/$(DEPDIR) javax/naming/event/$(DEPDIR) javax/naming/ldap/$(DEPDIR) javax/naming/spi/$(DEPDIR) javax/net/$(DEPDIR) javax/net/ssl/$(DEPDIR) javax/print/$(DEPDIR) javax/print/attribute/$(DEPDIR) javax/print/attribute/standard/$(DEPDIR) javax/print/event/$(DEPDIR) javax/security/auth/$(DEPDIR) javax/security/auth/callback/$(DEPDIR) javax/security/auth/login/$(DEPDIR) javax/security/auth/spi/$(DEPDIR) javax/security/auth/x500/$(DEPDIR) javax/security/cert/$(DEPDIR) javax/security/sasl/$(DEPDIR) javax/sql/$(DEPDIR) javax/swing/$(DEPDIR) javax/swing/border/$(DEPDIR) javax/swing/colorchooser/$(DEPDIR) javax/swing/event/$(DEPDIR) javax/swing/filechooser/$(DEPDIR) javax/swing/plaf/$(DEPDIR) javax/swing/plaf/basic/$(DEPDIR) javax/swing/plaf/metal/$(DEPDIR) javax/swing/table/$(DEPDIR) javax/swing/text/$(DEPDIR) javax/swing/text/html/$(DEPDIR) javax/swing/text/html/parser/$(DEPDIR) javax/swing/tree/$(DEPDIR) javax/swing/undo/$(DEPDIR) javax/transaction/$(DEPDIR) javax/transaction/xa/$(DEPDIR) jni/classpath/$(DEPDIR) jni/gtk-peer/$(DEPDIR) org/ietf/jgss/$(DEPDIR) sysdep/$(DEPDIR)
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
@@ -26648,7 +24097,7 @@ clean-nat:
$(javao_files) $(xlib_javao_files): %.lo: %.java
$(LTGCJCOMPILE) -o $@ -c $<
-$(gtk_awt_peer_sources:.java=.lo) $(gnu_xml_source_files:.java=.lo): %.lo: %.java
+$(gtk_awt_peer_sources:.java=.lo): %.lo: %.java
$(LTGCJCOMPILE) -fjni -o $@ -c $<
libgcj.la: $(libgcj_la_OBJECTS) $(libgcj_la_DEPENDENCIES)
@@ -26664,6 +24113,26 @@ lib-gnu-awt-xlib.la: $(lib_gnu_awt_xlib_la_OBJECTS) $(lib_gnu_awt_xlib_la_DEPEND
$(lib_gnu_awt_xlib_la_LINK) -objectlist lib_gnu_awt_xlib.objectlist \
-rpath $(toolexeclibdir) $(lib_gnu_awt_xlib_la_LDFLAGS) $(LIBS)
+gnu-xml.lo: $(gnu_xml_source_files)
+ $(MAKE) classes.stamp
+ $(LTGCJCOMPILE) -fjni -findirect-dispatch -c -o gnu-xml.lo \
+ `find gnu/xml -name '*.class' -print`
+
+javax-imageio.lo: $(javax_imageio_source_files)
+ $(MAKE) classes.stamp
+ $(LTGCJCOMPILE) -findirect-dispatch -c -o javax-imageio.lo \
+ `find javax/imageio -name '*.class' -print`
+
+javax-xml.lo: $(javax_xml_source_files)
+ $(MAKE) classes.stamp
+ $(LTGCJCOMPILE) -findirect-dispatch -c -o javax-xml.lo \
+ `find javax/xml -name '*.class' -print`
+
+gnu-java-beans.lo: $(gnu_java_beans_source_files)
+ $(MAKE) classes.stamp
+ $(LTGCJCOMPILE) -findirect-dispatch -c -o gnu-java-beans.lo \
+ `find gnu/java/beans -name '*.class' -print`
+
%.h: %.class
$(GCJH) -classpath '' -bootclasspath $(top_builddir) $(basename $<)
diff --git a/libjava/aclocal.m4 b/libjava/aclocal.m4
index 286f26a..32840e5 100644
--- a/libjava/aclocal.m4
+++ b/libjava/aclocal.m4
@@ -1,7 +1,7 @@
-# generated automatically by aclocal 1.9.5 -*- Autoconf -*-
+# generated automatically by aclocal 1.9.3 -*- Autoconf -*-
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005 Free Software Foundation, Inc.
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
+# Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -11,11 +11,23 @@
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
-# Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
+# -*- Autoconf -*-
+# Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+# Generated from amversion.in; do not edit by hand.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
# AM_AUTOMAKE_VERSION(VERSION)
# ----------------------------
@@ -28,15 +40,26 @@ AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version="1.9"])
# Call AM_AUTOMAKE_VERSION so it can be traced.
# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
- [AM_AUTOMAKE_VERSION([1.9.5])])
+ [AM_AUTOMAKE_VERSION([1.9.3])])
-# AM_AUX_DIR_EXPAND -*- Autoconf -*-
+# AM_AUX_DIR_EXPAND
-# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
+# Copyright (C) 2001, 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to
@@ -83,16 +106,26 @@ AC_PREREQ([2.50])dnl
am_aux_dir=`cd $ac_aux_dir && pwd`
])
-# AM_CONDITIONAL -*- Autoconf -*-
+# AM_CONDITIONAL -*- Autoconf -*-
-# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005
-# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
+# Copyright (C) 1997, 2000, 2001, 2003, 2004 Free Software Foundation, Inc.
-# serial 7
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
+# serial 6
# AM_CONDITIONAL(NAME, SHELL-CONDITION)
# -------------------------------------
@@ -116,15 +149,26 @@ AC_CONFIG_COMMANDS_PRE(
Usually this means the macro was only invoked conditionally.]])
fi])])
+# serial 7 -*- Autoconf -*-
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-# serial 8
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
# written in clear, in which case automake, when reading aclocal.m4,
@@ -133,6 +177,7 @@ fi])])
# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
+
# _AM_DEPENDENCIES(NAME)
# ----------------------
# See how the compiler implements dependency checking.
@@ -272,16 +317,27 @@ AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
AC_SUBST([AMDEPBACKSLASH])
])
-# Generate code to set up dependency tracking. -*- Autoconf -*-
+# Generate code to set up dependency tracking. -*- Autoconf -*-
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
-# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
+# Free Software Foundation, Inc.
-#serial 3
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
+#serial 2
# _AM_OUTPUT_DEPENDENCY_COMMANDS
# ------------------------------
@@ -340,14 +396,25 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
[AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
])
-# Check for Java compiler. -*- Autoconf -*-
+# Check for Java compiler.
# For now we only handle the GNU compiler.
-# Copyright (C) 1999, 2000, 2003, 2005 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
+# Copyright (C) 1999, 2000, 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
AC_DEFUN([AM_PROG_GCJ],[
AC_CHECK_PROGS(GCJ, gcj, gcj)
@@ -359,19 +426,30 @@ AC_SUBST(GCJFLAGS)
_AM_IF_OPTION([no-dependencies],, [_AM_DEPENDENCIES(GCJ)])
])
-# Do all the work for Automake. -*- Autoconf -*-
+# Do all the work for Automake. -*- Autoconf -*-
+
+# This macro actually does too much some checks are only needed if
+# your package does certain things. But this isn't really a big deal.
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-# serial 12
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
-# This macro actually does too much. Some checks are only needed if
-# your package does certain things. But this isn't really a big deal.
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
+# serial 11
# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
# AM_INIT_AUTOMAKE([OPTIONS])
@@ -473,27 +551,51 @@ for _am_header in $config_headers :; do
done
echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count])
-# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
# AM_PROG_INSTALL_SH
# ------------------
# Define $install_sh.
+
+# Copyright (C) 2001, 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
AC_DEFUN([AM_PROG_INSTALL_SH],
[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
install_sh=${install_sh-"$am_aux_dir/install-sh"}
AC_SUBST(install_sh)])
-# Copyright (C) 2003, 2005 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
+# -*- Autoconf -*-
+# Copyright (C) 2003 Free Software Foundation, Inc.
-# serial 2
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
+# serial 1
# Check whether the underlying file-system supports filenames
# with a leading dot. For instance MS-DOS doesn't.
@@ -508,17 +610,28 @@ fi
rmdir .tst 2>/dev/null
AC_SUBST([am__leading_dot])])
-# Add --enable-maintainer-mode option to configure. -*- Autoconf -*-
+# Add --enable-maintainer-mode option to configure.
# From Jim Meyering
-# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005
+# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004
# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-# serial 4
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
+# serial 3
AC_DEFUN([AM_MAINTAINER_MODE],
[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
@@ -537,15 +650,26 @@ AC_DEFUN([AM_MAINTAINER_MODE],
AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
-# Check to see how 'make' treats includes. -*- Autoconf -*-
+# Check to see how 'make' treats includes. -*- Autoconf -*-
-# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
+# Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
-# serial 3
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
+# serial 2
# AM_MAKE_INCLUDE()
# -----------------
@@ -589,17 +713,29 @@ AC_MSG_RESULT([$_am_result])
rm -f confinc confmf
])
-# Copyright (C) 1999, 2000, 2001, 2003, 2005 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 3
+# serial 2
# AM_PROG_CC_C_O
# --------------
# Like AC_PROG_CC_C_O, but changed for automake.
+
+# Copyright (C) 1999, 2000, 2001, 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
AC_DEFUN([AM_PROG_CC_C_O],
[AC_REQUIRE([AC_PROG_CC_C_O])dnl
AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
@@ -617,16 +753,27 @@ if eval "test \"`echo '$ac_cv_prog_cc_'${ac_cc}_c_o`\" != yes"; then
fi
])
-# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
+# -*- Autoconf -*-
-# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2005
-# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-# serial 4
+# Copyright (C) 1997, 1999, 2000, 2001, 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
+# serial 3
# AM_MISSING_PROG(NAME, PROGRAM)
# ------------------------------
@@ -652,16 +799,27 @@ else
fi
])
-# Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
# AM_PROG_MKDIR_P
# ---------------
# Check whether `mkdir -p' is supported, fallback to mkinstalldirs otherwise.
-#
+
+# Copyright (C) 2003, 2004 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
# Automake 1.8 used `mkdir -m 0755 -p --' to ensure that directories
# created by `make install' are always world readable, even if the
# installer happens to have an overly restrictive umask (e.g. 077).
@@ -715,15 +873,26 @@ else
fi
AC_SUBST([mkdir_p])])
-# Helper functions for option handling. -*- Autoconf -*-
+# Helper functions for option handling. -*- Autoconf -*-
-# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
+# Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
-# serial 3
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
+# serial 2
# _AM_MANGLE_OPTION(NAME)
# -----------------------
@@ -748,16 +917,28 @@ AC_DEFUN([_AM_SET_OPTIONS],
AC_DEFUN([_AM_IF_OPTION],
[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
-# Check to make sure that the build environment is sane. -*- Autoconf -*-
-
-# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
-# Free Software Foundation, Inc.
#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
+# Check to make sure that the build environment is sane.
+#
-# serial 4
+# Copyright (C) 1996, 1997, 2000, 2001, 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
+# serial 3
# AM_SANITY_CHECK
# ---------------
@@ -800,14 +981,25 @@ Check your system clock])
fi
AC_MSG_RESULT(yes)])
-# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
# AM_PROG_INSTALL_STRIP
-# ---------------------
+
+# Copyright (C) 2001, 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
# One issue with vendor `install' (even GNU) is that you can't
# specify the program used to strip binaries. This is especially
# annoying in cross-compiling environments, where the build's strip
@@ -830,13 +1022,25 @@ AC_SUBST([INSTALL_STRIP_PROGRAM])])
# Check how to create a tarball. -*- Autoconf -*-
-# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
+# Copyright (C) 2004 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
+# serial 1
-# serial 2
# _AM_PROG_TAR(FORMAT)
# --------------------
diff --git a/libjava/external/Makefile.in b/libjava/external/Makefile.in
index 57f7c07..86248b2 100644
--- a/libjava/external/Makefile.in
+++ b/libjava/external/Makefile.in
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# Makefile.in generated by automake 1.9.3 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005 Free Software Foundation, Inc.
+# 2003, 2004 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -382,13 +382,7 @@ uninstall-info-am:
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
- @failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
+ @set fnord $$MAKEFLAGS; amf=$$2; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
@@ -400,7 +394,7 @@ $(RECURSIVE_TARGETS):
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- || eval $$failcom; \
+ || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
@@ -408,13 +402,7 @@ $(RECURSIVE_TARGETS):
mostlyclean-recursive clean-recursive distclean-recursive \
maintainer-clean-recursive:
- @failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
+ @set fnord $$MAKEFLAGS; amf=$$2; \
dot_seen=no; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
@@ -435,7 +423,7 @@ maintainer-clean-recursive:
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- || eval $$failcom; \
+ || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
diff --git a/libjava/external/sax/Makefile.am b/libjava/external/sax/Makefile.am
index 41760e5..d4bdf59 100644
--- a/libjava/external/sax/Makefile.am
+++ b/libjava/external/sax/Makefile.am
@@ -5,6 +5,9 @@ AUTOMAKE_OPTIONS = foreign subdir-objects
# May be used by various substitution variables.
gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
+## Needed because $(ZIP) is a relative path.
+MULTIBUILDTOP = ../../
+
## The compiler with whatever flags we want for both -c and -C
## compiles.
GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated -fbootclasspath=$(BOOTCLASSPATH)
@@ -20,18 +23,24 @@ AM_GCJFLAGS = \
BUILT_SOURCES = classes.stamp
-classes.stamp: $(libsax_convenience_la_SOURCES)
+sax.jar: classes.stamp
+ find org -name '*.class' -print | $(ZIP) -cfME@ $@
+
+classes.stamp: $(source_files)
here=`pwd`; cd $(srcdir); \
- $(GCJ_WITH_FLAGS) -C -d $$here $(libsax_convenience_la_SOURCES)
+ $(GCJ_WITH_FLAGS) -C -d $$here $(source_files)
echo > classes.stamp
mostlyclean-local:
-find . -name '*.class' | xargs rm
- -rm classes.stamp
+ -rm classes.stamp sax.jar
+
+toolexeclib_LTLIBRARIES = libsax-gcj.la
-noinst_LTLIBRARIES = libsax_convenience.la
+libsax_gcj_la_SOURCES = sax.jar
+libsax_gcj_la_GCJFLAGS = -findirect-dispatch
-libsax_convenience_la_SOURCES = \
+source_files = \
org/xml/sax/SAXNotSupportedException.java \
org/xml/sax/helpers/NamespaceSupport.java \
org/xml/sax/helpers/AttributesImpl.java \
diff --git a/libjava/external/sax/Makefile.in b/libjava/external/sax/Makefile.in
index 88bac22..6ca3c62 100644
--- a/libjava/external/sax/Makefile.in
+++ b/libjava/external/sax/Makefile.in
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# Makefile.in generated by automake 1.9.3 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005 Free Software Foundation, Inc.
+# 2003, 2004 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -14,7 +14,7 @@
@SET_MAKE@
-SOURCES = $(libsax_convenience_la_SOURCES)
+SOURCES = $(libsax_gcj_la_SOURCES)
srcdir = @srcdir@
top_srcdir = @top_srcdir@
@@ -58,38 +58,18 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
CONFIG_HEADER = $(top_builddir)/include/config.h \
$(top_builddir)/gcj/libgcj-config.h
CONFIG_CLEAN_FILES =
-LTLIBRARIES = $(noinst_LTLIBRARIES)
-libsax_convenience_la_LIBADD =
-am__dirstamp = $(am__leading_dot)dirstamp
-am_libsax_convenience_la_OBJECTS = \
- org/xml/sax/SAXNotSupportedException.lo \
- org/xml/sax/helpers/NamespaceSupport.lo \
- org/xml/sax/helpers/AttributesImpl.lo \
- org/xml/sax/helpers/LocatorImpl.lo \
- org/xml/sax/helpers/DefaultHandler.lo \
- org/xml/sax/helpers/AttributeListImpl.lo \
- org/xml/sax/helpers/ParserFactory.lo \
- org/xml/sax/helpers/NewInstance.lo \
- org/xml/sax/helpers/XMLFilterImpl.lo \
- org/xml/sax/helpers/ParserAdapter.lo \
- org/xml/sax/helpers/XMLReaderAdapter.lo \
- org/xml/sax/helpers/XMLReaderFactory.lo \
- org/xml/sax/HandlerBase.lo org/xml/sax/SAXException.lo \
- org/xml/sax/ContentHandler.lo \
- org/xml/sax/SAXNotRecognizedException.lo \
- org/xml/sax/ErrorHandler.lo org/xml/sax/AttributeList.lo \
- org/xml/sax/Locator.lo org/xml/sax/Attributes.lo \
- org/xml/sax/SAXParseException.lo org/xml/sax/XMLFilter.lo \
- org/xml/sax/EntityResolver.lo org/xml/sax/XMLReader.lo \
- org/xml/sax/ext/Locator2.lo org/xml/sax/ext/LexicalHandler.lo \
- org/xml/sax/ext/Attributes2Impl.lo \
- org/xml/sax/ext/DeclHandler.lo org/xml/sax/ext/Attributes2.lo \
- org/xml/sax/ext/EntityResolver2.lo \
- org/xml/sax/ext/Locator2Impl.lo \
- org/xml/sax/ext/DefaultHandler2.lo org/xml/sax/InputSource.lo \
- org/xml/sax/DocumentHandler.lo org/xml/sax/DTDHandler.lo \
- org/xml/sax/Parser.lo
-libsax_convenience_la_OBJECTS = $(am_libsax_convenience_la_OBJECTS)
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(toolexeclibdir)"
+toolexeclibLTLIBRARIES_INSTALL = $(INSTALL)
+LTLIBRARIES = $(toolexeclib_LTLIBRARIES)
+libsax_gcj_la_LIBADD =
+am_libsax_gcj_la_OBJECTS = libsax_gcj_la-sax.lo
+libsax_gcj_la_OBJECTS = $(am_libsax_gcj_la_OBJECTS)
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/include -I$(top_builddir)/gcj
depcomp = $(SHELL) $(top_srcdir)/../depcomp
am__depfiles_maybe = depfiles
@@ -99,8 +79,8 @@ LTGCJCOMPILE = $(LIBTOOL) --mode=compile $(GCJ) $(AM_GCJFLAGS) \
GCJLD = $(GCJ)
GCJLINK = $(LIBTOOL) --mode=link $(GCJLD) $(AM_GCJFLAGS) $(GCJFLAGS) \
$(AM_LDFLAGS) $(LDFLAGS) -o $@
-SOURCES = $(libsax_convenience_la_SOURCES)
-DIST_SOURCES = $(libsax_convenience_la_SOURCES)
+SOURCES = $(libsax_gcj_la_SOURCES)
+DIST_SOURCES = $(libsax_gcj_la_SOURCES)
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -327,6 +307,7 @@ AUTOMAKE_OPTIONS = foreign subdir-objects
# May be used by various substitution variables.
gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
+MULTIBUILDTOP = ../../
GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated -fbootclasspath=$(BOOTCLASSPATH)
BOOTCLASSPATH = $(here)'$(CLASSPATH_SEPARATOR)'$(srcdir)'$(CLASSPATH_SEPARATOR)'$(top_srcdir)'$(CLASSPATH_SEPARATOR)'$(top_builddir)
AM_GCJFLAGS = \
@@ -337,8 +318,10 @@ AM_GCJFLAGS = \
-Wno-deprecated
BUILT_SOURCES = classes.stamp
-noinst_LTLIBRARIES = libsax_convenience.la
-libsax_convenience_la_SOURCES = \
+toolexeclib_LTLIBRARIES = libsax-gcj.la
+libsax_gcj_la_SOURCES = sax.jar
+libsax_gcj_la_GCJFLAGS = -findirect-dispatch
+source_files = \
org/xml/sax/SAXNotSupportedException.java \
org/xml/sax/helpers/NamespaceSupport.java \
org/xml/sax/helpers/AttributesImpl.java \
@@ -380,7 +363,7 @@ all: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) all-am
.SUFFIXES:
-.SUFFIXES: .java .lo .o .obj
+.SUFFIXES: .jar .lo .o .obj
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
@@ -410,235 +393,45 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+install-toolexeclibLTLIBRARIES: $(toolexeclib_LTLIBRARIES)
+ @$(NORMAL_INSTALL)
+ test -z "$(toolexeclibdir)" || $(mkdir_p) "$(DESTDIR)$(toolexeclibdir)"
+ @list='$(toolexeclib_LTLIBRARIES)'; for p in $$list; do \
+ if test -f $$p; then \
+ f=$(am__strip_dir) \
+ echo " $(LIBTOOL) --mode=install $(toolexeclibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(toolexeclibdir)/$$f'"; \
+ $(LIBTOOL) --mode=install $(toolexeclibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(toolexeclibdir)/$$f"; \
+ else :; fi; \
+ done
+
+uninstall-toolexeclibLTLIBRARIES:
+ @$(NORMAL_UNINSTALL)
+ @set -x; list='$(toolexeclib_LTLIBRARIES)'; for p in $$list; do \
+ p=$(am__strip_dir) \
+ echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(toolexeclibdir)/$$p'"; \
+ $(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(toolexeclibdir)/$$p"; \
+ done
-clean-noinstLTLIBRARIES:
- -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
- @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \
+clean-toolexeclibLTLIBRARIES:
+ -test -z "$(toolexeclib_LTLIBRARIES)" || rm -f $(toolexeclib_LTLIBRARIES)
+ @list='$(toolexeclib_LTLIBRARIES)'; for p in $$list; do \
dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
test "$$dir" != "$$p" || dir=.; \
echo "rm -f \"$${dir}/so_locations\""; \
rm -f "$${dir}/so_locations"; \
done
-org/xml/sax/$(am__dirstamp):
- @$(mkdir_p) org/xml/sax
- @: > org/xml/sax/$(am__dirstamp)
-org/xml/sax/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) org/xml/sax/$(DEPDIR)
- @: > org/xml/sax/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/SAXNotSupportedException.lo: org/xml/sax/$(am__dirstamp) \
- org/xml/sax/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/helpers/$(am__dirstamp):
- @$(mkdir_p) org/xml/sax/helpers
- @: > org/xml/sax/helpers/$(am__dirstamp)
-org/xml/sax/helpers/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) org/xml/sax/helpers/$(DEPDIR)
- @: > org/xml/sax/helpers/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/helpers/NamespaceSupport.lo: \
- org/xml/sax/helpers/$(am__dirstamp) \
- org/xml/sax/helpers/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/helpers/AttributesImpl.lo: \
- org/xml/sax/helpers/$(am__dirstamp) \
- org/xml/sax/helpers/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/helpers/LocatorImpl.lo: \
- org/xml/sax/helpers/$(am__dirstamp) \
- org/xml/sax/helpers/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/helpers/DefaultHandler.lo: \
- org/xml/sax/helpers/$(am__dirstamp) \
- org/xml/sax/helpers/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/helpers/AttributeListImpl.lo: \
- org/xml/sax/helpers/$(am__dirstamp) \
- org/xml/sax/helpers/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/helpers/ParserFactory.lo: \
- org/xml/sax/helpers/$(am__dirstamp) \
- org/xml/sax/helpers/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/helpers/NewInstance.lo: \
- org/xml/sax/helpers/$(am__dirstamp) \
- org/xml/sax/helpers/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/helpers/XMLFilterImpl.lo: \
- org/xml/sax/helpers/$(am__dirstamp) \
- org/xml/sax/helpers/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/helpers/ParserAdapter.lo: \
- org/xml/sax/helpers/$(am__dirstamp) \
- org/xml/sax/helpers/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/helpers/XMLReaderAdapter.lo: \
- org/xml/sax/helpers/$(am__dirstamp) \
- org/xml/sax/helpers/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/helpers/XMLReaderFactory.lo: \
- org/xml/sax/helpers/$(am__dirstamp) \
- org/xml/sax/helpers/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/HandlerBase.lo: org/xml/sax/$(am__dirstamp) \
- org/xml/sax/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/SAXException.lo: org/xml/sax/$(am__dirstamp) \
- org/xml/sax/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/ContentHandler.lo: org/xml/sax/$(am__dirstamp) \
- org/xml/sax/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/SAXNotRecognizedException.lo: org/xml/sax/$(am__dirstamp) \
- org/xml/sax/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/ErrorHandler.lo: org/xml/sax/$(am__dirstamp) \
- org/xml/sax/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/AttributeList.lo: org/xml/sax/$(am__dirstamp) \
- org/xml/sax/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/Locator.lo: org/xml/sax/$(am__dirstamp) \
- org/xml/sax/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/Attributes.lo: org/xml/sax/$(am__dirstamp) \
- org/xml/sax/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/SAXParseException.lo: org/xml/sax/$(am__dirstamp) \
- org/xml/sax/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/XMLFilter.lo: org/xml/sax/$(am__dirstamp) \
- org/xml/sax/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/EntityResolver.lo: org/xml/sax/$(am__dirstamp) \
- org/xml/sax/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/XMLReader.lo: org/xml/sax/$(am__dirstamp) \
- org/xml/sax/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/ext/$(am__dirstamp):
- @$(mkdir_p) org/xml/sax/ext
- @: > org/xml/sax/ext/$(am__dirstamp)
-org/xml/sax/ext/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) org/xml/sax/ext/$(DEPDIR)
- @: > org/xml/sax/ext/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/ext/Locator2.lo: org/xml/sax/ext/$(am__dirstamp) \
- org/xml/sax/ext/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/ext/LexicalHandler.lo: org/xml/sax/ext/$(am__dirstamp) \
- org/xml/sax/ext/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/ext/Attributes2Impl.lo: org/xml/sax/ext/$(am__dirstamp) \
- org/xml/sax/ext/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/ext/DeclHandler.lo: org/xml/sax/ext/$(am__dirstamp) \
- org/xml/sax/ext/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/ext/Attributes2.lo: org/xml/sax/ext/$(am__dirstamp) \
- org/xml/sax/ext/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/ext/EntityResolver2.lo: org/xml/sax/ext/$(am__dirstamp) \
- org/xml/sax/ext/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/ext/Locator2Impl.lo: org/xml/sax/ext/$(am__dirstamp) \
- org/xml/sax/ext/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/ext/DefaultHandler2.lo: org/xml/sax/ext/$(am__dirstamp) \
- org/xml/sax/ext/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/InputSource.lo: org/xml/sax/$(am__dirstamp) \
- org/xml/sax/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/DocumentHandler.lo: org/xml/sax/$(am__dirstamp) \
- org/xml/sax/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/DTDHandler.lo: org/xml/sax/$(am__dirstamp) \
- org/xml/sax/$(DEPDIR)/$(am__dirstamp)
-org/xml/sax/Parser.lo: org/xml/sax/$(am__dirstamp) \
- org/xml/sax/$(DEPDIR)/$(am__dirstamp)
-libsax_convenience.la: $(libsax_convenience_la_OBJECTS) $(libsax_convenience_la_DEPENDENCIES)
- $(GCJLINK) $(libsax_convenience_la_LDFLAGS) $(libsax_convenience_la_OBJECTS) $(libsax_convenience_la_LIBADD) $(LIBS)
+libsax-gcj.la: $(libsax_gcj_la_OBJECTS) $(libsax_gcj_la_DEPENDENCIES)
+ $(GCJLINK) -rpath $(toolexeclibdir) $(libsax_gcj_la_LDFLAGS) $(libsax_gcj_la_OBJECTS) $(libsax_gcj_la_LIBADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
- -rm -f org/xml/sax/AttributeList.$(OBJEXT)
- -rm -f org/xml/sax/AttributeList.lo
- -rm -f org/xml/sax/Attributes.$(OBJEXT)
- -rm -f org/xml/sax/Attributes.lo
- -rm -f org/xml/sax/ContentHandler.$(OBJEXT)
- -rm -f org/xml/sax/ContentHandler.lo
- -rm -f org/xml/sax/DTDHandler.$(OBJEXT)
- -rm -f org/xml/sax/DTDHandler.lo
- -rm -f org/xml/sax/DocumentHandler.$(OBJEXT)
- -rm -f org/xml/sax/DocumentHandler.lo
- -rm -f org/xml/sax/EntityResolver.$(OBJEXT)
- -rm -f org/xml/sax/EntityResolver.lo
- -rm -f org/xml/sax/ErrorHandler.$(OBJEXT)
- -rm -f org/xml/sax/ErrorHandler.lo
- -rm -f org/xml/sax/HandlerBase.$(OBJEXT)
- -rm -f org/xml/sax/HandlerBase.lo
- -rm -f org/xml/sax/InputSource.$(OBJEXT)
- -rm -f org/xml/sax/InputSource.lo
- -rm -f org/xml/sax/Locator.$(OBJEXT)
- -rm -f org/xml/sax/Locator.lo
- -rm -f org/xml/sax/Parser.$(OBJEXT)
- -rm -f org/xml/sax/Parser.lo
- -rm -f org/xml/sax/SAXException.$(OBJEXT)
- -rm -f org/xml/sax/SAXException.lo
- -rm -f org/xml/sax/SAXNotRecognizedException.$(OBJEXT)
- -rm -f org/xml/sax/SAXNotRecognizedException.lo
- -rm -f org/xml/sax/SAXNotSupportedException.$(OBJEXT)
- -rm -f org/xml/sax/SAXNotSupportedException.lo
- -rm -f org/xml/sax/SAXParseException.$(OBJEXT)
- -rm -f org/xml/sax/SAXParseException.lo
- -rm -f org/xml/sax/XMLFilter.$(OBJEXT)
- -rm -f org/xml/sax/XMLFilter.lo
- -rm -f org/xml/sax/XMLReader.$(OBJEXT)
- -rm -f org/xml/sax/XMLReader.lo
- -rm -f org/xml/sax/ext/Attributes2.$(OBJEXT)
- -rm -f org/xml/sax/ext/Attributes2.lo
- -rm -f org/xml/sax/ext/Attributes2Impl.$(OBJEXT)
- -rm -f org/xml/sax/ext/Attributes2Impl.lo
- -rm -f org/xml/sax/ext/DeclHandler.$(OBJEXT)
- -rm -f org/xml/sax/ext/DeclHandler.lo
- -rm -f org/xml/sax/ext/DefaultHandler2.$(OBJEXT)
- -rm -f org/xml/sax/ext/DefaultHandler2.lo
- -rm -f org/xml/sax/ext/EntityResolver2.$(OBJEXT)
- -rm -f org/xml/sax/ext/EntityResolver2.lo
- -rm -f org/xml/sax/ext/LexicalHandler.$(OBJEXT)
- -rm -f org/xml/sax/ext/LexicalHandler.lo
- -rm -f org/xml/sax/ext/Locator2.$(OBJEXT)
- -rm -f org/xml/sax/ext/Locator2.lo
- -rm -f org/xml/sax/ext/Locator2Impl.$(OBJEXT)
- -rm -f org/xml/sax/ext/Locator2Impl.lo
- -rm -f org/xml/sax/helpers/AttributeListImpl.$(OBJEXT)
- -rm -f org/xml/sax/helpers/AttributeListImpl.lo
- -rm -f org/xml/sax/helpers/AttributesImpl.$(OBJEXT)
- -rm -f org/xml/sax/helpers/AttributesImpl.lo
- -rm -f org/xml/sax/helpers/DefaultHandler.$(OBJEXT)
- -rm -f org/xml/sax/helpers/DefaultHandler.lo
- -rm -f org/xml/sax/helpers/LocatorImpl.$(OBJEXT)
- -rm -f org/xml/sax/helpers/LocatorImpl.lo
- -rm -f org/xml/sax/helpers/NamespaceSupport.$(OBJEXT)
- -rm -f org/xml/sax/helpers/NamespaceSupport.lo
- -rm -f org/xml/sax/helpers/NewInstance.$(OBJEXT)
- -rm -f org/xml/sax/helpers/NewInstance.lo
- -rm -f org/xml/sax/helpers/ParserAdapter.$(OBJEXT)
- -rm -f org/xml/sax/helpers/ParserAdapter.lo
- -rm -f org/xml/sax/helpers/ParserFactory.$(OBJEXT)
- -rm -f org/xml/sax/helpers/ParserFactory.lo
- -rm -f org/xml/sax/helpers/XMLFilterImpl.$(OBJEXT)
- -rm -f org/xml/sax/helpers/XMLFilterImpl.lo
- -rm -f org/xml/sax/helpers/XMLReaderAdapter.$(OBJEXT)
- -rm -f org/xml/sax/helpers/XMLReaderAdapter.lo
- -rm -f org/xml/sax/helpers/XMLReaderFactory.$(OBJEXT)
- -rm -f org/xml/sax/helpers/XMLReaderFactory.lo
distclean-compile:
-rm -f *.tab.c
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/$(DEPDIR)/AttributeList.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/$(DEPDIR)/Attributes.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/$(DEPDIR)/ContentHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/$(DEPDIR)/DTDHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/$(DEPDIR)/DocumentHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/$(DEPDIR)/EntityResolver.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/$(DEPDIR)/ErrorHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/$(DEPDIR)/HandlerBase.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/$(DEPDIR)/InputSource.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/$(DEPDIR)/Locator.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/$(DEPDIR)/Parser.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/$(DEPDIR)/SAXException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/$(DEPDIR)/SAXNotRecognizedException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/$(DEPDIR)/SAXNotSupportedException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/$(DEPDIR)/SAXParseException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/$(DEPDIR)/XMLFilter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/$(DEPDIR)/XMLReader.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/ext/$(DEPDIR)/Attributes2.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/ext/$(DEPDIR)/Attributes2Impl.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/ext/$(DEPDIR)/DeclHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/ext/$(DEPDIR)/DefaultHandler2.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/ext/$(DEPDIR)/EntityResolver2.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/ext/$(DEPDIR)/LexicalHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/ext/$(DEPDIR)/Locator2.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/ext/$(DEPDIR)/Locator2Impl.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/helpers/$(DEPDIR)/AttributeListImpl.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/helpers/$(DEPDIR)/AttributesImpl.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/helpers/$(DEPDIR)/DefaultHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/helpers/$(DEPDIR)/LocatorImpl.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/helpers/$(DEPDIR)/NamespaceSupport.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/helpers/$(DEPDIR)/NewInstance.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/helpers/$(DEPDIR)/ParserAdapter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/helpers/$(DEPDIR)/ParserFactory.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/helpers/$(DEPDIR)/XMLFilterImpl.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/helpers/$(DEPDIR)/XMLReaderAdapter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/xml/sax/helpers/$(DEPDIR)/XMLReaderFactory.Plo@am__quote@
-
-.java.o:
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libsax_gcj_la-sax.Plo@am__quote@
+
+.jar.o:
@am__fastdepGCJ_TRUE@ depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`; \
@am__fastdepGCJ_TRUE@ if $(GCJCOMPILE) -MT $@ -MD -MP -MF "$$depbase.Tpo" -c -o $@ $<; \
@am__fastdepGCJ_TRUE@ then mv -f "$$depbase.Tpo" "$$depbase.Po"; else rm -f "$$depbase.Tpo"; exit 1; fi
@@ -646,7 +439,7 @@ distclean-compile:
@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ DEPDIR=$(DEPDIR) $(GCJDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepGCJ_FALSE@ $(GCJCOMPILE) -c -o $@ $<
-.java.obj:
+.jar.obj:
@am__fastdepGCJ_TRUE@ depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`; \
@am__fastdepGCJ_TRUE@ if $(GCJCOMPILE) -MT $@ -MD -MP -MF "$$depbase.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
@am__fastdepGCJ_TRUE@ then mv -f "$$depbase.Tpo" "$$depbase.Po"; else rm -f "$$depbase.Tpo"; exit 1; fi
@@ -654,7 +447,7 @@ distclean-compile:
@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ DEPDIR=$(DEPDIR) $(GCJDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepGCJ_FALSE@ $(GCJCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
-.java.lo:
+.jar.lo:
@am__fastdepGCJ_TRUE@ depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`; \
@am__fastdepGCJ_TRUE@ if $(LTGCJCOMPILE) -MT $@ -MD -MP -MF "$$depbase.Tpo" -c -o $@ $<; \
@am__fastdepGCJ_TRUE@ then mv -f "$$depbase.Tpo" "$$depbase.Plo"; else rm -f "$$depbase.Tpo"; exit 1; fi
@@ -662,14 +455,18 @@ distclean-compile:
@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ DEPDIR=$(DEPDIR) $(GCJDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepGCJ_FALSE@ $(LTGCJCOMPILE) -c -o $@ $<
+libsax_gcj_la-sax.lo: sax.jar
+@am__fastdepGCJ_TRUE@ if $(LIBTOOL) --mode=compile $(GCJ) $(libsax_gcj_la_GCJFLAGS) $(GCJFLAGS) -MT libsax_gcj_la-sax.lo -MD -MP -MF "$(DEPDIR)/libsax_gcj_la-sax.Tpo" -c -o libsax_gcj_la-sax.lo `test -f 'sax.jar' || echo '$(srcdir)/'`sax.jar; \
+@am__fastdepGCJ_TRUE@ then mv -f "$(DEPDIR)/libsax_gcj_la-sax.Tpo" "$(DEPDIR)/libsax_gcj_la-sax.Plo"; else rm -f "$(DEPDIR)/libsax_gcj_la-sax.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ source='sax.jar' object='libsax_gcj_la-sax.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ DEPDIR=$(DEPDIR) $(GCJDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepGCJ_FALSE@ $(LIBTOOL) --mode=compile $(GCJ) $(libsax_gcj_la_GCJFLAGS) $(GCJFLAGS) -c -o libsax_gcj_la-sax.lo `test -f 'sax.jar' || echo '$(srcdir)/'`sax.jar
+
mostlyclean-libtool:
-rm -f *.lo
clean-libtool:
-rm -rf .libs _libs
- -rm -rf org/xml/sax/.libs org/xml/sax/_libs
- -rm -rf org/xml/sax/ext/.libs org/xml/sax/ext/_libs
- -rm -rf org/xml/sax/helpers/.libs org/xml/sax/helpers/_libs
distclean-libtool:
-rm -f libtool
@@ -755,6 +552,9 @@ check: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) check-am
all-am: Makefile $(LTLIBRARIES)
installdirs:
+ for dir in "$(DESTDIR)$(toolexeclibdir)"; do \
+ test -z "$$dir" || $(mkdir_p) "$$dir"; \
+ done
install: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) install-am
install-exec: install-exec-am
@@ -776,12 +576,6 @@ clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
- -rm -f org/xml/sax/$(DEPDIR)/$(am__dirstamp)
- -rm -f org/xml/sax/$(am__dirstamp)
- -rm -f org/xml/sax/ext/$(DEPDIR)/$(am__dirstamp)
- -rm -f org/xml/sax/ext/$(am__dirstamp)
- -rm -f org/xml/sax/helpers/$(DEPDIR)/$(am__dirstamp)
- -rm -f org/xml/sax/helpers/$(am__dirstamp)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@@ -789,11 +583,11 @@ maintainer-clean-generic:
-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
clean: clean-am
-clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \
+clean-am: clean-generic clean-libtool clean-toolexeclibLTLIBRARIES \
mostlyclean-am
distclean: distclean-am
- -rm -rf org/xml/sax/$(DEPDIR) org/xml/sax/ext/$(DEPDIR) org/xml/sax/helpers/$(DEPDIR)
+ -rm -rf ./$(DEPDIR)
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-libtool distclean-tags
@@ -810,7 +604,7 @@ info-am:
install-data-am:
-install-exec-am:
+install-exec-am: install-toolexeclibLTLIBRARIES
install-info: install-info-am
@@ -819,7 +613,7 @@ install-man:
installcheck-am:
maintainer-clean: maintainer-clean-am
- -rm -rf org/xml/sax/$(DEPDIR) org/xml/sax/ext/$(DEPDIR) org/xml/sax/helpers/$(DEPDIR)
+ -rm -rf ./$(DEPDIR)
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
@@ -836,29 +630,33 @@ ps: ps-am
ps-am:
-uninstall-am: uninstall-info-am
+uninstall-am: uninstall-info-am uninstall-toolexeclibLTLIBRARIES
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
- clean-libtool clean-noinstLTLIBRARIES ctags distclean \
+ clean-libtool clean-toolexeclibLTLIBRARIES ctags distclean \
distclean-compile distclean-generic distclean-libtool \
distclean-tags distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-exec \
install-exec-am install-info install-info-am install-man \
- install-strip installcheck installcheck-am installdirs \
- maintainer-clean maintainer-clean-generic mostlyclean \
- mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
- mostlyclean-local pdf pdf-am ps ps-am tags uninstall \
- uninstall-am uninstall-info-am
+ install-strip install-toolexeclibLTLIBRARIES installcheck \
+ installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-compile \
+ mostlyclean-generic mostlyclean-libtool mostlyclean-local pdf \
+ pdf-am ps ps-am tags uninstall uninstall-am uninstall-info-am \
+ uninstall-toolexeclibLTLIBRARIES
+
+sax.jar: classes.stamp
+ find org -name '*.class' -print | $(ZIP) -cfME@ $@
-classes.stamp: $(libsax_convenience_la_SOURCES)
+classes.stamp: $(source_files)
here=`pwd`; cd $(srcdir); \
- $(GCJ_WITH_FLAGS) -C -d $$here $(libsax_convenience_la_SOURCES)
+ $(GCJ_WITH_FLAGS) -C -d $$here $(source_files)
echo > classes.stamp
mostlyclean-local:
-find . -name '*.class' | xargs rm
- -rm classes.stamp
+ -rm classes.stamp sax.jar
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/libjava/external/sax/org/xml/sax/helpers/NamespaceSupport.java b/libjava/external/sax/org/xml/sax/helpers/NamespaceSupport.java
index 01e11fa..52472fa 100644
--- a/libjava/external/sax/org/xml/sax/helpers/NamespaceSupport.java
+++ b/libjava/external/sax/org/xml/sax/helpers/NamespaceSupport.java
@@ -2,7 +2,7 @@
// http://www.saxproject.org
// Written by David Megginson
// This class is in the Public Domain. NO WARRANTY!
-// $Id: NamespaceSupport.java,v 1.1 2004/12/23 22:38:42 mark Exp $
+// $Id: NamespaceSupport.java,v 1.1 2005/02/02 00:41:54 tromey Exp $
package org.xml.sax.helpers;
@@ -113,7 +113,8 @@ public class NamespaceSupport
/**
* An empty enumeration.
*/
- private final static Enumeration EMPTY_ENUMERATION =
+ // GCJ LOCAL: work around gcj bug by making this package-private
+ final static Enumeration EMPTY_ENUMERATION =
new Vector().elements();
diff --git a/libjava/external/w3c_dom/Makefile.am b/libjava/external/w3c_dom/Makefile.am
index 9eaa39a..f94e562 100644
--- a/libjava/external/w3c_dom/Makefile.am
+++ b/libjava/external/w3c_dom/Makefile.am
@@ -5,6 +5,9 @@ AUTOMAKE_OPTIONS = foreign subdir-objects
# May be used by various substitution variables.
gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
+## Needed because $(ZIP) is a relative path.
+MULTIBUILDTOP = ../../
+
## The compiler with whatever flags we want for both -c and -C
## compiles.
GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated -fbootclasspath=$(BOOTCLASSPATH)
@@ -20,18 +23,24 @@ AM_GCJFLAGS = \
BUILT_SOURCES = classes.stamp
-classes.stamp: $(libw3c_convenience_la_SOURCES)
+w3c.jar: classes.stamp
+ find org -name '*.class' -print | $(ZIP) -cfME@ $@
+
+classes.stamp: $(source_files)
here=`pwd`; cd $(srcdir); \
- $(GCJ_WITH_FLAGS) -C -d $$here $(libw3c_convenience_la_SOURCES)
+ $(GCJ_WITH_FLAGS) -C -d $$here $(source_files)
echo > classes.stamp
mostlyclean-local:
-find . -name '*.class' | xargs rm
- -rm classes.stamp
+ -rm classes.stamp w3c.jar
+
+toolexeclib_LTLIBRARIES = libw3c-gcj.la
-noinst_LTLIBRARIES = libw3c_convenience.la
+libw3c_gcj_la_SOURCES = w3c.jar
+libw3c_gcj_la_GCJFLAGS = -findirect-dispatch
-libw3c_convenience_la_SOURCES = \
+source_files = \
org/w3c/dom/xpath/XPathNamespace.java \
org/w3c/dom/xpath/XPathResult.java \
org/w3c/dom/xpath/XPathException.java \
diff --git a/libjava/external/w3c_dom/Makefile.in b/libjava/external/w3c_dom/Makefile.in
index 8d64e75..6aef501 100644
--- a/libjava/external/w3c_dom/Makefile.in
+++ b/libjava/external/w3c_dom/Makefile.in
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# Makefile.in generated by automake 1.9.3 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005 Free Software Foundation, Inc.
+# 2003, 2004 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -14,7 +14,7 @@
@SET_MAKE@
-SOURCES = $(libw3c_convenience_la_SOURCES)
+SOURCES = $(libw3c_gcj_la_SOURCES)
srcdir = @srcdir@
top_srcdir = @top_srcdir@
@@ -58,132 +58,18 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
CONFIG_HEADER = $(top_builddir)/include/config.h \
$(top_builddir)/gcj/libgcj-config.h
CONFIG_CLEAN_FILES =
-LTLIBRARIES = $(noinst_LTLIBRARIES)
-libw3c_convenience_la_LIBADD =
-am__dirstamp = $(am__leading_dot)dirstamp
-am_libw3c_convenience_la_OBJECTS = \
- org/w3c/dom/xpath/XPathNamespace.lo \
- org/w3c/dom/xpath/XPathResult.lo \
- org/w3c/dom/xpath/XPathException.lo \
- org/w3c/dom/xpath/XPathExpression.lo \
- org/w3c/dom/xpath/XPathNSResolver.lo \
- org/w3c/dom/xpath/XPathEvaluator.lo \
- org/w3c/dom/DOMException.lo org/w3c/dom/Comment.lo \
- org/w3c/dom/stylesheets/DocumentStyle.lo \
- org/w3c/dom/stylesheets/MediaList.lo \
- org/w3c/dom/stylesheets/LinkStyle.lo \
- org/w3c/dom/stylesheets/StyleSheet.lo \
- org/w3c/dom/stylesheets/StyleSheetList.lo org/w3c/dom/Attr.lo \
- org/w3c/dom/Notation.lo org/w3c/dom/TypeInfo.lo \
- org/w3c/dom/html2/HTMLIsIndexElement.lo \
- org/w3c/dom/html2/HTMLTableColElement.lo \
- org/w3c/dom/html2/HTMLLinkElement.lo \
- org/w3c/dom/html2/HTMLTitleElement.lo \
- org/w3c/dom/html2/HTMLBRElement.lo \
- org/w3c/dom/html2/HTMLHeadElement.lo \
- org/w3c/dom/html2/HTMLHtmlElement.lo \
- org/w3c/dom/html2/HTMLScriptElement.lo \
- org/w3c/dom/html2/HTMLTableRowElement.lo \
- org/w3c/dom/html2/HTMLOptionsCollection.lo \
- org/w3c/dom/html2/HTMLTableCellElement.lo \
- org/w3c/dom/html2/HTMLDListElement.lo \
- org/w3c/dom/html2/HTMLFieldSetElement.lo \
- org/w3c/dom/html2/HTMLImageElement.lo \
- org/w3c/dom/html2/HTMLHRElement.lo \
- org/w3c/dom/html2/HTMLModElement.lo \
- org/w3c/dom/html2/HTMLHeadingElement.lo \
- org/w3c/dom/html2/HTMLTableElement.lo \
- org/w3c/dom/html2/HTMLAreaElement.lo \
- org/w3c/dom/html2/HTMLOptGroupElement.lo \
- org/w3c/dom/html2/HTMLIFrameElement.lo \
- org/w3c/dom/html2/HTMLDirectoryElement.lo \
- org/w3c/dom/html2/HTMLParamElement.lo \
- org/w3c/dom/html2/HTMLLegendElement.lo \
- org/w3c/dom/html2/HTMLFrameElement.lo \
- org/w3c/dom/html2/HTMLFormElement.lo \
- org/w3c/dom/html2/HTMLStyleElement.lo \
- org/w3c/dom/html2/HTMLFrameSetElement.lo \
- org/w3c/dom/html2/HTMLCollection.lo \
- org/w3c/dom/html2/HTMLAnchorElement.lo \
- org/w3c/dom/html2/HTMLLabelElement.lo \
- org/w3c/dom/html2/HTMLBodyElement.lo \
- org/w3c/dom/html2/HTMLOptionElement.lo \
- org/w3c/dom/html2/HTMLTableSectionElement.lo \
- org/w3c/dom/html2/HTMLAppletElement.lo \
- org/w3c/dom/html2/HTMLSelectElement.lo \
- org/w3c/dom/html2/HTMLMetaElement.lo \
- org/w3c/dom/html2/HTMLMenuElement.lo \
- org/w3c/dom/html2/HTMLDivElement.lo \
- org/w3c/dom/html2/HTMLLIElement.lo \
- org/w3c/dom/html2/HTMLFontElement.lo \
- org/w3c/dom/html2/HTMLOListElement.lo \
- org/w3c/dom/html2/HTMLBaseFontElement.lo \
- org/w3c/dom/html2/HTMLElement.lo \
- org/w3c/dom/html2/HTMLTableCaptionElement.lo \
- org/w3c/dom/html2/HTMLTextAreaElement.lo \
- org/w3c/dom/html2/HTMLPreElement.lo \
- org/w3c/dom/html2/HTMLObjectElement.lo \
- org/w3c/dom/html2/HTMLBaseElement.lo \
- org/w3c/dom/html2/HTMLUListElement.lo \
- org/w3c/dom/html2/HTMLMapElement.lo \
- org/w3c/dom/html2/HTMLParagraphElement.lo \
- org/w3c/dom/html2/HTMLButtonElement.lo \
- org/w3c/dom/html2/HTMLQuoteElement.lo \
- org/w3c/dom/html2/HTMLInputElement.lo \
- org/w3c/dom/html2/HTMLDocument.lo org/w3c/dom/ls/LSParser.lo \
- org/w3c/dom/ls/LSSerializerFilter.lo \
- org/w3c/dom/ls/LSLoadEvent.lo \
- org/w3c/dom/ls/DOMImplementationLS.lo \
- org/w3c/dom/ls/LSException.lo org/w3c/dom/ls/LSSerializer.lo \
- org/w3c/dom/ls/LSResourceResolver.lo \
- org/w3c/dom/ls/LSOutput.lo org/w3c/dom/ls/LSInput.lo \
- org/w3c/dom/ls/LSProgressEvent.lo \
- org/w3c/dom/ls/LSParserFilter.lo org/w3c/dom/DOMLocator.lo \
- org/w3c/dom/DOMStringList.lo org/w3c/dom/DocumentFragment.lo \
- org/w3c/dom/events/MutationEvent.lo \
- org/w3c/dom/events/UIEvent.lo \
- org/w3c/dom/events/EventListener.lo \
- org/w3c/dom/events/Event.lo org/w3c/dom/events/MouseEvent.lo \
- org/w3c/dom/events/EventTarget.lo \
- org/w3c/dom/events/DocumentEvent.lo \
- org/w3c/dom/events/EventException.lo \
- org/w3c/dom/EntityReference.lo org/w3c/dom/DOMErrorHandler.lo \
- org/w3c/dom/views/AbstractView.lo \
- org/w3c/dom/views/DocumentView.lo org/w3c/dom/DOMError.lo \
- org/w3c/dom/bootstrap/DOMImplementationRegistry.lo \
- org/w3c/dom/traversal/TreeWalker.lo \
- org/w3c/dom/traversal/NodeFilter.lo \
- org/w3c/dom/traversal/DocumentTraversal.lo \
- org/w3c/dom/traversal/NodeIterator.lo \
- org/w3c/dom/CharacterData.lo org/w3c/dom/DOMConfiguration.lo \
- org/w3c/dom/css/CSSRule.lo org/w3c/dom/css/Rect.lo \
- org/w3c/dom/css/CSSStyleSheet.lo \
- org/w3c/dom/css/CSSFontFaceRule.lo \
- org/w3c/dom/css/CSSPrimitiveValue.lo \
- org/w3c/dom/css/CSSRuleList.lo org/w3c/dom/css/ViewCSS.lo \
- org/w3c/dom/css/CSSStyleRule.lo \
- org/w3c/dom/css/CSSUnknownRule.lo org/w3c/dom/css/RGBColor.lo \
- org/w3c/dom/css/ElementCSSInlineStyle.lo \
- org/w3c/dom/css/CSSMediaRule.lo \
- org/w3c/dom/css/CSS2Properties.lo org/w3c/dom/css/CSSValue.lo \
- org/w3c/dom/css/CSSStyleDeclaration.lo \
- org/w3c/dom/css/DOMImplementationCSS.lo \
- org/w3c/dom/css/CSSCharsetRule.lo org/w3c/dom/css/Counter.lo \
- org/w3c/dom/css/CSSPageRule.lo org/w3c/dom/css/DocumentCSS.lo \
- org/w3c/dom/css/CSSValueList.lo \
- org/w3c/dom/css/CSSImportRule.lo org/w3c/dom/NameList.lo \
- org/w3c/dom/Element.lo org/w3c/dom/Document.lo \
- org/w3c/dom/ranges/Range.lo \
- org/w3c/dom/ranges/RangeException.lo \
- org/w3c/dom/ranges/DocumentRange.lo \
- org/w3c/dom/DOMImplementationList.lo org/w3c/dom/Entity.lo \
- org/w3c/dom/UserDataHandler.lo \
- org/w3c/dom/DOMImplementation.lo org/w3c/dom/CDATASection.lo \
- org/w3c/dom/ProcessingInstruction.lo org/w3c/dom/Node.lo \
- org/w3c/dom/NamedNodeMap.lo org/w3c/dom/NodeList.lo \
- org/w3c/dom/Text.lo org/w3c/dom/DocumentType.lo \
- org/w3c/dom/DOMImplementationSource.lo
-libw3c_convenience_la_OBJECTS = $(am_libw3c_convenience_la_OBJECTS)
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(toolexeclibdir)"
+toolexeclibLTLIBRARIES_INSTALL = $(INSTALL)
+LTLIBRARIES = $(toolexeclib_LTLIBRARIES)
+libw3c_gcj_la_LIBADD =
+am_libw3c_gcj_la_OBJECTS = libw3c_gcj_la-w3c.lo
+libw3c_gcj_la_OBJECTS = $(am_libw3c_gcj_la_OBJECTS)
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/include -I$(top_builddir)/gcj
depcomp = $(SHELL) $(top_srcdir)/../depcomp
am__depfiles_maybe = depfiles
@@ -193,8 +79,8 @@ LTGCJCOMPILE = $(LIBTOOL) --mode=compile $(GCJ) $(AM_GCJFLAGS) \
GCJLD = $(GCJ)
GCJLINK = $(LIBTOOL) --mode=link $(GCJLD) $(AM_GCJFLAGS) $(GCJFLAGS) \
$(AM_LDFLAGS) $(LDFLAGS) -o $@
-SOURCES = $(libw3c_convenience_la_SOURCES)
-DIST_SOURCES = $(libw3c_convenience_la_SOURCES)
+SOURCES = $(libw3c_gcj_la_SOURCES)
+DIST_SOURCES = $(libw3c_gcj_la_SOURCES)
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -421,6 +307,7 @@ AUTOMAKE_OPTIONS = foreign subdir-objects
# May be used by various substitution variables.
gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
+MULTIBUILDTOP = ../../
GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated -fbootclasspath=$(BOOTCLASSPATH)
BOOTCLASSPATH = $(here)'$(CLASSPATH_SEPARATOR)'$(srcdir)'$(CLASSPATH_SEPARATOR)'$(top_srcdir)'$(CLASSPATH_SEPARATOR)'$(top_builddir)
AM_GCJFLAGS = \
@@ -431,8 +318,10 @@ AM_GCJFLAGS = \
-Wno-deprecated
BUILT_SOURCES = classes.stamp
-noinst_LTLIBRARIES = libw3c_convenience.la
-libw3c_convenience_la_SOURCES = \
+toolexeclib_LTLIBRARIES = libw3c-gcj.la
+libw3c_gcj_la_SOURCES = w3c.jar
+libw3c_gcj_la_GCJFLAGS = -findirect-dispatch
+source_files = \
org/w3c/dom/xpath/XPathNamespace.java \
org/w3c/dom/xpath/XPathResult.java \
org/w3c/dom/xpath/XPathException.java \
@@ -584,7 +473,7 @@ all: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) all-am
.SUFFIXES:
-.SUFFIXES: .java .lo .o .obj
+.SUFFIXES: .jar .lo .o .obj
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
@@ -614,897 +503,45 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+install-toolexeclibLTLIBRARIES: $(toolexeclib_LTLIBRARIES)
+ @$(NORMAL_INSTALL)
+ test -z "$(toolexeclibdir)" || $(mkdir_p) "$(DESTDIR)$(toolexeclibdir)"
+ @list='$(toolexeclib_LTLIBRARIES)'; for p in $$list; do \
+ if test -f $$p; then \
+ f=$(am__strip_dir) \
+ echo " $(LIBTOOL) --mode=install $(toolexeclibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(toolexeclibdir)/$$f'"; \
+ $(LIBTOOL) --mode=install $(toolexeclibLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(toolexeclibdir)/$$f"; \
+ else :; fi; \
+ done
+
+uninstall-toolexeclibLTLIBRARIES:
+ @$(NORMAL_UNINSTALL)
+ @set -x; list='$(toolexeclib_LTLIBRARIES)'; for p in $$list; do \
+ p=$(am__strip_dir) \
+ echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(toolexeclibdir)/$$p'"; \
+ $(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(toolexeclibdir)/$$p"; \
+ done
-clean-noinstLTLIBRARIES:
- -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
- @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \
+clean-toolexeclibLTLIBRARIES:
+ -test -z "$(toolexeclib_LTLIBRARIES)" || rm -f $(toolexeclib_LTLIBRARIES)
+ @list='$(toolexeclib_LTLIBRARIES)'; for p in $$list; do \
dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
test "$$dir" != "$$p" || dir=.; \
echo "rm -f \"$${dir}/so_locations\""; \
rm -f "$${dir}/so_locations"; \
done
-org/w3c/dom/xpath/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/xpath
- @: > org/w3c/dom/xpath/$(am__dirstamp)
-org/w3c/dom/xpath/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/xpath/$(DEPDIR)
- @: > org/w3c/dom/xpath/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/xpath/XPathNamespace.lo: \
- org/w3c/dom/xpath/$(am__dirstamp) \
- org/w3c/dom/xpath/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/xpath/XPathResult.lo: org/w3c/dom/xpath/$(am__dirstamp) \
- org/w3c/dom/xpath/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/xpath/XPathException.lo: \
- org/w3c/dom/xpath/$(am__dirstamp) \
- org/w3c/dom/xpath/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/xpath/XPathExpression.lo: \
- org/w3c/dom/xpath/$(am__dirstamp) \
- org/w3c/dom/xpath/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/xpath/XPathNSResolver.lo: \
- org/w3c/dom/xpath/$(am__dirstamp) \
- org/w3c/dom/xpath/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/xpath/XPathEvaluator.lo: \
- org/w3c/dom/xpath/$(am__dirstamp) \
- org/w3c/dom/xpath/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom
- @: > org/w3c/dom/$(am__dirstamp)
-org/w3c/dom/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/$(DEPDIR)
- @: > org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/DOMException.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/Comment.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/stylesheets/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/stylesheets
- @: > org/w3c/dom/stylesheets/$(am__dirstamp)
-org/w3c/dom/stylesheets/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/stylesheets/$(DEPDIR)
- @: > org/w3c/dom/stylesheets/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/stylesheets/DocumentStyle.lo: \
- org/w3c/dom/stylesheets/$(am__dirstamp) \
- org/w3c/dom/stylesheets/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/stylesheets/MediaList.lo: \
- org/w3c/dom/stylesheets/$(am__dirstamp) \
- org/w3c/dom/stylesheets/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/stylesheets/LinkStyle.lo: \
- org/w3c/dom/stylesheets/$(am__dirstamp) \
- org/w3c/dom/stylesheets/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/stylesheets/StyleSheet.lo: \
- org/w3c/dom/stylesheets/$(am__dirstamp) \
- org/w3c/dom/stylesheets/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/stylesheets/StyleSheetList.lo: \
- org/w3c/dom/stylesheets/$(am__dirstamp) \
- org/w3c/dom/stylesheets/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/Attr.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/Notation.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/TypeInfo.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/html2
- @: > org/w3c/dom/html2/$(am__dirstamp)
-org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/html2/$(DEPDIR)
- @: > org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLIsIndexElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLTableColElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLLinkElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLTitleElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLBRElement.lo: org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLHeadElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLHtmlElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLScriptElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLTableRowElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLOptionsCollection.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLTableCellElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLDListElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLFieldSetElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLImageElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLHRElement.lo: org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLModElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLHeadingElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLTableElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLAreaElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLOptGroupElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLIFrameElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLDirectoryElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLParamElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLLegendElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLFrameElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLFormElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLStyleElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLFrameSetElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLCollection.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLAnchorElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLLabelElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLBodyElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLOptionElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLTableSectionElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLAppletElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLSelectElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLMetaElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLMenuElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLDivElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLLIElement.lo: org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLFontElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLOListElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLBaseFontElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLElement.lo: org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLTableCaptionElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLTextAreaElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLPreElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLObjectElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLBaseElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLUListElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLMapElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLParagraphElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLButtonElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLQuoteElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLInputElement.lo: \
- org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/html2/HTMLDocument.lo: org/w3c/dom/html2/$(am__dirstamp) \
- org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/ls/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/ls
- @: > org/w3c/dom/ls/$(am__dirstamp)
-org/w3c/dom/ls/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/ls/$(DEPDIR)
- @: > org/w3c/dom/ls/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/ls/LSParser.lo: org/w3c/dom/ls/$(am__dirstamp) \
- org/w3c/dom/ls/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/ls/LSSerializerFilter.lo: org/w3c/dom/ls/$(am__dirstamp) \
- org/w3c/dom/ls/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/ls/LSLoadEvent.lo: org/w3c/dom/ls/$(am__dirstamp) \
- org/w3c/dom/ls/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/ls/DOMImplementationLS.lo: org/w3c/dom/ls/$(am__dirstamp) \
- org/w3c/dom/ls/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/ls/LSException.lo: org/w3c/dom/ls/$(am__dirstamp) \
- org/w3c/dom/ls/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/ls/LSSerializer.lo: org/w3c/dom/ls/$(am__dirstamp) \
- org/w3c/dom/ls/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/ls/LSResourceResolver.lo: org/w3c/dom/ls/$(am__dirstamp) \
- org/w3c/dom/ls/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/ls/LSOutput.lo: org/w3c/dom/ls/$(am__dirstamp) \
- org/w3c/dom/ls/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/ls/LSInput.lo: org/w3c/dom/ls/$(am__dirstamp) \
- org/w3c/dom/ls/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/ls/LSProgressEvent.lo: org/w3c/dom/ls/$(am__dirstamp) \
- org/w3c/dom/ls/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/ls/LSParserFilter.lo: org/w3c/dom/ls/$(am__dirstamp) \
- org/w3c/dom/ls/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/DOMLocator.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/DOMStringList.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/DocumentFragment.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/events/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/events
- @: > org/w3c/dom/events/$(am__dirstamp)
-org/w3c/dom/events/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/events/$(DEPDIR)
- @: > org/w3c/dom/events/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/events/MutationEvent.lo: \
- org/w3c/dom/events/$(am__dirstamp) \
- org/w3c/dom/events/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/events/UIEvent.lo: org/w3c/dom/events/$(am__dirstamp) \
- org/w3c/dom/events/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/events/EventListener.lo: \
- org/w3c/dom/events/$(am__dirstamp) \
- org/w3c/dom/events/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/events/Event.lo: org/w3c/dom/events/$(am__dirstamp) \
- org/w3c/dom/events/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/events/MouseEvent.lo: org/w3c/dom/events/$(am__dirstamp) \
- org/w3c/dom/events/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/events/EventTarget.lo: org/w3c/dom/events/$(am__dirstamp) \
- org/w3c/dom/events/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/events/DocumentEvent.lo: \
- org/w3c/dom/events/$(am__dirstamp) \
- org/w3c/dom/events/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/events/EventException.lo: \
- org/w3c/dom/events/$(am__dirstamp) \
- org/w3c/dom/events/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/EntityReference.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/DOMErrorHandler.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/views/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/views
- @: > org/w3c/dom/views/$(am__dirstamp)
-org/w3c/dom/views/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/views/$(DEPDIR)
- @: > org/w3c/dom/views/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/views/AbstractView.lo: org/w3c/dom/views/$(am__dirstamp) \
- org/w3c/dom/views/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/views/DocumentView.lo: org/w3c/dom/views/$(am__dirstamp) \
- org/w3c/dom/views/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/DOMError.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/bootstrap/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/bootstrap
- @: > org/w3c/dom/bootstrap/$(am__dirstamp)
-org/w3c/dom/bootstrap/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/bootstrap/$(DEPDIR)
- @: > org/w3c/dom/bootstrap/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/bootstrap/DOMImplementationRegistry.lo: \
- org/w3c/dom/bootstrap/$(am__dirstamp) \
- org/w3c/dom/bootstrap/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/traversal/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/traversal
- @: > org/w3c/dom/traversal/$(am__dirstamp)
-org/w3c/dom/traversal/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/traversal/$(DEPDIR)
- @: > org/w3c/dom/traversal/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/traversal/TreeWalker.lo: \
- org/w3c/dom/traversal/$(am__dirstamp) \
- org/w3c/dom/traversal/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/traversal/NodeFilter.lo: \
- org/w3c/dom/traversal/$(am__dirstamp) \
- org/w3c/dom/traversal/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/traversal/DocumentTraversal.lo: \
- org/w3c/dom/traversal/$(am__dirstamp) \
- org/w3c/dom/traversal/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/traversal/NodeIterator.lo: \
- org/w3c/dom/traversal/$(am__dirstamp) \
- org/w3c/dom/traversal/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/CharacterData.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/DOMConfiguration.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/css
- @: > org/w3c/dom/css/$(am__dirstamp)
-org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/css/$(DEPDIR)
- @: > org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/CSSRule.lo: org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/Rect.lo: org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/CSSStyleSheet.lo: org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/CSSFontFaceRule.lo: org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/CSSPrimitiveValue.lo: org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/CSSRuleList.lo: org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/ViewCSS.lo: org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/CSSStyleRule.lo: org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/CSSUnknownRule.lo: org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/RGBColor.lo: org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/ElementCSSInlineStyle.lo: \
- org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/CSSMediaRule.lo: org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/CSS2Properties.lo: org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/CSSValue.lo: org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/CSSStyleDeclaration.lo: \
- org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/DOMImplementationCSS.lo: \
- org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/CSSCharsetRule.lo: org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/Counter.lo: org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/CSSPageRule.lo: org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/DocumentCSS.lo: org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/CSSValueList.lo: org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/css/CSSImportRule.lo: org/w3c/dom/css/$(am__dirstamp) \
- org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/NameList.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/Element.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/Document.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/ranges/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/ranges
- @: > org/w3c/dom/ranges/$(am__dirstamp)
-org/w3c/dom/ranges/$(DEPDIR)/$(am__dirstamp):
- @$(mkdir_p) org/w3c/dom/ranges/$(DEPDIR)
- @: > org/w3c/dom/ranges/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/ranges/Range.lo: org/w3c/dom/ranges/$(am__dirstamp) \
- org/w3c/dom/ranges/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/ranges/RangeException.lo: \
- org/w3c/dom/ranges/$(am__dirstamp) \
- org/w3c/dom/ranges/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/ranges/DocumentRange.lo: \
- org/w3c/dom/ranges/$(am__dirstamp) \
- org/w3c/dom/ranges/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/DOMImplementationList.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/Entity.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/UserDataHandler.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/DOMImplementation.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/CDATASection.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/ProcessingInstruction.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/Node.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/NamedNodeMap.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/NodeList.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/Text.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/DocumentType.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-org/w3c/dom/DOMImplementationSource.lo: org/w3c/dom/$(am__dirstamp) \
- org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
-libw3c_convenience.la: $(libw3c_convenience_la_OBJECTS) $(libw3c_convenience_la_DEPENDENCIES)
- $(GCJLINK) $(libw3c_convenience_la_LDFLAGS) $(libw3c_convenience_la_OBJECTS) $(libw3c_convenience_la_LIBADD) $(LIBS)
+libw3c-gcj.la: $(libw3c_gcj_la_OBJECTS) $(libw3c_gcj_la_DEPENDENCIES)
+ $(GCJLINK) -rpath $(toolexeclibdir) $(libw3c_gcj_la_LDFLAGS) $(libw3c_gcj_la_OBJECTS) $(libw3c_gcj_la_LIBADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
- -rm -f org/w3c/dom/Attr.$(OBJEXT)
- -rm -f org/w3c/dom/Attr.lo
- -rm -f org/w3c/dom/CDATASection.$(OBJEXT)
- -rm -f org/w3c/dom/CDATASection.lo
- -rm -f org/w3c/dom/CharacterData.$(OBJEXT)
- -rm -f org/w3c/dom/CharacterData.lo
- -rm -f org/w3c/dom/Comment.$(OBJEXT)
- -rm -f org/w3c/dom/Comment.lo
- -rm -f org/w3c/dom/DOMConfiguration.$(OBJEXT)
- -rm -f org/w3c/dom/DOMConfiguration.lo
- -rm -f org/w3c/dom/DOMError.$(OBJEXT)
- -rm -f org/w3c/dom/DOMError.lo
- -rm -f org/w3c/dom/DOMErrorHandler.$(OBJEXT)
- -rm -f org/w3c/dom/DOMErrorHandler.lo
- -rm -f org/w3c/dom/DOMException.$(OBJEXT)
- -rm -f org/w3c/dom/DOMException.lo
- -rm -f org/w3c/dom/DOMImplementation.$(OBJEXT)
- -rm -f org/w3c/dom/DOMImplementation.lo
- -rm -f org/w3c/dom/DOMImplementationList.$(OBJEXT)
- -rm -f org/w3c/dom/DOMImplementationList.lo
- -rm -f org/w3c/dom/DOMImplementationSource.$(OBJEXT)
- -rm -f org/w3c/dom/DOMImplementationSource.lo
- -rm -f org/w3c/dom/DOMLocator.$(OBJEXT)
- -rm -f org/w3c/dom/DOMLocator.lo
- -rm -f org/w3c/dom/DOMStringList.$(OBJEXT)
- -rm -f org/w3c/dom/DOMStringList.lo
- -rm -f org/w3c/dom/Document.$(OBJEXT)
- -rm -f org/w3c/dom/Document.lo
- -rm -f org/w3c/dom/DocumentFragment.$(OBJEXT)
- -rm -f org/w3c/dom/DocumentFragment.lo
- -rm -f org/w3c/dom/DocumentType.$(OBJEXT)
- -rm -f org/w3c/dom/DocumentType.lo
- -rm -f org/w3c/dom/Element.$(OBJEXT)
- -rm -f org/w3c/dom/Element.lo
- -rm -f org/w3c/dom/Entity.$(OBJEXT)
- -rm -f org/w3c/dom/Entity.lo
- -rm -f org/w3c/dom/EntityReference.$(OBJEXT)
- -rm -f org/w3c/dom/EntityReference.lo
- -rm -f org/w3c/dom/NameList.$(OBJEXT)
- -rm -f org/w3c/dom/NameList.lo
- -rm -f org/w3c/dom/NamedNodeMap.$(OBJEXT)
- -rm -f org/w3c/dom/NamedNodeMap.lo
- -rm -f org/w3c/dom/Node.$(OBJEXT)
- -rm -f org/w3c/dom/Node.lo
- -rm -f org/w3c/dom/NodeList.$(OBJEXT)
- -rm -f org/w3c/dom/NodeList.lo
- -rm -f org/w3c/dom/Notation.$(OBJEXT)
- -rm -f org/w3c/dom/Notation.lo
- -rm -f org/w3c/dom/ProcessingInstruction.$(OBJEXT)
- -rm -f org/w3c/dom/ProcessingInstruction.lo
- -rm -f org/w3c/dom/Text.$(OBJEXT)
- -rm -f org/w3c/dom/Text.lo
- -rm -f org/w3c/dom/TypeInfo.$(OBJEXT)
- -rm -f org/w3c/dom/TypeInfo.lo
- -rm -f org/w3c/dom/UserDataHandler.$(OBJEXT)
- -rm -f org/w3c/dom/UserDataHandler.lo
- -rm -f org/w3c/dom/bootstrap/DOMImplementationRegistry.$(OBJEXT)
- -rm -f org/w3c/dom/bootstrap/DOMImplementationRegistry.lo
- -rm -f org/w3c/dom/css/CSS2Properties.$(OBJEXT)
- -rm -f org/w3c/dom/css/CSS2Properties.lo
- -rm -f org/w3c/dom/css/CSSCharsetRule.$(OBJEXT)
- -rm -f org/w3c/dom/css/CSSCharsetRule.lo
- -rm -f org/w3c/dom/css/CSSFontFaceRule.$(OBJEXT)
- -rm -f org/w3c/dom/css/CSSFontFaceRule.lo
- -rm -f org/w3c/dom/css/CSSImportRule.$(OBJEXT)
- -rm -f org/w3c/dom/css/CSSImportRule.lo
- -rm -f org/w3c/dom/css/CSSMediaRule.$(OBJEXT)
- -rm -f org/w3c/dom/css/CSSMediaRule.lo
- -rm -f org/w3c/dom/css/CSSPageRule.$(OBJEXT)
- -rm -f org/w3c/dom/css/CSSPageRule.lo
- -rm -f org/w3c/dom/css/CSSPrimitiveValue.$(OBJEXT)
- -rm -f org/w3c/dom/css/CSSPrimitiveValue.lo
- -rm -f org/w3c/dom/css/CSSRule.$(OBJEXT)
- -rm -f org/w3c/dom/css/CSSRule.lo
- -rm -f org/w3c/dom/css/CSSRuleList.$(OBJEXT)
- -rm -f org/w3c/dom/css/CSSRuleList.lo
- -rm -f org/w3c/dom/css/CSSStyleDeclaration.$(OBJEXT)
- -rm -f org/w3c/dom/css/CSSStyleDeclaration.lo
- -rm -f org/w3c/dom/css/CSSStyleRule.$(OBJEXT)
- -rm -f org/w3c/dom/css/CSSStyleRule.lo
- -rm -f org/w3c/dom/css/CSSStyleSheet.$(OBJEXT)
- -rm -f org/w3c/dom/css/CSSStyleSheet.lo
- -rm -f org/w3c/dom/css/CSSUnknownRule.$(OBJEXT)
- -rm -f org/w3c/dom/css/CSSUnknownRule.lo
- -rm -f org/w3c/dom/css/CSSValue.$(OBJEXT)
- -rm -f org/w3c/dom/css/CSSValue.lo
- -rm -f org/w3c/dom/css/CSSValueList.$(OBJEXT)
- -rm -f org/w3c/dom/css/CSSValueList.lo
- -rm -f org/w3c/dom/css/Counter.$(OBJEXT)
- -rm -f org/w3c/dom/css/Counter.lo
- -rm -f org/w3c/dom/css/DOMImplementationCSS.$(OBJEXT)
- -rm -f org/w3c/dom/css/DOMImplementationCSS.lo
- -rm -f org/w3c/dom/css/DocumentCSS.$(OBJEXT)
- -rm -f org/w3c/dom/css/DocumentCSS.lo
- -rm -f org/w3c/dom/css/ElementCSSInlineStyle.$(OBJEXT)
- -rm -f org/w3c/dom/css/ElementCSSInlineStyle.lo
- -rm -f org/w3c/dom/css/RGBColor.$(OBJEXT)
- -rm -f org/w3c/dom/css/RGBColor.lo
- -rm -f org/w3c/dom/css/Rect.$(OBJEXT)
- -rm -f org/w3c/dom/css/Rect.lo
- -rm -f org/w3c/dom/css/ViewCSS.$(OBJEXT)
- -rm -f org/w3c/dom/css/ViewCSS.lo
- -rm -f org/w3c/dom/events/DocumentEvent.$(OBJEXT)
- -rm -f org/w3c/dom/events/DocumentEvent.lo
- -rm -f org/w3c/dom/events/Event.$(OBJEXT)
- -rm -f org/w3c/dom/events/Event.lo
- -rm -f org/w3c/dom/events/EventException.$(OBJEXT)
- -rm -f org/w3c/dom/events/EventException.lo
- -rm -f org/w3c/dom/events/EventListener.$(OBJEXT)
- -rm -f org/w3c/dom/events/EventListener.lo
- -rm -f org/w3c/dom/events/EventTarget.$(OBJEXT)
- -rm -f org/w3c/dom/events/EventTarget.lo
- -rm -f org/w3c/dom/events/MouseEvent.$(OBJEXT)
- -rm -f org/w3c/dom/events/MouseEvent.lo
- -rm -f org/w3c/dom/events/MutationEvent.$(OBJEXT)
- -rm -f org/w3c/dom/events/MutationEvent.lo
- -rm -f org/w3c/dom/events/UIEvent.$(OBJEXT)
- -rm -f org/w3c/dom/events/UIEvent.lo
- -rm -f org/w3c/dom/html2/HTMLAnchorElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLAnchorElement.lo
- -rm -f org/w3c/dom/html2/HTMLAppletElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLAppletElement.lo
- -rm -f org/w3c/dom/html2/HTMLAreaElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLAreaElement.lo
- -rm -f org/w3c/dom/html2/HTMLBRElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLBRElement.lo
- -rm -f org/w3c/dom/html2/HTMLBaseElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLBaseElement.lo
- -rm -f org/w3c/dom/html2/HTMLBaseFontElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLBaseFontElement.lo
- -rm -f org/w3c/dom/html2/HTMLBodyElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLBodyElement.lo
- -rm -f org/w3c/dom/html2/HTMLButtonElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLButtonElement.lo
- -rm -f org/w3c/dom/html2/HTMLCollection.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLCollection.lo
- -rm -f org/w3c/dom/html2/HTMLDListElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLDListElement.lo
- -rm -f org/w3c/dom/html2/HTMLDirectoryElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLDirectoryElement.lo
- -rm -f org/w3c/dom/html2/HTMLDivElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLDivElement.lo
- -rm -f org/w3c/dom/html2/HTMLDocument.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLDocument.lo
- -rm -f org/w3c/dom/html2/HTMLElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLElement.lo
- -rm -f org/w3c/dom/html2/HTMLFieldSetElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLFieldSetElement.lo
- -rm -f org/w3c/dom/html2/HTMLFontElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLFontElement.lo
- -rm -f org/w3c/dom/html2/HTMLFormElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLFormElement.lo
- -rm -f org/w3c/dom/html2/HTMLFrameElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLFrameElement.lo
- -rm -f org/w3c/dom/html2/HTMLFrameSetElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLFrameSetElement.lo
- -rm -f org/w3c/dom/html2/HTMLHRElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLHRElement.lo
- -rm -f org/w3c/dom/html2/HTMLHeadElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLHeadElement.lo
- -rm -f org/w3c/dom/html2/HTMLHeadingElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLHeadingElement.lo
- -rm -f org/w3c/dom/html2/HTMLHtmlElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLHtmlElement.lo
- -rm -f org/w3c/dom/html2/HTMLIFrameElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLIFrameElement.lo
- -rm -f org/w3c/dom/html2/HTMLImageElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLImageElement.lo
- -rm -f org/w3c/dom/html2/HTMLInputElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLInputElement.lo
- -rm -f org/w3c/dom/html2/HTMLIsIndexElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLIsIndexElement.lo
- -rm -f org/w3c/dom/html2/HTMLLIElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLLIElement.lo
- -rm -f org/w3c/dom/html2/HTMLLabelElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLLabelElement.lo
- -rm -f org/w3c/dom/html2/HTMLLegendElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLLegendElement.lo
- -rm -f org/w3c/dom/html2/HTMLLinkElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLLinkElement.lo
- -rm -f org/w3c/dom/html2/HTMLMapElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLMapElement.lo
- -rm -f org/w3c/dom/html2/HTMLMenuElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLMenuElement.lo
- -rm -f org/w3c/dom/html2/HTMLMetaElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLMetaElement.lo
- -rm -f org/w3c/dom/html2/HTMLModElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLModElement.lo
- -rm -f org/w3c/dom/html2/HTMLOListElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLOListElement.lo
- -rm -f org/w3c/dom/html2/HTMLObjectElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLObjectElement.lo
- -rm -f org/w3c/dom/html2/HTMLOptGroupElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLOptGroupElement.lo
- -rm -f org/w3c/dom/html2/HTMLOptionElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLOptionElement.lo
- -rm -f org/w3c/dom/html2/HTMLOptionsCollection.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLOptionsCollection.lo
- -rm -f org/w3c/dom/html2/HTMLParagraphElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLParagraphElement.lo
- -rm -f org/w3c/dom/html2/HTMLParamElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLParamElement.lo
- -rm -f org/w3c/dom/html2/HTMLPreElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLPreElement.lo
- -rm -f org/w3c/dom/html2/HTMLQuoteElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLQuoteElement.lo
- -rm -f org/w3c/dom/html2/HTMLScriptElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLScriptElement.lo
- -rm -f org/w3c/dom/html2/HTMLSelectElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLSelectElement.lo
- -rm -f org/w3c/dom/html2/HTMLStyleElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLStyleElement.lo
- -rm -f org/w3c/dom/html2/HTMLTableCaptionElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLTableCaptionElement.lo
- -rm -f org/w3c/dom/html2/HTMLTableCellElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLTableCellElement.lo
- -rm -f org/w3c/dom/html2/HTMLTableColElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLTableColElement.lo
- -rm -f org/w3c/dom/html2/HTMLTableElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLTableElement.lo
- -rm -f org/w3c/dom/html2/HTMLTableRowElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLTableRowElement.lo
- -rm -f org/w3c/dom/html2/HTMLTableSectionElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLTableSectionElement.lo
- -rm -f org/w3c/dom/html2/HTMLTextAreaElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLTextAreaElement.lo
- -rm -f org/w3c/dom/html2/HTMLTitleElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLTitleElement.lo
- -rm -f org/w3c/dom/html2/HTMLUListElement.$(OBJEXT)
- -rm -f org/w3c/dom/html2/HTMLUListElement.lo
- -rm -f org/w3c/dom/ls/DOMImplementationLS.$(OBJEXT)
- -rm -f org/w3c/dom/ls/DOMImplementationLS.lo
- -rm -f org/w3c/dom/ls/LSException.$(OBJEXT)
- -rm -f org/w3c/dom/ls/LSException.lo
- -rm -f org/w3c/dom/ls/LSInput.$(OBJEXT)
- -rm -f org/w3c/dom/ls/LSInput.lo
- -rm -f org/w3c/dom/ls/LSLoadEvent.$(OBJEXT)
- -rm -f org/w3c/dom/ls/LSLoadEvent.lo
- -rm -f org/w3c/dom/ls/LSOutput.$(OBJEXT)
- -rm -f org/w3c/dom/ls/LSOutput.lo
- -rm -f org/w3c/dom/ls/LSParser.$(OBJEXT)
- -rm -f org/w3c/dom/ls/LSParser.lo
- -rm -f org/w3c/dom/ls/LSParserFilter.$(OBJEXT)
- -rm -f org/w3c/dom/ls/LSParserFilter.lo
- -rm -f org/w3c/dom/ls/LSProgressEvent.$(OBJEXT)
- -rm -f org/w3c/dom/ls/LSProgressEvent.lo
- -rm -f org/w3c/dom/ls/LSResourceResolver.$(OBJEXT)
- -rm -f org/w3c/dom/ls/LSResourceResolver.lo
- -rm -f org/w3c/dom/ls/LSSerializer.$(OBJEXT)
- -rm -f org/w3c/dom/ls/LSSerializer.lo
- -rm -f org/w3c/dom/ls/LSSerializerFilter.$(OBJEXT)
- -rm -f org/w3c/dom/ls/LSSerializerFilter.lo
- -rm -f org/w3c/dom/ranges/DocumentRange.$(OBJEXT)
- -rm -f org/w3c/dom/ranges/DocumentRange.lo
- -rm -f org/w3c/dom/ranges/Range.$(OBJEXT)
- -rm -f org/w3c/dom/ranges/Range.lo
- -rm -f org/w3c/dom/ranges/RangeException.$(OBJEXT)
- -rm -f org/w3c/dom/ranges/RangeException.lo
- -rm -f org/w3c/dom/stylesheets/DocumentStyle.$(OBJEXT)
- -rm -f org/w3c/dom/stylesheets/DocumentStyle.lo
- -rm -f org/w3c/dom/stylesheets/LinkStyle.$(OBJEXT)
- -rm -f org/w3c/dom/stylesheets/LinkStyle.lo
- -rm -f org/w3c/dom/stylesheets/MediaList.$(OBJEXT)
- -rm -f org/w3c/dom/stylesheets/MediaList.lo
- -rm -f org/w3c/dom/stylesheets/StyleSheet.$(OBJEXT)
- -rm -f org/w3c/dom/stylesheets/StyleSheet.lo
- -rm -f org/w3c/dom/stylesheets/StyleSheetList.$(OBJEXT)
- -rm -f org/w3c/dom/stylesheets/StyleSheetList.lo
- -rm -f org/w3c/dom/traversal/DocumentTraversal.$(OBJEXT)
- -rm -f org/w3c/dom/traversal/DocumentTraversal.lo
- -rm -f org/w3c/dom/traversal/NodeFilter.$(OBJEXT)
- -rm -f org/w3c/dom/traversal/NodeFilter.lo
- -rm -f org/w3c/dom/traversal/NodeIterator.$(OBJEXT)
- -rm -f org/w3c/dom/traversal/NodeIterator.lo
- -rm -f org/w3c/dom/traversal/TreeWalker.$(OBJEXT)
- -rm -f org/w3c/dom/traversal/TreeWalker.lo
- -rm -f org/w3c/dom/views/AbstractView.$(OBJEXT)
- -rm -f org/w3c/dom/views/AbstractView.lo
- -rm -f org/w3c/dom/views/DocumentView.$(OBJEXT)
- -rm -f org/w3c/dom/views/DocumentView.lo
- -rm -f org/w3c/dom/xpath/XPathEvaluator.$(OBJEXT)
- -rm -f org/w3c/dom/xpath/XPathEvaluator.lo
- -rm -f org/w3c/dom/xpath/XPathException.$(OBJEXT)
- -rm -f org/w3c/dom/xpath/XPathException.lo
- -rm -f org/w3c/dom/xpath/XPathExpression.$(OBJEXT)
- -rm -f org/w3c/dom/xpath/XPathExpression.lo
- -rm -f org/w3c/dom/xpath/XPathNSResolver.$(OBJEXT)
- -rm -f org/w3c/dom/xpath/XPathNSResolver.lo
- -rm -f org/w3c/dom/xpath/XPathNamespace.$(OBJEXT)
- -rm -f org/w3c/dom/xpath/XPathNamespace.lo
- -rm -f org/w3c/dom/xpath/XPathResult.$(OBJEXT)
- -rm -f org/w3c/dom/xpath/XPathResult.lo
distclean-compile:
-rm -f *.tab.c
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/Attr.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/CDATASection.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/CharacterData.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/Comment.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/DOMConfiguration.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/DOMError.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/DOMErrorHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/DOMException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/DOMImplementation.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/DOMImplementationList.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/DOMImplementationSource.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/DOMLocator.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/DOMStringList.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/Document.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/DocumentFragment.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/DocumentType.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/Element.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/Entity.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/EntityReference.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/NameList.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/NamedNodeMap.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/Node.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/NodeList.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/Notation.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/ProcessingInstruction.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/Text.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/TypeInfo.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/$(DEPDIR)/UserDataHandler.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/bootstrap/$(DEPDIR)/DOMImplementationRegistry.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/CSS2Properties.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/CSSCharsetRule.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/CSSFontFaceRule.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/CSSImportRule.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/CSSMediaRule.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/CSSPageRule.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/CSSPrimitiveValue.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/CSSRule.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/CSSRuleList.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/CSSStyleDeclaration.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/CSSStyleRule.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/CSSStyleSheet.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/CSSUnknownRule.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/CSSValue.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/CSSValueList.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/Counter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/DOMImplementationCSS.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/DocumentCSS.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/ElementCSSInlineStyle.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/RGBColor.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/Rect.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/css/$(DEPDIR)/ViewCSS.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/events/$(DEPDIR)/DocumentEvent.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/events/$(DEPDIR)/Event.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/events/$(DEPDIR)/EventException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/events/$(DEPDIR)/EventListener.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/events/$(DEPDIR)/EventTarget.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/events/$(DEPDIR)/MouseEvent.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/events/$(DEPDIR)/MutationEvent.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/events/$(DEPDIR)/UIEvent.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLAnchorElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLAppletElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLAreaElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLBRElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLBaseElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLBaseFontElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLBodyElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLButtonElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLCollection.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLDListElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLDirectoryElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLDivElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLDocument.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLFieldSetElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLFontElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLFormElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLFrameElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLFrameSetElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLHRElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLHeadElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLHeadingElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLHtmlElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLIFrameElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLImageElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLInputElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLIsIndexElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLLIElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLLabelElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLLegendElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLLinkElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLMapElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLMenuElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLMetaElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLModElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLOListElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLObjectElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLOptGroupElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLOptionElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLOptionsCollection.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLParagraphElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLParamElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLPreElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLQuoteElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLScriptElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLSelectElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLStyleElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLTableCaptionElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLTableCellElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLTableColElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLTableElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLTableRowElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLTableSectionElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLTextAreaElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLTitleElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/html2/$(DEPDIR)/HTMLUListElement.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/ls/$(DEPDIR)/DOMImplementationLS.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/ls/$(DEPDIR)/LSException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/ls/$(DEPDIR)/LSInput.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/ls/$(DEPDIR)/LSLoadEvent.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/ls/$(DEPDIR)/LSOutput.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/ls/$(DEPDIR)/LSParser.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/ls/$(DEPDIR)/LSParserFilter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/ls/$(DEPDIR)/LSProgressEvent.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/ls/$(DEPDIR)/LSResourceResolver.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/ls/$(DEPDIR)/LSSerializer.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/ls/$(DEPDIR)/LSSerializerFilter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/ranges/$(DEPDIR)/DocumentRange.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/ranges/$(DEPDIR)/Range.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/ranges/$(DEPDIR)/RangeException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/stylesheets/$(DEPDIR)/DocumentStyle.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/stylesheets/$(DEPDIR)/LinkStyle.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/stylesheets/$(DEPDIR)/MediaList.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/stylesheets/$(DEPDIR)/StyleSheet.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/stylesheets/$(DEPDIR)/StyleSheetList.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/traversal/$(DEPDIR)/DocumentTraversal.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/traversal/$(DEPDIR)/NodeFilter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/traversal/$(DEPDIR)/NodeIterator.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/traversal/$(DEPDIR)/TreeWalker.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/views/$(DEPDIR)/AbstractView.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/views/$(DEPDIR)/DocumentView.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/xpath/$(DEPDIR)/XPathEvaluator.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/xpath/$(DEPDIR)/XPathException.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/xpath/$(DEPDIR)/XPathExpression.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/xpath/$(DEPDIR)/XPathNSResolver.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/xpath/$(DEPDIR)/XPathNamespace.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@org/w3c/dom/xpath/$(DEPDIR)/XPathResult.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libw3c_gcj_la-w3c.Plo@am__quote@
-.java.o:
+.jar.o:
@am__fastdepGCJ_TRUE@ depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`; \
@am__fastdepGCJ_TRUE@ if $(GCJCOMPILE) -MT $@ -MD -MP -MF "$$depbase.Tpo" -c -o $@ $<; \
@am__fastdepGCJ_TRUE@ then mv -f "$$depbase.Tpo" "$$depbase.Po"; else rm -f "$$depbase.Tpo"; exit 1; fi
@@ -1512,7 +549,7 @@ distclean-compile:
@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ DEPDIR=$(DEPDIR) $(GCJDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepGCJ_FALSE@ $(GCJCOMPILE) -c -o $@ $<
-.java.obj:
+.jar.obj:
@am__fastdepGCJ_TRUE@ depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`; \
@am__fastdepGCJ_TRUE@ if $(GCJCOMPILE) -MT $@ -MD -MP -MF "$$depbase.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
@am__fastdepGCJ_TRUE@ then mv -f "$$depbase.Tpo" "$$depbase.Po"; else rm -f "$$depbase.Tpo"; exit 1; fi
@@ -1520,7 +557,7 @@ distclean-compile:
@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ DEPDIR=$(DEPDIR) $(GCJDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepGCJ_FALSE@ $(GCJCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
-.java.lo:
+.jar.lo:
@am__fastdepGCJ_TRUE@ depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`; \
@am__fastdepGCJ_TRUE@ if $(LTGCJCOMPILE) -MT $@ -MD -MP -MF "$$depbase.Tpo" -c -o $@ $<; \
@am__fastdepGCJ_TRUE@ then mv -f "$$depbase.Tpo" "$$depbase.Plo"; else rm -f "$$depbase.Tpo"; exit 1; fi
@@ -1528,22 +565,18 @@ distclean-compile:
@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ DEPDIR=$(DEPDIR) $(GCJDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepGCJ_FALSE@ $(LTGCJCOMPILE) -c -o $@ $<
+libw3c_gcj_la-w3c.lo: w3c.jar
+@am__fastdepGCJ_TRUE@ if $(LIBTOOL) --mode=compile $(GCJ) $(libw3c_gcj_la_GCJFLAGS) $(GCJFLAGS) -MT libw3c_gcj_la-w3c.lo -MD -MP -MF "$(DEPDIR)/libw3c_gcj_la-w3c.Tpo" -c -o libw3c_gcj_la-w3c.lo `test -f 'w3c.jar' || echo '$(srcdir)/'`w3c.jar; \
+@am__fastdepGCJ_TRUE@ then mv -f "$(DEPDIR)/libw3c_gcj_la-w3c.Tpo" "$(DEPDIR)/libw3c_gcj_la-w3c.Plo"; else rm -f "$(DEPDIR)/libw3c_gcj_la-w3c.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ source='w3c.jar' object='libw3c_gcj_la-w3c.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ DEPDIR=$(DEPDIR) $(GCJDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepGCJ_FALSE@ $(LIBTOOL) --mode=compile $(GCJ) $(libw3c_gcj_la_GCJFLAGS) $(GCJFLAGS) -c -o libw3c_gcj_la-w3c.lo `test -f 'w3c.jar' || echo '$(srcdir)/'`w3c.jar
+
mostlyclean-libtool:
-rm -f *.lo
clean-libtool:
-rm -rf .libs _libs
- -rm -rf org/w3c/dom/.libs org/w3c/dom/_libs
- -rm -rf org/w3c/dom/bootstrap/.libs org/w3c/dom/bootstrap/_libs
- -rm -rf org/w3c/dom/css/.libs org/w3c/dom/css/_libs
- -rm -rf org/w3c/dom/events/.libs org/w3c/dom/events/_libs
- -rm -rf org/w3c/dom/html2/.libs org/w3c/dom/html2/_libs
- -rm -rf org/w3c/dom/ls/.libs org/w3c/dom/ls/_libs
- -rm -rf org/w3c/dom/ranges/.libs org/w3c/dom/ranges/_libs
- -rm -rf org/w3c/dom/stylesheets/.libs org/w3c/dom/stylesheets/_libs
- -rm -rf org/w3c/dom/traversal/.libs org/w3c/dom/traversal/_libs
- -rm -rf org/w3c/dom/views/.libs org/w3c/dom/views/_libs
- -rm -rf org/w3c/dom/xpath/.libs org/w3c/dom/xpath/_libs
distclean-libtool:
-rm -f libtool
@@ -1629,6 +662,9 @@ check: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) check-am
all-am: Makefile $(LTLIBRARIES)
installdirs:
+ for dir in "$(DESTDIR)$(toolexeclibdir)"; do \
+ test -z "$$dir" || $(mkdir_p) "$$dir"; \
+ done
install: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) install-am
install-exec: install-exec-am
@@ -1650,28 +686,6 @@ clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
- -rm -f org/w3c/dom/$(DEPDIR)/$(am__dirstamp)
- -rm -f org/w3c/dom/$(am__dirstamp)
- -rm -f org/w3c/dom/bootstrap/$(DEPDIR)/$(am__dirstamp)
- -rm -f org/w3c/dom/bootstrap/$(am__dirstamp)
- -rm -f org/w3c/dom/css/$(DEPDIR)/$(am__dirstamp)
- -rm -f org/w3c/dom/css/$(am__dirstamp)
- -rm -f org/w3c/dom/events/$(DEPDIR)/$(am__dirstamp)
- -rm -f org/w3c/dom/events/$(am__dirstamp)
- -rm -f org/w3c/dom/html2/$(DEPDIR)/$(am__dirstamp)
- -rm -f org/w3c/dom/html2/$(am__dirstamp)
- -rm -f org/w3c/dom/ls/$(DEPDIR)/$(am__dirstamp)
- -rm -f org/w3c/dom/ls/$(am__dirstamp)
- -rm -f org/w3c/dom/ranges/$(DEPDIR)/$(am__dirstamp)
- -rm -f org/w3c/dom/ranges/$(am__dirstamp)
- -rm -f org/w3c/dom/stylesheets/$(DEPDIR)/$(am__dirstamp)
- -rm -f org/w3c/dom/stylesheets/$(am__dirstamp)
- -rm -f org/w3c/dom/traversal/$(DEPDIR)/$(am__dirstamp)
- -rm -f org/w3c/dom/traversal/$(am__dirstamp)
- -rm -f org/w3c/dom/views/$(DEPDIR)/$(am__dirstamp)
- -rm -f org/w3c/dom/views/$(am__dirstamp)
- -rm -f org/w3c/dom/xpath/$(DEPDIR)/$(am__dirstamp)
- -rm -f org/w3c/dom/xpath/$(am__dirstamp)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@@ -1679,11 +693,11 @@ maintainer-clean-generic:
-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
clean: clean-am
-clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \
+clean-am: clean-generic clean-libtool clean-toolexeclibLTLIBRARIES \
mostlyclean-am
distclean: distclean-am
- -rm -rf org/w3c/dom/$(DEPDIR) org/w3c/dom/bootstrap/$(DEPDIR) org/w3c/dom/css/$(DEPDIR) org/w3c/dom/events/$(DEPDIR) org/w3c/dom/html2/$(DEPDIR) org/w3c/dom/ls/$(DEPDIR) org/w3c/dom/ranges/$(DEPDIR) org/w3c/dom/stylesheets/$(DEPDIR) org/w3c/dom/traversal/$(DEPDIR) org/w3c/dom/views/$(DEPDIR) org/w3c/dom/xpath/$(DEPDIR)
+ -rm -rf ./$(DEPDIR)
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-libtool distclean-tags
@@ -1700,7 +714,7 @@ info-am:
install-data-am:
-install-exec-am:
+install-exec-am: install-toolexeclibLTLIBRARIES
install-info: install-info-am
@@ -1709,7 +723,7 @@ install-man:
installcheck-am:
maintainer-clean: maintainer-clean-am
- -rm -rf org/w3c/dom/$(DEPDIR) org/w3c/dom/bootstrap/$(DEPDIR) org/w3c/dom/css/$(DEPDIR) org/w3c/dom/events/$(DEPDIR) org/w3c/dom/html2/$(DEPDIR) org/w3c/dom/ls/$(DEPDIR) org/w3c/dom/ranges/$(DEPDIR) org/w3c/dom/stylesheets/$(DEPDIR) org/w3c/dom/traversal/$(DEPDIR) org/w3c/dom/views/$(DEPDIR) org/w3c/dom/xpath/$(DEPDIR)
+ -rm -rf ./$(DEPDIR)
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
@@ -1726,29 +740,33 @@ ps: ps-am
ps-am:
-uninstall-am: uninstall-info-am
+uninstall-am: uninstall-info-am uninstall-toolexeclibLTLIBRARIES
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
- clean-libtool clean-noinstLTLIBRARIES ctags distclean \
+ clean-libtool clean-toolexeclibLTLIBRARIES ctags distclean \
distclean-compile distclean-generic distclean-libtool \
distclean-tags distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-exec \
install-exec-am install-info install-info-am install-man \
- install-strip installcheck installcheck-am installdirs \
- maintainer-clean maintainer-clean-generic mostlyclean \
- mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
- mostlyclean-local pdf pdf-am ps ps-am tags uninstall \
- uninstall-am uninstall-info-am
+ install-strip install-toolexeclibLTLIBRARIES installcheck \
+ installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-compile \
+ mostlyclean-generic mostlyclean-libtool mostlyclean-local pdf \
+ pdf-am ps ps-am tags uninstall uninstall-am uninstall-info-am \
+ uninstall-toolexeclibLTLIBRARIES
+
+w3c.jar: classes.stamp
+ find org -name '*.class' -print | $(ZIP) -cfME@ $@
-classes.stamp: $(libw3c_convenience_la_SOURCES)
+classes.stamp: $(source_files)
here=`pwd`; cd $(srcdir); \
- $(GCJ_WITH_FLAGS) -C -d $$here $(libw3c_convenience_la_SOURCES)
+ $(GCJ_WITH_FLAGS) -C -d $$here $(source_files)
echo > classes.stamp
mostlyclean-local:
-find . -name '*.class' | xargs rm
- -rm classes.stamp
+ -rm classes.stamp w3c.jar
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/libjava/gcj/Makefile.in b/libjava/gcj/Makefile.in
index dcb332a..ebf125d 100644
--- a/libjava/gcj/Makefile.in
+++ b/libjava/gcj/Makefile.in
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# Makefile.in generated by automake 1.9.3 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005 Free Software Foundation, Inc.
+# 2003, 2004 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
diff --git a/libjava/gnu/gcj/runtime/BootClassLoader.java b/libjava/gnu/gcj/runtime/BootClassLoader.java
new file mode 100644
index 0000000..6223c73
--- /dev/null
+++ b/libjava/gnu/gcj/runtime/BootClassLoader.java
@@ -0,0 +1,102 @@
+/* Copyright (C) 2005 Free Software Foundation
+
+ This file is part of libgcj.
+
+This software is copyrighted work licensed under the terms of the
+Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
+details. */
+
+package gnu.gcj.runtime;
+
+import java.io.File;
+import java.io.FilenameFilter;
+import java.io.IOException;
+import java.net.URL;
+import java.net.URLClassLoader;
+import java.util.Enumeration;
+import java.util.HashSet;
+import java.util.StringTokenizer;
+
+/**
+ * This is a helper for the bootstrap class loader. It is a
+ * URLClassLoader so that we can read a class path and re-use all the
+ * existing code for finding classes, extracting them from jars, etc.
+ * However, it is never called the way that an ordinary ClassLoader is
+ * called. For instance, loadClass() is never used.
+ */
+public final class BootClassLoader extends URLClassLoader
+{
+ BootClassLoader(String libdir)
+ {
+ super(new URL[0]);
+
+ // Add the contents of the endorsed directories.
+ StringTokenizer st
+ = new StringTokenizer (System.getProperty ("java.endorsed.dirs", ""),
+ File.pathSeparator);
+ try
+ {
+ while (st.hasMoreElements ())
+ {
+ String dirname = st.nextToken ();
+ File dir = new File (dirname);
+ if (dir.exists ())
+ {
+ if (! dirname.endsWith (File.separator))
+ dirname = dirname + File.separator;
+ String files[] = dir.list (new FilenameFilter ()
+ {
+ public boolean accept (File dir, String name)
+ {
+ return name.endsWith (".jar") || name.endsWith (".zip");
+ }
+ });
+ for (int i = files.length - 1; i >= 0; i--)
+ addURL(new URL("file", "", -1, dirname + files[i]));
+ }
+ }
+
+ String w3clib = (libdir + File.separator
+ + System.mapLibraryName ("w3c-gcj"));
+ addURL(new URL("gcjlib", "", -1, w3clib));
+ String saxlib = (libdir + File.separator
+ + System.mapLibraryName ("sax-gcj"));
+ addURL(new URL("gcjlib", "", -1, saxlib));
+ }
+ catch (java.net.MalformedURLException x)
+ {
+ // This should never happen.
+ throw new RuntimeException(x);
+ }
+ }
+
+ public Class bootLoadClass(String name)
+ throws ClassNotFoundException
+ {
+ Class c = findLoadedClass(name);
+ if (c == null)
+ {
+ try
+ {
+ // We could hack URLClassLoader to make this more
+ // efficient, if it mattered.
+ c = findClass(name);
+ }
+ catch (ClassNotFoundException _)
+ {
+ c = null;
+ }
+ }
+ return c;
+ }
+
+ public URL bootGetResource(String name)
+ {
+ return findResource(name);
+ }
+
+ public Enumeration bootGetResources(String name) throws IOException
+ {
+ return findResources(name);
+ }
+}
diff --git a/libjava/gnu/xml/aelfred2/JAXPFactory.java b/libjava/gnu/xml/aelfred2/JAXPFactory.java
index 006dc13..ff585a8 100644
--- a/libjava/gnu/xml/aelfred2/JAXPFactory.java
+++ b/libjava/gnu/xml/aelfred2/JAXPFactory.java
@@ -60,137 +60,172 @@ import javax.xml.parsers.SAXParserFactory;
*
* @author David Brownell
*/
-public final class JAXPFactory extends SAXParserFactory
+public final class JAXPFactory
+ extends SAXParserFactory
{
- private Hashtable flags = new Hashtable ();
-
- /**
- * Constructs a factory which normally returns a non-validating
- * parser.
- */
- public JAXPFactory () { }
-
- public SAXParser newSAXParser ()
+
+ private Hashtable flags = new Hashtable();
+
+ /**
+ * Constructs a factory which normally returns a non-validating
+ * parser.
+ */
+ public JAXPFactory()
+ {
+ }
+
+ public SAXParser newSAXParser()
throws ParserConfigurationException, SAXException
+ {
+ JaxpParser jaxp = new JaxpParser();
+ Enumeration e = flags.keys();
+ XMLReader parser = jaxp.getXMLReader();
+
+ parser.setFeature(SAXDriver.FEATURE + "namespaces",
+ isNamespaceAware());
+ parser.setFeature(SAXDriver.FEATURE + "validation",
+ isValidating());
+ // that makes SAX2 feature flags trump JAXP
+
+ while (e.hasMoreElements())
+ {
+ String uri = (String) e.nextElement();
+ Boolean value = (Boolean) flags.get(uri);
+ parser.setFeature(uri, value.booleanValue());
+ }
+
+ return jaxp;
+ }
+
+ // yes, this "feature transfer" mechanism doesn't play well
+
+ public void setFeature(String name, boolean value)
+ throws ParserConfigurationException, SAXNotRecognizedException,
+ SAXNotSupportedException
+ {
+ try
+ {
+ // force "early" detection of errors where possible
+ // (flags can't necessarily be set before parsing)
+ new JaxpParser().getXMLReader().setFeature(name, value);
+
+ flags.put(name, new Boolean(value));
+ }
+ catch (SAXNotRecognizedException e)
+ {
+ throw new SAXNotRecognizedException(name);
+ }
+ catch (SAXNotSupportedException e)
+ {
+ throw new SAXNotSupportedException(name);
+ }
+ catch (Exception e)
+ {
+ throw new ParserConfigurationException(e.getClass().getName()
+ + ": "
+ + e.getMessage());
+ }
+ }
+
+ public boolean getFeature(String name)
+ throws ParserConfigurationException, SAXNotRecognizedException,
+ SAXNotSupportedException
+ {
+ Boolean value = (Boolean) flags.get(name);
+
+ if (value != null)
+ {
+ return value.booleanValue();
+ }
+ else
+ {
+ try
+ {
+ return new JaxpParser().getXMLReader().getFeature(name);
+ }
+ catch (SAXNotRecognizedException e)
+ {
+ throw new SAXNotRecognizedException(name);
+ }
+ catch (SAXNotSupportedException e)
+ {
+ throw new SAXNotSupportedException(name);
+ }
+ catch (SAXException e)
+ {
+ throw new ParserConfigurationException(e.getClass().getName()
+ + ": "
+ + e.getMessage());
+ }
+ }
+ }
+
+ private static class JaxpParser
+ extends SAXParser
+ {
+
+ private XmlReader ae2 = new XmlReader();
+ private XMLReaderAdapter parser = null;
+
+ JaxpParser()
{
- JaxpParser jaxp = new JaxpParser ();
- Enumeration e = flags.keys ();
- XMLReader parser = jaxp.getXMLReader ();
-
- parser.setFeature (
- SAXDriver.FEATURE + "namespaces",
- isNamespaceAware ());
- parser.setFeature (
- SAXDriver.FEATURE + "validation",
- isValidating ());
- // that makes SAX2 feature flags trump JAXP
-
- while (e.hasMoreElements ()) {
- String uri = (String) e.nextElement ();
- Boolean value = (Boolean) flags.get (uri);
- parser.setFeature (uri, value.booleanValue ());
- }
-
- return jaxp;
}
- // yes, this "feature transfer" mechanism doesn't play well
+ public void setProperty(String id, Object value)
+ throws SAXNotRecognizedException, SAXNotSupportedException
+ {
+ ae2.setProperty(id, value);
+ }
- public void setFeature (String name, boolean value)
- throws
- ParserConfigurationException,
- SAXNotRecognizedException,
- SAXNotSupportedException
+ public Object getProperty(String id)
+ throws SAXNotRecognizedException, SAXNotSupportedException
{
- try {
- // force "early" detection of errors where possible
- // (flags can't necessarily be set before parsing)
- new JaxpParser ().getXMLReader ().setFeature (name, value);
-
- flags.put (name, new Boolean (value));
- } catch (SAXNotRecognizedException e) {
- throw new SAXNotRecognizedException (name);
- } catch (SAXNotSupportedException e) {
- throw new SAXNotSupportedException (name);
- } catch (Exception e) {
- throw new ParserConfigurationException (
- e.getClass ().getName ()
- + ": "
- + e.getMessage ());
- }
+ return ae2.getProperty(id);
}
- public boolean getFeature (String name)
- throws
- ParserConfigurationException,
- SAXNotRecognizedException,
- SAXNotSupportedException
+ public Parser getParser()
+ throws SAXException
{
- Boolean value = (Boolean) flags.get (name);
-
- if (value != null)
- return value.booleanValue ();
- else
- try {
- return new JaxpParser ().getXMLReader ().getFeature (name);
- } catch (SAXNotRecognizedException e) {
- throw new SAXNotRecognizedException (name);
- } catch (SAXNotSupportedException e) {
- throw new SAXNotSupportedException (name);
- } catch (SAXException e) {
- throw new ParserConfigurationException (
- e.getClass ().getName ()
- + ": "
- + e.getMessage ());
- }
+ if (parser == null)
+ {
+ parser = new XMLReaderAdapter(ae2);
+ }
+ return parser;
}
- private static class JaxpParser extends SAXParser
+ public XMLReader getXMLReader ()
+ throws SAXException
{
- private XmlReader ae2 = new XmlReader ();
- private XMLReaderAdapter parser = null;
-
- JaxpParser () { }
-
- public void setProperty (String id, Object value)
- throws SAXNotRecognizedException, SAXNotSupportedException
- { ae2.setProperty (id, value); }
-
- public Object getProperty (String id)
- throws SAXNotRecognizedException, SAXNotSupportedException
- { return ae2.getProperty (id); }
-
- public Parser getParser ()
- throws SAXException
- {
- if (parser == null)
- parser = new XMLReaderAdapter (ae2);
- return parser;
- }
-
- public XMLReader getXMLReader ()
- throws SAXException
- { return ae2; }
-
- public boolean isNamespaceAware ()
- {
- try {
- return ae2.getFeature (SAXDriver.FEATURE + "namespaces");
- } catch (Exception e) {
- throw new Error ();
- }
- }
-
- public boolean isValidating ()
- {
- try {
- return ae2.getFeature (SAXDriver.FEATURE + "validation");
- } catch (Exception e) {
- throw new Error ();
- }
- }
-
- // TODO isXIncludeAware()
-
+ return ae2;
}
+
+ public boolean isNamespaceAware()
+ {
+ try
+ {
+ return ae2.getFeature(SAXDriver.FEATURE + "namespaces");
+ }
+ catch (Exception e)
+ {
+ throw new Error();
+ }
+ }
+
+ public boolean isValidating()
+ {
+ try
+ {
+ return ae2.getFeature(SAXDriver.FEATURE + "validation");
+ }
+ catch (Exception e)
+ {
+ throw new Error();
+ }
+ }
+
+ // TODO isXIncludeAware()
+
+ }
+
}
+
diff --git a/libjava/gnu/xml/aelfred2/SAXDriver.java b/libjava/gnu/xml/aelfred2/SAXDriver.java
index 0e7b3c7..003a736 100644
--- a/libjava/gnu/xml/aelfred2/SAXDriver.java
+++ b/libjava/gnu/xml/aelfred2/SAXDriver.java
@@ -60,15 +60,11 @@ import java.net.URL;
import java.util.Locale;
import java.util.Stack;
-// maintaining 1.1 compatibility for now ... more portable, PJava, etc
-// Iterator, Hashmap and ArrayList ought to be faster
import java.util.ArrayList;
import java.util.Collections;
import java.util.Enumeration;
-import java.util.Hashtable;
import java.util.Iterator;
import java.util.List;
-import java.util.Vector;
import org.xml.sax.*;
import org.xml.sax.ext.*;
@@ -133,1276 +129,1494 @@ import org.xml.sax.helpers.NamespaceSupport;
* @see org.xml.sax.Parser
*/
final public class SAXDriver
- implements Locator, Attributes2, XMLReader, Parser, AttributeList
+ implements Locator, Attributes2, XMLReader, Parser, AttributeList
{
- private final DefaultHandler2 base = new DefaultHandler2 ();
- private XmlParser parser;
-
- private EntityResolver entityResolver = base;
- private EntityResolver2 resolver2 = null;
- private ContentHandler contentHandler = base;
- private DTDHandler dtdHandler = base;
- private ErrorHandler errorHandler = base;
- private DeclHandler declHandler = base;
- private LexicalHandler lexicalHandler = base;
-
- private String elementName;
- private Stack entityStack;
-
- // one vector (of object/struct): faster, smaller
- private List attributesList;
-
- private boolean namespaces = true;
- private boolean xmlNames = false;
- private boolean extGE = true;
- private boolean extPE = true;
- private boolean resolveAll = true;
- private boolean useResolver2 = true;
- private boolean stringInterning = true;
-
- private int attributeCount;
- private boolean attributes;
- private String nsTemp [];
- private NamespaceSupport prefixStack;
+
+ private final DefaultHandler2 base = new DefaultHandler2();
+ private XmlParser parser;
+
+ private EntityResolver entityResolver = base;
+ private EntityResolver2 resolver2 = null;
+ private ContentHandler contentHandler = base;
+ private DTDHandler dtdHandler = base;
+ private ErrorHandler errorHandler = base;
+ private DeclHandler declHandler = base;
+ private LexicalHandler lexicalHandler = base;
+
+ private String elementName;
+ private Stack entityStack;
+
+ // one vector (of object/struct): faster, smaller
+ private List attributesList;
+
+ private boolean namespaces = true;
+ private boolean xmlNames = false;
+ private boolean extGE = true;
+ private boolean extPE = true;
+ private boolean resolveAll = true;
+ private boolean useResolver2 = true;
+
+ // package private to allow (read-only) access in XmlParser
+ boolean stringInterning = true;
+
+ private int attributeCount;
+ private boolean attributes;
+ private String[] nsTemp;
+ private NamespaceSupport prefixStack;
+
+ //
+ // Constructor.
+ //
+
+ /**
+ * Constructs a SAX Parser.
+ */
+ public SAXDriver()
+ {
+ reset();
+ }
- //
- // Constructor.
- //
+ private void reset()
+ {
+ elementName = null;
+ entityStack = new Stack();
+ attributesList = Collections.synchronizedList(new ArrayList());
+ attributeCount = 0;
+ attributes = false;
+ nsTemp = new String[3];
+ prefixStack = null;
+ }
- /** Constructs a SAX Parser. */
- public SAXDriver ()
- {
- reset ();
- }
- private void reset ()
- {
- elementName = null;
- entityStack = new Stack ();
- attributesList = Collections.synchronizedList(new ArrayList());
- attributeCount = 0;
- attributes = false;
- nsTemp = new String[3];
- prefixStack = null;
- }
+ //
+ // Implementation of org.xml.sax.Parser.
+ //
+ /**
+ * <b>SAX1</b>: Sets the locale used for diagnostics; currently,
+ * only locales using the English language are supported.
+ * @param locale The locale for which diagnostics will be generated
+ */
+ public void setLocale(Locale locale)
+ throws SAXException
+ {
+ if ("en".equals(locale.getLanguage()))
+ {
+ return;
+ }
+ throw new SAXException ("AElfred2 only supports English locales.");
+ }
- //
- // Implementation of org.xml.sax.Parser.
- //
+ /**
+ * <b>SAX2</b>: Returns the object used when resolving external
+ * entities during parsing (both general and parameter entities).
+ */
+ public EntityResolver getEntityResolver()
+ {
+ return (entityResolver == base) ? null : entityResolver;
+ }
- /**
- * <b>SAX1</b>: Sets the locale used for diagnostics; currently,
- * only locales using the English language are supported.
- * @param locale The locale for which diagnostics will be generated
- */
- public void setLocale (Locale locale)
- throws SAXException
- {
- if ("en".equals (locale.getLanguage ()))
- return ;
+ /**
+ * <b>SAX1, SAX2</b>: Set the entity resolver for this parser.
+ * @param handler The object to receive entity events.
+ */
+ public void setEntityResolver(EntityResolver resolver)
+ {
+ if (resolver instanceof EntityResolver2)
+ {
+ resolver2 = (EntityResolver2) resolver;
+ }
+ else
+ {
+ resolver2 = null;
+ }
+ if (resolver == null)
+ {
+ resolver = base;
+ }
+ entityResolver = resolver;
+ }
- throw new SAXException ("AElfred2 only supports English locales.");
- }
+ /**
+ * <b>SAX2</b>: Returns the object used to process declarations related
+ * to notations and unparsed entities.
+ */
+ public DTDHandler getDTDHandler()
+ {
+ return (dtdHandler == base) ? null : dtdHandler;
+ }
+ /**
+ * <b>SAX1, SAX2</b>: Set the DTD handler for this parser.
+ * @param handler The object to receive DTD events.
+ */
+ public void setDTDHandler(DTDHandler handler)
+ {
+ if (handler == null)
+ {
+ handler = base;
+ }
+ this.dtdHandler = handler;
+ }
- /**
- * <b>SAX2</b>: Returns the object used when resolving external
- * entities during parsing (both general and parameter entities).
- */
- public EntityResolver getEntityResolver ()
- {
- return (entityResolver == base) ? null : entityResolver;
- }
- /**
- * <b>SAX1, SAX2</b>: Set the entity resolver for this parser.
- * @param handler The object to receive entity events.
- */
- public void setEntityResolver (EntityResolver resolver)
- {
- if (resolver instanceof EntityResolver2)
- resolver2 = (EntityResolver2) resolver;
- else
- resolver2 = null;
- if (resolver == null)
- resolver = base;
- entityResolver = resolver;
- }
+ /**
+ * <b>SAX1</b>: Set the document handler for this parser. If a
+ * content handler was set, this document handler will supplant it.
+ * The parser is set to report all XML 1.0 names rather than to
+ * filter out "xmlns" attributes (the "namespace-prefixes" feature
+ * is set to true).
+ *
+ * @deprecated SAX2 programs should use the XMLReader interface
+ * and a ContentHandler.
+ *
+ * @param handler The object to receive document events.
+ */
+ public void setDocumentHandler(DocumentHandler handler)
+ {
+ contentHandler = new Adapter(handler);
+ xmlNames = true;
+ }
+ /**
+ * <b>SAX2</b>: Returns the object used to report the logical
+ * content of an XML document.
+ */
+ public ContentHandler getContentHandler()
+ {
+ return (contentHandler == base) ? null : contentHandler;
+ }
- /**
- * <b>SAX2</b>: Returns the object used to process declarations related
- * to notations and unparsed entities.
- */
- public DTDHandler getDTDHandler ()
- {
- return (dtdHandler == base) ? null : dtdHandler;
- }
+ /**
+ * <b>SAX2</b>: Assigns the object used to report the logical
+ * content of an XML document. If a document handler was set,
+ * this content handler will supplant it (but XML 1.0 style name
+ * reporting may remain enabled).
+ */
+ public void setContentHandler(ContentHandler handler)
+ {
+ if (handler == null)
+ {
+ handler = base;
+ }
+ contentHandler = handler;
+ }
- /**
- * <b>SAX1, SAX2</b>: Set the DTD handler for this parser.
- * @param handler The object to receive DTD events.
- */
- public void setDTDHandler (DTDHandler handler)
- {
- if (handler == null)
- handler = base;
- this.dtdHandler = handler;
- }
+ /**
+ * <b>SAX1, SAX2</b>: Set the error handler for this parser.
+ * @param handler The object to receive error events.
+ */
+ public void setErrorHandler(ErrorHandler handler)
+ {
+ if (handler == null)
+ {
+ handler = base;
+ }
+ this.errorHandler = handler;
+ }
+ /**
+ * <b>SAX2</b>: Returns the object used to receive callbacks for XML
+ * errors of all levels (fatal, nonfatal, warning); this is never null;
+ */
+ public ErrorHandler getErrorHandler()
+ {
+ return (errorHandler == base) ? null : errorHandler;
+ }
- /**
- * <b>SAX1</b>: Set the document handler for this parser. If a
- * content handler was set, this document handler will supplant it.
- * The parser is set to report all XML 1.0 names rather than to
- * filter out "xmlns" attributes (the "namespace-prefixes" feature
- * is set to true).
- *
- * @deprecated SAX2 programs should use the XMLReader interface
- * and a ContentHandler.
- *
- * @param handler The object to receive document events.
- */
- public void setDocumentHandler (DocumentHandler handler)
- {
- contentHandler = new Adapter (handler);
- xmlNames = true;
- }
+ /**
+ * <b>SAX1, SAX2</b>: Auxiliary API to parse an XML document, used mostly
+ * when no URI is available.
+ * If you want anything useful to happen, you should set
+ * at least one type of handler.
+ * @param source The XML input source. Don't set 'encoding' unless
+ * you know for a fact that it's correct.
+ * @see #setEntityResolver
+ * @see #setDTDHandler
+ * @see #setContentHandler
+ * @see #setErrorHandler
+ * @exception SAXException The handlers may throw any SAXException,
+ * and the parser normally throws SAXParseException objects.
+ * @exception IOException IOExceptions are normally through through
+ * the parser if there are problems reading the source document.
+ */
+ public void parse(InputSource source)
+ throws SAXException, IOException
+ {
+ synchronized (base)
+ {
+ parser = new XmlParser();
+ if (namespaces)
+ {
+ prefixStack = new NamespaceSupport();
+ }
+ else if (!xmlNames)
+ {
+ throw new IllegalStateException();
+ }
+ parser.setHandler(this);
+
+ try
+ {
+ Reader r = source.getCharacterStream();
+ InputStream in = source.getByteStream();
+
+ parser.doParse(source.getSystemId(),
+ source.getPublicId(),
+ r,
+ in,
+ source.getEncoding());
+ }
+ catch (SAXException e)
+ {
+ throw e;
+ }
+ catch (IOException e)
+ {
+ throw e;
+ }
+ catch (RuntimeException e)
+ {
+ throw e;
+ }
+ catch (Exception e)
+ {
+ throw new SAXParseException(e.getMessage(), this, e);
+ }
+ finally
+ {
+ contentHandler.endDocument();
+ reset();
+ }
+ }
+ }
- /**
- * <b>SAX2</b>: Returns the object used to report the logical
- * content of an XML document.
- */
- public ContentHandler getContentHandler ()
- {
- return contentHandler == base ? null : contentHandler;
- }
+ /**
+ * <b>SAX1, SAX2</b>: Preferred API to parse an XML document, using a
+ * system identifier (URI).
+ */
+ public void parse(String systemId)
+ throws SAXException, IOException
+ {
+ parse(new InputSource(systemId));
+ }
- /**
- * <b>SAX2</b>: Assigns the object used to report the logical
- * content of an XML document. If a document handler was set,
- * this content handler will supplant it (but XML 1.0 style name
- * reporting may remain enabled).
- */
- public void setContentHandler (ContentHandler handler)
- {
- if (handler == null)
- handler = base;
- contentHandler = handler;
- }
+ //
+ // Implementation of SAX2 "XMLReader" interface
+ //
+ static final String FEATURE = "http://xml.org/sax/features/";
+ static final String PROPERTY = "http://xml.org/sax/properties/";
+
+ /**
+ * <b>SAX2</b>: Tells the value of the specified feature flag.
+ *
+ * @exception SAXNotRecognizedException thrown if the feature flag
+ * is neither built in, nor yet assigned.
+ */
+ public boolean getFeature(String featureId)
+ throws SAXNotRecognizedException, SAXNotSupportedException
+ {
+ if ((FEATURE + "validation").equals(featureId))
+ {
+ return false;
+ }
- /**
- * <b>SAX1, SAX2</b>: Set the error handler for this parser.
- * @param handler The object to receive error events.
- */
- public void setErrorHandler (ErrorHandler handler)
- {
- if (handler == null)
- handler = base;
- this.errorHandler = handler;
- }
+ // external entities (both types) are optionally included
+ if ((FEATURE + "external-general-entities").equals(featureId))
+ {
+ return extGE;
+ }
+ if ((FEATURE + "external-parameter-entities").equals(featureId))
+ {
+ return extPE;
+ }
+
+ // element/attribute names are as written in document; no mangling
+ if ((FEATURE + "namespace-prefixes").equals(featureId))
+ {
+ return xmlNames;
+ }
- /**
- * <b>SAX2</b>: Returns the object used to receive callbacks for XML
- * errors of all levels (fatal, nonfatal, warning); this is never null;
- */
- public ErrorHandler getErrorHandler ()
- { return errorHandler == base ? null : errorHandler; }
-
-
- /**
- * <b>SAX1, SAX2</b>: Auxiliary API to parse an XML document, used mostly
- * when no URI is available.
- * If you want anything useful to happen, you should set
- * at least one type of handler.
- * @param source The XML input source. Don't set 'encoding' unless
- * you know for a fact that it's correct.
- * @see #setEntityResolver
- * @see #setDTDHandler
- * @see #setContentHandler
- * @see #setErrorHandler
- * @exception SAXException The handlers may throw any SAXException,
- * and the parser normally throws SAXParseException objects.
- * @exception IOException IOExceptions are normally through through
- * the parser if there are problems reading the source document.
- */
- public void parse (InputSource source)
- throws SAXException, IOException
- {
- synchronized (base) {
- parser = new XmlParser ();
- if (namespaces)
- prefixStack = new NamespaceSupport ();
- else if (!xmlNames)
- throw new IllegalStateException ();
- parser.setHandler (this);
-
- try {
-
- Reader r = source.getCharacterStream();
- InputStream in = source.getByteStream();
-
-
- parser.doParse (source.getSystemId (),
- source.getPublicId (),
- r,
- in,
- source.getEncoding ());
- } catch (SAXException e) {
- throw e;
- } catch (IOException e) {
- throw e;
- } catch (RuntimeException e) {
- throw e;
- } catch (Exception e) {
- throw new SAXParseException (e.getMessage (), this, e);
- } finally {
- contentHandler.endDocument ();
- reset();
- }
- }
- }
+ // report element/attribute namespaces?
+ if ((FEATURE + "namespaces").equals(featureId))
+ {
+ return namespaces;
+ }
+ // all PEs and GEs are reported
+ if ((FEATURE + "lexical-handler/parameter-entities").equals(featureId))
+ {
+ return true;
+ }
- /**
- * <b>SAX1, SAX2</b>: Preferred API to parse an XML document, using a
- * system identifier (URI).
- */
- public void parse (String systemId)
- throws SAXException, IOException
- {
- parse (new InputSource (systemId));
- }
+ // default is true
+ if ((FEATURE + "string-interning").equals(featureId))
+ {
+ return stringInterning;
+ }
+
+ // EXTENSIONS 1.1
+
+ // always returns isSpecified info
+ if ((FEATURE + "use-attributes2").equals(featureId))
+ {
+ return true;
+ }
+
+ // meaningful between startDocument/endDocument
+ if ((FEATURE + "is-standalone").equals(featureId))
+ {
+ if (parser == null)
+ {
+ throw new SAXNotSupportedException(featureId);
+ }
+ return parser.isStandalone();
+ }
- //
- // Implementation of SAX2 "XMLReader" interface
- //
- static final String FEATURE = "http://xml.org/sax/features/";
- static final String PROPERTY = "http://xml.org/sax/properties/";
-
- /**
- * <b>SAX2</b>: Tells the value of the specified feature flag.
- *
- * @exception SAXNotRecognizedException thrown if the feature flag
- * is neither built in, nor yet assigned.
- */
- public boolean getFeature (String featureId)
- throws SAXNotRecognizedException, SAXNotSupportedException
- {
- if ((FEATURE + "validation").equals (featureId))
- return false;
-
- // external entities (both types) are optionally included
- if ((FEATURE + "external-general-entities").equals (featureId))
- return extGE;
- if ((FEATURE + "external-parameter-entities") .equals (featureId))
- return extPE;
-
- // element/attribute names are as written in document; no mangling
- if ((FEATURE + "namespace-prefixes").equals (featureId))
- return xmlNames;
-
- // report element/attribute namespaces?
- if ((FEATURE + "namespaces").equals (featureId))
- return namespaces;
-
- // all PEs and GEs are reported
- if ((FEATURE + "lexical-handler/parameter-entities").equals (featureId))
- return true;
-
- // default is true
- if ((FEATURE + "string-interning").equals (featureId))
- return stringInterning;
-
- // EXTENSIONS 1.1
-
- // always returns isSpecified info
- if ((FEATURE + "use-attributes2").equals (featureId))
- return true;
-
- // meaningful between startDocument/endDocument
- if ((FEATURE + "is-standalone").equals (featureId)) {
- if (parser == null)
- throw new SAXNotSupportedException (featureId);
- return parser.isStandalone ();
- }
-
- // optionally don't absolutize URIs in declarations
- if ((FEATURE + "resolve-dtd-uris").equals (featureId))
- return resolveAll;
-
- // optionally use resolver2 interface methods, if possible
- if ((FEATURE + "use-entity-resolver2").equals (featureId))
- return useResolver2;
-
- throw new SAXNotRecognizedException (featureId);
- }
+ // optionally don't absolutize URIs in declarations
+ if ((FEATURE + "resolve-dtd-uris").equals(featureId))
+ {
+ return resolveAll;
+ }
+
+ // optionally use resolver2 interface methods, if possible
+ if ((FEATURE + "use-entity-resolver2").equals(featureId))
+ {
+ return useResolver2;
+ }
+
+ throw new SAXNotRecognizedException(featureId);
+ }
- // package private
- DeclHandler getDeclHandler () { return declHandler; }
+ // package private
+ DeclHandler getDeclHandler()
+ {
+ return declHandler;
+ }
- // package private
- boolean resolveURIs () { return resolveAll; }
+ // package private
+ boolean resolveURIs()
+ {
+ return resolveAll;
+ }
- /**
- * <b>SAX2</b>: Returns the specified property.
- *
- * @exception SAXNotRecognizedException thrown if the property value
- * is neither built in, nor yet stored.
- */
- public Object getProperty (String propertyId)
+ /**
+ * <b>SAX2</b>: Returns the specified property.
+ *
+ * @exception SAXNotRecognizedException thrown if the property value
+ * is neither built in, nor yet stored.
+ */
+ public Object getProperty(String propertyId)
throws SAXNotRecognizedException
- {
- if ((PROPERTY + "declaration-handler").equals (propertyId))
- return declHandler == base ? null : declHandler;
-
- if ((PROPERTY + "lexical-handler").equals (propertyId))
- return lexicalHandler == base ? null : lexicalHandler;
-
- // unknown properties
- throw new SAXNotRecognizedException (propertyId);
- }
+ {
+ if ((PROPERTY + "declaration-handler").equals(propertyId))
+ {
+ return (declHandler == base) ? null : declHandler;
+ }
- /**
- * <b>SAX2</b>: Sets the state of feature flags in this parser. Some
- * built-in feature flags are mutable.
- */
- public void setFeature (String featureId, boolean value)
- throws SAXNotRecognizedException, SAXNotSupportedException
- {
- boolean state;
-
- // Features with a defined value, we just change it if we can.
- state = getFeature (featureId);
-
- if (state == value)
- return;
- if (parser != null)
- throw new SAXNotSupportedException ("not while parsing");
-
- if ((FEATURE + "namespace-prefixes").equals (featureId)) {
- // in this implementation, this only affects xmlns reporting
- xmlNames = value;
- // forcibly prevent illegal parser state
- if (!xmlNames)
- namespaces = true;
- return;
- }
-
- if ((FEATURE + "namespaces").equals (featureId)) {
- namespaces = value;
- // forcibly prevent illegal parser state
- if (!namespaces)
- xmlNames = true;
- return;
- }
-
- if ((FEATURE + "external-general-entities").equals (featureId)) {
- extGE = value;
- return;
- }
- if ((FEATURE + "external-parameter-entities") .equals (featureId)) {
- extPE = value;
- return;
- }
- if ((FEATURE + "resolve-dtd-uris").equals (featureId)) {
- resolveAll = value;
- return;
- }
-
- if ((FEATURE + "use-entity-resolver2").equals (featureId)) {
- useResolver2 = value;
- return;
- }
-
- throw new SAXNotRecognizedException (featureId);
- }
+ if ((PROPERTY + "lexical-handler").equals(propertyId))
+ {
+ return (lexicalHandler == base) ? null : lexicalHandler;
+ }
+
+ // unknown properties
+ throw new SAXNotRecognizedException(propertyId);
+ }
- /**
- * <b>SAX2</b>: Assigns the specified property. Like SAX1 handlers,
- * these may be changed at any time.
- */
- public void setProperty (String propertyId, Object value)
+ /**
+ * <b>SAX2</b>: Sets the state of feature flags in this parser. Some
+ * built-in feature flags are mutable.
+ */
+ public void setFeature(String featureId, boolean value)
throws SAXNotRecognizedException, SAXNotSupportedException
- {
- // see if the property is recognized
- getProperty (propertyId);
-
- // Properties with a defined value, we just change it if we can.
-
- if ((PROPERTY + "declaration-handler").equals (propertyId)) {
- if (value == null)
- declHandler = base;
- else if (! (value instanceof DeclHandler))
- throw new SAXNotSupportedException (propertyId);
- else
- declHandler = (DeclHandler) value;
- return ;
- }
-
- if ((PROPERTY + "lexical-handler").equals (propertyId)) {
- if (value == null)
- lexicalHandler = base;
- else if (! (value instanceof LexicalHandler))
- throw new SAXNotSupportedException (propertyId);
- else
- lexicalHandler = (LexicalHandler) value;
- return ;
- }
-
- throw new SAXNotSupportedException (propertyId);
- }
+ {
+ boolean state;
+
+ // Features with a defined value, we just change it if we can.
+ state = getFeature (featureId);
+
+ if (state == value)
+ {
+ return;
+ }
+ if (parser != null)
+ {
+ throw new SAXNotSupportedException("not while parsing");
+ }
+ if ((FEATURE + "namespace-prefixes").equals(featureId))
+ {
+ // in this implementation, this only affects xmlns reporting
+ xmlNames = value;
+ // forcibly prevent illegal parser state
+ if (!xmlNames)
+ {
+ namespaces = true;
+ }
+ return;
+ }
- //
- // This is where the driver receives XmlParser callbacks and translates
- // them into SAX callbacks. Some more callbacks have been added for
- // SAX2 support.
- //
+ if ((FEATURE + "namespaces").equals(featureId))
+ {
+ namespaces = value;
+ // forcibly prevent illegal parser state
+ if (!namespaces)
+ {
+ xmlNames = true;
+ }
+ return;
+ }
+
+ if ((FEATURE + "external-general-entities").equals(featureId))
+ {
+ extGE = value;
+ return;
+ }
+ if ((FEATURE + "external-parameter-entities").equals(featureId))
+ {
+ extPE = value;
+ return;
+ }
+ if ((FEATURE + "resolve-dtd-uris").equals(featureId))
+ {
+ resolveAll = value;
+ return;
+ }
- void startDocument ()
+ if ((FEATURE + "use-entity-resolver2").equals(featureId))
+ {
+ useResolver2 = value;
+ return;
+ }
+
+ throw new SAXNotRecognizedException(featureId);
+ }
+
+ /**
+ * <b>SAX2</b>: Assigns the specified property. Like SAX1 handlers,
+ * these may be changed at any time.
+ */
+ public void setProperty(String propertyId, Object value)
+ throws SAXNotRecognizedException, SAXNotSupportedException
+ {
+ // see if the property is recognized
+ getProperty(propertyId);
+
+ // Properties with a defined value, we just change it if we can.
+
+ if ((PROPERTY + "declaration-handler").equals(propertyId))
+ {
+ if (value == null)
+ {
+ declHandler = base;
+ }
+ else if (!(value instanceof DeclHandler))
+ {
+ throw new SAXNotSupportedException(propertyId);
+ }
+ else
+ {
+ declHandler = (DeclHandler) value;
+ }
+ return ;
+ }
+
+ if ((PROPERTY + "lexical-handler").equals(propertyId))
+ {
+ if (value == null)
+ {
+ lexicalHandler = base;
+ }
+ else if (!(value instanceof LexicalHandler))
+ {
+ throw new SAXNotSupportedException(propertyId);
+ }
+ else
+ {
+ lexicalHandler = (LexicalHandler) value;
+ }
+ return;
+ }
+
+ throw new SAXNotSupportedException(propertyId);
+ }
+
+ //
+ // This is where the driver receives XmlParser callbacks and translates
+ // them into SAX callbacks. Some more callbacks have been added for
+ // SAX2 support.
+ //
+
+ void startDocument()
throws SAXException
- {
- contentHandler.setDocumentLocator (this);
- contentHandler.startDocument ();
- attributesList.clear ();
- }
+ {
+ contentHandler.setDocumentLocator(this);
+ contentHandler.startDocument();
+ attributesList.clear();
+ }
- void xmlDecl(String version,
- String encoding,
- boolean standalone,
- String inputEncoding)
- throws SAXException
- {
- if (contentHandler instanceof ContentHandler2)
- {
- ((ContentHandler2) contentHandler).xmlDecl(version,
- encoding,
- standalone,
- inputEncoding);
- }
- }
+ void xmlDecl(String version,
+ String encoding,
+ boolean standalone,
+ String inputEncoding)
+ throws SAXException
+ {
+ if (contentHandler instanceof ContentHandler2)
+ {
+ ((ContentHandler2) contentHandler).xmlDecl(version,
+ encoding,
+ standalone,
+ inputEncoding);
+ }
+ }
- void skippedEntity (String name)
+ void skippedEntity(String name)
throws SAXException
- { contentHandler.skippedEntity (name); }
+ {
+ contentHandler.skippedEntity(name);
+ }
- InputSource getExternalSubset (String name, String baseURI)
+ InputSource getExternalSubset(String name, String baseURI)
throws SAXException, IOException
- {
- if (resolver2 == null || !useResolver2 || !extPE)
- return null;
- return resolver2.getExternalSubset (name, baseURI);
- }
+ {
+ if (resolver2 == null || !useResolver2 || !extPE)
+ {
+ return null;
+ }
+ return resolver2.getExternalSubset(name, baseURI);
+ }
- InputSource resolveEntity (boolean isPE, String name,
- InputSource in, String baseURI)
+ InputSource resolveEntity(boolean isPE, String name,
+ InputSource in, String baseURI)
throws SAXException, IOException
- {
- InputSource source;
-
- // external entities might be skipped
- if (isPE && !extPE)
- return null;
- if (!isPE && !extGE)
- return null;
-
- // ... or not
- lexicalHandler.startEntity (name);
- if (resolver2 != null && useResolver2) {
- source = resolver2.resolveEntity (name, in.getPublicId (),
- baseURI, in.getSystemId ());
- if (source == null) {
- in.setSystemId (absolutize (baseURI,
- in.getSystemId (), false));
- source = in;
- }
- } else {
- in.setSystemId (absolutize (baseURI, in.getSystemId (), false));
- source = entityResolver.resolveEntity (in.getPublicId (),
- in.getSystemId ());
- if (source == null)
- source = in;
- }
- startExternalEntity (name, source.getSystemId (), true);
- return source;
- }
+ {
+ InputSource source;
+
+ // external entities might be skipped
+ if (isPE && !extPE)
+ {
+ return null;
+ }
+ if (!isPE && !extGE)
+ {
+ return null;
+ }
- // absolutize a system ID relative to the specified base URI
- // (temporarily) package-visible for external entity decls
- String absolutize (String baseURI, String systemId, boolean nice)
+ // ... or not
+ lexicalHandler.startEntity(name);
+ if (resolver2 != null && useResolver2)
+ {
+ source = resolver2.resolveEntity(name, in.getPublicId(),
+ baseURI, in.getSystemId());
+ if (source == null)
+ {
+ in.setSystemId(absolutize(baseURI,
+ in.getSystemId(), false));
+ source = in;
+ }
+ }
+ else
+ {
+ in.setSystemId(absolutize(baseURI, in.getSystemId(), false));
+ source = entityResolver.resolveEntity(in.getPublicId(),
+ in.getSystemId());
+ if (source == null)
+ {
+ source = in;
+ }
+ }
+ startExternalEntity(name, source.getSystemId(), true);
+ return source;
+ }
+
+ // absolutize a system ID relative to the specified base URI
+ // (temporarily) package-visible for external entity decls
+ String absolutize(String baseURI, String systemId, boolean nice)
throws MalformedURLException, SAXException
- {
- // FIXME normalize system IDs -- when?
- // - Convert to UTF-8
- // - Map reserved and non-ASCII characters to %HH
-
- try {
- if (baseURI == null) {
- warn ("No base URI; hope this SYSTEM id is absolute: "
- + systemId);
- return new URL (systemId).toString ();
- } else
- return new URL (new URL (baseURI), systemId).toString ();
-
- } catch (MalformedURLException e) {
-
- // Let unknown URI schemes pass through unless we need
- // the JVM to map them to i/o streams for us...
- if (!nice)
- throw e;
-
- // sometimes sysids for notations or unparsed entities
- // aren't really URIs...
- warn ("Can't absolutize SYSTEM id: " + e.getMessage ());
- return systemId;
- }
- }
+ {
+ // FIXME normalize system IDs -- when?
+ // - Convert to UTF-8
+ // - Map reserved and non-ASCII characters to %HH
+
+ try
+ {
+ if (baseURI == null)
+ {
+ if (XmlParser.uriWarnings)
+ {
+ warn ("No base URI; hope this SYSTEM id is absolute: "
+ + systemId);
+ }
+ return new URL(systemId).toString();
+ }
+ else
+ {
+ return new URL(new URL(baseURI), systemId).toString();
+ }
+ }
+ catch (MalformedURLException e)
+ {
+ // Let unknown URI schemes pass through unless we need
+ // the JVM to map them to i/o streams for us...
+ if (!nice)
+ {
+ throw e;
+ }
+
+ // sometimes sysids for notations or unparsed entities
+ // aren't really URIs...
+ warn("Can't absolutize SYSTEM id: " + e.getMessage());
+ return systemId;
+ }
+ }
- void startExternalEntity (String name, String systemId,
- boolean stackOnly)
+ void startExternalEntity(String name, String systemId, boolean stackOnly)
throws SAXException
- {
- // The following warning was deleted because the application has the
- // option of not setting systemId. Sun's JAXP or Xerces seems to
- // ignore this case.
- /*
- if (systemId == null)
- warn ("URI was not reported to parser for entity " + name);
- */
- if (!stackOnly) // spliced [dtd] needs startEntity
- lexicalHandler.startEntity (name);
- entityStack.push (systemId);
- }
+ {
+ // The following warning was deleted because the application has the
+ // option of not setting systemId. Sun's JAXP or Xerces seems to
+ // ignore this case.
+ /*
+ if (systemId == null)
+ warn ("URI was not reported to parser for entity " + name);
+ */
+ if (!stackOnly) // spliced [dtd] needs startEntity
+ {
+ lexicalHandler.startEntity(name);
+ }
+ entityStack.push(systemId);
+ }
- void endExternalEntity (String name)
+ void endExternalEntity(String name)
throws SAXException
- {
- if (!"[document]".equals (name))
- lexicalHandler.endEntity (name);
- entityStack.pop ();
- }
+ {
+ if (!"[document]".equals(name))
+ {
+ lexicalHandler.endEntity(name);
+ }
+ entityStack.pop();
+ }
- void startInternalEntity (String name)
+ void startInternalEntity(String name)
throws SAXException
- {
- lexicalHandler.startEntity (name);
- }
+ {
+ lexicalHandler.startEntity(name);
+ }
- void endInternalEntity (String name)
+ void endInternalEntity(String name)
throws SAXException
- {
- lexicalHandler.endEntity (name);
- }
+ {
+ lexicalHandler.endEntity(name);
+ }
- void doctypeDecl (String name, String publicId, String systemId)
+ void doctypeDecl(String name, String publicId, String systemId)
throws SAXException
- {
- lexicalHandler.startDTD (name, publicId, systemId);
-
- // ... the "name" is a declaration and should be given
- // to the DeclHandler (but sax2 doesn't).
-
- // the IDs for the external subset are lexical details,
- // as are the contents of the internal subset; but sax2
- // doesn't provide the internal subset "pre-parse"
- }
-
- void notationDecl (String name, String ids [])
+ {
+ lexicalHandler.startDTD(name, publicId, systemId);
+
+ // ... the "name" is a declaration and should be given
+ // to the DeclHandler (but sax2 doesn't).
+
+ // the IDs for the external subset are lexical details,
+ // as are the contents of the internal subset; but sax2
+ // doesn't provide the internal subset "pre-parse"
+ }
+
+ void notationDecl(String name, String publicId, String systemId,
+ String baseUri)
throws SAXException
- {
- try {
- dtdHandler.notationDecl (name, ids [0],
- (resolveAll && ids [1] != null)
- ? absolutize (ids [2], ids [1], true)
- : ids [1]);
- } catch (IOException e) {
- // "can't happen"
- throw new SAXParseException (e.getMessage (), this, e);
- }
- }
+ {
+ try
+ {
+ dtdHandler.notationDecl(name, publicId,
+ (resolveAll && systemId != null)
+ ? absolutize(baseUri, systemId, true)
+ : systemId);
+ }
+ catch (IOException e)
+ {
+ // "can't happen"
+ throw new SAXParseException(e.getMessage(), this, e);
+ }
+ }
- void unparsedEntityDecl (String name, String ids [], String notation)
+ void unparsedEntityDecl(String name, String publicId, String systemId,
+ String baseUri, String notation)
throws SAXException
- {
- try {
- dtdHandler.unparsedEntityDecl (name, ids [0],
- resolveAll
- ? absolutize (ids [2], ids [1], true)
- : ids [1],
- notation);
- } catch (IOException e) {
- // "can't happen"
- throw new SAXParseException (e.getMessage (), this, e);
- }
- }
+ {
+ try
+ {
+ dtdHandler.unparsedEntityDecl(name, publicId,
+ resolveAll
+ ? absolutize(baseUri, systemId, true)
+ : systemId,
+ notation);
+ }
+ catch (IOException e)
+ {
+ // "can't happen"
+ throw new SAXParseException(e.getMessage(), this, e);
+ }
+ }
- void endDoctype ()
+ void endDoctype()
throws SAXException
- {
- lexicalHandler.endDTD ();
- }
+ {
+ lexicalHandler.endDTD();
+ }
- private void declarePrefix (String prefix, String uri)
+ private void declarePrefix(String prefix, String uri)
throws SAXException
- {
- int index = uri.indexOf (':');
-
- // many versions of nwalsh docbook stylesheets
- // have bogus URLs; so this can't be an error...
- if (index < 1 && uri.length () != 0)
- warn ("relative URI for namespace: " + uri);
-
- // FIXME: char [0] must be ascii alpha; chars [1..index]
- // must be ascii alphanumeric or in "+-." [RFC 2396]
-
- //Namespace Constraints
- //name for xml prefix must be http://www.w3.org/XML/1998/namespace
- boolean prefixEquality = prefix.equals("xml");
- boolean uriEquality = uri.equals("http://www.w3.org/XML/1998/namespace");
- if ((prefixEquality || uriEquality) && !(prefixEquality && uriEquality))
- fatal ("xml is by definition bound to the namespace name " +
- "http://www.w3.org/XML/1998/namespace");
-
- //xmlns prefix declaration is illegal but xml prefix declaration is llegal...
- if (prefixEquality && uriEquality)
- return;
-
- //name for xmlns prefix must be http://www.w3.org/2000/xmlns/
- prefixEquality = prefix.equals("xmlns");
- uriEquality = uri.equals("http://www.w3.org/2000/xmlns/");
- if ((prefixEquality || uriEquality) && !(prefixEquality && uriEquality))
- fatal("http://www.w3.org/2000/xmlns/ is by definition bound" +
- " to prefix xmlns");
-
- //even if the uri is http://www.w3.org/2000/xmlns/ it is illegal to declare it
- if (prefixEquality && uriEquality)
- fatal ("declaring the xmlns prefix is illegal");
-
- uri = uri.intern ();
- prefixStack.declarePrefix (prefix, uri);
- contentHandler.startPrefixMapping (prefix, uri);
- }
+ {
+ int index = uri.indexOf(':');
+
+ // many versions of nwalsh docbook stylesheets
+ // have bogus URLs; so this can't be an error...
+ if (index < 1 && uri.length() != 0)
+ {
+ warn("relative URI for namespace: " + uri);
+ }
- void attribute (String qname, String value, boolean isSpecified)
- throws SAXException
- {
- if (!attributes) {
- attributes = true;
- if (namespaces)
- prefixStack.pushContext ();
- }
-
- // process namespace decls immediately;
- // then maybe forget this as an attribute
- if (namespaces) {
- int index;
-
- // default NS declaration?
- if (getFeature (FEATURE + "string-interning")) {
- if ("xmlns" == qname) {
- declarePrefix ("", value);
- if (!xmlNames)
- return;
- }
- // NS prefix declaration?
- else if ((index = qname.indexOf (':')) == 5
- && qname.startsWith ("xmlns")) {
- String prefix = qname.substring (6);
-
- if (prefix.equals(""))
- fatal ("missing prefix in namespace declaration attribute");
- if (value.length () == 0) {
- verror ("missing URI in namespace declaration attribute: "
- + qname);
- } else
- declarePrefix (prefix, value);
- if (!xmlNames)
- return;
- }
- } else {
- if ("xmlns".equals(qname)) {
- declarePrefix ("", value);
- if (!xmlNames)
- return;
- }
- // NS prefix declaration?
- else if ((index = qname.indexOf (':')) == 5
- && qname.startsWith ("xmlns")) {
- String prefix = qname.substring (6);
-
- if (value.length () == 0) {
- verror ("missing URI in namespace decl attribute: "
- + qname);
- } else
- declarePrefix (prefix, value);
- if (!xmlNames)
- return;
- }
+ // FIXME: char [0] must be ascii alpha; chars [1..index]
+ // must be ascii alphanumeric or in "+-." [RFC 2396]
+
+ //Namespace Constraints
+ //name for xml prefix must be http://www.w3.org/XML/1998/namespace
+ boolean prefixEquality = prefix.equals("xml");
+ boolean uriEquality = uri.equals("http://www.w3.org/XML/1998/namespace");
+ if ((prefixEquality || uriEquality) && !(prefixEquality && uriEquality))
+ {
+ fatal("xml is by definition bound to the namespace name " +
+ "http://www.w3.org/XML/1998/namespace");
+ }
+
+ //xmlns prefix declaration is illegal but xml prefix declaration is llegal...
+ if (prefixEquality && uriEquality)
+ {
+ return;
}
+
+ //name for xmlns prefix must be http://www.w3.org/2000/xmlns/
+ prefixEquality = prefix.equals("xmlns");
+ uriEquality = uri.equals("http://www.w3.org/2000/xmlns/");
+ if ((prefixEquality || uriEquality) && !(prefixEquality && uriEquality))
+ {
+ fatal("http://www.w3.org/2000/xmlns/ is by definition bound" +
+ " to prefix xmlns");
+ }
+
+ //even if the uri is http://www.w3.org/2000/xmlns/
+ // it is illegal to declare it
+ if (prefixEquality && uriEquality)
+ {
+ fatal ("declaring the xmlns prefix is illegal");
+ }
+
+ uri = uri.intern();
+ prefixStack.declarePrefix(prefix, uri);
+ contentHandler.startPrefixMapping(prefix, uri);
}
- // remember this attribute ...
-
- attributeCount++;
-
- // attribute type comes from querying parser's DTD records
- attributesList.add(new Attribute(qname, value, isSpecified));
-
- }
- void startElement (String elname)
+ void attribute(String qname, String value, boolean isSpecified)
throws SAXException
- {
- ContentHandler handler = contentHandler;
-
- //
- // NOTE: this implementation of namespace support adds something
- // like six percent to parsing CPU time, in a large (~50 MB)
- // document that doesn't use namespaces at all. (Measured by PC
- // sampling, with a bug where endElement processing was omitted.)
- // [Measurement referred to older implementation, older JVM ...]
- //
- // It ought to become notably faster in such cases. Most
- // costs are the prefix stack calling Hashtable.get() (2%),
- // String.hashCode() (1.5%) and about 1.3% each for pushing
- // the context, and two chunks of name processing.
- //
-
- if (!attributes) {
- if (namespaces)
- prefixStack.pushContext ();
- } else if (namespaces) {
-
- // now we can patch up namespace refs; we saw all the
- // declarations, so now we'll do the Right Thing
- Iterator itt = attributesList.iterator ();
- while(itt.hasNext())
- {
- Attribute attribute = (Attribute) itt.next();
- String qname = attribute.name;
- int index;
-
- // default NS declaration?
- if (getFeature (FEATURE + "string-interning")) {
- if ("xmlns" == qname)
- continue;
- } else {
- if ("xmlns".equals(qname))
- continue;
- }
- //Illegal in the new Namespaces Draft
- //should it be only in 1.1 docs??
- if (qname.equals (":"))
- fatal ("namespace names consisting of a single colon " +
- "character are invalid");
- index = qname.indexOf (':');
-
- // NS prefix declaration?
- if (index == 5 && qname.startsWith ("xmlns"))
- continue;
-
- // it's not a NS decl; patch namespace info items
- if (prefixStack.processName (qname, nsTemp, true) == null)
- fatal ("undeclared attribute prefix in: " + qname);
- else {
- attribute.nameSpace = nsTemp[0];
- attribute.localName = nsTemp[1];
- }
- }
- }
-
- // save element name so attribute callbacks work
- elementName = elname;
- if (namespaces) {
- if (prefixStack.processName (elname, nsTemp, false) == null) {
- fatal ("undeclared element prefix in: " + elname);
- nsTemp [0] = nsTemp [1] = "";
- }
- handler.startElement (nsTemp [0], nsTemp [1], elname, this);
- } else
- handler.startElement ("", "", elname, this);
- // elementName = null;
-
- // elements with no attributes are pretty common!
- if (attributes) {
- attributesList.clear();
- attributeCount = 0;
- attributes = false;
- }
- }
-
- void endElement (String elname)
+ {
+ if (!attributes)
+ {
+ attributes = true;
+ if (namespaces)
+ {
+ prefixStack.pushContext();
+ }
+ }
+
+ // process namespace decls immediately;
+ // then maybe forget this as an attribute
+ if (namespaces)
+ {
+ int index;
+
+ // default NS declaration?
+ if (stringInterning)
+ {
+ if ("xmlns" == qname)
+ {
+ declarePrefix("", value);
+ if (!xmlNames)
+ {
+ return;
+ }
+ }
+ // NS prefix declaration?
+ else if ((index = qname.indexOf(':')) == 5
+ && qname.startsWith("xmlns"))
+ {
+ String prefix = qname.substring(6);
+
+ if (prefix.equals(""))
+ {
+ fatal("missing prefix " +
+ "in namespace declaration attribute");
+ }
+ if (value.length() == 0)
+ {
+ verror("missing URI in namespace declaration attribute: "
+ + qname);
+ }
+ else
+ {
+ declarePrefix(prefix, value);
+ }
+ if (!xmlNames)
+ {
+ return;
+ }
+ }
+ }
+ else
+ {
+ if ("xmlns".equals(qname))
+ {
+ declarePrefix("", value);
+ if (!xmlNames)
+ {
+ return;
+ }
+ }
+ // NS prefix declaration?
+ else if ((index = qname.indexOf(':')) == 5
+ && qname.startsWith("xmlns"))
+ {
+ String prefix = qname.substring(6);
+
+ if (value.length() == 0)
+ {
+ verror("missing URI in namespace decl attribute: "
+ + qname);
+ }
+ else
+ {
+ declarePrefix(prefix, value);
+ }
+ if (!xmlNames)
+ {
+ return;
+ }
+ }
+ }
+ }
+ // remember this attribute ...
+ attributeCount++;
+
+ // attribute type comes from querying parser's DTD records
+ attributesList.add(new Attribute(qname, value, isSpecified));
+
+ }
+
+ void startElement(String elname)
throws SAXException
- {
- ContentHandler handler = contentHandler;
-
- if (!namespaces) {
- handler.endElement ("", "", elname);
- return;
- }
- prefixStack.processName (elname, nsTemp, false);
- handler.endElement (nsTemp [0], nsTemp [1], elname);
+ {
+ ContentHandler handler = contentHandler;
- Enumeration prefixes = prefixStack.getDeclaredPrefixes ();
+ //
+ // NOTE: this implementation of namespace support adds something
+ // like six percent to parsing CPU time, in a large (~50 MB)
+ // document that doesn't use namespaces at all. (Measured by PC
+ // sampling, with a bug where endElement processing was omitted.)
+ // [Measurement referred to older implementation, older JVM ...]
+ //
+ // It ought to become notably faster in such cases. Most
+ // costs are the prefix stack calling Hashtable.get() (2%),
+ // String.hashCode() (1.5%) and about 1.3% each for pushing
+ // the context, and two chunks of name processing.
+ //
+
+ if (!attributes)
+ {
+ if (namespaces)
+ {
+ prefixStack.pushContext();
+ }
+ }
+ else if (namespaces)
+ {
+
+ // now we can patch up namespace refs; we saw all the
+ // declarations, so now we'll do the Right Thing
+ Iterator itt = attributesList.iterator();
+ while (itt.hasNext())
+ {
+ Attribute attribute = (Attribute) itt.next();
+ String qname = attribute.name;
+ int index;
+
+ // default NS declaration?
+ if (stringInterning)
+ {
+ if ("xmlns" == qname)
+ {
+ continue;
+ }
+ }
+ else
+ {
+ if ("xmlns".equals(qname))
+ {
+ continue;
+ }
+ }
+ //Illegal in the new Namespaces Draft
+ //should it be only in 1.1 docs??
+ if (qname.equals (":"))
+ {
+ fatal("namespace names consisting of a single colon " +
+ "character are invalid");
+ }
+ index = qname.indexOf(':');
+
+ // NS prefix declaration?
+ if (index == 5 && qname.startsWith("xmlns"))
+ {
+ continue;
+ }
+
+ // it's not a NS decl; patch namespace info items
+ if (prefixStack.processName(qname, nsTemp, true) == null)
+ {
+ fatal("undeclared attribute prefix in: " + qname);
+ }
+ else
+ {
+ attribute.nameSpace = nsTemp[0];
+ attribute.localName = nsTemp[1];
+ }
+ }
+ }
+
+ // save element name so attribute callbacks work
+ elementName = elname;
+ if (namespaces)
+ {
+ if (prefixStack.processName(elname, nsTemp, false) == null)
+ {
+ fatal("undeclared element prefix in: " + elname);
+ nsTemp[0] = nsTemp[1] = "";
+ }
+ handler.startElement(nsTemp[0], nsTemp[1], elname, this);
+ }
+ else
+ {
+ handler.startElement("", "", elname, this);
+ }
+ // elementName = null;
+
+ // elements with no attributes are pretty common!
+ if (attributes)
+ {
+ attributesList.clear();
+ attributeCount = 0;
+ attributes = false;
+ }
+ }
+
+ void endElement(String elname)
+ throws SAXException
+ {
+ ContentHandler handler = contentHandler;
- while (prefixes.hasMoreElements ())
- handler.endPrefixMapping ((String) prefixes.nextElement ());
- prefixStack.popContext ();
- }
+ if (!namespaces)
+ {
+ handler.endElement("", "", elname);
+ return;
+ }
+ prefixStack.processName(elname, nsTemp, false);
+ handler.endElement(nsTemp[0], nsTemp[1], elname);
+
+ Enumeration prefixes = prefixStack.getDeclaredPrefixes();
+
+ while (prefixes.hasMoreElements())
+ {
+ handler.endPrefixMapping((String) prefixes.nextElement());
+ }
+ prefixStack.popContext();
+ }
- void startCDATA ()
+ void startCDATA()
throws SAXException
- {
- lexicalHandler.startCDATA ();
- }
+ {
+ lexicalHandler.startCDATA();
+ }
- void charData (char ch[], int start, int length)
+ void charData(char[] ch, int start, int length)
throws SAXException
- {
- contentHandler.characters (ch, start, length);
- }
+ {
+ contentHandler.characters(ch, start, length);
+ }
- void endCDATA ()
+ void endCDATA()
throws SAXException
- {
- lexicalHandler.endCDATA ();
- }
+ {
+ lexicalHandler.endCDATA();
+ }
- void ignorableWhitespace (char ch[], int start, int length)
+ void ignorableWhitespace(char[] ch, int start, int length)
throws SAXException
- {
- contentHandler.ignorableWhitespace (ch, start, length);
- }
+ {
+ contentHandler.ignorableWhitespace(ch, start, length);
+ }
- void processingInstruction (String target, String data)
+ void processingInstruction(String target, String data)
throws SAXException
- {
- contentHandler.processingInstruction (target, data);
- }
+ {
+ contentHandler.processingInstruction(target, data);
+ }
- void comment (char ch[], int start, int length)
+ void comment(char[] ch, int start, int length)
throws SAXException
- {
- if (lexicalHandler != base)
- lexicalHandler.comment (ch, start, length);
- }
+ {
+ if (lexicalHandler != base)
+ {
+ lexicalHandler.comment(ch, start, length);
+ }
+ }
- void fatal (String message)
+ void fatal(String message)
throws SAXException
- {
- SAXParseException fatal;
-
- fatal = new SAXParseException (message, this);
- errorHandler.fatalError (fatal);
-
- // Even if the application can continue ... we can't!
- throw fatal;
- }
+ {
+ SAXParseException fatal;
+
+ fatal = new SAXParseException(message, this);
+ errorHandler.fatalError(fatal);
+
+ // Even if the application can continue ... we can't!
+ throw fatal;
+ }
- // We can safely report a few validity errors that
- // make layered SAX2 DTD validation more conformant
- void verror (String message)
+ // We can safely report a few validity errors that
+ // make layered SAX2 DTD validation more conformant
+ void verror(String message)
throws SAXException
- {
- SAXParseException err;
-
- err = new SAXParseException (message, this);
- errorHandler.error (err);
- }
-
- void warn (String message)
+ {
+ SAXParseException err;
+
+ err = new SAXParseException(message, this);
+ errorHandler.error(err);
+ }
+
+ void warn(String message)
throws SAXException
- {
- SAXParseException err;
-
- err = new SAXParseException (message, this);
- errorHandler.warning (err);
- }
+ {
+ SAXParseException err;
+
+ err = new SAXParseException(message, this);
+ errorHandler.warning(err);
+ }
+ //
+ // Implementation of org.xml.sax.Attributes.
+ //
+
+ /**
+ * <b>SAX1 AttributeList, SAX2 Attributes</b> method
+ * (don't invoke on parser);
+ */
+ public int getLength()
+ {
+ return attributesList.size();
+ }
- //
- // Implementation of org.xml.sax.Attributes.
- //
+ /**
+ * <b>SAX2 Attributes</b> method (don't invoke on parser);
+ */
+ public String getURI(int index)
+ {
+ if (index < 0 || index >= attributesList.size())
+ {
+ return null;
+ }
+ return ((Attribute) attributesList.get(index)).nameSpace;
+ }
- /**
- * <b>SAX1 AttributeList, SAX2 Attributes</b> method
- * (don't invoke on parser);
- */
- public int getLength ()
- {
- return attributesList.size();
- }
+ /**
+ * <b>SAX2 Attributes</b> method (don't invoke on parser);
+ */
+ public String getLocalName(int index)
+ {
+ if (index < 0 || index >= attributesList.size())
+ {
+ return null;
+ }
+ Attribute attr = (Attribute) attributesList.get(index);
+ // FIXME attr.localName is sometimes null, why?
+ if (namespaces && attr.localName == null)
+ {
+ // XXX fix this here for now
+ int ci = attr.name.indexOf(':');
+ attr.localName = (ci == -1) ? attr.name :
+ attr.name.substring(ci + 1);
+ }
+ return (attr.localName == null) ? "" : attr.localName;
+ }
- /**
- * <b>SAX2 Attributes</b> method (don't invoke on parser);
- */
- public String getURI (int index)
- {
- if (index < 0 || index >= attributesList.size())
- {
- return null;
- }
- return ((Attribute) attributesList.get(index)).nameSpace;
- }
+ /**
+ * <b>SAX2 Attributes</b> method (don't invoke on parser);
+ */
+ public String getQName(int index)
+ {
+ if (index < 0 || index >= attributesList.size())
+ {
+ return null;
+ }
+ Attribute attr = (Attribute) attributesList.get(index);
+ return (attr.name == null) ? "" : attr.name;
+ }
- /**
- * <b>SAX2 Attributes</b> method (don't invoke on parser);
- */
- public String getLocalName (int index)
- {
- if (index < 0 || index >= attributesList.size())
- {
- return null;
- }
- Attribute attr = (Attribute) attributesList.get(index);
- // FIXME attr.localName is sometimes null, why?
- if (namespaces && attr.localName == null)
- {
- // XXX fix this here for now
- int ci = attr.name.indexOf(':');
- attr.localName = (ci == -1) ? attr.name :
- attr.name.substring(ci + 1);
- }
- return (attr.localName == null) ? "" : attr.localName;
- }
+ /**
+ * <b>SAX1 AttributeList</b> method (don't invoke on parser);
+ */
+ public String getName(int index)
+ {
+ return getQName(index);
+ }
- /**
- * <b>SAX2 Attributes</b> method (don't invoke on parser);
- */
- public String getQName (int index)
- {
- if (index < 0 || index >= attributesList.size())
- {
- return null;
- }
- Attribute attr = (Attribute) attributesList.get(index);
- return (attr.name == null) ? "" : attr.name;
- }
+ /**
+ * <b>SAX1 AttributeList, SAX2 Attributes</b> method
+ * (don't invoke on parser);
+ */
+ public String getType(int index)
+ {
+ if (index < 0 || index >= attributesList.size())
+ {
+ return null;
+ }
+ String type = parser.getAttributeType(elementName, getQName(index));
+ if (type == null)
+ {
+ return "CDATA";
+ }
+ // ... use DeclHandler.attributeDecl to see enumerations
+ if (type == "ENUMERATION")
+ {
+ return "NMTOKEN";
+ }
+ return type;
+ }
- /**
- * <b>SAX1 AttributeList</b> method (don't invoke on parser);
- */
- public String getName (int index)
- {
- return getQName(index);
- }
+ /**
+ * <b>SAX1 AttributeList, SAX2 Attributes</b> method
+ * (don't invoke on parser);
+ */
+ public String getValue(int index)
+ {
+ if (index < 0 || index >= attributesList.size())
+ {
+ return null;
+ }
+ return ((Attribute) attributesList.get(index)).value;
+ }
- /**
- * <b>SAX1 AttributeList, SAX2 Attributes</b> method
- * (don't invoke on parser);
- */
- public String getType (int index)
+ /**
+ * <b>SAX2 Attributes</b> method (don't invoke on parser);
+ */
+ public int getIndex(String uri, String local)
{
- if (index < 0 || index >= attributesList.size())
- {
- return null;
- }
- String type = parser.getAttributeType(elementName, getQName(index));
- if (type == null)
- {
- return "CDATA";
- }
- // ... use DeclHandler.attributeDecl to see enumerations
- if (type == "ENUMERATION")
- {
- return "NMTOKEN";
- }
- return type;
- }
-
+ int length = getLength();
+
+ for (int i = 0; i < length; i++)
+ {
+ if (!getURI(i).equals(uri))
+ {
+ continue;
+ }
+ if (getLocalName(i).equals(local))
+ {
+ return i;
+ }
+ }
+ return -1;
+ }
- /**
- * <b>SAX1 AttributeList, SAX2 Attributes</b> method
- * (don't invoke on parser);
- */
- public String getValue (int index)
- {
- if (index < 0 || index >= attributesList.size())
+ /**
+ * <b>SAX2 Attributes</b> method (don't invoke on parser);
+ */
+ public int getIndex(String xmlName)
+ {
+ int length = getLength();
+
+ for (int i = 0; i < length; i++)
+ {
+ if (getQName(i).equals(xmlName))
{
- return null;
+ return i;
}
- return ((Attribute) attributesList.get(index)).value;
- }
+ }
+ return -1;
+ }
+ /**
+ * <b>SAX2 Attributes</b> method (don't invoke on parser);
+ */
+ public String getType(String uri, String local)
+ {
+ int index = getIndex(uri, local);
+
+ if (index < 0)
+ {
+ return null;
+ }
+ return getType(index);
+ }
- /**
- * <b>SAX2 Attributes</b> method (don't invoke on parser);
- */
- public int getIndex (String uri, String local)
- {
- int length = getLength();
+ /**
+ * <b>SAX1 AttributeList, SAX2 Attributes</b> method
+ * (don't invoke on parser);
+ */
+ public String getType(String xmlName)
+ {
+ int index = getIndex(xmlName);
+
+ if (index < 0)
+ {
+ return null;
+ }
+ return getType(index);
+ }
- for (int i = 0; i < length; i++)
- {
- if (!getURI(i).equals(uri))
- {
- continue;
- }
- if (getLocalName(i).equals(local))
- {
- return i;
- }
- }
- return -1;
- }
+ /**
+ * <b>SAX Attributes</b> method (don't invoke on parser);
+ */
+ public String getValue(String uri, String local)
+ {
+ int index = getIndex(uri, local);
+
+ if (index < 0)
+ {
+ return null;
+ }
+ return getValue(index);
+ }
+ /**
+ * <b>SAX1 AttributeList, SAX2 Attributes</b> method
+ * (don't invoke on parser);
+ */
+ public String getValue(String xmlName)
+ {
+ int index = getIndex(xmlName);
+
+ if (index < 0)
+ {
+ return null;
+ }
+ return getValue(index);
+ }
- /**
- * <b>SAX2 Attributes</b> method (don't invoke on parser);
- */
- public int getIndex (String xmlName)
- {
- int length = getLength();
+ //
+ // Implementation of org.xml.sax.ext.Attributes2
+ //
+
+ /** @return false unless the attribute was declared in the DTD.
+ * @throws java.lang.ArrayIndexOutOfBoundsException
+ * When the supplied index does not identify an attribute.
+ */
+ public boolean isDeclared(int index)
+ {
+ if (index < 0 || index >= attributeCount)
+ {
+ throw new ArrayIndexOutOfBoundsException();
+ }
+ String type = parser.getAttributeType(elementName, getQName(index));
+ return (type != null);
+ }
- for (int i = 0; i < length; i++)
- {
- if (getQName(i).equals(xmlName))
- {
- return i;
- }
- }
- return -1;
- }
+ /** @return false unless the attribute was declared in the DTD.
+ * @throws java.lang.IllegalArgumentException
+ * When the supplied names do not identify an attribute.
+ */
+ public boolean isDeclared(String qName)
+ {
+ int index = getIndex(qName);
+ if (index < 0)
+ {
+ throw new IllegalArgumentException();
+ }
+ String type = parser.getAttributeType(elementName, qName);
+ return (type != null);
+ }
+ /** @return false unless the attribute was declared in the DTD.
+ * @throws java.lang.IllegalArgumentException
+ * When the supplied names do not identify an attribute.
+ */
+ public boolean isDeclared(String uri, String localName)
+ {
+ int index = getIndex(uri, localName);
+ return isDeclared(index);
+ }
- /**
- * <b>SAX2 Attributes</b> method (don't invoke on parser);
- */
- public String getType (String uri, String local)
- {
- int index = getIndex(uri, local);
+ /**
+ * <b>SAX-ext Attributes2</b> method (don't invoke on parser);
+ */
+ public boolean isSpecified(int index)
+ {
+ return ((Attribute) attributesList.get(index)).specified;
+ }
- if (index < 0)
- {
- return null;
- }
- return getType(index);
- }
+ /**
+ * <b>SAX-ext Attributes2</b> method (don't invoke on parser);
+ */
+ public boolean isSpecified(String uri, String local)
+ {
+ int index = getIndex (uri, local);
+ return isSpecified(index);
+ }
+ /**
+ * <b>SAX-ext Attributes2</b> method (don't invoke on parser);
+ */
+ public boolean isSpecified(String xmlName)
+ {
+ int index = getIndex (xmlName);
+ return isSpecified(index);
+ }
- /**
- * <b>SAX1 AttributeList, SAX2 Attributes</b> method
- * (don't invoke on parser);
- */
- public String getType (String xmlName)
- {
- int index = getIndex(xmlName);
+ //
+ // Implementation of org.xml.sax.Locator.
+ //
- if (index < 0)
- {
- return null;
- }
- return getType(index);
- }
+ /**
+ * <b>SAX Locator</b> method (don't invoke on parser);
+ */
+ public String getPublicId()
+ {
+ return null; // FIXME track public IDs too
+ }
+ /**
+ * <b>SAX Locator</b> method (don't invoke on parser);
+ */
+ public String getSystemId()
+ {
+ if (entityStack.empty())
+ {
+ return null;
+ }
+ else
+ {
+ return (String) entityStack.peek();
+ }
+ }
- /**
- * <b>SAX Attributes</b> method (don't invoke on parser);
- */
- public String getValue (String uri, String local)
- {
- int index = getIndex(uri, local);
+ /**
+ * <b>SAX Locator</b> method (don't invoke on parser);
+ */
+ public int getLineNumber()
+ {
+ return parser.getLineNumber();
+ }
- if (index < 0)
- {
- return null;
- }
- return getValue(index);
- }
+ /**
+ * <b>SAX Locator</b> method (don't invoke on parser);
+ */
+ public int getColumnNumber()
+ {
+ return parser.getColumnNumber();
+ }
+ // adapter between SAX2 content handler and SAX1 document handler callbacks
+ private static class Adapter
+ implements ContentHandler
+ {
+
+ private DocumentHandler docHandler;
- /**
- * <b>SAX1 AttributeList, SAX2 Attributes</b> method
- * (don't invoke on parser);
- */
- public String getValue (String xmlName)
+ Adapter(DocumentHandler dh)
{
- int index = getIndex(xmlName);
-
- if (index < 0)
- {
- return null;
- }
- return getValue(index);
+ docHandler = dh;
}
-
- //
- // Implementation of org.xml.sax.ext.Attributes2
- //
-
-
- /** @return false unless the attribute was declared in the DTD.
- * @throws java.lang.ArrayIndexOutOfBoundsException
- * When the supplied index does not identify an attribute.
- */
- public boolean isDeclared (int index)
+ public void setDocumentLocator(Locator l)
{
- if (index < 0 || index >= attributeCount)
- throw new ArrayIndexOutOfBoundsException ();
- String type = parser.getAttributeType(elementName, getQName(index));
- return (type != null);
+ docHandler.setDocumentLocator(l);
}
-
- /** @return false unless the attribute was declared in the DTD.
- * @throws java.lang.IllegalArgumentException
- * When the supplied names do not identify an attribute.
- */
- public boolean isDeclared (String qName)
+
+ public void startDocument()
+ throws SAXException
{
- int index = getIndex (qName);
- if (index < 0)
- throw new IllegalArgumentException ();
- String type = parser.getAttributeType(elementName, qName);
- return (type != null);
+ docHandler.startDocument();
}
-
- /** @return false unless the attribute was declared in the DTD.
- * @throws java.lang.IllegalArgumentException
- * When the supplied names do not identify an attribute.
- */
- public boolean isDeclared (String uri, String localName)
+
+ public void processingInstruction(String target, String data)
+ throws SAXException
{
- int index = getIndex (uri, localName);
- return isDeclared(index);
+ docHandler.processingInstruction(target, data);
}
-
-
- /**
- * <b>SAX-ext Attributes2</b> method (don't invoke on parser);
- */
- public boolean isSpecified (int index)
+
+ public void startPrefixMapping(String prefix, String uri)
{
- return ((Attribute) attributesList.get(index)).specified;
+ /* ignored */
}
- /**
- * <b>SAX-ext Attributes2</b> method (don't invoke on parser);
- */
- public boolean isSpecified (String uri, String local)
+ public void startElement(String namespace,
+ String local,
+ String name,
+ Attributes attrs)
+ throws SAXException
{
- int index = getIndex (uri, local);
- return isSpecified(index);
+ docHandler.startElement(name, (AttributeList) attrs);
}
- /**
- * <b>SAX-ext Attributes2</b> method (don't invoke on parser);
- */
- public boolean isSpecified (String xmlName)
+ public void characters(char[] buf, int offset, int len)
+ throws SAXException
{
- int index = getIndex (xmlName);
- return isSpecified(index);
+ docHandler.characters(buf, offset, len);
}
-
- //
- // Implementation of org.xml.sax.Locator.
- //
-
- /**
- * <b>SAX Locator</b> method (don't invoke on parser);
- */
- public String getPublicId ()
+ public void ignorableWhitespace(char[] buf, int offset, int len)
+ throws SAXException
{
- return null; // FIXME track public IDs too
+ docHandler.ignorableWhitespace(buf, offset, len);
}
- /**
- * <b>SAX Locator</b> method (don't invoke on parser);
- */
- public String getSystemId ()
+ public void skippedEntity(String name)
{
- if (entityStack.empty ())
- return null;
- else
- return (String) entityStack.peek ();
+ /* ignored */
}
- /**
- * <b>SAX Locator</b> method (don't invoke on parser);
- */
- public int getLineNumber ()
+ public void endElement(String u, String l, String name)
+ throws SAXException
{
- return parser.getLineNumber ();
+ docHandler.endElement(name);
}
- /**
- * <b>SAX Locator</b> method (don't invoke on parser);
- */
- public int getColumnNumber ()
+ public void endPrefixMapping(String prefix)
{
- return parser.getColumnNumber ();
+ /* ignored */
}
- // adapter between SAX2 content handler and SAX1 document handler callbacks
- private static class Adapter implements ContentHandler
+ public void endDocument()
+ throws SAXException
{
- private DocumentHandler docHandler;
-
- Adapter (DocumentHandler dh)
- { docHandler = dh; }
-
-
- public void setDocumentLocator (Locator l)
- { docHandler.setDocumentLocator (l); }
-
- public void startDocument () throws SAXException
- { docHandler.startDocument (); }
-
- public void processingInstruction (String target, String data)
- throws SAXException
- { docHandler.processingInstruction (target, data); }
-
- public void startPrefixMapping (String prefix, String uri)
- { /* ignored */ }
-
- public void startElement (
- String namespace,
- String local,
- String name,
- Attributes attrs
- ) throws SAXException
- { docHandler.startElement (name, (AttributeList) attrs); }
-
- public void characters (char buf [], int offset, int len)
- throws SAXException
- { docHandler.characters (buf, offset, len); }
-
- public void ignorableWhitespace (char buf [], int offset, int len)
- throws SAXException
- { docHandler.ignorableWhitespace (buf, offset, len); }
-
- public void skippedEntity (String name)
- { /* ignored */ }
-
- public void endElement (String u, String l, String name)
- throws SAXException
- { docHandler.endElement (name); }
-
- public void endPrefixMapping (String prefix)
- { /* ignored */ }
-
- public void endDocument () throws SAXException
- { docHandler.endDocument (); }
+ docHandler.endDocument();
}
-}
-
-class Attribute
-{
+ }
+ private static class Attribute
+ {
+
String name;
String value;
String nameSpace;
String localName;
boolean specified;
-
+
Attribute(String name, String value, boolean specified)
{
- this.name = name;
- this.value = value;
- this.nameSpace = "";
- this.specified = specified;
+ this.name = name;
+ this.value = value;
+ this.nameSpace = "";
+ this.specified = specified;
}
-}
+
+ }
+}
diff --git a/libjava/gnu/xml/aelfred2/XmlParser.java b/libjava/gnu/xml/aelfred2/XmlParser.java
index f4abf22..e6f55e3 100644
--- a/libjava/gnu/xml/aelfred2/XmlParser.java
+++ b/libjava/gnu/xml/aelfred2/XmlParser.java
@@ -53,6 +53,8 @@ Partly derived from code which carried the following notice:
package gnu.xml.aelfred2;
+import gnu.java.security.action.GetPropertyAction;
+
import java.io.BufferedInputStream;
import java.io.CharConversionException;
import java.io.EOFException;
@@ -63,12 +65,11 @@ import java.io.Reader;
import java.io.UnsupportedEncodingException;
import java.net.URL;
import java.net.URLConnection;
+import java.security.AccessController;
-// maintaining 1.1 compatibility for now ...
-// Iterator and Hashmap ought to be faster
-import java.util.Enumeration;
-import java.util.Hashtable;
-import java.util.Stack;
+import java.util.Iterator;
+import java.util.HashMap;
+import java.util.LinkedList;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
@@ -86,1511 +87,1838 @@ import org.xml.sax.SAXException;
*/
final class XmlParser
{
- // avoid slow per-character readCh()
- private final static boolean USE_CHEATS = true;
-
-
- //////////////////////////////////////////////////////////////////////
- // Constructors.
- ////////////////////////////////////////////////////////////////////////
-
-
- /**
- * Construct a new parser with no associated handler.
- * @see #setHandler
- * @see #parse
- */
- // package private
- XmlParser ()
- {
- }
+ // avoid slow per-character readCh()
+ private final static boolean USE_CHEATS = true;
- /**
- * Set the handler that will receive parsing events.
- * @param handler The handler to receive callback events.
- * @see #parse
- */
- // package private
- void setHandler (SAXDriver handler)
- {
- this.handler = handler;
- }
-
-
- /**
- * Parse an XML document from the character stream, byte stream, or URI
- * that you provide (in that order of preference). Any URI that you
- * supply will become the base URI for resolving relative URI, and may
- * be used to acquire a reader or byte stream.
- *
- * <p> Only one thread at a time may use this parser; since it is
- * private to this package, post-parse cleanup is done by the caller,
- * which MUST NOT REUSE the parser (just null it).
- *
- * @param systemId Absolute URI of the document; should never be null,
- * but may be so iff a reader <em>or</em> a stream is provided.
- * @param publicId The public identifier of the document, or null.
- * @param reader A character stream; must be null if stream isn't.
- * @param stream A byte input stream; must be null if reader isn't.
- * @param encoding The suggested encoding, or null if unknown.
- * @exception java.lang.Exception Basically SAXException or IOException
- */
- // package private
- void doParse (
- String systemId,
- String publicId,
- Reader reader,
- InputStream stream,
- String encoding
- ) throws Exception
- {
- if (handler == null)
- throw new IllegalStateException ("no callback handler");
-
- initializeVariables ();
-
- // predeclare the built-in entities here (replacement texts)
- // we don't need to intern(), since we're guaranteed literals
- // are always (globally) interned.
- setInternalEntity ("amp", "&#38;");
- setInternalEntity ("lt", "&#60;");
- setInternalEntity ("gt", "&#62;");
- setInternalEntity ("apos", "&#39;");
- setInternalEntity ("quot", "&#34;");
-
- try {
- // pushURL first to ensure locator is correct in startDocument
- // ... it might report an IO or encoding exception.
- handler.startDocument ();
- pushURL (false, "[document]",
- // default baseURI: null
- new String [] { publicId, systemId, null},
- reader, stream, encoding, false);
-
- parseDocument ();
- } catch (EOFException e){
- //empty input
- error("empty document, with no root element.");
- }finally {
- if (reader != null)
- try { reader.close ();
- } catch (IOException e) { /* ignore */ }
- if (stream != null)
- try { stream.close ();
- } catch (IOException e) { /* ignore */ }
- if (is != null)
- try { is.close ();
- } catch (IOException e) { /* ignore */ }
- if (reader != null)
- try {
- reader.close ();
- } catch (IOException e) { /* ignore */
- }
- scratch = null;
- }
- }
-
-
- ////////////////////////////////////////////////////////////////////////
- // Constants.
- ////////////////////////////////////////////////////////////////////////
-
- //
- // Constants for element content type.
- //
-
- /**
- * Constant: an element has not been declared.
- * @see #getElementContentType
- */
- public final static int CONTENT_UNDECLARED = 0;
-
- /**
- * Constant: the element has a content model of ANY.
- * @see #getElementContentType
- */
- public final static int CONTENT_ANY = 1;
-
- /**
- * Constant: the element has declared content of EMPTY.
- * @see #getElementContentType
- */
- public final static int CONTENT_EMPTY = 2;
-
- /**
- * Constant: the element has mixed content.
- * @see #getElementContentType
- */
- public final static int CONTENT_MIXED = 3;
-
- /**
- * Constant: the element has element content.
- * @see #getElementContentType
- */
- public final static int CONTENT_ELEMENTS = 4;
-
-
- //
- // Constants for the entity type.
- //
-
- /**
- * Constant: the entity has not been declared.
- * @see #getEntityType
- */
- public final static int ENTITY_UNDECLARED = 0;
-
- /**
- * Constant: the entity is internal.
- * @see #getEntityType
- */
- public final static int ENTITY_INTERNAL = 1;
-
- /**
- * Constant: the entity is external, non-parsable data.
- * @see #getEntityType
- */
- public final static int ENTITY_NDATA = 2;
-
- /**
- * Constant: the entity is external XML data.
- * @see #getEntityType
- */
- public final static int ENTITY_TEXT = 3;
-
-
- //
- // Attribute type constants are interned literal strings.
- //
-
- //
- // Constants for supported encodings. "external" is just a flag.
- //
- private final static int ENCODING_EXTERNAL = 0;
- private final static int ENCODING_UTF_8 = 1;
- private final static int ENCODING_ISO_8859_1 = 2;
- private final static int ENCODING_UCS_2_12 = 3;
- private final static int ENCODING_UCS_2_21 = 4;
- private final static int ENCODING_UCS_4_1234 = 5;
- private final static int ENCODING_UCS_4_4321 = 6;
- private final static int ENCODING_UCS_4_2143 = 7;
- private final static int ENCODING_UCS_4_3412 = 8;
- private final static int ENCODING_ASCII = 9;
-
-
- //
- // Constants for attribute default value.
- //
-
- /**
- * Constant: the attribute is not declared.
- * @see #getAttributeDefaultValueType
- */
- public final static int ATTRIBUTE_DEFAULT_UNDECLARED = 30;
-
- /**
- * Constant: the attribute has a literal default value specified.
- * @see #getAttributeDefaultValueType
- * @see #getAttributeDefaultValue
- */
- public final static int ATTRIBUTE_DEFAULT_SPECIFIED = 31;
-
- /**
- * Constant: the attribute was declared #IMPLIED.
- * @see #getAttributeDefaultValueType
- */
- public final static int ATTRIBUTE_DEFAULT_IMPLIED = 32;
-
- /**
- * Constant: the attribute was declared #REQUIRED.
- * @see #getAttributeDefaultValueType
- */
- public final static int ATTRIBUTE_DEFAULT_REQUIRED = 33;
-
- /**
- * Constant: the attribute was declared #FIXED.
- * @see #getAttributeDefaultValueType
- * @see #getAttributeDefaultValue
- */
- public final static int ATTRIBUTE_DEFAULT_FIXED = 34;
-
-
- //
- // Constants for input.
- //
- private final static int INPUT_NONE = 0;
- private final static int INPUT_INTERNAL = 1;
- private final static int INPUT_STREAM = 3;
- private final static int INPUT_READER = 5;
-
-
- //
- // Flags for reading literals.
- //
- // expand general entity refs (attribute values in dtd and content)
- private final static int LIT_ENTITY_REF = 2;
- // normalize this value (space chars) (attributes, public ids)
- private final static int LIT_NORMALIZE = 4;
- // literal is an attribute value
- private final static int LIT_ATTRIBUTE = 8;
- // don't expand parameter entities
- private final static int LIT_DISABLE_PE = 16;
- // don't expand [or parse] character refs
- private final static int LIT_DISABLE_CREF = 32;
- // don't parse general entity refs
- private final static int LIT_DISABLE_EREF = 64;
- // literal is a public ID value
- private final static int LIT_PUBID = 256;
-
-
- //
- // Flags affecting PE handling in DTDs (if expandPE is true).
- // PEs expand with space padding, except inside literals.
- //
- private final static int CONTEXT_NORMAL = 0;
- private final static int CONTEXT_LITERAL = 1;
+ ////////////////////////////////////////////////////////////////////////
+ // Constants.
+ ////////////////////////////////////////////////////////////////////////
+
+ //
+ // Constants for element content type.
+ //
+
+ /**
+ * Constant: an element has not been declared.
+ * @see #getElementContentType
+ */
+ public final static int CONTENT_UNDECLARED = 0;
+
+ /**
+ * Constant: the element has a content model of ANY.
+ * @see #getElementContentType
+ */
+ public final static int CONTENT_ANY = 1;
+
+ /**
+ * Constant: the element has declared content of EMPTY.
+ * @see #getElementContentType
+ */
+ public final static int CONTENT_EMPTY = 2;
+
+ /**
+ * Constant: the element has mixed content.
+ * @see #getElementContentType
+ */
+ public final static int CONTENT_MIXED = 3;
+
+ /**
+ * Constant: the element has element content.
+ * @see #getElementContentType
+ */
+ public final static int CONTENT_ELEMENTS = 4;
+
+
+ //
+ // Constants for the entity type.
+ //
+
+ /**
+ * Constant: the entity has not been declared.
+ * @see #getEntityType
+ */
+ public final static int ENTITY_UNDECLARED = 0;
+
+ /**
+ * Constant: the entity is internal.
+ * @see #getEntityType
+ */
+ public final static int ENTITY_INTERNAL = 1;
+
+ /**
+ * Constant: the entity is external, non-parsable data.
+ * @see #getEntityType
+ */
+ public final static int ENTITY_NDATA = 2;
+
+ /**
+ * Constant: the entity is external XML data.
+ * @see #getEntityType
+ */
+ public final static int ENTITY_TEXT = 3;
+
+ //
+ // Attribute type constants are interned literal strings.
+ //
+
+ //
+ // Constants for supported encodings. "external" is just a flag.
+ //
+ private final static int ENCODING_EXTERNAL = 0;
+ private final static int ENCODING_UTF_8 = 1;
+ private final static int ENCODING_ISO_8859_1 = 2;
+ private final static int ENCODING_UCS_2_12 = 3;
+ private final static int ENCODING_UCS_2_21 = 4;
+ private final static int ENCODING_UCS_4_1234 = 5;
+ private final static int ENCODING_UCS_4_4321 = 6;
+ private final static int ENCODING_UCS_4_2143 = 7;
+ private final static int ENCODING_UCS_4_3412 = 8;
+ private final static int ENCODING_ASCII = 9;
+
+ //
+ // Constants for attribute default value.
+ //
+
+ /**
+ * Constant: the attribute is not declared.
+ * @see #getAttributeDefaultValueType
+ */
+ public final static int ATTRIBUTE_DEFAULT_UNDECLARED = 30;
+
+ /**
+ * Constant: the attribute has a literal default value specified.
+ * @see #getAttributeDefaultValueType
+ * @see #getAttributeDefaultValue
+ */
+ public final static int ATTRIBUTE_DEFAULT_SPECIFIED = 31;
+
+ /**
+ * Constant: the attribute was declared #IMPLIED.
+ * @see #getAttributeDefaultValueType
+ */
+ public final static int ATTRIBUTE_DEFAULT_IMPLIED = 32;
+
+ /**
+ * Constant: the attribute was declared #REQUIRED.
+ * @see #getAttributeDefaultValueType
+ */
+ public final static int ATTRIBUTE_DEFAULT_REQUIRED = 33;
+
+ /**
+ * Constant: the attribute was declared #FIXED.
+ * @see #getAttributeDefaultValueType
+ * @see #getAttributeDefaultValue
+ */
+ public final static int ATTRIBUTE_DEFAULT_FIXED = 34;
+
+ //
+ // Constants for input.
+ //
+ private final static int INPUT_NONE = 0;
+ private final static int INPUT_INTERNAL = 1;
+ private final static int INPUT_STREAM = 3;
+ private final static int INPUT_READER = 5;
+
+ //
+ // Flags for reading literals.
+ //
+ // expand general entity refs (attribute values in dtd and content)
+ private final static int LIT_ENTITY_REF = 2;
+ // normalize this value (space chars) (attributes, public ids)
+ private final static int LIT_NORMALIZE = 4;
+ // literal is an attribute value
+ private final static int LIT_ATTRIBUTE = 8;
+ // don't expand parameter entities
+ private final static int LIT_DISABLE_PE = 16;
+ // don't expand [or parse] character refs
+ private final static int LIT_DISABLE_CREF = 32;
+ // don't parse general entity refs
+ private final static int LIT_DISABLE_EREF = 64;
+ // literal is a public ID value
+ private final static int LIT_PUBID = 256;
+
+ //
+ // Flags affecting PE handling in DTDs (if expandPE is true).
+ // PEs expand with space padding, except inside literals.
+ //
+ private final static int CONTEXT_NORMAL = 0;
+ private final static int CONTEXT_LITERAL = 1;
+
+ // Emit warnings for relative URIs with no base URI.
+ static boolean uriWarnings;
+ static
+ {
+ String key = "gnu.xml.aelfred2.XmlParser.uriWarnings";
+ GetPropertyAction a = new GetPropertyAction(key);
+ uriWarnings = "true".equals(AccessController.doPrivileged(a));
+ }
+
+ //
+ // The current XML handler interface.
+ //
+ private SAXDriver handler;
+
+ //
+ // I/O information.
+ //
+ private Reader reader; // current reader
+ private InputStream is; // current input stream
+ private int line; // current line number
+ private int column; // current column number
+ private int sourceType; // type of input source
+ private LinkedList inputStack; // stack of input soruces
+ private URLConnection externalEntity; // current external entity
+ private int encoding; // current character encoding
+ private int currentByteCount; // bytes read from current source
+ private InputSource scratch; // temporary
+
+ //
+ // Buffers for decoded but unparsed character input.
+ //
+ private char[] readBuffer;
+ private int readBufferPos;
+ private int readBufferLength;
+ private int readBufferOverflow; // overflow from last data chunk.
+
+ //
+ // Buffer for undecoded raw byte input.
+ //
+ private final static int READ_BUFFER_MAX = 16384;
+ private byte[] rawReadBuffer;
+
+
+ //
+ // Buffer for attribute values, char refs, DTD stuff.
+ //
+ private static int DATA_BUFFER_INITIAL = 4096;
+ private char[] dataBuffer;
+ private int dataBufferPos;
+
+ //
+ // Buffer for parsed names.
+ //
+ private static int NAME_BUFFER_INITIAL = 1024;
+ private char[] nameBuffer;
+ private int nameBufferPos;
+
+ //
+ // Save any standalone flag
+ //
+ private boolean docIsStandalone;
+
+ //
+ // Hashtables for DTD information on elements, entities, and notations.
+ // Populated until we start ignoring decls (because of skipping a PE)
+ //
+ private HashMap elementInfo;
+ private HashMap entityInfo;
+ private HashMap notationInfo;
+ private boolean skippedPE;
+
+ //
+ // Element type currently in force.
+ //
+ private String currentElement;
+ private int currentElementContent;
+
+ //
+ // Stack of entity names, to detect recursion.
+ //
+ private LinkedList entityStack;
+
+ //
+ // PE expansion is enabled in most chunks of the DTD, not all.
+ // When it's enabled, literals are treated differently.
+ //
+ private boolean inLiteral;
+ private boolean expandPE;
+ private boolean peIsError;
+
+ //
+ // can't report entity expansion inside two constructs:
+ // - attribute expansions (internal entities only)
+ // - markup declarations (parameter entities only)
+ //
+ private boolean doReport;
+
+ //
+ // Symbol table, for caching interned names.
+ //
+ // These show up wherever XML names or nmtokens are used: naming elements,
+ // attributes, PIs, notations, entities, and enumerated attribute values.
+ //
+ // NOTE: This hashtable doesn't grow. The default size is intended to be
+ // rather large for most documents. Example: one snapshot of the DocBook
+ // XML 4.1 DTD used only about 350 such names. As a rule, only pathological
+ // documents (ones that don't reuse names) should ever see much collision.
+ //
+ // Be sure that SYMBOL_TABLE_LENGTH always stays prime, for best hashing.
+ // "2039" keeps the hash table size at about two memory pages on typical
+ // 32 bit hardware.
+ //
+ private final static int SYMBOL_TABLE_LENGTH = 2039;
+
+ private Object[][] symbolTable;
+
+ //
+ // Hash table of attributes found in current start tag.
+ //
+ private String[] tagAttributes;
+ private int tagAttributePos;
+
+ //
+ // Utility flag: have we noticed a CR while reading the last
+ // data chunk? If so, we will have to go back and normalise
+ // CR or CR/LF line ends.
+ //
+ private boolean sawCR;
+
+ //
+ // Utility flag: are we in CDATA? If so, whitespace isn't ignorable.
+ //
+ private boolean inCDATA;
+
+ //
+ // Xml version.
+ //
+ private static final int XML_10 = 0;
+ private static final int XML_11 = 1;
+ private int xmlVersion = XML_10;
+
+ //////////////////////////////////////////////////////////////////////
+ // Constructors.
+ ////////////////////////////////////////////////////////////////////////
+
+ /**
+ * Construct a new parser with no associated handler.
+ * @see #setHandler
+ * @see #parse
+ */
+ // package private
+ XmlParser()
+ {
+ }
+ /**
+ * Set the handler that will receive parsing events.
+ * @param handler The handler to receive callback events.
+ * @see #parse
+ */
+ // package private
+ void setHandler(SAXDriver handler)
+ {
+ this.handler = handler;
+ }
- //////////////////////////////////////////////////////////////////////
- // Error reporting.
- //////////////////////////////////////////////////////////////////////
+ /**
+ * Parse an XML document from the character stream, byte stream, or URI
+ * that you provide (in that order of preference). Any URI that you
+ * supply will become the base URI for resolving relative URI, and may
+ * be used to acquire a reader or byte stream.
+ *
+ * <p> Only one thread at a time may use this parser; since it is
+ * private to this package, post-parse cleanup is done by the caller,
+ * which MUST NOT REUSE the parser (just null it).
+ *
+ * @param systemId Absolute URI of the document; should never be null,
+ * but may be so iff a reader <em>or</em> a stream is provided.
+ * @param publicId The public identifier of the document, or null.
+ * @param reader A character stream; must be null if stream isn't.
+ * @param stream A byte input stream; must be null if reader isn't.
+ * @param encoding The suggested encoding, or null if unknown.
+ * @exception java.lang.Exception Basically SAXException or IOException
+ */
+ // package private
+ void doParse(String systemId, String publicId, Reader reader,
+ InputStream stream, String encoding)
+ throws Exception
+ {
+ if (handler == null)
+ {
+ throw new IllegalStateException("no callback handler");
+ }
+ initializeVariables();
+
+ // predeclare the built-in entities here (replacement texts)
+ // we don't need to intern(), since we're guaranteed literals
+ // are always (globally) interned.
+ setInternalEntity("amp", "&#38;");
+ setInternalEntity("lt", "&#60;");
+ setInternalEntity("gt", "&#62;");
+ setInternalEntity("apos", "&#39;");
+ setInternalEntity("quot", "&#34;");
+
+ try
+ {
+ // pushURL first to ensure locator is correct in startDocument
+ // ... it might report an IO or encoding exception.
+ handler.startDocument();
+ pushURL(false, "[document]",
+ // default baseURI: null
+ new ExternalIdentifiers(publicId, systemId, null),
+ reader, stream, encoding, false);
+
+ parseDocument();
+ }
+ catch (EOFException e)
+ {
+ //empty input
+ error("empty document, with no root element.");
+ }
+ finally
+ {
+ if (reader != null)
+ {
+ try
+ {
+ reader.close();
+ }
+ catch (IOException e)
+ {
+ /* ignore */
+ }
+ }
+ if (stream != null)
+ {
+ try
+ {
+ stream.close();
+ }
+ catch (IOException e)
+ {
+ /* ignore */
+ }
+ }
+ if (is != null)
+ {
+ try
+ {
+ is.close();
+ }
+ catch (IOException e)
+ {
+ /* ignore */
+ }
+ }
+ scratch = null;
+ }
+ }
- /**
- * Report an error.
- * @param message The error message.
- * @param textFound The text that caused the error (or null).
- * @see SAXDriver#error
- * @see #line
- */
- private void error (String message, String textFound, String textExpected)
+ //////////////////////////////////////////////////////////////////////
+ // Error reporting.
+ //////////////////////////////////////////////////////////////////////
+
+ /**
+ * Report an error.
+ * @param message The error message.
+ * @param textFound The text that caused the error (or null).
+ * @see SAXDriver#error
+ * @see #line
+ */
+ private void error(String message, String textFound, String textExpected)
throws SAXException
- {
- if (textFound != null) {
- message = message + " (found \"" + textFound + "\")";
- }
- if (textExpected != null) {
- message = message + " (expected \"" + textExpected + "\")";
- }
- handler.fatal (message);
-
- // "can't happen"
- throw new SAXException (message);
- }
-
+ {
+ if (textFound != null)
+ {
+ message = message + " (found \"" + textFound + "\")";
+ }
+ if (textExpected != null)
+ {
+ message = message + " (expected \"" + textExpected + "\")";
+ }
+ handler.fatal(message);
+
+ // "can't happen"
+ throw new SAXException(message);
+ }
- /**
- * Report a serious error.
- * @param message The error message.
- * @param textFound The text that caused the error (or null).
- */
- private void error (String message, char textFound, String textExpected)
+ /**
+ * Report a serious error.
+ * @param message The error message.
+ * @param textFound The text that caused the error (or null).
+ */
+ private void error(String message, char textFound, String textExpected)
throws SAXException
- {
- error (message, new Character (textFound).toString (), textExpected);
- }
+ {
+ error(message, new Character(textFound).toString(), textExpected);
+ }
- /** Report typical case fatal errors. */
- private void error (String message)
+ /**
+ * Report typical case fatal errors.
+ */
+ private void error(String message)
throws SAXException
- {
- handler.fatal (message);
- }
-
-
- //////////////////////////////////////////////////////////////////////
- // Major syntactic productions.
- //////////////////////////////////////////////////////////////////////
+ {
+ handler.fatal(message);
+ }
+ //////////////////////////////////////////////////////////////////////
+ // Major syntactic productions.
+ //////////////////////////////////////////////////////////////////////
- /**
- * Parse an XML document.
- * <pre>
- * [1] document ::= prolog element Misc*
- * </pre>
- * <p>This is the top-level parsing function for a single XML
- * document. As a minimum, a well-formed document must have
- * a document element, and a valid document must have a prolog
- * (one with doctype) as well.
- */
- private void parseDocument ()
+ /**
+ * Parse an XML document.
+ * <pre>
+ * [1] document ::= prolog element Misc*
+ * </pre>
+ * <p>This is the top-level parsing function for a single XML
+ * document. As a minimum, a well-formed document must have
+ * a document element, and a valid document must have a prolog
+ * (one with doctype) as well.
+ */
+ private void parseDocument()
throws Exception
- {
- try { // added by MHK
- boolean sawDTD = parseProlog ();
- require ('<');
- parseElement (!sawDTD);
- } catch (EOFException ee) { // added by MHK
- error("premature end of file", "[EOF]", null);
- }
-
- try {
- parseMisc (); //skip all white, PIs, and comments
- char c = readCh (); //if this doesn't throw an exception...
- error ("unexpected characters after document end", c, null);
- } catch (EOFException e) {
- return;
- }
- }
-
- static final char startDelimComment [] = { '<', '!', '-', '-' };
- static final char endDelimComment [] = { '-', '-' };
+ {
+ try
+ { // added by MHK
+ boolean sawDTD = parseProlog();
+ require('<');
+ parseElement(!sawDTD);
+ }
+ catch (EOFException ee)
+ { // added by MHK
+ error("premature end of file", "[EOF]", null);
+ }
+
+ try
+ {
+ parseMisc(); //skip all white, PIs, and comments
+ char c = readCh(); //if this doesn't throw an exception...
+ error("unexpected characters after document end", c, null);
+ }
+ catch (EOFException e)
+ {
+ return;
+ }
+ }
+
+ static final char[] startDelimComment = { '<', '!', '-', '-' };
+ static final char[] endDelimComment = { '-', '-' };
- /**
- * Skip a comment.
- * <pre>
- * [15] Comment ::= '&lt;!--' ((Char - '-') | ('-' (Char - '-')))* "-->"
- * </pre>
- * <p> (The <code>&lt;!--</code> has already been read.)
- */
- private void parseComment ()
+ /**
+ * Skip a comment.
+ * <pre>
+ * [15] Comment ::= '&lt;!--' ((Char - '-') | ('-' (Char - '-')))* "-->"
+ * </pre>
+ * <p> (The <code>&lt;!--</code> has already been read.)
+ */
+ private void parseComment()
throws Exception
- {
- char c;
- boolean saved = expandPE;
-
- expandPE = false;
- parseUntil (endDelimComment);
- require ('>');
- expandPE = saved;
- handler.comment (dataBuffer, 0, dataBufferPos);
- dataBufferPos = 0;
- }
+ {
+ char c;
+ boolean saved = expandPE;
+
+ expandPE = false;
+ parseUntil(endDelimComment);
+ require('>');
+ expandPE = saved;
+ handler.comment(dataBuffer, 0, dataBufferPos);
+ dataBufferPos = 0;
+ }
+
+ static final char[] startDelimPI = { '<', '?' };
+ static final char[] endDelimPI = { '?', '>' };
- static final char startDelimPI [] = { '<', '?' };
- static final char endDelimPI [] = { '?', '>' };
-
- /**
- * Parse a processing instruction and do a call-back.
- * <pre>
- * [16] PI ::= '&lt;?' PITarget
- * (S (Char* - (Char* '?&gt;' Char*)))?
- * '?&gt;'
- * [17] PITarget ::= Name - ( ('X'|'x') ('M'|m') ('L'|l') )
- * </pre>
- * <p> (The <code>&lt;?</code> has already been read.)
- */
- private void parsePI ()
+ /**
+ * Parse a processing instruction and do a call-back.
+ * <pre>
+ * [16] PI ::= '&lt;?' PITarget
+ * (S (Char* - (Char* '?&gt;' Char*)))?
+ * '?&gt;'
+ * [17] PITarget ::= Name - ( ('X'|'x') ('M'|m') ('L'|l') )
+ * </pre>
+ * <p> (The <code>&lt;?</code> has already been read.)
+ */
+ private void parsePI()
throws SAXException, IOException
- {
- String name;
- boolean saved = expandPE;
-
- expandPE = false;
- name = readNmtoken (true);
- //NE08
- if (name.indexOf(':') >= 0)
- error ("Illegal character(':') in processing instruction name ", name, null);
- if ("xml".equalsIgnoreCase (name))
- error ("Illegal processing instruction target", name, null);
- if (!tryRead (endDelimPI)) {
- requireWhitespace ();
- parseUntil (endDelimPI);
- }
- expandPE = saved;
- handler.processingInstruction (name, dataBufferToString ());
- }
-
-
- static final char endDelimCDATA [] = { ']', ']', '>' };
+ {
+ String name;
+ boolean saved = expandPE;
+
+ expandPE = false;
+ name = readNmtoken(true);
+ //NE08
+ if (name.indexOf(':') >= 0)
+ {
+ error("Illegal character(':') in processing instruction name ",
+ name, null);
+ }
+ if ("xml".equalsIgnoreCase(name))
+ {
+ error("Illegal processing instruction target", name, null);
+ }
+ if (!tryRead(endDelimPI))
+ {
+ requireWhitespace();
+ parseUntil(endDelimPI);
+ }
+ expandPE = saved;
+ handler.processingInstruction(name, dataBufferToString());
+ }
+
+ static final char[] endDelimCDATA = { ']', ']', '>' };
- private boolean isDirtyCurrentElement;
+ private boolean isDirtyCurrentElement;
- /**
- * Parse a CDATA section.
- * <pre>
- * [18] CDSect ::= CDStart CData CDEnd
- * [19] CDStart ::= '&lt;![CDATA['
- * [20] CData ::= (Char* - (Char* ']]&gt;' Char*))
- * [21] CDEnd ::= ']]&gt;'
- * </pre>
- * <p> (The '&lt;![CDATA[' has already been read.)
- */
- private void parseCDSect ()
+ /**
+ * Parse a CDATA section.
+ * <pre>
+ * [18] CDSect ::= CDStart CData CDEnd
+ * [19] CDStart ::= '&lt;![CDATA['
+ * [20] CData ::= (Char* - (Char* ']]&gt;' Char*))
+ * [21] CDEnd ::= ']]&gt;'
+ * </pre>
+ * <p> (The '&lt;![CDATA[' has already been read.)
+ */
+ private void parseCDSect()
throws Exception
- {
- parseUntil (endDelimCDATA);
- dataBufferFlush ();
- }
-
+ {
+ parseUntil(endDelimCDATA);
+ dataBufferFlush();
+ }
- /**
- * Parse the prolog of an XML document.
- * <pre>
- * [22] prolog ::= XMLDecl? Misc* (Doctypedecl Misc*)?
- * </pre>
- * <p>We do not look for the XML declaration here, because it was
- * handled by pushURL ().
- * @see pushURL
- * @return true if a DTD was read.
- */
- private boolean parseProlog ()
+ /**
+ * Parse the prolog of an XML document.
+ * <pre>
+ * [22] prolog ::= XMLDecl? Misc* (Doctypedecl Misc*)?
+ * </pre>
+ * <p>We do not look for the XML declaration here, because it was
+ * handled by pushURL ().
+ * @see pushURL
+ * @return true if a DTD was read.
+ */
+ private boolean parseProlog()
throws Exception
- {
- parseMisc ();
-
- if (tryRead ("<!DOCTYPE")) {
- parseDoctypedecl ();
- parseMisc ();
- return true;
- }
- return false;
- }
+ {
+ parseMisc();
- private void checkLegalVersion (String version)
- throws SAXException
- {
- int len = version.length ();
- for (int i = 0; i < len; i++) {
- char c = version.charAt (i);
- if ('0' <= c && c <= '9')
- continue;
- if (c == '_' || c == '.' || c == ':' || c == '-')
- continue;
- if ('a' <= c && c <= 'z')
- continue;
- if ('A' <= c && c <= 'Z')
- continue;
- error ("illegal character in version", version, "1.0");
- }
- }
+ if (tryRead("<!DOCTYPE"))
+ {
+ parseDoctypedecl();
+ parseMisc();
+ return true;
+ }
+ return false;
+ }
+ private void checkLegalVersion(String version)
+ throws SAXException
+ {
+ int len = version.length();
+ for (int i = 0; i < len; i++)
+ {
+ char c = version.charAt(i);
+ if ('0' <= c && c <= '9')
+ {
+ continue;
+ }
+ if (c == '_' || c == '.' || c == ':' || c == '-')
+ {
+ continue;
+ }
+ if ('a' <= c && c <= 'z')
+ {
+ continue;
+ }
+ if ('A' <= c && c <= 'Z')
+ {
+ continue;
+ }
+ error ("illegal character in version", version, "1.0");
+ }
+ }
- /**
- * Parse the XML declaration.
- * <pre>
- * [23] XMLDecl ::= '&lt;?xml' VersionInfo EncodingDecl? SDDecl? S? '?&gt;'
- * [24] VersionInfo ::= S 'version' Eq
- * ("'" VersionNum "'" | '"' VersionNum '"' )
- * [26] VersionNum ::= ([a-zA-Z0-9_.:] | '-')*
- * [32] SDDecl ::= S 'standalone' Eq
- * ( "'"" ('yes' | 'no') "'"" | '"' ("yes" | "no") '"' )
- * [80] EncodingDecl ::= S 'encoding' Eq
- * ( "'" EncName "'" | "'" EncName "'" )
- * [81] EncName ::= [A-Za-z] ([A-Za-z0-9._] | '-')*
- * </pre>
- * <p> (The <code>&lt;?xml</code> and whitespace have already been read.)
- * @return the encoding in the declaration, uppercased; or null
- * @see #parseTextDecl
- * @see #setupDecoding
- */
- private String parseXMLDecl (boolean ignoreEncoding)
+ /**
+ * Parse the XML declaration.
+ * <pre>
+ * [23] XMLDecl ::= '&lt;?xml' VersionInfo EncodingDecl? SDDecl? S? '?&gt;'
+ * [24] VersionInfo ::= S 'version' Eq
+ * ("'" VersionNum "'" | '"' VersionNum '"' )
+ * [26] VersionNum ::= ([a-zA-Z0-9_.:] | '-')*
+ * [32] SDDecl ::= S 'standalone' Eq
+ * ( "'"" ('yes' | 'no') "'"" | '"' ("yes" | "no") '"' )
+ * [80] EncodingDecl ::= S 'encoding' Eq
+ * ( "'" EncName "'" | "'" EncName "'" )
+ * [81] EncName ::= [A-Za-z] ([A-Za-z0-9._] | '-')*
+ * </pre>
+ * <p> (The <code>&lt;?xml</code> and whitespace have already been read.)
+ * @return the encoding in the declaration, uppercased; or null
+ * @see #parseTextDecl
+ * @see #setupDecoding
+ */
+ private String parseXMLDecl(boolean ignoreEncoding)
throws SAXException, IOException
- {
- String version;
- String encodingName = null;
- String standalone = null;
- int flags = LIT_DISABLE_CREF | LIT_DISABLE_PE | LIT_DISABLE_EREF;
- String inputEncoding = null;
+ {
+ String version;
+ String encodingName = null;
+ String standalone = null;
+ int flags = LIT_DISABLE_CREF | LIT_DISABLE_PE | LIT_DISABLE_EREF;
+ String inputEncoding = null;
- switch (this.encoding)
+ switch (this.encoding)
+ {
+ case ENCODING_EXTERNAL:
+ case ENCODING_UTF_8:
+ inputEncoding = "UTF-8";
+ break;
+ case ENCODING_ISO_8859_1:
+ inputEncoding = "ISO-8859-1";
+ break;
+ case ENCODING_UCS_2_12:
+ inputEncoding = "UTF-16BE";
+ break;
+ case ENCODING_UCS_2_21:
+ inputEncoding = "UTF-16LE";
+ break;
+ }
+
+ // Read the version.
+ require("version");
+ parseEq();
+ checkLegalVersion(version = readLiteral(flags));
+ if (!version.equals("1.0"))
+ {
+ if (version.equals("1.1"))
{
- case ENCODING_EXTERNAL:
- case ENCODING_UTF_8:
- inputEncoding = "UTF-8";
- break;
- case ENCODING_ISO_8859_1:
- inputEncoding = "ISO-8859-1";
- break;
- case ENCODING_UCS_2_12:
- inputEncoding = "UTF-16BE";
- break;
- case ENCODING_UCS_2_21:
- inputEncoding = "UTF-16LE";
- break;
+ handler.warn("expected XML version 1.0, not: " + version);
+ xmlVersion = XML_11;
+ }
+ else
+ {
+ error("illegal XML version", version, "1.0 or 1.1");
}
+ }
+ else
+ {
+ xmlVersion = XML_10;
+ }
+ // Try reading an encoding declaration.
+ boolean white = tryWhitespace();
+
+ if (tryRead("encoding"))
+ {
+ if (!white)
+ {
+ error("whitespace required before 'encoding='");
+ }
+ parseEq();
+ encodingName = readLiteral(flags);
+ if (!ignoreEncoding)
+ {
+ setupDecoding(encodingName);
+ }
+ }
+
+ // Try reading a standalone declaration
+ if (encodingName != null)
+ {
+ white = tryWhitespace();
+ }
+ if (tryRead("standalone"))
+ {
+ if (!white)
+ {
+ error("whitespace required before 'standalone='");
+ }
+ parseEq();
+ standalone = readLiteral(flags);
+ if ("yes".equals(standalone))
+ {
+ docIsStandalone = true;
+ }
+ else if (!"no".equals(standalone))
+ {
+ error("standalone flag must be 'yes' or 'no'");
+ }
+ }
- // Read the version.
- require ("version");
- parseEq ();
- checkLegalVersion (version = readLiteral (flags));
- if (!version.equals ("1.0")){
- if(version.equals ("1.1")){
- handler.warn ("expected XML version 1.0, not: " + version);
- xmlVersion = XML_11;
- }else {
- error("illegal XML version", version, "1.0 or 1.1");
- }
- }
- else
- xmlVersion = XML_10;
- // Try reading an encoding declaration.
- boolean white = tryWhitespace ();
-
- if (tryRead ("encoding")) {
- if (!white)
- error ("whitespace required before 'encoding='");
- parseEq ();
- encodingName = readLiteral (flags);
- if (!ignoreEncoding)
- setupDecoding (encodingName);
- }
-
- // Try reading a standalone declaration
- if (encodingName != null)
- white = tryWhitespace ();
- if (tryRead ("standalone")) {
- if (!white)
- error ("whitespace required before 'standalone='");
- parseEq ();
- standalone = readLiteral (flags);
- if ("yes".equals (standalone))
- docIsStandalone = true;
- else if (!"no".equals (standalone))
- error ("standalone flag must be 'yes' or 'no'");
- }
-
- skipWhitespace ();
- require ("?>");
-
- if (inputEncoding == null)
- {
- inputEncoding = encodingName;
- }
- handler.xmlDecl(version, encodingName, "yes".equals(standalone),
- inputEncoding);
-
- return encodingName;
- }
+ skipWhitespace();
+ require("?>");
+ if (inputEncoding == null)
+ {
+ inputEncoding = encodingName;
+ }
+ handler.xmlDecl(version, encodingName, docIsStandalone,
+ inputEncoding);
+
+ return encodingName;
+ }
- /**
- * Parse a text declaration.
- * <pre>
- * [79] TextDecl ::= '&lt;?xml' VersionInfo? EncodingDecl S? '?&gt;'
- * [80] EncodingDecl ::= S 'encoding' Eq
- * ( '"' EncName '"' | "'" EncName "'" )
- * [81] EncName ::= [A-Za-z] ([A-Za-z0-9._] | '-')*
- * </pre>
- * <p> (The <code>&lt;?xml</code>' and whitespace have already been read.)
- * @return the encoding in the declaration, uppercased; or null
- * @see #parseXMLDecl
- * @see #setupDecoding
- */
- private String parseTextDecl (boolean ignoreEncoding)
+ /**
+ * Parse a text declaration.
+ * <pre>
+ * [79] TextDecl ::= '&lt;?xml' VersionInfo? EncodingDecl S? '?&gt;'
+ * [80] EncodingDecl ::= S 'encoding' Eq
+ * ( '"' EncName '"' | "'" EncName "'" )
+ * [81] EncName ::= [A-Za-z] ([A-Za-z0-9._] | '-')*
+ * </pre>
+ * <p> (The <code>&lt;?xml</code>' and whitespace have already been read.)
+ * @return the encoding in the declaration, uppercased; or null
+ * @see #parseXMLDecl
+ * @see #setupDecoding
+ */
+ private String parseTextDecl(boolean ignoreEncoding)
throws SAXException, IOException
- {
- String encodingName = null;
- int flags = LIT_DISABLE_CREF | LIT_DISABLE_PE | LIT_DISABLE_EREF;
-
- // Read an optional version.
- if (tryRead ("version")) {
- String version;
- parseEq ();
- checkLegalVersion (version = readLiteral (flags));
-
- if (version.equals ("1.1")){
- if (xmlVersion == XML_10){
- error ("external subset has later version number.", "1.0", version);
- }
- handler.warn ("expected XML version 1.0, not: " + version);
- xmlVersion = XML_11;
- }else if(!version.equals ("1.0")) {
- error("illegal XML version", version, "1.0 or 1.1");
- }
- requireWhitespace ();
- }
-
-
- // Read the encoding.
- require ("encoding");
- parseEq ();
- encodingName = readLiteral (flags);
- if (!ignoreEncoding)
- setupDecoding (encodingName);
-
- skipWhitespace ();
- require ("?>");
-
- return encodingName;
- }
-
+ {
+ String encodingName = null;
+ int flags = LIT_DISABLE_CREF | LIT_DISABLE_PE | LIT_DISABLE_EREF;
+
+ // Read an optional version.
+ if (tryRead ("version"))
+ {
+ String version;
+ parseEq();
+ checkLegalVersion(version = readLiteral(flags));
+
+ if (version.equals("1.1"))
+ {
+ if (xmlVersion == XML_10)
+ {
+ error("external subset has later version number.", "1.0",
+ version);
+ }
+ handler.warn("expected XML version 1.0, not: " + version);
+ xmlVersion = XML_11;
+ }
+ else if (!version.equals("1.0"))
+ {
+ error("illegal XML version", version, "1.0 or 1.1");
+ }
+ requireWhitespace();
+ }
+
+ // Read the encoding.
+ require("encoding");
+ parseEq();
+ encodingName = readLiteral(flags);
+ if (!ignoreEncoding)
+ {
+ setupDecoding(encodingName);
+ }
+ skipWhitespace();
+ require("?>");
+
+ return encodingName;
+ }
- /**
- * Sets up internal state so that we can decode an entity using the
- * specified encoding. This is used when we start to read an entity
- * and we have been given knowledge of its encoding before we start to
- * read any data (e.g. from a SAX input source or from a MIME type).
- *
- * <p> It is also used after autodetection, at which point only very
- * limited adjustments to the encoding may be used (switching between
- * related builtin decoders).
- *
- * @param encodingName The name of the encoding specified by the user.
- * @exception IOException if the encoding isn't supported either
- * internally to this parser, or by the hosting JVM.
- * @see #parseXMLDecl
- * @see #parseTextDecl
+ /**
+ * Sets up internal state so that we can decode an entity using the
+ * specified encoding. This is used when we start to read an entity
+ * and we have been given knowledge of its encoding before we start to
+ * read any data (e.g. from a SAX input source or from a MIME type).
+ *
+ * <p> It is also used after autodetection, at which point only very
+ * limited adjustments to the encoding may be used (switching between
+ * related builtin decoders).
+ *
+ * @param encodingName The name of the encoding specified by the user.
+ * @exception IOException if the encoding isn't supported either
+ * internally to this parser, or by the hosting JVM.
+ * @see #parseXMLDecl
+ * @see #parseTextDecl
*/
- private void setupDecoding (String encodingName)
+ private void setupDecoding(String encodingName)
throws SAXException, IOException
- {
- encodingName = encodingName.toUpperCase ();
-
- // ENCODING_EXTERNAL indicates an encoding that wasn't
- // autodetected ... we can use builtin decoders, or
- // ones from the JVM (InputStreamReader).
-
- // Otherwise we can only tweak what was autodetected, and
- // only for single byte (ASCII derived) builtin encodings.
-
- // ASCII-derived encodings
- if (encoding == ENCODING_UTF_8 || encoding == ENCODING_EXTERNAL) {
- if (encodingName.equals ("ISO-8859-1")
- || encodingName.equals ("8859_1")
- || encodingName.equals ("ISO8859_1")
- ) {
- encoding = ENCODING_ISO_8859_1;
- return;
- } else if (encodingName.equals ("US-ASCII")
- || encodingName.equals ("ASCII")) {
- encoding = ENCODING_ASCII;
- return;
- } else if (encodingName.equals ("UTF-8")
- || encodingName.equals ("UTF8")) {
- encoding = ENCODING_UTF_8;
- return;
- } else if (encoding != ENCODING_EXTERNAL) {
- // used to start with a new reader ...
- throw new UnsupportedEncodingException (encodingName);
- }
- // else fallthrough ...
- // it's ASCII-ish and something other than a builtin
- }
-
- // Unicode and such
- if (encoding == ENCODING_UCS_2_12 || encoding == ENCODING_UCS_2_21) {
- if (!(encodingName.equals ("ISO-10646-UCS-2")
- || encodingName.equals ("UTF-16")
- || encodingName.equals ("UTF-16BE")
- || encodingName.equals ("UTF-16LE")))
- error ("unsupported Unicode encoding",
- encodingName,
- "UTF-16");
- return;
- }
-
- // four byte encodings
- if (encoding == ENCODING_UCS_4_1234
- || encoding == ENCODING_UCS_4_4321
- || encoding == ENCODING_UCS_4_2143
- || encoding == ENCODING_UCS_4_3412) {
- // Strictly: "UCS-4" == "UTF-32BE"; also, "UTF-32LE" exists
- if (!encodingName.equals ("ISO-10646-UCS-4"))
- error ("unsupported 32-bit encoding",
- encodingName,
- "ISO-10646-UCS-4");
- return;
- }
-
- // assert encoding == ENCODING_EXTERNAL
- // if (encoding != ENCODING_EXTERNAL)
- // throw new RuntimeException ("encoding = " + encoding);
-
- if (encodingName.equals ("UTF-16BE")) {
- encoding = ENCODING_UCS_2_12;
- return;
- }
- if (encodingName.equals ("UTF-16LE")) {
- encoding = ENCODING_UCS_2_21;
- return;
- }
-
- // We couldn't use the builtin decoders at all. But we can try to
- // create a reader, since we haven't messed up buffering. Tweak
- // the encoding name if necessary.
-
- if (encodingName.equals ("UTF-16")
- || encodingName.equals ("ISO-10646-UCS-2"))
- encodingName = "Unicode";
- // Ignoring all the EBCDIC aliases here
-
- reader = new InputStreamReader (is, encodingName);
- sourceType = INPUT_READER;
- }
-
-
- /**
- * Parse miscellaneous markup outside the document element and DOCTYPE
- * declaration.
- * <pre>
- * [27] Misc ::= Comment | PI | S
- * </pre>
- */
- private void parseMisc ()
+ {
+ encodingName = encodingName.toUpperCase();
+
+ // ENCODING_EXTERNAL indicates an encoding that wasn't
+ // autodetected ... we can use builtin decoders, or
+ // ones from the JVM (InputStreamReader).
+
+ // Otherwise we can only tweak what was autodetected, and
+ // only for single byte (ASCII derived) builtin encodings.
+
+ // ASCII-derived encodings
+ if (encoding == ENCODING_UTF_8 || encoding == ENCODING_EXTERNAL)
+ {
+ if (encodingName.equals("ISO-8859-1")
+ || encodingName.equals("8859_1")
+ || encodingName.equals("ISO8859_1"))
+ {
+ encoding = ENCODING_ISO_8859_1;
+ return;
+ }
+ else if (encodingName.equals("US-ASCII")
+ || encodingName.equals("ASCII"))
+ {
+ encoding = ENCODING_ASCII;
+ return;
+ }
+ else if (encodingName.equals("UTF-8")
+ || encodingName.equals("UTF8"))
+ {
+ encoding = ENCODING_UTF_8;
+ return;
+ }
+ else if (encoding != ENCODING_EXTERNAL)
+ {
+ // used to start with a new reader ...
+ throw new UnsupportedEncodingException(encodingName);
+ }
+ // else fallthrough ...
+ // it's ASCII-ish and something other than a builtin
+ }
+
+ // Unicode and such
+ if (encoding == ENCODING_UCS_2_12 || encoding == ENCODING_UCS_2_21)
+ {
+ if (!(encodingName.equals("ISO-10646-UCS-2")
+ || encodingName.equals("UTF-16")
+ || encodingName.equals("UTF-16BE")
+ || encodingName.equals("UTF-16LE")))
+ {
+ error("unsupported Unicode encoding", encodingName, "UTF-16");
+ }
+ return;
+ }
+
+ // four byte encodings
+ if (encoding == ENCODING_UCS_4_1234
+ || encoding == ENCODING_UCS_4_4321
+ || encoding == ENCODING_UCS_4_2143
+ || encoding == ENCODING_UCS_4_3412)
+ {
+ // Strictly: "UCS-4" == "UTF-32BE"; also, "UTF-32LE" exists
+ if (!encodingName.equals("ISO-10646-UCS-4"))
+ {
+ error("unsupported 32-bit encoding", encodingName,
+ "ISO-10646-UCS-4");
+ }
+ return;
+ }
+
+ // assert encoding == ENCODING_EXTERNAL
+ // if (encoding != ENCODING_EXTERNAL)
+ // throw new RuntimeException ("encoding = " + encoding);
+
+ if (encodingName.equals("UTF-16BE"))
+ {
+ encoding = ENCODING_UCS_2_12;
+ return;
+ }
+ if (encodingName.equals("UTF-16LE"))
+ {
+ encoding = ENCODING_UCS_2_21;
+ return;
+ }
+
+ // We couldn't use the builtin decoders at all. But we can try to
+ // create a reader, since we haven't messed up buffering. Tweak
+ // the encoding name if necessary.
+
+ if (encodingName.equals("UTF-16")
+ || encodingName.equals("ISO-10646-UCS-2"))
+ {
+ encodingName = "Unicode";
+ }
+ // Ignoring all the EBCDIC aliases here
+
+ reader = new InputStreamReader(is, encodingName);
+ sourceType = INPUT_READER;
+ }
+
+ /**
+ * Parse miscellaneous markup outside the document element and DOCTYPE
+ * declaration.
+ * <pre>
+ * [27] Misc ::= Comment | PI | S
+ * </pre>
+ */
+ private void parseMisc()
throws Exception
- {
- while (true) {
- skipWhitespace ();
- if (tryRead (startDelimPI)) {
- parsePI ();
- } else if (tryRead (startDelimComment)) {
- parseComment ();
- } else {
- return;
- }
- }
- }
-
+ {
+ while (true)
+ {
+ skipWhitespace();
+ if (tryRead(startDelimPI))
+ {
+ parsePI();
+ }
+ else if (tryRead(startDelimComment))
+ {
+ parseComment();
+ }
+ else
+ {
+ return;
+ }
+ }
+ }
- /**
- * Parse a document type declaration.
- * <pre>
- * [28] doctypedecl ::= '&lt;!DOCTYPE' S Name (S ExternalID)? S?
- * ('[' (markupdecl | PEReference | S)* ']' S?)? '&gt;'
- * </pre>
- * <p> (The <code>&lt;!DOCTYPE</code> has already been read.)
- */
- private void parseDoctypedecl ()
+ /**
+ * Parse a document type declaration.
+ * <pre>
+ * [28] doctypedecl ::= '&lt;!DOCTYPE' S Name (S ExternalID)? S?
+ * ('[' (markupdecl | PEReference | S)* ']' S?)? '&gt;'
+ * </pre>
+ * <p> (The <code>&lt;!DOCTYPE</code> has already been read.)
+ */
+ private void parseDoctypedecl()
throws Exception
- {
- String rootName, ids[];
-
- // Read the document type name.
- requireWhitespace ();
- rootName = readNmtoken (true);
-
- // Read the External subset's IDs
- skipWhitespace ();
- ids = readExternalIds (false, true);
-
- // report (a) declaration of name, (b) lexical info (ids)
- handler.doctypeDecl (rootName, ids [0], ids [1]);
-
- // Internal subset is parsed first, if present
- skipWhitespace ();
- if (tryRead ('[')) {
-
- // loop until the subset ends
- while (true) {
- doReport = expandPE = true;
- skipWhitespace ();
- doReport = expandPE = false;
- if (tryRead (']')) {
- break; // end of subset
- } else {
- // WFC, PEs in internal subset (only between decls)
- peIsError = expandPE = true;
- parseMarkupdecl ();
- peIsError = expandPE = false;
- }
- }
- }
- skipWhitespace ();
- require ('>');
-
- // Read the external subset, if any
- InputSource subset;
-
- if (ids [1] == null)
- subset = handler.getExternalSubset (rootName,
- handler.getSystemId ());
- else
- subset = null;
- if (ids [1] != null || subset != null) {
- pushString (null, ">");
-
- // NOTE: [dtd] is so we say what SAX2 expects,
- // though it's misleading (subset, not entire dtd)
- if (ids [1] != null)
- pushURL (true, "[dtd]", ids, null, null, null, true);
- else {
- handler.warn ("modifying document by adding external subset");
- pushURL (true, "[dtd]",
- new String [] { subset.getPublicId (),
- subset.getSystemId (), null },
- subset.getCharacterStream (),
- subset.getByteStream (),
- subset.getEncoding (),
- false);
- }
-
- // Loop until we end up back at '>'
- while (true) {
- doReport = expandPE = true;
- skipWhitespace ();
- doReport = expandPE = false;
- if (tryRead ('>')) {
- break;
- } else {
- expandPE = true;
- parseMarkupdecl ();
- expandPE = false;
- }
- }
-
- // the ">" string isn't popped yet
- if (inputStack.size () != 1)
- error ("external subset has unmatched '>'");
- }
-
- // done dtd
- handler.endDoctype ();
- expandPE = false;
- doReport = true;
- }
+ {
+ String rootName;
+ ExternalIdentifiers ids;
+ // Read the document type name.
+ requireWhitespace();
+ rootName = readNmtoken(true);
- /**
- * Parse a markup declaration in the internal or external DTD subset.
- * <pre>
- * [29] markupdecl ::= elementdecl | Attlistdecl | EntityDecl
- * | NotationDecl | PI | Comment
- * [30] extSubsetDecl ::= (markupdecl | conditionalSect
- * | PEReference | S) *
- * </pre>
- * <p> Reading toplevel PE references is handled as a lexical issue
- * by the caller, as is whitespace.
- */
- private void parseMarkupdecl ()
+ // Read the External subset's IDs
+ skipWhitespace();
+ ids = readExternalIds(false, true);
+
+ // report (a) declaration of name, (b) lexical info (ids)
+ handler.doctypeDecl(rootName, ids.publicId, ids.systemId);
+
+ // Internal subset is parsed first, if present
+ skipWhitespace();
+ if (tryRead('['))
+ {
+
+ // loop until the subset ends
+ while (true)
+ {
+ doReport = expandPE = true;
+ skipWhitespace();
+ doReport = expandPE = false;
+ if (tryRead(']'))
+ {
+ break; // end of subset
+ }
+ else
+ {
+ // WFC, PEs in internal subset (only between decls)
+ peIsError = expandPE = true;
+ parseMarkupdecl();
+ peIsError = expandPE = false;
+ }
+ }
+ }
+ skipWhitespace();
+ require('>');
+
+ // Read the external subset, if any
+ InputSource subset;
+
+ if (ids.systemId == null)
+ {
+ subset = handler.getExternalSubset(rootName,
+ handler.getSystemId());
+ }
+ else
+ {
+ subset = null;
+ }
+ if (ids.systemId != null || subset != null)
+ {
+ pushString(null, ">");
+
+ // NOTE: [dtd] is so we say what SAX2 expects,
+ // though it's misleading (subset, not entire dtd)
+ if (ids.systemId != null)
+ {
+ pushURL(true, "[dtd]", ids, null, null, null, true);
+ }
+ else
+ {
+ handler.warn("modifying document by adding external subset");
+ pushURL(true, "[dtd]",
+ new ExternalIdentifiers(subset.getPublicId(),
+ subset.getSystemId(),
+ null),
+ subset.getCharacterStream(),
+ subset.getByteStream(),
+ subset.getEncoding(),
+ false);
+ }
+
+ // Loop until we end up back at '>'
+ while (true)
+ {
+ doReport = expandPE = true;
+ skipWhitespace();
+ doReport = expandPE = false;
+ if (tryRead('>'))
+ {
+ break;
+ }
+ else
+ {
+ expandPE = true;
+ parseMarkupdecl();
+ expandPE = false;
+ }
+ }
+
+ // the ">" string isn't popped yet
+ if (inputStack.size() != 1)
+ {
+ error("external subset has unmatched '>'");
+ }
+ }
+
+ // done dtd
+ handler.endDoctype();
+ expandPE = false;
+ doReport = true;
+ }
+
+ /**
+ * Parse a markup declaration in the internal or external DTD subset.
+ * <pre>
+ * [29] markupdecl ::= elementdecl | Attlistdecl | EntityDecl
+ * | NotationDecl | PI | Comment
+ * [30] extSubsetDecl ::= (markupdecl | conditionalSect
+ * | PEReference | S) *
+ * </pre>
+ * <p> Reading toplevel PE references is handled as a lexical issue
+ * by the caller, as is whitespace.
+ */
+ private void parseMarkupdecl()
throws Exception
- {
- char saved [] = null;
- boolean savedPE = expandPE;
-
- // prevent "<%foo;" and ensures saved entity is right
- require ('<');
- unread ('<');
- expandPE = false;
-
- if (tryRead ("<!ELEMENT")) {
- saved = readBuffer;
- expandPE = savedPE;
- parseElementDecl ();
- } else if (tryRead ("<!ATTLIST")) {
- saved = readBuffer;
- expandPE = savedPE;
- parseAttlistDecl ();
- } else if (tryRead ("<!ENTITY")) {
- saved = readBuffer;
- expandPE = savedPE;
- parseEntityDecl ();
- } else if (tryRead ("<!NOTATION")) {
- saved = readBuffer;
- expandPE = savedPE;
- parseNotationDecl ();
- } else if (tryRead (startDelimPI)) {
- saved = readBuffer;
- expandPE = savedPE;
- parsePI ();
- } else if (tryRead (startDelimComment)) {
- saved = readBuffer;
- expandPE = savedPE;
- parseComment ();
- } else if (tryRead ("<![")) {
- saved = readBuffer;
- expandPE = savedPE;
- if (inputStack.size () > 0)
- parseConditionalSect (saved);
- else
- error ("conditional sections illegal in internal subset");
- } else {
- error ("expected markup declaration");
- }
-
- // VC: Proper Decl/PE Nesting
- if (readBuffer != saved)
- handler.verror ("Illegal Declaration/PE nesting");
- }
+ {
+ char[] saved = null;
+ boolean savedPE = expandPE;
+ // prevent "<%foo;" and ensures saved entity is right
+ require('<');
+ unread('<');
+ expandPE = false;
+
+ if (tryRead("<!ELEMENT"))
+ {
+ saved = readBuffer;
+ expandPE = savedPE;
+ parseElementDecl();
+ }
+ else if (tryRead("<!ATTLIST"))
+ {
+ saved = readBuffer;
+ expandPE = savedPE;
+ parseAttlistDecl();
+ }
+ else if (tryRead("<!ENTITY"))
+ {
+ saved = readBuffer;
+ expandPE = savedPE;
+ parseEntityDecl();
+ }
+ else if (tryRead("<!NOTATION"))
+ {
+ saved = readBuffer;
+ expandPE = savedPE;
+ parseNotationDecl();
+ }
+ else if (tryRead(startDelimPI))
+ {
+ saved = readBuffer;
+ expandPE = savedPE;
+ parsePI();
+ }
+ else if (tryRead(startDelimComment))
+ {
+ saved = readBuffer;
+ expandPE = savedPE;
+ parseComment();
+ }
+ else if (tryRead("<!["))
+ {
+ saved = readBuffer;
+ expandPE = savedPE;
+ if (inputStack.size() > 0)
+ {
+ parseConditionalSect(saved);
+ }
+ else
+ {
+ error("conditional sections illegal in internal subset");
+ }
+ }
+ else
+ {
+ error("expected markup declaration");
+ }
- /**
- * Parse an element, with its tags.
- * <pre>
- * [39] element ::= EmptyElementTag | STag content ETag
- * [40] STag ::= '&lt;' Name (S Attribute)* S? '&gt;'
- * [44] EmptyElementTag ::= '&lt;' Name (S Attribute)* S? '/&gt;'
- * </pre>
- * <p> (The '&lt;' has already been read.)
- * <p>NOTE: this method actually chains onto parseContent (), if necessary,
- * and parseContent () will take care of calling parseETag ().
- */
- private void parseElement (boolean maybeGetSubset)
+ // VC: Proper Decl/PE Nesting
+ if (readBuffer != saved)
+ {
+ handler.verror("Illegal Declaration/PE nesting");
+ }
+ }
+
+ /**
+ * Parse an element, with its tags.
+ * <pre>
+ * [39] element ::= EmptyElementTag | STag content ETag
+ * [40] STag ::= '&lt;' Name (S Attribute)* S? '&gt;'
+ * [44] EmptyElementTag ::= '&lt;' Name (S Attribute)* S? '/&gt;'
+ * </pre>
+ * <p> (The '&lt;' has already been read.)
+ * <p>NOTE: this method actually chains onto parseContent (), if necessary,
+ * and parseContent () will take care of calling parseETag ().
+ */
+ private void parseElement(boolean maybeGetSubset)
throws Exception
- {
- String gi;
- char c;
- int oldElementContent = currentElementContent;
- String oldElement = currentElement;
- Object element [];
-
- // This is the (global) counter for the
- // array of specified attributes.
- tagAttributePos = 0;
-
- // Read the element type name.
- gi = readNmtoken (true);
-
- // If we saw no DTD, and this is the document root element,
- // let the application modify the input stream by providing one.
- if (maybeGetSubset) {
- InputSource subset = handler.getExternalSubset (gi,
- handler.getSystemId ());
- if (subset != null) {
- String publicId = subset.getPublicId ();
- String systemId = subset.getSystemId ();
-
- handler.warn ("modifying document by adding DTD");
- handler.doctypeDecl (gi, publicId, systemId);
- pushString (null, ">");
-
- // NOTE: [dtd] is so we say what SAX2 expects,
- // though it's misleading (subset, not entire dtd)
- pushURL (true, "[dtd]",
- new String [] { publicId, systemId, null },
- subset.getCharacterStream (),
- subset.getByteStream (),
- subset.getEncoding (),
- false);
-
- // Loop until we end up back at '>'
- while (true) {
- doReport = expandPE = true;
- skipWhitespace ();
- doReport = expandPE = false;
- if (tryRead ('>')) {
- break;
- } else {
- expandPE = true;
- parseMarkupdecl ();
- expandPE = false;
- }
- }
-
- // the ">" string isn't popped yet
- if (inputStack.size () != 1)
- error ("external subset has unmatched '>'");
-
- handler.endDoctype ();
- }
- }
-
- // Determine the current content type.
- currentElement = gi;
- element = (Object []) elementInfo.get (gi);
- currentElementContent = getContentType (element, CONTENT_ANY);
-
- // Read the attributes, if any.
- // After this loop, "c" is the closing delimiter.
- boolean white = tryWhitespace ();
- c = readCh ();
- while (c != '/' && c != '>') {
- unread (c);
- if (!white)
- error ("need whitespace between attributes");
- parseAttribute (gi);
- white = tryWhitespace ();
- c = readCh ();
- }
-
- // Supply any defaulted attributes.
- Enumeration atts = declaredAttributes (element);
- if (atts != null) {
- String aname;
+ {
+ String gi;
+ char c;
+ int oldElementContent = currentElementContent;
+ String oldElement = currentElement;
+ ElementDecl element;
+
+ // This is the (global) counter for the
+ // array of specified attributes.
+ tagAttributePos = 0;
+
+ // Read the element type name.
+ gi = readNmtoken(true);
+
+ // If we saw no DTD, and this is the document root element,
+ // let the application modify the input stream by providing one.
+ if (maybeGetSubset)
+ {
+ InputSource subset = handler.getExternalSubset(gi,
+ handler.getSystemId());
+ if (subset != null)
+ {
+ String publicId = subset.getPublicId();
+ String systemId = subset.getSystemId();
+
+ handler.warn("modifying document by adding DTD");
+ handler.doctypeDecl(gi, publicId, systemId);
+ pushString(null, ">");
+
+ // NOTE: [dtd] is so we say what SAX2 expects,
+ // though it's misleading (subset, not entire dtd)
+ pushURL(true, "[dtd]",
+ new ExternalIdentifiers(publicId, systemId, null),
+ subset.getCharacterStream(),
+ subset.getByteStream(),
+ subset.getEncoding(),
+ false);
+
+ // Loop until we end up back at '>'
+ while (true)
+ {
+ doReport = expandPE = true;
+ skipWhitespace();
+ doReport = expandPE = false;
+ if (tryRead('>'))
+ {
+ break;
+ }
+ else
+ {
+ expandPE = true;
+ parseMarkupdecl();
+ expandPE = false;
+ }
+ }
+
+ // the ">" string isn't popped yet
+ if (inputStack.size() != 1)
+ {
+ error("external subset has unmatched '>'");
+ }
+
+ handler.endDoctype();
+ }
+ }
+
+ // Determine the current content type.
+ currentElement = gi;
+ element = (ElementDecl) elementInfo.get(gi);
+ currentElementContent = getContentType(element, CONTENT_ANY);
+
+ // Read the attributes, if any.
+ // After this loop, "c" is the closing delimiter.
+ boolean white = tryWhitespace();
+ c = readCh();
+ while (c != '/' && c != '>')
+ {
+ unread(c);
+ if (!white)
+ {
+ error("need whitespace between attributes");
+ }
+ parseAttribute(gi);
+ white = tryWhitespace();
+ c = readCh();
+ }
+
+ // Supply any defaulted attributes.
+ Iterator atts = declaredAttributes(element);
+ if (atts != null)
+ {
+ String aname;
loop:
- while (atts.hasMoreElements ()) {
- aname = (String) atts.nextElement ();
- // See if it was specified.
- for (int i = 0; i < tagAttributePos; i++) {
- if (tagAttributes [i] == aname) {
- continue loop;
- }
- }
- // ... or has a default
- String value = getAttributeDefaultValue (gi, aname);
-
- if (value == null)
- continue;
- handler.attribute (aname, value, false);
- }
- }
-
- // Figure out if this is a start tag
- // or an empty element, and dispatch an
- // event accordingly.
- switch (c) {
- case '>':
- handler.startElement (gi);
- parseContent ();
- break;
- case '/':
- require ('>');
- handler.startElement (gi);
- handler.endElement (gi);
- break;
- }
-
- // Restore the previous state.
- currentElement = oldElement;
- currentElementContent = oldElementContent;
- }
+ while (atts.hasNext())
+ {
+ aname = (String) atts.next();
+ // See if it was specified.
+ for (int i = 0; i < tagAttributePos; i++)
+ {
+ if (tagAttributes[i] == aname)
+ {
+ continue loop;
+ }
+ }
+ // ... or has a default
+ String value = getAttributeDefaultValue(gi, aname);
+
+ if (value == null)
+ {
+ continue;
+ }
+ handler.attribute(aname, value, false);
+ }
+ }
+ // Figure out if this is a start tag
+ // or an empty element, and dispatch an
+ // event accordingly.
+ switch (c)
+ {
+ case '>':
+ handler.startElement(gi);
+ parseContent();
+ break;
+ case '/':
+ require('>');
+ handler.startElement(gi);
+ handler.endElement(gi);
+ break;
+ }
- /**
- * Parse an attribute assignment.
- * <pre>
- * [41] Attribute ::= Name Eq AttValue
- * </pre>
- * @param name The name of the attribute's element.
- * @see SAXDriver#attribute
- */
- private void parseAttribute (String name)
- throws Exception
- {
- String aname;
- String type;
- String value;
- int flags = LIT_ATTRIBUTE | LIT_ENTITY_REF;
-
- // Read the attribute name.
- aname = readNmtoken (true);
- type = getAttributeType (name, aname);
-
- // Parse '='
- parseEq ();
-
- // Read the value, normalizing whitespace
- // unless it is CDATA.
- if (handler.getFeature (SAXDriver.FEATURE + "string-interning")) {
- if (type == "CDATA" || type == null) {
- value = readLiteral (flags);
- } else {
- value = readLiteral (flags | LIT_NORMALIZE);
- }
- } else {
- if (type.equals("CDATA") || type == null) {
- value = readLiteral (flags);
- } else {
- value = readLiteral (flags | LIT_NORMALIZE);
- }
+ // Restore the previous state.
+ currentElement = oldElement;
+ currentElementContent = oldElementContent;
}
+
+ /**
+ * Parse an attribute assignment.
+ * <pre>
+ * [41] Attribute ::= Name Eq AttValue
+ * </pre>
+ * @param name The name of the attribute's element.
+ * @see SAXDriver#attribute
+ */
+ private void parseAttribute(String name)
+ throws Exception
+ {
+ String aname;
+ String type;
+ String value;
+ int flags = LIT_ATTRIBUTE | LIT_ENTITY_REF;
+
+ // Read the attribute name.
+ aname = readNmtoken(true);
+ type = getAttributeType(name, aname);
+
+ // Parse '='
+ parseEq();
+
+ // Read the value, normalizing whitespace
+ // unless it is CDATA.
+ if (handler.stringInterning)
+ {
+ if (type == "CDATA" || type == null)
+ {
+ value = readLiteral(flags);
+ }
+ else
+ {
+ value = readLiteral(flags | LIT_NORMALIZE);
+ }
+ }
+ else
+ {
+ if (type.equals("CDATA") || type == null)
+ {
+ value = readLiteral(flags);
+ }
+ else
+ {
+ value = readLiteral(flags | LIT_NORMALIZE);
+ }
+ }
- // WFC: no duplicate attributes
- for (int i = 0; i < tagAttributePos; i++)
- if (aname.equals (tagAttributes [i]))
- error ("duplicate attribute", aname, null);
-
- // Inform the handler about the
- // attribute.
- handler.attribute (aname, value, true);
- dataBufferPos = 0;
-
- // Note that the attribute has been
- // specified.
- if (tagAttributePos == tagAttributes.length) {
- String newAttrib[] = new String [tagAttributes.length * 2];
- System.arraycopy (tagAttributes, 0, newAttrib, 0, tagAttributePos);
- tagAttributes = newAttrib;
- }
- tagAttributes [tagAttributePos++] = aname;
- }
+ // WFC: no duplicate attributes
+ for (int i = 0; i < tagAttributePos; i++)
+ {
+ if (aname.equals(tagAttributes [i]))
+ {
+ error("duplicate attribute", aname, null);
+ }
+ }
+ // Inform the handler about the
+ // attribute.
+ handler.attribute(aname, value, true);
+ dataBufferPos = 0;
+
+ // Note that the attribute has been
+ // specified.
+ if (tagAttributePos == tagAttributes.length)
+ {
+ String newAttrib[] = new String[tagAttributes.length * 2];
+ System.arraycopy(tagAttributes, 0, newAttrib, 0, tagAttributePos);
+ tagAttributes = newAttrib;
+ }
+ tagAttributes[tagAttributePos++] = aname;
+ }
- /**
- * Parse an equals sign surrounded by optional whitespace.
- * <pre>
- * [25] Eq ::= S? '=' S?
- * </pre>
- */
- private void parseEq ()
+ /**
+ * Parse an equals sign surrounded by optional whitespace.
+ * <pre>
+ * [25] Eq ::= S? '=' S?
+ * </pre>
+ */
+ private void parseEq()
throws SAXException, IOException
- {
- skipWhitespace ();
- require ('=');
- skipWhitespace ();
- }
-
+ {
+ skipWhitespace();
+ require('=');
+ skipWhitespace();
+ }
- /**
- * Parse an end tag.
- * <pre>
- * [42] ETag ::= '</' Name S? '>'
- * </pre>
- * <p>NOTE: parseContent () chains to here, we already read the
- * "&lt;/".
- */
- private void parseETag ()
+ /**
+ * Parse an end tag.
+ * <pre>
+ * [42] ETag ::= '</' Name S? '>'
+ * </pre>
+ * <p>NOTE: parseContent () chains to here, we already read the
+ * "&lt;/".
+ */
+ private void parseETag()
throws Exception
- {
- require (currentElement);
- skipWhitespace ();
- require ('>');
- handler.endElement (currentElement);
- // not re-reporting any SAXException re bogus end tags,
- // even though that diagnostic might be clearer ...
- }
-
-
- /**
- * Parse the content of an element.
- * <pre>
- * [43] content ::= (element | CharData | Reference
- * | CDSect | PI | Comment)*
- * [67] Reference ::= EntityRef | CharRef
- * </pre>
- * <p> NOTE: consumes ETtag.
- */
- private void parseContent ()
+ {
+ require(currentElement);
+ skipWhitespace();
+ require('>');
+ handler.endElement(currentElement);
+ // not re-reporting any SAXException re bogus end tags,
+ // even though that diagnostic might be clearer ...
+ }
+
+ /**
+ * Parse the content of an element.
+ * <pre>
+ * [43] content ::= (element | CharData | Reference
+ * | CDSect | PI | Comment)*
+ * [67] Reference ::= EntityRef | CharRef
+ * </pre>
+ * <p> NOTE: consumes ETtag.
+ */
+ private void parseContent()
throws Exception
- {
- char c;
-
- while (true) {
- // consume characters (or ignorable whitspace) until delimiter
- parseCharData ();
-
- // Handle delimiters
- c = readCh ();
- switch (c) {
-
- case '&': // Found "&"
- c = readCh ();
- if (c == '#') {
- parseCharRef ();
- } else {
- unread (c);
- parseEntityRef (true);
- }
- isDirtyCurrentElement = true;
- break;
-
- case '<': // Found "<"
- dataBufferFlush ();
- c = readCh ();
- switch (c) {
- case '!': // Found "<!"
- c = readCh ();
- switch (c) {
- case '-': // Found "<!-"
- require ('-');
- isDirtyCurrentElement = false;
- parseComment ();
- break;
- case '[': // Found "<!["
- isDirtyCurrentElement = false;
- require ("CDATA[");
- handler.startCDATA ();
- inCDATA = true;
- parseCDSect ();
- inCDATA = false;
- handler.endCDATA ();
- break;
- default:
- error ("expected comment or CDATA section", c, null);
- break;
- }
- break;
-
- case '?': // Found "<?"
- isDirtyCurrentElement = false;
- parsePI ();
- break;
-
- case '/': // Found "</"
- isDirtyCurrentElement = false;
- parseETag ();
- return;
-
- default: // Found "<" followed by something else
- isDirtyCurrentElement = false;
- unread (c);
- parseElement (false);
- break;
- }
- }
- }
-
- }
-
-
- /**
- * Parse an element type declaration.
- * <pre>
- * [45] elementdecl ::= '&lt;!ELEMENT' S Name S contentspec S? '&gt;'
- * </pre>
- * <p> NOTE: the '&lt;!ELEMENT' has already been read.
- */
- private void parseElementDecl ()
+ {
+ char c;
+
+ while (true)
+ {
+ // consume characters (or ignorable whitspace) until delimiter
+ parseCharData();
+
+ // Handle delimiters
+ c = readCh();
+ switch (c)
+ {
+ case '&': // Found "&"
+ c = readCh();
+ if (c == '#')
+ {
+ parseCharRef();
+ }
+ else
+ {
+ unread(c);
+ parseEntityRef(true);
+ }
+ isDirtyCurrentElement = true;
+ break;
+
+ case '<': // Found "<"
+ dataBufferFlush();
+ c = readCh();
+ switch (c)
+ {
+ case '!': // Found "<!"
+ c = readCh();
+ switch (c)
+ {
+ case '-': // Found "<!-"
+ require('-');
+ isDirtyCurrentElement = false;
+ parseComment();
+ break;
+ case '[': // Found "<!["
+ isDirtyCurrentElement = false;
+ require("CDATA[");
+ handler.startCDATA();
+ inCDATA = true;
+ parseCDSect();
+ inCDATA = false;
+ handler.endCDATA();
+ break;
+ default:
+ error("expected comment or CDATA section", c, null);
+ break;
+ }
+ break;
+
+ case '?': // Found "<?"
+ isDirtyCurrentElement = false;
+ parsePI();
+ break;
+
+ case '/': // Found "</"
+ isDirtyCurrentElement = false;
+ parseETag();
+ return;
+
+ default: // Found "<" followed by something else
+ isDirtyCurrentElement = false;
+ unread(c);
+ parseElement(false);
+ break;
+ }
+ }
+ }
+ }
+
+ /**
+ * Parse an element type declaration.
+ * <pre>
+ * [45] elementdecl ::= '&lt;!ELEMENT' S Name S contentspec S? '&gt;'
+ * </pre>
+ * <p> NOTE: the '&lt;!ELEMENT' has already been read.
+ */
+ private void parseElementDecl()
throws Exception
- {
- String name;
-
- requireWhitespace ();
- // Read the element type name.
- name = readNmtoken (true);
-
- requireWhitespace ();
- // Read the content model.
- parseContentspec (name);
-
- skipWhitespace ();
- require ('>');
- }
-
+ {
+ String name;
+
+ requireWhitespace();
+ // Read the element type name.
+ name = readNmtoken(true);
- /**
- * Content specification.
- * <pre>
- * [46] contentspec ::= 'EMPTY' | 'ANY' | Mixed | elements
- * </pre>
- */
- private void parseContentspec (String name)
- throws Exception
- {
-// FIXME: move elementDecl() into setElement(), pass EMTPY/ANY ...
- if (tryRead ("EMPTY")) {
- setElement (name, CONTENT_EMPTY, null, null);
- if (!skippedPE)
- handler.getDeclHandler ().elementDecl (name, "EMPTY");
- return;
- } else if (tryRead ("ANY")) {
- setElement (name, CONTENT_ANY, null, null);
- if (!skippedPE)
- handler.getDeclHandler ().elementDecl (name, "ANY");
- return;
- } else {
- String model;
- char saved [];
-
- require ('(');
- saved = readBuffer;
- dataBufferAppend ('(');
- skipWhitespace ();
- if (tryRead ("#PCDATA")) {
- dataBufferAppend ("#PCDATA");
- parseMixed (saved);
- model = dataBufferToString ();
- setElement (name, CONTENT_MIXED, model, null);
- } else {
- parseElements (saved);
- model = dataBufferToString ();
- setElement (name, CONTENT_ELEMENTS, model, null);
- }
- if (!skippedPE)
- handler.getDeclHandler ().elementDecl (name, model);
- }
- }
+ requireWhitespace();
+ // Read the content model.
+ parseContentspec(name);
+
+ skipWhitespace();
+ require('>');
+ }
- /**
- * Parse an element-content model.
- * <pre>
- * [47] elements ::= (choice | seq) ('?' | '*' | '+')?
- * [49] choice ::= '(' S? cp (S? '|' S? cp)+ S? ')'
- * [50] seq ::= '(' S? cp (S? ',' S? cp)* S? ')'
- * </pre>
- *
- * <p> NOTE: the opening '(' and S have already been read.
- *
- * @param saved Buffer for entity that should have the terminal ')'
- */
- private void parseElements (char saved [])
+ /**
+ * Content specification.
+ * <pre>
+ * [46] contentspec ::= 'EMPTY' | 'ANY' | Mixed | elements
+ * </pre>
+ */
+ private void parseContentspec(String name)
throws Exception
- {
- char c;
- char sep;
-
- // Parse the first content particle
- skipWhitespace ();
- parseCp ();
-
- // Check for end or for a separator.
- skipWhitespace ();
- c = readCh ();
- switch (c) {
- case ')':
- // VC: Proper Group/PE Nesting
- if (readBuffer != saved)
- handler.verror ("Illegal Group/PE nesting");
-
- dataBufferAppend (')');
- c = readCh ();
- switch (c) {
- case '*':
- case '+':
- case '?':
- dataBufferAppend (c);
- break;
- default:
- unread (c);
- }
- return;
- case ',': // Register the separator.
- case '|':
- sep = c;
- dataBufferAppend (c);
- break;
- default:
- error ("bad separator in content model", c, null);
- return;
- }
-
- // Parse the rest of the content model.
- while (true) {
- skipWhitespace ();
- parseCp ();
- skipWhitespace ();
- c = readCh ();
- if (c == ')') {
- // VC: Proper Group/PE Nesting
- if (readBuffer != saved)
- handler.verror ("Illegal Group/PE nesting");
-
- dataBufferAppend (')');
- break;
- } else if (c != sep) {
- error ("bad separator in content model", c, null);
- return;
- } else {
- dataBufferAppend (c);
- }
- }
-
- // Check for the occurrence indicator.
- c = readCh ();
- switch (c) {
- case '?':
- case '*':
- case '+':
- dataBufferAppend (c);
- return;
- default:
- unread (c);
- return;
- }
- }
-
-
- /**
- * Parse a content particle.
- * <pre>
- * [48] cp ::= (Name | choice | seq) ('?' | '*' | '+')?
- * </pre>
- */
- private void parseCp ()
+ {
+ // FIXME: move elementDecl() into setElement(), pass EMTPY/ANY ...
+ if (tryRead("EMPTY"))
+ {
+ setElement(name, CONTENT_EMPTY, null, null);
+ if (!skippedPE)
+ {
+ handler.getDeclHandler().elementDecl(name, "EMPTY");
+ }
+ return;
+ }
+ else if (tryRead("ANY"))
+ {
+ setElement(name, CONTENT_ANY, null, null);
+ if (!skippedPE)
+ {
+ handler.getDeclHandler().elementDecl(name, "ANY");
+ }
+ return;
+ }
+ else
+ {
+ String model;
+ char[] saved;
+
+ require('(');
+ saved = readBuffer;
+ dataBufferAppend('(');
+ skipWhitespace();
+ if (tryRead("#PCDATA"))
+ {
+ dataBufferAppend("#PCDATA");
+ parseMixed(saved);
+ model = dataBufferToString();
+ setElement(name, CONTENT_MIXED, model, null);
+ }
+ else
+ {
+ parseElements(saved);
+ model = dataBufferToString();
+ setElement(name, CONTENT_ELEMENTS, model, null);
+ }
+ if (!skippedPE)
+ {
+ handler.getDeclHandler().elementDecl(name, model);
+ }
+ }
+ }
+
+ /**
+ * Parse an element-content model.
+ * <pre>
+ * [47] elements ::= (choice | seq) ('?' | '*' | '+')?
+ * [49] choice ::= '(' S? cp (S? '|' S? cp)+ S? ')'
+ * [50] seq ::= '(' S? cp (S? ',' S? cp)* S? ')'
+ * </pre>
+ *
+ * <p> NOTE: the opening '(' and S have already been read.
+ *
+ * @param saved Buffer for entity that should have the terminal ')'
+ */
+ private void parseElements(char[] saved)
throws Exception
- {
- if (tryRead ('(')) {
- dataBufferAppend ('(');
- parseElements (readBuffer);
- } else {
- dataBufferAppend (readNmtoken (true));
- char c = readCh ();
- switch (c) {
- case '?':
- case '*':
- case '+':
- dataBufferAppend (c);
- break;
- default:
- unread (c);
- break;
- }
- }
- }
-
-
- /**
- * Parse mixed content.
- * <pre>
- * [51] Mixed ::= '(' S? ( '#PCDATA' (S? '|' S? Name)*) S? ')*'
- * | '(' S? ('#PCDATA') S? ')'
- * </pre>
- *
- * @param saved Buffer for entity that should have the terminal ')'
- */
- private void parseMixed (char saved [])
+ {
+ char c;
+ char sep;
+
+ // Parse the first content particle
+ skipWhitespace();
+ parseCp();
+
+ // Check for end or for a separator.
+ skipWhitespace();
+ c = readCh();
+ switch (c)
+ {
+ case ')':
+ // VC: Proper Group/PE Nesting
+ if (readBuffer != saved)
+ {
+ handler.verror("Illegal Group/PE nesting");
+ }
+
+ dataBufferAppend(')');
+ c = readCh();
+ switch (c)
+ {
+ case '*':
+ case '+':
+ case '?':
+ dataBufferAppend(c);
+ break;
+ default:
+ unread(c);
+ }
+ return;
+ case ',': // Register the separator.
+ case '|':
+ sep = c;
+ dataBufferAppend(c);
+ break;
+ default:
+ error("bad separator in content model", c, null);
+ return;
+ }
+
+ // Parse the rest of the content model.
+ while (true)
+ {
+ skipWhitespace();
+ parseCp();
+ skipWhitespace();
+ c = readCh();
+ if (c == ')')
+ {
+ // VC: Proper Group/PE Nesting
+ if (readBuffer != saved)
+ {
+ handler.verror("Illegal Group/PE nesting");
+ }
+
+ dataBufferAppend(')');
+ break;
+ }
+ else if (c != sep)
+ {
+ error("bad separator in content model", c, null);
+ return;
+ }
+ else
+ {
+ dataBufferAppend(c);
+ }
+ }
+
+ // Check for the occurrence indicator.
+ c = readCh();
+ switch (c)
+ {
+ case '?':
+ case '*':
+ case '+':
+ dataBufferAppend(c);
+ return;
+ default:
+ unread(c);
+ return;
+ }
+ }
+
+ /**
+ * Parse a content particle.
+ * <pre>
+ * [48] cp ::= (Name | choice | seq) ('?' | '*' | '+')?
+ * </pre>
+ */
+ private void parseCp()
throws Exception
- {
- // Check for PCDATA alone.
- skipWhitespace ();
- if (tryRead (')')) {
- // VC: Proper Group/PE Nesting
- if (readBuffer != saved)
- handler.verror ("Illegal Group/PE nesting");
-
- dataBufferAppend (")*");
- tryRead ('*');
- return;
- }
-
- // Parse mixed content.
- skipWhitespace ();
- while (!tryRead (")")) {
- require ('|');
- dataBufferAppend ('|');
- skipWhitespace ();
- dataBufferAppend (readNmtoken (true));
- skipWhitespace ();
- }
-
- // VC: Proper Group/PE Nesting
- if (readBuffer != saved)
- handler.verror ("Illegal Group/PE nesting");
-
- require ('*');
- dataBufferAppend (")*");
- }
-
+ {
+ if (tryRead('('))
+ {
+ dataBufferAppend('(');
+ parseElements(readBuffer);
+ }
+ else
+ {
+ dataBufferAppend(readNmtoken(true));
+ char c = readCh();
+ switch (c)
+ {
+ case '?':
+ case '*':
+ case '+':
+ dataBufferAppend(c);
+ break;
+ default:
+ unread(c);
+ break;
+ }
+ }
+ }
- /**
- * Parse an attribute list declaration.
- * <pre>
- * [52] AttlistDecl ::= '&lt;!ATTLIST' S Name AttDef* S? '&gt;'
- * </pre>
- * <p>NOTE: the '&lt;!ATTLIST' has already been read.
- */
- private void parseAttlistDecl ()
+ /**
+ * Parse mixed content.
+ * <pre>
+ * [51] Mixed ::= '(' S? ( '#PCDATA' (S? '|' S? Name)*) S? ')*'
+ * | '(' S? ('#PCDATA') S? ')'
+ * </pre>
+ *
+ * @param saved Buffer for entity that should have the terminal ')'
+ */
+ private void parseMixed(char[] saved)
throws Exception
- {
- String elementName;
-
- requireWhitespace ();
- elementName = readNmtoken (true);
- boolean white = tryWhitespace ();
- while (!tryRead ('>')) {
- if (!white)
- error ("whitespace required before attribute definition");
- parseAttDef (elementName);
- white = tryWhitespace ();
- }
- }
-
-
- /**
- * Parse a single attribute definition.
- * <pre>
- * [53] AttDef ::= S Name S AttType S DefaultDecl
- * </pre>
- */
- private void parseAttDef (String elementName)
+ {
+ // Check for PCDATA alone.
+ skipWhitespace();
+ if (tryRead(')'))
+ {
+ // VC: Proper Group/PE Nesting
+ if (readBuffer != saved)
+ {
+ handler.verror("Illegal Group/PE nesting");
+ }
+
+ dataBufferAppend(")*");
+ tryRead('*');
+ return;
+ }
+
+ // Parse mixed content.
+ skipWhitespace();
+ while (!tryRead(")"))
+ {
+ require('|');
+ dataBufferAppend('|');
+ skipWhitespace();
+ dataBufferAppend(readNmtoken(true));
+ skipWhitespace();
+ }
+
+ // VC: Proper Group/PE Nesting
+ if (readBuffer != saved)
+ {
+ handler.verror("Illegal Group/PE nesting");
+ }
+
+ require('*');
+ dataBufferAppend(")*");
+ }
+
+ /**
+ * Parse an attribute list declaration.
+ * <pre>
+ * [52] AttlistDecl ::= '&lt;!ATTLIST' S Name AttDef* S? '&gt;'
+ * </pre>
+ * <p>NOTE: the '&lt;!ATTLIST' has already been read.
+ */
+ private void parseAttlistDecl()
throws Exception
- {
- String name;
- String type;
- String enumer = null;
-
- // Read the attribute name.
- name = readNmtoken (true);
-
- // Read the attribute type.
- requireWhitespace ();
- type = readAttType ();
-
- // Get the string of enumerated values if necessary.
- if (handler.getFeature (SAXDriver.FEATURE + "string-interning")) {
- if ("ENUMERATION" == type || "NOTATION" == type)
- enumer = dataBufferToString ();
- } else {
- if ("ENUMERATION".equals(type) || "NOTATION".equals(type))
- enumer = dataBufferToString ();
+ {
+ String elementName;
+
+ requireWhitespace();
+ elementName = readNmtoken(true);
+ boolean white = tryWhitespace();
+ while (!tryRead('>'))
+ {
+ if (!white)
+ {
+ error("whitespace required before attribute definition");
+ }
+ parseAttDef(elementName);
+ white = tryWhitespace();
+ }
}
+
+ /**
+ * Parse a single attribute definition.
+ * <pre>
+ * [53] AttDef ::= S Name S AttType S DefaultDecl
+ * </pre>
+ */
+ private void parseAttDef(String elementName)
+ throws Exception
+ {
+ String name;
+ String type;
+ String enumer = null;
+
+ // Read the attribute name.
+ name = readNmtoken(true);
- // Read the default value.
- requireWhitespace ();
- parseDefault (elementName, name, type, enumer);
- }
+ // Read the attribute type.
+ requireWhitespace();
+ type = readAttType();
+ // Get the string of enumerated values if necessary.
+ if (handler.stringInterning)
+ {
+ if ("ENUMERATION" == type || "NOTATION" == type)
+ {
+ enumer = dataBufferToString();
+ }
+ }
+ else
+ {
+ if ("ENUMERATION".equals(type) || "NOTATION".equals(type))
+ {
+ enumer = dataBufferToString();
+ }
+ }
+
+ // Read the default value.
+ requireWhitespace();
+ parseDefault(elementName, name, type, enumer);
+ }
/**
* Parse the attribute type.
@@ -1598,229 +1926,284 @@ loop:
* [54] AttType ::= StringType | TokenizedType | EnumeratedType
* [55] StringType ::= 'CDATA'
* [56] TokenizedType ::= 'ID' | 'IDREF' | 'IDREFS' | 'ENTITY'
- * | 'ENTITIES' | 'NMTOKEN' | 'NMTOKENS'
+ * | 'ENTITIES' | 'NMTOKEN' | 'NMTOKENS'
* [57] EnumeratedType ::= NotationType | Enumeration
* </pre>
*/
- private String readAttType ()
+ private String readAttType()
throws Exception
{
- if (tryRead ('(')) {
- parseEnumeration (false);
- return "ENUMERATION";
- } else {
- String typeString = readNmtoken (true);
- if (handler.getFeature (SAXDriver.FEATURE + "string-interning")) {
- if ("NOTATION" == typeString) {
- parseNotationType ();
- return typeString;
- } else if ("CDATA" == typeString
- || "ID" == typeString
- || "IDREF" == typeString
- || "IDREFS" == typeString
- || "ENTITY" == typeString
- || "ENTITIES" == typeString
- || "NMTOKEN" == typeString
- || "NMTOKENS" == typeString)
- return typeString;
- } else {
- if ("NOTATION".equals(typeString)) {
- parseNotationType ();
- return typeString;
- } else if ("CDATA".equals(typeString)
- || "ID".equals(typeString)
- || "IDREF".equals(typeString)
- || "IDREFS".equals(typeString)
- || "ENTITY".equals(typeString)
- || "ENTITIES".equals(typeString)
- || "NMTOKEN".equals(typeString)
- || "NMTOKENS".equals(typeString))
- return typeString;
- }
- error ("illegal attribute type", typeString, null);
- return null;
- }
+ if (tryRead('('))
+ {
+ parseEnumeration(false);
+ return "ENUMERATION";
+ }
+ else
+ {
+ String typeString = readNmtoken(true);
+ if (handler.stringInterning)
+ {
+ if ("NOTATION" == typeString)
+ {
+ parseNotationType();
+ return typeString;
+ }
+ else if ("CDATA" == typeString
+ || "ID" == typeString
+ || "IDREF" == typeString
+ || "IDREFS" == typeString
+ || "ENTITY" == typeString
+ || "ENTITIES" == typeString
+ || "NMTOKEN" == typeString
+ || "NMTOKENS" == typeString)
+ {
+ return typeString;
+ }
+ }
+ else
+ {
+ if ("NOTATION".equals(typeString))
+ {
+ parseNotationType();
+ return typeString;
+ }
+ else if ("CDATA".equals(typeString)
+ || "ID".equals(typeString)
+ || "IDREF".equals(typeString)
+ || "IDREFS".equals(typeString)
+ || "ENTITY".equals(typeString)
+ || "ENTITIES".equals(typeString)
+ || "NMTOKEN".equals(typeString)
+ || "NMTOKENS".equals(typeString))
+ {
+ return typeString;
+ }
+ }
+ error("illegal attribute type", typeString, null);
+ return null;
+ }
}
-
- /**
- * Parse an enumeration.
- * <pre>
- * [59] Enumeration ::= '(' S? Nmtoken (S? '|' S? Nmtoken)* S? ')'
- * </pre>
- * <p>NOTE: the '(' has already been read.
- */
- private void parseEnumeration (boolean isNames)
+ /**
+ * Parse an enumeration.
+ * <pre>
+ * [59] Enumeration ::= '(' S? Nmtoken (S? '|' S? Nmtoken)* S? ')'
+ * </pre>
+ * <p>NOTE: the '(' has already been read.
+ */
+ private void parseEnumeration(boolean isNames)
throws Exception
- {
- dataBufferAppend ('(');
-
- // Read the first token.
- skipWhitespace ();
- dataBufferAppend (readNmtoken (isNames));
- // Read the remaining tokens.
- skipWhitespace ();
- while (!tryRead (')')) {
- require ('|');
- dataBufferAppend ('|');
- skipWhitespace ();
- dataBufferAppend (readNmtoken (isNames));
- skipWhitespace ();
- }
- dataBufferAppend (')');
- }
-
+ {
+ dataBufferAppend('(');
+
+ // Read the first token.
+ skipWhitespace();
+ dataBufferAppend(readNmtoken(isNames));
+ // Read the remaining tokens.
+ skipWhitespace();
+ while (!tryRead(')'))
+ {
+ require('|');
+ dataBufferAppend('|');
+ skipWhitespace();
+ dataBufferAppend(readNmtoken (isNames));
+ skipWhitespace();
+ }
+ dataBufferAppend(')');
+ }
- /**
- * Parse a notation type for an attribute.
- * <pre>
- * [58] NotationType ::= 'NOTATION' S '(' S? NameNtoks
- * (S? '|' S? name)* S? ')'
- * </pre>
- * <p>NOTE: the 'NOTATION' has already been read
- */
- private void parseNotationType ()
+ /**
+ * Parse a notation type for an attribute.
+ * <pre>
+ * [58] NotationType ::= 'NOTATION' S '(' S? NameNtoks
+ * (S? '|' S? name)* S? ')'
+ * </pre>
+ * <p>NOTE: the 'NOTATION' has already been read
+ */
+ private void parseNotationType()
throws Exception
- {
- requireWhitespace ();
- require ('(');
-
- parseEnumeration (true);
- }
-
-
- /**
- * Parse the default value for an attribute.
- * <pre>
- * [60] DefaultDecl ::= '#REQUIRED' | '#IMPLIED'
- * | (('#FIXED' S)? AttValue)
- * </pre>
- */
- private void parseDefault (
- String elementName,
- String name,
- String type,
- String enumer
- ) throws Exception
- {
- int valueType = ATTRIBUTE_DEFAULT_SPECIFIED;
- String value = null;
- int flags = LIT_ATTRIBUTE;
- boolean saved = expandPE;
- String defaultType = null;
-
- // LIT_ATTRIBUTE forces '<' checks now (ASAP) and turns whitespace
- // chars to spaces (doesn't matter when that's done if it doesn't
- // interfere with char refs expanding to whitespace).
-
- if (!skippedPE) {
- flags |= LIT_ENTITY_REF;
- if (handler.getFeature (SAXDriver.FEATURE + "string-interning")) {
- if ("CDATA" != type)
- flags |= LIT_NORMALIZE;
- } else {
- if (!"CDATA".equals(type))
- flags |= LIT_NORMALIZE;
- }
- }
-
- expandPE = false;
- if (tryRead ('#')) {
- if (tryRead ("FIXED")) {
- defaultType = "#FIXED";
- valueType = ATTRIBUTE_DEFAULT_FIXED;
- requireWhitespace ();
- value = readLiteral (flags);
- } else if (tryRead ("REQUIRED")) {
- defaultType = "#REQUIRED";
- valueType = ATTRIBUTE_DEFAULT_REQUIRED;
- } else if (tryRead ("IMPLIED")) {
- defaultType = "#IMPLIED";
- valueType = ATTRIBUTE_DEFAULT_IMPLIED;
- } else {
- error ("illegal keyword for attribute default value");
- }
- } else
- value = readLiteral (flags);
- expandPE = saved;
- setAttribute (elementName, name, type, enumer, value, valueType);
- if (handler.getFeature (SAXDriver.FEATURE + "string-interning")) {
- if ("ENUMERATION" == type)
- type = enumer;
- else if ("NOTATION" == type)
- type = "NOTATION " + enumer;
- } else {
- if ("ENUMERATION".equals(type))
- type = enumer;
- else if ("NOTATION".equals(type))
- type = "NOTATION " + enumer;
+ {
+ requireWhitespace();
+ require('(');
+
+ parseEnumeration(true);
}
- if (!skippedPE) handler.getDeclHandler ()
- .attributeDecl (elementName, name, type, defaultType, value);
- }
-
- /**
- * Parse a conditional section.
- * <pre>
- * [61] conditionalSect ::= includeSect || ignoreSect
- * [62] includeSect ::= '&lt;![' S? 'INCLUDE' S? '['
- * extSubsetDecl ']]&gt;'
- * [63] ignoreSect ::= '&lt;![' S? 'IGNORE' S? '['
- * ignoreSectContents* ']]&gt;'
- * [64] ignoreSectContents ::= Ignore
- * ('&lt;![' ignoreSectContents* ']]&gt;' Ignore )*
- * [65] Ignore ::= Char* - (Char* ( '&lt;![' | ']]&gt;') Char* )
- * </pre>
- * <p> NOTE: the '&gt;![' has already been read.
- */
- private void parseConditionalSect (char saved [])
+ /**
+ * Parse the default value for an attribute.
+ * <pre>
+ * [60] DefaultDecl ::= '#REQUIRED' | '#IMPLIED'
+ * | (('#FIXED' S)? AttValue)
+ * </pre>
+ */
+ private void parseDefault(String elementName, String name,
+ String type, String enumer)
throws Exception
- {
- skipWhitespace ();
- if (tryRead ("INCLUDE")) {
- skipWhitespace ();
- require ('[');
- // VC: Proper Conditional Section/PE Nesting
- if (readBuffer != saved)
- handler.verror ("Illegal Conditional Section/PE nesting");
- skipWhitespace ();
- while (!tryRead ("]]>")) {
- parseMarkupdecl ();
- skipWhitespace ();
- }
- } else if (tryRead ("IGNORE")) {
- skipWhitespace ();
- require ('[');
- // VC: Proper Conditional Section/PE Nesting
- if (readBuffer != saved)
- handler.verror ("Illegal Conditional Section/PE nesting");
- int nesting = 1;
- char c;
- expandPE = false;
- for (int nest = 1; nest > 0;) {
- c = readCh ();
- switch (c) {
- case '<':
- if (tryRead ("![")) {
- nest++;
- }
- case ']':
- if (tryRead ("]>")) {
- nest--;
- }
- }
- }
- expandPE = true;
- } else {
- error ("conditional section must begin with INCLUDE or IGNORE");
- }
- }
-
- private void parseCharRef ()
+ {
+ int valueType = ATTRIBUTE_DEFAULT_SPECIFIED;
+ String value = null;
+ int flags = LIT_ATTRIBUTE;
+ boolean saved = expandPE;
+ String defaultType = null;
+
+ // LIT_ATTRIBUTE forces '<' checks now (ASAP) and turns whitespace
+ // chars to spaces (doesn't matter when that's done if it doesn't
+ // interfere with char refs expanding to whitespace).
+
+ if (!skippedPE)
+ {
+ flags |= LIT_ENTITY_REF;
+ if (handler.stringInterning)
+ {
+ if ("CDATA" != type)
+ {
+ flags |= LIT_NORMALIZE;
+ }
+ }
+ else
+ {
+ if (!"CDATA".equals(type))
+ {
+ flags |= LIT_NORMALIZE;
+ }
+ }
+ }
+
+ expandPE = false;
+ if (tryRead('#'))
+ {
+ if (tryRead("FIXED"))
+ {
+ defaultType = "#FIXED";
+ valueType = ATTRIBUTE_DEFAULT_FIXED;
+ requireWhitespace();
+ value = readLiteral(flags);
+ }
+ else if (tryRead("REQUIRED"))
+ {
+ defaultType = "#REQUIRED";
+ valueType = ATTRIBUTE_DEFAULT_REQUIRED;
+ }
+ else if (tryRead("IMPLIED"))
+ {
+ defaultType = "#IMPLIED";
+ valueType = ATTRIBUTE_DEFAULT_IMPLIED;
+ }
+ else
+ {
+ error("illegal keyword for attribute default value");
+ }
+ }
+ else
+ {
+ value = readLiteral(flags);
+ }
+ expandPE = saved;
+ setAttribute(elementName, name, type, enumer, value, valueType);
+ if (handler.stringInterning)
+ {
+ if ("ENUMERATION" == type)
+ {
+ type = enumer;
+ }
+ else if ("NOTATION" == type)
+ {
+ type = "NOTATION " + enumer;
+ }
+ }
+ else
+ {
+ if ("ENUMERATION".equals(type))
+ {
+ type = enumer;
+ }
+ else if ("NOTATION".equals(type))
+ {
+ type = "NOTATION " + enumer;
+ }
+ }
+ if (!skippedPE)
+ {
+ handler.getDeclHandler().attributeDecl(elementName, name, type,
+ defaultType, value);
+ }
+ }
+
+ /**
+ * Parse a conditional section.
+ * <pre>
+ * [61] conditionalSect ::= includeSect || ignoreSect
+ * [62] includeSect ::= '&lt;![' S? 'INCLUDE' S? '['
+ * extSubsetDecl ']]&gt;'
+ * [63] ignoreSect ::= '&lt;![' S? 'IGNORE' S? '['
+ * ignoreSectContents* ']]&gt;'
+ * [64] ignoreSectContents ::= Ignore
+ * ('&lt;![' ignoreSectContents* ']]&gt;' Ignore )*
+ * [65] Ignore ::= Char* - (Char* ( '&lt;![' | ']]&gt;') Char* )
+ * </pre>
+ * <p> NOTE: the '&gt;![' has already been read.
+ */
+ private void parseConditionalSect(char[] saved)
+ throws Exception
+ {
+ skipWhitespace();
+ if (tryRead("INCLUDE"))
+ {
+ skipWhitespace();
+ require('[');
+ // VC: Proper Conditional Section/PE Nesting
+ if (readBuffer != saved)
+ {
+ handler.verror("Illegal Conditional Section/PE nesting");
+ }
+ skipWhitespace();
+ while (!tryRead("]]>"))
+ {
+ parseMarkupdecl();
+ skipWhitespace();
+ }
+ }
+ else if (tryRead("IGNORE"))
+ {
+ skipWhitespace();
+ require('[');
+ // VC: Proper Conditional Section/PE Nesting
+ if (readBuffer != saved)
+ {
+ handler.verror("Illegal Conditional Section/PE nesting");
+ }
+ int nesting = 1;
+ char c;
+ expandPE = false;
+ for (int nest = 1; nest > 0; )
+ {
+ c = readCh();
+ switch (c)
+ {
+ case '<':
+ if (tryRead("!["))
+ {
+ nest++;
+ }
+ case ']':
+ if (tryRead("]>"))
+ {
+ nest--;
+ }
+ }
+ }
+ expandPE = true;
+ }
+ else
+ {
+ error("conditional section must begin with INCLUDE or IGNORE");
+ }
+ }
+
+ private void parseCharRef()
throws SAXException, IOException
{
- parseCharRef (true /* do flushDataBuffer by default */);
+ parseCharRef(true /* do flushDataBuffer by default */);
}
/**
@@ -1830,1485 +2213,1717 @@ loop:
* </pre>
* <p>NOTE: the '&#' has already been read.
*/
- private void tryReadCharRef ()
- throws SAXException, IOException
+ private void tryReadCharRef()
+ throws SAXException, IOException
{
- int value = 0;
- char c;
-
- if (tryRead ('x')) {
+ int value = 0;
+ char c;
+
+ if (tryRead('x'))
+ {
loop1:
- while (true) {
- c = readCh ();
- int n;
- switch (c) {
- case '0': case '1': case '2': case '3': case '4':
- case '5': case '6': case '7': case '8': case '9':
- n = c - '0';
- break;
- case 'a': case 'b': case 'c': case 'd': case 'e': case 'f':
- n = (c - 'a') + 10;
- break;
- case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
- n = (c - 'A') + 10;
- break;
- case ';':
- break loop1;
- default:
- error ("illegal character in character reference", c, null);
- break loop1;
- }
- value *= 16;
- value += n;
- }
- } else {
+ while (true)
+ {
+ c = readCh();
+ if (c == ';')
+ {
+ break loop1;
+ }
+ else
+ {
+ int n = Character.digit(c, 16);
+ if (n == -1)
+ {
+ error("illegal character in character reference", c, null);
+ break loop1;
+ }
+ value *= 16;
+ value += n;
+ }
+ }
+ }
+ else
+ {
loop2:
- while (true) {
- c = readCh ();
- switch (c) {
- case '0': case '1': case '2': case '3': case '4':
- case '5': case '6': case '7': case '8': case '9':
- value *= 10;
- value += c - '0';
- break;
- case ';':
- break loop2;
- default:
- error ("illegal character in character reference", c, null);
- break loop2;
- }
- }
- }
-
- // check for character refs being legal XML
- if ((value < 0x0020
- && ! (value == '\n' || value == '\t' || value == '\r'))
- || (value >= 0xD800 && value <= 0xDFFF)
- || value == 0xFFFE || value == 0xFFFF
- || value > 0x0010ffff)
- error ("illegal XML character reference U+"
- + Integer.toHexString (value));
-
- // Check for surrogates: 00000000 0000xxxx yyyyyyyy zzzzzzzz
- // (1101|10xx|xxyy|yyyy + 1101|11yy|zzzz|zzzz:
- if (value > 0x0010ffff) {
- // too big for surrogate
- error ("character reference " + value + " is too large for UTF-16",
- new Integer (value).toString (), null);
- }
-
+ while (true)
+ {
+ c = readCh();
+ if (c == ';')
+ {
+ break loop2;
+ }
+ else
+ {
+ int n = Character.digit(c, 10);
+ if (n == -1)
+ {
+ error("illegal character in character reference", c, null);
+ break loop2;
+ }
+ value *= 10;
+ value += n;
+ }
+ }
+ }
+
+ // check for character refs being legal XML
+ if ((value < 0x0020
+ && ! (value == '\n' || value == '\t' || value == '\r'))
+ || (value >= 0xD800 && value <= 0xDFFF)
+ || value == 0xFFFE || value == 0xFFFF
+ || value > 0x0010ffff)
+ {
+ error("illegal XML character reference U+"
+ + Integer.toHexString(value));
+ }
+
+ // Check for surrogates: 00000000 0000xxxx yyyyyyyy zzzzzzzz
+ // (1101|10xx|xxyy|yyyy + 1101|11yy|zzzz|zzzz:
+ if (value > 0x0010ffff)
+ {
+ // too big for surrogate
+ error("character reference " + value + " is too large for UTF-16",
+ new Integer(value).toString(), null);
+ }
+
}
- /**
- * Read and interpret a character reference.
- * <pre>
- * [66] CharRef ::= '&#' [0-9]+ ';' | '&#x' [0-9a-fA-F]+ ';'
- * </pre>
- * <p>NOTE: the '&#' has already been read.
- */
- private void parseCharRef (boolean doFlush)
+ /**
+ * Read and interpret a character reference.
+ * <pre>
+ * [66] CharRef ::= '&#' [0-9]+ ';' | '&#x' [0-9a-fA-F]+ ';'
+ * </pre>
+ * <p>NOTE: the '&#' has already been read.
+ */
+ private void parseCharRef(boolean doFlush)
throws SAXException, IOException
- {
- int value = 0;
- char c;
-
- if (tryRead ('x')) {
+ {
+ int value = 0;
+ char c;
+
+ if (tryRead('x'))
+ {
loop1:
- while (true) {
- c = readCh ();
- int n;
- switch (c) {
- case '0': case '1': case '2': case '3': case '4':
- case '5': case '6': case '7': case '8': case '9':
- n = c - '0';
- break;
- case 'a': case 'b': case 'c': case 'd': case 'e': case 'f':
- n = (c - 'a') + 10;
- break;
- case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
- n = (c - 'A') + 10;
- break;
- case ';':
- break loop1;
- default:
- error ("illegal character in character reference", c, null);
- break loop1;
- }
- value *= 16;
- value += n;
- }
- } else {
+ while (true)
+ {
+ c = readCh();
+ if (c == ';')
+ {
+ break loop1;
+ }
+ else
+ {
+ int n = Character.digit(c, 16);
+ if (n == -1)
+ {
+ error("illegal character in character reference", c, null);
+ break loop1;
+ }
+ value *= 16;
+ value += n;
+ }
+ }
+ }
+ else
+ {
loop2:
- while (true) {
- c = readCh ();
- switch (c) {
- case '0': case '1': case '2': case '3': case '4':
- case '5': case '6': case '7': case '8': case '9':
- value *= 10;
- value += c - '0';
- break;
- case ';':
- break loop2;
- default:
- error ("illegal character in character reference", c, null);
- break loop2;
- }
- }
- }
-
- // check for character refs being legal XML
- if ((value < 0x0020
- && ! (value == '\n' || value == '\t' || value == '\r'))
- || (value >= 0xD800 && value <= 0xDFFF)
- || value == 0xFFFE || value == 0xFFFF
- || value > 0x0010ffff)
- error ("illegal XML character reference U+"
- + Integer.toHexString (value));
-
- // Check for surrogates: 00000000 0000xxxx yyyyyyyy zzzzzzzz
- // (1101|10xx|xxyy|yyyy + 1101|11yy|zzzz|zzzz:
- if (value <= 0x0000ffff) {
- // no surrogates needed
- dataBufferAppend ((char) value);
- } else if (value <= 0x0010ffff) {
- value -= 0x10000;
- // > 16 bits, surrogate needed
- dataBufferAppend ((char) (0xd800 | (value >> 10)));
- dataBufferAppend ((char) (0xdc00 | (value & 0x0003ff)));
- } else {
- // too big for surrogate
- error ("character reference " + value + " is too large for UTF-16",
- new Integer (value).toString (), null);
- }
- if (doFlush) dataBufferFlush ();
- }
-
-
- /**
- * Parse and expand an entity reference.
- * <pre>
- * [68] EntityRef ::= '&' Name ';'
- * </pre>
- * <p>NOTE: the '&amp;' has already been read.
- * @param externalAllowed External entities are allowed here.
- */
- private void parseEntityRef (boolean externalAllowed)
+ while (true)
+ {
+ c = readCh();
+ if (c == ';')
+ {
+ break loop2;
+ }
+ else
+ {
+ int n = Character.digit(c, 10);
+ if (n == -1)
+ {
+ error("illegal character in character reference", c, null);
+ break loop2;
+ }
+ value *= 10;
+ value += c - '0';
+ }
+ }
+ }
+
+ // check for character refs being legal XML
+ if ((value < 0x0020
+ && ! (value == '\n' || value == '\t' || value == '\r'))
+ || (value >= 0xD800 && value <= 0xDFFF)
+ || value == 0xFFFE || value == 0xFFFF
+ || value > 0x0010ffff)
+ {
+ error("illegal XML character reference U+"
+ + Integer.toHexString(value));
+ }
+
+ // Check for surrogates: 00000000 0000xxxx yyyyyyyy zzzzzzzz
+ // (1101|10xx|xxyy|yyyy + 1101|11yy|zzzz|zzzz:
+ if (value <= 0x0000ffff)
+ {
+ // no surrogates needed
+ dataBufferAppend((char) value);
+ }
+ else if (value <= 0x0010ffff)
+ {
+ value -= 0x10000;
+ // > 16 bits, surrogate needed
+ dataBufferAppend((char) (0xd800 | (value >> 10)));
+ dataBufferAppend((char) (0xdc00 | (value & 0x0003ff)));
+ }
+ else
+ {
+ // too big for surrogate
+ error("character reference " + value + " is too large for UTF-16",
+ new Integer(value).toString(), null);
+ }
+ if (doFlush)
+ {
+ dataBufferFlush();
+ }
+ }
+
+ /**
+ * Parse and expand an entity reference.
+ * <pre>
+ * [68] EntityRef ::= '&' Name ';'
+ * </pre>
+ * <p>NOTE: the '&amp;' has already been read.
+ * @param externalAllowed External entities are allowed here.
+ */
+ private void parseEntityRef(boolean externalAllowed)
throws SAXException, IOException
- {
- String name;
-
- name = readNmtoken (true);
- require (';');
- switch (getEntityType (name)) {
- case ENTITY_UNDECLARED:
- // NOTE: XML REC describes amazingly convoluted handling for
- // this case. Nothing as meaningful as being a WFness error
- // unless the processor might _legitimately_ not have seen a
- // declaration ... which is what this implements.
- String message;
-
- message = "reference to undeclared general entity " + name;
- if (skippedPE && !docIsStandalone) {
- handler.verror (message);
- // we don't know this entity, and it might be external...
- if (externalAllowed)
- handler.skippedEntity (name);
- } else
- error (message);
- break;
- case ENTITY_INTERNAL:
- pushString (name, getEntityValue (name));
-
- //workaround for possible input pop before marking
- //the buffer reading position
- char t = readCh ();
- unread (t);
- int bufferPosMark = readBufferPos;
-
- int end = readBufferPos + getEntityValue (name).length();
- for(int k = readBufferPos; k < end; k++){
- t = readCh ();
- if (t == '&'){
- t = readCh ();
- if (t == '#'){
- //try to match a character ref
- tryReadCharRef ();
-
- //everything has been read
- if (readBufferPos >= end)
- break;
- k = readBufferPos;
- continue;
- }
- else if (Character.isLetter(t)){
- //looks like an entity ref
- unread (t);
- readNmtoken (true);
- require (';');
-
- //everything has been read
- if (readBufferPos >= end)
- break;
- k = readBufferPos;
- continue;
- }
- error(" malformed entity reference");
- }
-
+ {
+ String name;
+
+ name = readNmtoken(true);
+ require(';');
+ switch (getEntityType(name))
+ {
+ case ENTITY_UNDECLARED:
+ // NOTE: XML REC describes amazingly convoluted handling for
+ // this case. Nothing as meaningful as being a WFness error
+ // unless the processor might _legitimately_ not have seen a
+ // declaration ... which is what this implements.
+ String message;
+
+ message = "reference to undeclared general entity " + name;
+ if (skippedPE && !docIsStandalone)
+ {
+ handler.verror(message);
+ // we don't know this entity, and it might be external...
+ if (externalAllowed)
+ {
+ handler.skippedEntity(name);
+ }
+ }
+ else
+ {
+ error(message);
+ }
+ break;
+ case ENTITY_INTERNAL:
+ pushString(name, getEntityValue(name));
+
+ //workaround for possible input pop before marking
+ //the buffer reading position
+ char t = readCh();
+ unread(t);
+ int bufferPosMark = readBufferPos;
+
+ int end = readBufferPos + getEntityValue(name).length();
+ for (int k = readBufferPos; k < end; k++)
+ {
+ t = readCh();
+ if (t == '&')
+ {
+ t = readCh();
+ if (t == '#')
+ {
+ //try to match a character ref
+ tryReadCharRef();
+
+ //everything has been read
+ if (readBufferPos >= end)
+ {
+ break;
+ }
+ k = readBufferPos;
+ continue;
+ }
+ else if (Character.isLetter(t))
+ {
+ //looks like an entity ref
+ unread(t);
+ readNmtoken(true);
+ require(';');
+
+ //everything has been read
+ if (readBufferPos >= end)
+ {
+ break;
+ }
+ k = readBufferPos;
+ continue;
+ }
+ error(" malformed entity reference");
+ }
+
}
- readBufferPos = bufferPosMark;
- break;
- case ENTITY_TEXT:
- if (externalAllowed) {
- pushURL (false, name, getEntityIds (name),
- null, null, null, true);
- } else {
- error ("reference to external entity in attribute value.",
- name, null);
- }
- break;
- case ENTITY_NDATA:
- if (externalAllowed) {
- error ("unparsed entity reference in content", name, null);
- } else {
- error ("reference to external entity in attribute value.",
- name, null);
- }
- break;
- default:
- throw new RuntimeException ();
- }
- }
-
-
- /**
- * Parse and expand a parameter entity reference.
- * <pre>
- * [69] PEReference ::= '%' Name ';'
- * </pre>
- * <p>NOTE: the '%' has already been read.
- */
- private void parsePEReference ()
+ readBufferPos = bufferPosMark;
+ break;
+ case ENTITY_TEXT:
+ if (externalAllowed)
+ {
+ pushURL(false, name, getEntityIds(name),
+ null, null, null, true);
+ }
+ else
+ {
+ error("reference to external entity in attribute value.",
+ name, null);
+ }
+ break;
+ case ENTITY_NDATA:
+ if (externalAllowed)
+ {
+ error("unparsed entity reference in content", name, null);
+ }
+ else
+ {
+ error("reference to external entity in attribute value.",
+ name, null);
+ }
+ break;
+ default:
+ throw new RuntimeException();
+ }
+ }
+
+ /**
+ * Parse and expand a parameter entity reference.
+ * <pre>
+ * [69] PEReference ::= '%' Name ';'
+ * </pre>
+ * <p>NOTE: the '%' has already been read.
+ */
+ private void parsePEReference()
throws SAXException, IOException
- {
- String name;
-
- name = "%" + readNmtoken (true);
- require (';');
- switch (getEntityType (name)) {
- case ENTITY_UNDECLARED:
- // VC: Entity Declared
- handler.verror ("reference to undeclared parameter entity " + name);
-
- // we should disable handling of all subsequent declarations
- // unless this is a standalone document (info discarded)
- break;
- case ENTITY_INTERNAL:
- if (inLiteral)
- pushString (name, getEntityValue (name));
- else
- pushString (name, ' ' + getEntityValue (name) + ' ');
- break;
- case ENTITY_TEXT:
- if (!inLiteral)
- pushString (null, " ");
- pushURL (true, name, getEntityIds (name), null, null, null, true);
- if (!inLiteral)
- pushString (null, " ");
- break;
- }
- }
-
- /**
- * Parse an entity declaration.
- * <pre>
- * [70] EntityDecl ::= GEDecl | PEDecl
- * [71] GEDecl ::= '&lt;!ENTITY' S Name S EntityDef S? '&gt;'
- * [72] PEDecl ::= '&lt;!ENTITY' S '%' S Name S PEDef S? '&gt;'
- * [73] EntityDef ::= EntityValue | (ExternalID NDataDecl?)
- * [74] PEDef ::= EntityValue | ExternalID
- * [75] ExternalID ::= 'SYSTEM' S SystemLiteral
- * | 'PUBLIC' S PubidLiteral S SystemLiteral
- * [76] NDataDecl ::= S 'NDATA' S Name
- * </pre>
- * <p>NOTE: the '&lt;!ENTITY' has already been read.
- */
- private void parseEntityDecl ()
+ {
+ String name;
+
+ name = "%" + readNmtoken(true);
+ require(';');
+ switch (getEntityType(name))
+ {
+ case ENTITY_UNDECLARED:
+ // VC: Entity Declared
+ handler.verror("reference to undeclared parameter entity " + name);
+
+ // we should disable handling of all subsequent declarations
+ // unless this is a standalone document (info discarded)
+ break;
+ case ENTITY_INTERNAL:
+ if (inLiteral)
+ {
+ pushString(name, getEntityValue(name));
+ }
+ else
+ {
+ pushString(name, ' ' + getEntityValue(name) + ' ');
+ }
+ break;
+ case ENTITY_TEXT:
+ if (!inLiteral)
+ {
+ pushString(null, " ");
+ }
+ pushURL(true, name, getEntityIds(name), null, null, null, true);
+ if (!inLiteral)
+ {
+ pushString(null, " ");
+ }
+ break;
+ }
+ }
+
+ /**
+ * Parse an entity declaration.
+ * <pre>
+ * [70] EntityDecl ::= GEDecl | PEDecl
+ * [71] GEDecl ::= '&lt;!ENTITY' S Name S EntityDef S? '&gt;'
+ * [72] PEDecl ::= '&lt;!ENTITY' S '%' S Name S PEDef S? '&gt;'
+ * [73] EntityDef ::= EntityValue | (ExternalID NDataDecl?)
+ * [74] PEDef ::= EntityValue | ExternalID
+ * [75] ExternalID ::= 'SYSTEM' S SystemLiteral
+ * | 'PUBLIC' S PubidLiteral S SystemLiteral
+ * [76] NDataDecl ::= S 'NDATA' S Name
+ * </pre>
+ * <p>NOTE: the '&lt;!ENTITY' has already been read.
+ */
+ private void parseEntityDecl()
throws Exception
- {
- boolean peFlag = false;
- int flags = 0;
-
- // Check for a parameter entity.
- expandPE = false;
- requireWhitespace ();
- if (tryRead ('%')) {
- peFlag = true;
- requireWhitespace ();
- }
- expandPE = true;
-
- // Read the entity name, and prepend
- // '%' if necessary.
- String name = readNmtoken (true);
- //NE08
- if (name.indexOf(':') >= 0)
- error ("Illegal character(':') in entity name ", name, null);
- if (peFlag) {
- name = "%" + name;
- }
-
- // Read the entity value.
- requireWhitespace ();
- char c = readCh ();
- unread (c);
- if (c == '"' || c == '\'') {
- // Internal entity ... replacement text has expanded refs
- // to characters and PEs, but not to general entities
- String value = readLiteral (flags);
- setInternalEntity (name, value);
- } else {
- // Read the external IDs
- String ids [] = readExternalIds (false, false);
-
- // Check for NDATA declaration.
- boolean white = tryWhitespace ();
- if (!peFlag && tryRead ("NDATA")) {
- if (!white)
- error ("whitespace required before NDATA");
- requireWhitespace ();
- String notationName = readNmtoken (true);
- if (!skippedPE) {
- setExternalEntity (name, ENTITY_NDATA, ids, notationName);
- handler.unparsedEntityDecl (name, ids, notationName);
- }
- } else if (!skippedPE) {
- setExternalEntity (name, ENTITY_TEXT, ids, null);
- handler.getDeclHandler ()
- .externalEntityDecl (name, ids [0],
- handler.resolveURIs ()
- // FIXME: ASSUMES not skipped
- // "false" forces error on bad URI
- ? handler.absolutize (ids [2], ids [1], false)
- : ids [1]);
- }
- }
-
- // Finish the declaration.
- skipWhitespace ();
- require ('>');
- }
+ {
+ boolean peFlag = false;
+ int flags = 0;
+
+ // Check for a parameter entity.
+ expandPE = false;
+ requireWhitespace();
+ if (tryRead('%'))
+ {
+ peFlag = true;
+ requireWhitespace();
+ }
+ expandPE = true;
+
+ // Read the entity name, and prepend
+ // '%' if necessary.
+ String name = readNmtoken(true);
+ //NE08
+ if (name.indexOf(':') >= 0)
+ {
+ error("Illegal character(':') in entity name ", name, null);
+ }
+ if (peFlag)
+ {
+ name = "%" + name;
+ }
+ // Read the entity value.
+ requireWhitespace();
+ char c = readCh();
+ unread (c);
+ if (c == '"' || c == '\'')
+ {
+ // Internal entity ... replacement text has expanded refs
+ // to characters and PEs, but not to general entities
+ String value = readLiteral(flags);
+ setInternalEntity(name, value);
+ }
+ else
+ {
+ // Read the external IDs
+ ExternalIdentifiers ids = readExternalIds(false, false);
+
+ // Check for NDATA declaration.
+ boolean white = tryWhitespace();
+ if (!peFlag && tryRead("NDATA"))
+ {
+ if (!white)
+ {
+ error("whitespace required before NDATA");
+ }
+ requireWhitespace();
+ String notationName = readNmtoken(true);
+ if (!skippedPE)
+ {
+ setExternalEntity(name, ENTITY_NDATA, ids, notationName);
+ handler.unparsedEntityDecl(name, ids.publicId, ids.systemId,
+ ids.baseUri, notationName);
+ }
+ }
+ else if (!skippedPE)
+ {
+ setExternalEntity(name, ENTITY_TEXT, ids, null);
+ handler.getDeclHandler()
+ .externalEntityDecl(name, ids.publicId,
+ handler.resolveURIs()
+ // FIXME: ASSUMES not skipped
+ // "false" forces error on bad URI
+ ? handler.absolutize(ids.baseUri,
+ ids.systemId,
+ false)
+ : ids.systemId);
+ }
+ }
+
+ // Finish the declaration.
+ skipWhitespace();
+ require('>');
+ }
- /**
- * Parse a notation declaration.
- * <pre>
- * [82] NotationDecl ::= '&lt;!NOTATION' S Name S
- * (ExternalID | PublicID) S? '&gt;'
- * [83] PublicID ::= 'PUBLIC' S PubidLiteral
- * </pre>
- * <P>NOTE: the '&lt;!NOTATION' has already been read.
- */
- private void parseNotationDecl ()
+ /**
+ * Parse a notation declaration.
+ * <pre>
+ * [82] NotationDecl ::= '&lt;!NOTATION' S Name S
+ * (ExternalID | PublicID) S? '&gt;'
+ * [83] PublicID ::= 'PUBLIC' S PubidLiteral
+ * </pre>
+ * <P>NOTE: the '&lt;!NOTATION' has already been read.
+ */
+ private void parseNotationDecl()
throws Exception
- {
- String nname, ids[];
-
-
- requireWhitespace ();
- nname = readNmtoken (true);
- //NE08
- if (nname.indexOf(':') >= 0)
- error ("Illegal character(':') in notation name ", nname, null);
- requireWhitespace ();
-
- // Read the external identifiers.
- ids = readExternalIds (true, false);
-
- // Register the notation.
- setNotation (nname, ids);
-
- skipWhitespace ();
- require ('>');
- }
+ {
+ String nname;
+ ExternalIdentifiers ids;
+
+ requireWhitespace();
+ nname = readNmtoken(true);
+ //NE08
+ if (nname.indexOf(':') >= 0)
+ {
+ error("Illegal character(':') in notation name ", nname, null);
+ }
+ requireWhitespace();
+ // Read the external identifiers.
+ ids = readExternalIds(true, false);
- /**
- * Parse character data.
- * <pre>
- * [14] CharData ::= [^&lt;&amp;]* - ([^&lt;&amp;]* ']]&gt;' [^&lt;&amp;]*)
- * </pre>
- */
- private void parseCharData ()
+ // Register the notation.
+ setNotation(nname, ids);
+
+ skipWhitespace();
+ require('>');
+ }
+
+ /**
+ * Parse character data.
+ * <pre>
+ * [14] CharData ::= [^&lt;&amp;]* - ([^&lt;&amp;]* ']]&gt;' [^&lt;&amp;]*)
+ * </pre>
+ */
+ private void parseCharData()
throws Exception
- {
- char c;
- int state = 0;
- boolean pureWhite = false;
-
- // assert (dataBufferPos == 0);
-
- // are we expecting pure whitespace? it might be dirty...
- if ((currentElementContent == CONTENT_ELEMENTS) && !isDirtyCurrentElement)
- pureWhite = true;
+ {
+ char c;
+ int state = 0;
+ boolean pureWhite = false;
- // always report right out of readBuffer
- // to minimize (pointless) buffer copies
- while (true) {
- int lineAugment = 0;
- int columnAugment = 0;
- int i;
+ // assert (dataBufferPos == 0);
+
+ // are we expecting pure whitespace? it might be dirty...
+ if ((currentElementContent == CONTENT_ELEMENTS) && !isDirtyCurrentElement)
+ {
+ pureWhite = true;
+ }
+ // always report right out of readBuffer
+ // to minimize (pointless) buffer copies
+ while (true)
+ {
+ int lineAugment = 0;
+ int columnAugment = 0;
+ int i;
+
loop:
- for (i = readBufferPos; i < readBufferLength; i++) {
- switch (c = readBuffer [i]) {
- case '\n':
- lineAugment++;
- columnAugment = 0;
- // pureWhite unmodified
- break;
- case '\r': // should not happen!!
- case '\t':
- case ' ':
- // pureWhite unmodified
- columnAugment++;
- break;
- case '&':
- case '<':
- columnAugment++;
- // pureWhite unmodified
- // CLEAN end of text sequence
- state = 1;
- break loop;
- case ']':
- // that's not a whitespace char, and
- // can not terminate pure whitespace either
- pureWhite = false;
- if ((i + 2) < readBufferLength) {
- if (readBuffer [i + 1] == ']'
- && readBuffer [i + 2] == '>') {
- // ERROR end of text sequence
- state = 2;
- break loop;
- }
- } else {
- // FIXME missing two end-of-buffer cases
- }
- columnAugment++;
- break;
- default:
- if ((c < 0x0020 || c > 0xFFFD)
- || ((c >= 0x007f) && (c <= 0x009f) && (c != 0x0085)
- && xmlVersion == XML_11))
- error ("illegal XML character U+"
- + Integer.toHexString (c));
- // that's not a whitespace char
- pureWhite = false;
- columnAugment++;
- }
- }
-
- // report text thus far
- if (lineAugment > 0) {
- line += lineAugment;
- column = columnAugment;
- } else {
- column += columnAugment;
- }
-
- // report characters/whitspace
- int length = i - readBufferPos;
-
- if (length != 0) {
- if (pureWhite)
- handler.ignorableWhitespace (readBuffer,
- readBufferPos, length);
- else
- handler.charData (readBuffer, readBufferPos, length);
- readBufferPos = i;
- }
-
- if (state != 0)
- break;
-
- // fill next buffer from this entity, or
- // pop stack and continue with previous entity
- unread (readCh ());
- }
- if (!pureWhite)
- isDirtyCurrentElement = true;
- // finish, maybe with error
- if (state != 1) // finish, no error
- error ("character data may not contain ']]>'");
- }
-
-
- //////////////////////////////////////////////////////////////////////
- // High-level reading and scanning methods.
- //////////////////////////////////////////////////////////////////////
-
- /**
- * Require whitespace characters.
- */
- private void requireWhitespace ()
+ for (i = readBufferPos; i < readBufferLength; i++)
+ {
+ switch (c = readBuffer[i])
+ {
+ case '\n':
+ lineAugment++;
+ columnAugment = 0;
+ // pureWhite unmodified
+ break;
+ case '\r': // should not happen!!
+ case '\t':
+ case ' ':
+ // pureWhite unmodified
+ columnAugment++;
+ break;
+ case '&':
+ case '<':
+ columnAugment++;
+ // pureWhite unmodified
+ // CLEAN end of text sequence
+ state = 1;
+ break loop;
+ case ']':
+ // that's not a whitespace char, and
+ // can not terminate pure whitespace either
+ pureWhite = false;
+ if ((i + 2) < readBufferLength)
+ {
+ if (readBuffer [i + 1] == ']'
+ && readBuffer [i + 2] == '>')
+ {
+ // ERROR end of text sequence
+ state = 2;
+ break loop;
+ }
+ }
+ else
+ {
+ // FIXME missing two end-of-buffer cases
+ }
+ columnAugment++;
+ break;
+ default:
+ if ((c < 0x0020 || c > 0xFFFD)
+ || ((c >= 0x007f) && (c <= 0x009f) && (c != 0x0085)
+ && xmlVersion == XML_11))
+ {
+ error("illegal XML character U+"
+ + Integer.toHexString(c));
+ }
+ // that's not a whitespace char
+ pureWhite = false;
+ columnAugment++;
+ }
+ }
+
+ // report text thus far
+ if (lineAugment > 0)
+ {
+ line += lineAugment;
+ column = columnAugment;
+ }
+ else
+ {
+ column += columnAugment;
+ }
+
+ // report characters/whitspace
+ int length = i - readBufferPos;
+
+ if (length != 0)
+ {
+ if (pureWhite)
+ {
+ handler.ignorableWhitespace(readBuffer,
+ readBufferPos, length);
+ }
+ else
+ {
+ handler.charData(readBuffer, readBufferPos, length);
+ }
+ readBufferPos = i;
+ }
+
+ if (state != 0)
+ {
+ break;
+ }
+
+ // fill next buffer from this entity, or
+ // pop stack and continue with previous entity
+ unread(readCh());
+ }
+ if (!pureWhite)
+ {
+ isDirtyCurrentElement = true;
+ }
+ // finish, maybe with error
+ if (state != 1) // finish, no error
+ {
+ error("character data may not contain ']]>'");
+ }
+ }
+
+ //////////////////////////////////////////////////////////////////////
+ // High-level reading and scanning methods.
+ //////////////////////////////////////////////////////////////////////
+
+ /**
+ * Require whitespace characters.
+ */
+ private void requireWhitespace()
throws SAXException, IOException
- {
- char c = readCh ();
- if (isWhitespace (c)) {
- skipWhitespace ();
- } else {
- error ("whitespace required", c, null);
- }
- }
-
+ {
+ char c = readCh();
+ if (isWhitespace(c))
+ {
+ skipWhitespace();
+ }
+ else
+ {
+ error("whitespace required", c, null);
+ }
+ }
- /**
- * Skip whitespace characters.
- * <pre>
- * [3] S ::= (#x20 | #x9 | #xd | #xa)+
- * </pre>
- */
- private void skipWhitespace ()
+ /**
+ * Skip whitespace characters.
+ * <pre>
+ * [3] S ::= (#x20 | #x9 | #xd | #xa)+
+ * </pre>
+ */
+ private void skipWhitespace()
throws SAXException, IOException
- {
- // Start with a little cheat. Most of
- // the time, the white space will fall
- // within the current read buffer; if
- // not, then fall through.
- if (USE_CHEATS) {
- int lineAugment = 0;
- int columnAugment = 0;
-
+ {
+ // Start with a little cheat. Most of
+ // the time, the white space will fall
+ // within the current read buffer; if
+ // not, then fall through.
+ if (USE_CHEATS)
+ {
+ int lineAugment = 0;
+ int columnAugment = 0;
+
loop:
- for (int i = readBufferPos; i < readBufferLength; i++) {
- switch (readBuffer [i]) {
- case ' ':
- case '\t':
- case '\r':
- columnAugment++;
- break;
- case '\n':
- lineAugment++;
- columnAugment = 0;
- break;
- case '%':
- if (expandPE)
- break loop;
- // else fall through...
- default:
- readBufferPos = i;
- if (lineAugment > 0) {
- line += lineAugment;
- column = columnAugment;
- } else {
- column += columnAugment;
- }
- return;
- }
- }
- }
-
- // OK, do it the slow way.
- char c = readCh ();
- while (isWhitespace (c)) {
- c = readCh ();
- }
- unread (c);
- }
-
-
- /**
- * Read a name or (when parsing an enumeration) name token.
- * <pre>
- * [5] Name ::= (Letter | '_' | ':') (NameChar)*
- * [7] Nmtoken ::= (NameChar)+
- * </pre>
- */
- private String readNmtoken (boolean isName)
+ for (int i = readBufferPos; i < readBufferLength; i++)
+ {
+ switch (readBuffer[i])
+ {
+ case ' ':
+ case '\t':
+ case '\r':
+ columnAugment++;
+ break;
+ case '\n':
+ lineAugment++;
+ columnAugment = 0;
+ break;
+ case '%':
+ if (expandPE)
+ {
+ break loop;
+ }
+ // else fall through...
+ default:
+ readBufferPos = i;
+ if (lineAugment > 0)
+ {
+ line += lineAugment;
+ column = columnAugment;
+ }
+ else
+ {
+ column += columnAugment;
+ }
+ return;
+ }
+ }
+ }
+
+ // OK, do it the slow way.
+ char c = readCh ();
+ while (isWhitespace(c))
+ {
+ c = readCh();
+ }
+ unread(c);
+ }
+
+ /**
+ * Read a name or (when parsing an enumeration) name token.
+ * <pre>
+ * [5] Name ::= (Letter | '_' | ':') (NameChar)*
+ * [7] Nmtoken ::= (NameChar)+
+ * </pre>
+ */
+ private String readNmtoken(boolean isName)
throws SAXException, IOException
- {
- char c;
-
- if (USE_CHEATS) {
-loop:
- for (int i = readBufferPos; i < readBufferLength; i++) {
- c = readBuffer [i];
- switch (c) {
- case '%':
- if (expandPE)
- break loop;
- // else fall through...
-
- // What may legitimately come AFTER a name/nmtoken?
- case '<': case '>': case '&':
- case ',': case '|': case '*': case '+': case '?':
- case ')':
- case '=':
- case '\'': case '"':
- case '[':
- case ' ': case '\t': case '\r': case '\n':
- case ';':
- case '/':
- int start = readBufferPos;
- if (i == start)
- error ("name expected", readBuffer [i], null);
- readBufferPos = i;
- return intern (readBuffer, start, i - start);
-
- default:
-// FIXME ... per IBM's OASIS test submission, these:
-// ? U+06dd
-// Combining U+309B
- //these switches are kind of ugly but at least we won't
- //have to go over the whole lits for each char
- if (isName && i == readBufferPos){
- char c2 = (char) (c & 0x00f0);
- switch (c & 0xff00){
- //starting with 01
- case 0x0100:
- switch (c2){
- case 0x0030:
- if (c == 0x0132 || c == 0x0133 || c == 0x013f)
- error ("Not a name start character, U+"
- + Integer.toHexString (c));
- break;
- case 0x0040:
- if (c == 0x0140 || c == 0x0149)
- error ("Not a name start character, U+"
- + Integer.toHexString (c));
- break;
- case 0x00c0:
- if (c == 0x01c4 || c == 0x01cc)
- error ("Not a name start character, U+"
- + Integer.toHexString (c));
- break;
- case 0x00f0:
- if (c == 0x01f1 || c == 0x01f3)
- error ("Not a name start character, U+"
- + Integer.toHexString (c));
- break;
- case 0x00b0:
- if (c == 0x01f1 || c == 0x01f3)
- error ("Not a name start character, U+"
- + Integer.toHexString (c));
- break;
- default:
- if (c == 0x017f)
- error ("Not a name start character, U+"
- + Integer.toHexString (c));
- }
-
- break;
- //starting with 11
- case 0x1100:
- switch (c2){
- case 0x0000:
- if (c == 0x1104 || c == 0x1108 ||
- c == 0x110a || c == 0x110d)
- error ("Not a name start character, U+"
- + Integer.toHexString (c));
- break;
- case 0x0030:
- if (c == 0x113b || c == 0x113f)
- error ("Not a name start character, U+"
- + Integer.toHexString (c));
- break;
- case 0x0040:
- if (c == 0x1141 || c == 0x114d
- || c == 0x114f )
- error ("Not a name start character, U+"
- + Integer.toHexString (c));
- break;
- case 0x0050:
- if (c == 0x1151 || c == 0x1156)
- error ("Not a name start character, U+"
- + Integer.toHexString (c));
- break;
- case 0x0060:
- if (c == 0x1162 || c == 0x1164
- || c == 0x1166 || c == 0x116b
- || c == 0x116f)
- error ("Not a name start character, U+"
- + Integer.toHexString (c));
- break;
- case 0x00b0:
- if (c == 0x11b6 || c == 0x11b9
- || c == 0x11bb || c == 0x116f)
- error ("Not a name start character, U+"
- + Integer.toHexString (c));
- break;
- default:
- if (c == 0x1174 || c == 0x119f
- || c == 0x11ac || c == 0x11c3
- || c == 0x11f1)
- error ("Not a name start character, U+"
- + Integer.toHexString (c));
- }
- break;
- default:
- if (c == 0x0e46 || c == 0x1011
- || c == 0x212f || c == 0x0587
- || c == 0x0230 )
- error ("Not a name start character, U+"
- + Integer.toHexString (c));
- }
- }
- // punt on exact tests from Appendix A; approximate
- // them using the Unicode ID start/part rules
- if (i == readBufferPos && isName) {
- if (!Character.isUnicodeIdentifierStart (c)
- && c != ':' && c != '_')
- error ("Not a name start character, U+"
- + Integer.toHexString (c));
- } else if (!Character.isUnicodeIdentifierPart (c)
- && c != '-' && c != ':' && c != '_' && c != '.'
- && !isExtender (c))
- error ("Not a name character, U+"
- + Integer.toHexString (c));
- }
- }
- }
-
- nameBufferPos = 0;
-
- // Read the first character.
+ {
+ char c;
+
+ if (USE_CHEATS)
+ {
loop:
- while (true) {
- c = readCh ();
- switch (c) {
- case '%':
- case '<': case '>': case '&':
- case ',': case '|': case '*': case '+': case '?':
- case ')':
- case '=':
- case '\'': case '"':
- case '[':
- case ' ': case '\t': case '\n': case '\r':
- case ';':
- case '/':
- unread (c);
- if (nameBufferPos == 0) {
- error ("name expected");
- }
- // punt on exact tests from Appendix A, but approximate them
- if (isName
- && !Character.isUnicodeIdentifierStart (
- nameBuffer [0])
- && ":_".indexOf (nameBuffer [0]) == -1)
- error ("Not a name start character, U+"
- + Integer.toHexString (nameBuffer [0]));
- String s = intern (nameBuffer, 0, nameBufferPos);
- nameBufferPos = 0;
- return s;
- default:
- // punt on exact tests from Appendix A, but approximate them
-
- if ((nameBufferPos != 0 || !isName)
- && !Character.isUnicodeIdentifierPart (c)
- && ":-_.".indexOf (c) == -1
- && !isExtender (c))
- error ("Not a name character, U+"
- + Integer.toHexString (c));
- if (nameBufferPos >= nameBuffer.length)
- nameBuffer =
- (char[]) extendArray (nameBuffer,
- nameBuffer.length, nameBufferPos);
- nameBuffer [nameBufferPos++] = c;
- }
- }
- }
-
- private static boolean isExtender (char c)
- {
- // [88] Extender ::= ...
- return c == 0x00b7 || c == 0x02d0 || c == 0x02d1 || c == 0x0387
- || c == 0x0640 || c == 0x0e46 || c == 0x0ec6 || c == 0x3005
- || (c >= 0x3031 && c <= 0x3035)
- || (c >= 0x309d && c <= 0x309e)
- || (c >= 0x30fc && c <= 0x30fe);
- }
+ for (int i = readBufferPos; i < readBufferLength; i++)
+ {
+ c = readBuffer[i];
+ switch (c)
+ {
+ case '%':
+ if (expandPE)
+ {
+ break loop;
+ }
+ // else fall through...
+
+ // What may legitimately come AFTER a name/nmtoken?
+ case '<': case '>': case '&':
+ case ',': case '|': case '*': case '+': case '?':
+ case ')':
+ case '=':
+ case '\'': case '"':
+ case '[':
+ case ' ': case '\t': case '\r': case '\n':
+ case ';':
+ case '/':
+ int start = readBufferPos;
+ if (i == start)
+ {
+ error("name expected", readBuffer[i], null);
+ }
+ readBufferPos = i;
+ return intern(readBuffer, start, i - start);
+
+ default:
+ // FIXME ... per IBM's OASIS test submission, these:
+ // ? U+06dd
+ // Combining U+309B
+ //these switches are kind of ugly but at least we won't
+ //have to go over the whole lits for each char
+ if (isName && i == readBufferPos)
+ {
+ char c2 = (char) (c & 0x00f0);
+ switch (c & 0xff00)
+ {
+ //starting with 01
+ case 0x0100:
+ switch (c2)
+ {
+ case 0x0030:
+ if (c == 0x0132 || c == 0x0133 || c == 0x013f)
+ {
+ error("Not a name start character, U+"
+ + Integer.toHexString(c));
+ }
+ break;
+ case 0x0040:
+ if (c == 0x0140 || c == 0x0149)
+ {
+ error("Not a name start character, U+"
+ + Integer.toHexString(c));
+ }
+ break;
+ case 0x00c0:
+ if (c == 0x01c4 || c == 0x01cc)
+ {
+ error("Not a name start character, U+"
+ + Integer.toHexString(c));
+ }
+ break;
+ case 0x00f0:
+ if (c == 0x01f1 || c == 0x01f3)
+ {
+ error("Not a name start character, U+"
+ + Integer.toHexString(c));
+ }
+ break;
+ case 0x00b0:
+ if (c == 0x01f1 || c == 0x01f3)
+ {
+ error("Not a name start character, U+"
+ + Integer.toHexString(c));
+ }
+ break;
+ default:
+ if (c == 0x017f)
+ {
+ error("Not a name start character, U+"
+ + Integer.toHexString(c));
+ }
+ }
+
+ break;
+ //starting with 11
+ case 0x1100:
+ switch (c2)
+ {
+ case 0x0000:
+ if (c == 0x1104 || c == 0x1108 ||
+ c == 0x110a || c == 0x110d)
+ {
+ error("Not a name start character, U+"
+ + Integer.toHexString(c));
+ }
+ break;
+ case 0x0030:
+ if (c == 0x113b || c == 0x113f)
+ {
+ error("Not a name start character, U+"
+ + Integer.toHexString(c));
+ }
+ break;
+ case 0x0040:
+ if (c == 0x1141 || c == 0x114d
+ || c == 0x114f )
+ {
+ error("Not a name start character, U+"
+ + Integer.toHexString(c));
+ }
+ break;
+ case 0x0050:
+ if (c == 0x1151 || c == 0x1156)
+ {
+ error("Not a name start character, U+"
+ + Integer.toHexString(c));
+ }
+ break;
+ case 0x0060:
+ if (c == 0x1162 || c == 0x1164
+ || c == 0x1166 || c == 0x116b
+ || c == 0x116f)
+ {
+ error("Not a name start character, U+"
+ + Integer.toHexString(c));
+ }
+ break;
+ case 0x00b0:
+ if (c == 0x11b6 || c == 0x11b9
+ || c == 0x11bb || c == 0x116f)
+ {
+ error("Not a name start character, U+"
+ + Integer.toHexString(c));
+ }
+ break;
+ default:
+ if (c == 0x1174 || c == 0x119f
+ || c == 0x11ac || c == 0x11c3
+ || c == 0x11f1)
+ {
+ error("Not a name start character, U+"
+ + Integer.toHexString(c));
+ }
+ }
+ break;
+ default:
+ if (c == 0x0e46 || c == 0x1011
+ || c == 0x212f || c == 0x0587
+ || c == 0x0230 )
+ {
+ error("Not a name start character, U+"
+ + Integer.toHexString(c));
+ }
+ }
+ }
+ // punt on exact tests from Appendix A; approximate
+ // them using the Unicode ID start/part rules
+ if (i == readBufferPos && isName)
+ {
+ if (!Character.isUnicodeIdentifierStart(c)
+ && c != ':' && c != '_')
+ {
+ error("Not a name start character, U+"
+ + Integer.toHexString(c));
+ }
+ }
+ else if (!Character.isUnicodeIdentifierPart(c)
+ && c != '-' && c != ':' && c != '_' && c != '.'
+ && !isExtender(c))
+ {
+ error("Not a name character, U+"
+ + Integer.toHexString(c));
+ }
+ }
+ }
+ }
+
+ nameBufferPos = 0;
+ // Read the first character.
+loop:
+ while (true)
+ {
+ c = readCh();
+ switch (c)
+ {
+ case '%':
+ case '<': case '>': case '&':
+ case ',': case '|': case '*': case '+': case '?':
+ case ')':
+ case '=':
+ case '\'': case '"':
+ case '[':
+ case ' ': case '\t': case '\n': case '\r':
+ case ';':
+ case '/':
+ unread(c);
+ if (nameBufferPos == 0)
+ {
+ error ("name expected");
+ }
+ // punt on exact tests from Appendix A, but approximate them
+ if (isName
+ && !Character.isUnicodeIdentifierStart(nameBuffer[0])
+ && ":_".indexOf(nameBuffer[0]) == -1)
+ {
+ error("Not a name start character, U+"
+ + Integer.toHexString(nameBuffer[0]));
+ }
+ String s = intern(nameBuffer, 0, nameBufferPos);
+ nameBufferPos = 0;
+ return s;
+ default:
+ // punt on exact tests from Appendix A, but approximate them
+
+ if ((nameBufferPos != 0 || !isName)
+ && !Character.isUnicodeIdentifierPart(c)
+ && ":-_.".indexOf(c) == -1
+ && !isExtender(c))
+ {
+ error("Not a name character, U+"
+ + Integer.toHexString(c));
+ }
+ if (nameBufferPos >= nameBuffer.length)
+ {
+ nameBuffer =
+ (char[]) extendArray(nameBuffer,
+ nameBuffer.length, nameBufferPos);
+ }
+ nameBuffer[nameBufferPos++] = c;
+ }
+ }
+ }
+
+ private static boolean isExtender(char c)
+ {
+ // [88] Extender ::= ...
+ return c == 0x00b7 || c == 0x02d0 || c == 0x02d1 || c == 0x0387
+ || c == 0x0640 || c == 0x0e46 || c == 0x0ec6 || c == 0x3005
+ || (c >= 0x3031 && c <= 0x3035)
+ || (c >= 0x309d && c <= 0x309e)
+ || (c >= 0x30fc && c <= 0x30fe);
+ }
- /**
- * Read a literal. With matching single or double quotes as
- * delimiters (and not embedded!) this is used to parse:
- * <pre>
- * [9] EntityValue ::= ... ([^%&amp;] | PEReference | Reference)* ...
- * [10] AttValue ::= ... ([^<&] | Reference)* ...
- * [11] SystemLiteral ::= ... (URLchar - "'")* ...
- * [12] PubidLiteral ::= ... (PubidChar - "'")* ...
- * </pre>
- * as well as the quoted strings in XML and text declarations
- * (for version, encoding, and standalone) which have their
- * own constraints.
- */
- private String readLiteral (int flags)
+ /**
+ * Read a literal. With matching single or double quotes as
+ * delimiters (and not embedded!) this is used to parse:
+ * <pre>
+ * [9] EntityValue ::= ... ([^%&amp;] | PEReference | Reference)* ...
+ * [10] AttValue ::= ... ([^<&] | Reference)* ...
+ * [11] SystemLiteral ::= ... (URLchar - "'")* ...
+ * [12] PubidLiteral ::= ... (PubidChar - "'")* ...
+ * </pre>
+ * as well as the quoted strings in XML and text declarations
+ * (for version, encoding, and standalone) which have their
+ * own constraints.
+ */
+ private String readLiteral(int flags)
throws SAXException, IOException
- {
- char delim, c;
- int startLine = line;
- boolean saved = expandPE;
- boolean savedReport = doReport;
-
- // Find the first delimiter.
- delim = readCh ();
- if (delim != '"' && delim != '\'') {
- error ("expected '\"' or \"'\"", delim, null);
- return null;
- }
- inLiteral = true;
- if ((flags & LIT_DISABLE_PE) != 0)
- expandPE = false;
- doReport = false;
-
- // Each level of input source has its own buffer; remember
- // ours, so we won't read the ending delimiter from any
- // other input source, regardless of entity processing.
- char ourBuf [] = readBuffer;
-
- // Read the literal.
- try {
- c = readCh ();
- boolean ampRead = false;
+ {
+ char delim, c;
+ int startLine = line;
+ boolean saved = expandPE;
+ boolean savedReport = doReport;
+
+ // Find the first delimiter.
+ delim = readCh();
+ if (delim != '"' && delim != '\'')
+ {
+ error("expected '\"' or \"'\"", delim, null);
+ return null;
+ }
+ inLiteral = true;
+ if ((flags & LIT_DISABLE_PE) != 0)
+ {
+ expandPE = false;
+ }
+ doReport = false;
+
+ // Each level of input source has its own buffer; remember
+ // ours, so we won't read the ending delimiter from any
+ // other input source, regardless of entity processing.
+ char[] ourBuf = readBuffer;
+
+ // Read the literal.
+ try
+ {
+ c = readCh();
+ boolean ampRead = false;
loop:
- while (! (c == delim && readBuffer == ourBuf)) {
- switch (c) {
- // attributes and public ids are normalized
- // in almost the same ways
- case '\n':
- case '\r':
- if ((flags & (LIT_ATTRIBUTE | LIT_PUBID)) != 0)
- c = ' ';
- break;
- case '\t':
- if ((flags & LIT_ATTRIBUTE) != 0)
- c = ' ';
- break;
- case '&':
- c = readCh ();
- // Char refs are expanded immediately, except for
- // all the cases where it's deferred.
- if (c == '#') {
- if ((flags & LIT_DISABLE_CREF) != 0) {
- dataBufferAppend ('&');
- break;
- }
- parseCharRef (false /* Do not do flushDataBuffer */);
-
- // exotic WFness risk: this is an entity literal,
- // dataBuffer [dataBufferPos - 1] == '&', and
- // following chars are a _partial_ entity/char ref
-
- // It looks like an entity ref ...
- } else {
- unread (c);
- // Expand it?
- if ((flags & LIT_ENTITY_REF) > 0) {
- parseEntityRef (false);
- if (String.valueOf (readBuffer).equals("&#38;"))
- ampRead = true;
+ while (! (c == delim && readBuffer == ourBuf))
+ {
+ switch (c)
+ {
+ // attributes and public ids are normalized
+ // in almost the same ways
+ case '\n':
+ case '\r':
+ if ((flags & (LIT_ATTRIBUTE | LIT_PUBID)) != 0)
+ {
+ c = ' ';
+ }
+ break;
+ case '\t':
+ if ((flags & LIT_ATTRIBUTE) != 0)
+ {
+ c = ' ';
+ }
+ break;
+ case '&':
+ c = readCh();
+ // Char refs are expanded immediately, except for
+ // all the cases where it's deferred.
+ if (c == '#')
+ {
+ if ((flags & LIT_DISABLE_CREF) != 0)
+ {
+ dataBufferAppend('&');
+ break;
+ }
+ parseCharRef(false /* Do not do flushDataBuffer */);
+
+ // exotic WFness risk: this is an entity literal,
+ // dataBuffer [dataBufferPos - 1] == '&', and
+ // following chars are a _partial_ entity/char ref
+
+ // It looks like an entity ref ...
+ }
+ else
+ {
+ unread(c);
+ // Expand it?
+ if ((flags & LIT_ENTITY_REF) > 0)
+ {
+ parseEntityRef(false);
+ if (String.valueOf(readBuffer).equals("&#38;"))
+ {
+ ampRead = true;
+ }
//Is it just data?
- } else if ((flags & LIT_DISABLE_EREF) != 0) {
- dataBufferAppend ('&');
-
- // OK, it will be an entity ref -- expanded later.
- } else {
- String name = readNmtoken (true);
- require (';');
- dataBufferAppend ('&');
- dataBufferAppend (name);
- dataBufferAppend (';');
- }
- }
- c = readCh ();
- continue loop;
-
- case '<':
- // and why? Perhaps so "&foo;" expands the same
- // inside and outside an attribute?
- if ((flags & LIT_ATTRIBUTE) != 0)
- error ("attribute values may not contain '<'");
- break;
-
- // We don't worry about case '%' and PE refs, readCh does.
-
- default:
- break;
- }
- dataBufferAppend (c);
- c = readCh ();
- }
- } catch (EOFException e) {
- error ("end of input while looking for delimiter (started on line "
- + startLine + ')', null, new Character (delim).toString ());
- }
- inLiteral = false;
- expandPE = saved;
- doReport = savedReport;
-
- // Normalise whitespace if necessary.
- if ((flags & LIT_NORMALIZE) > 0) {
- dataBufferNormalize ();
- }
-
- // Return the value.
- return dataBufferToString ();
- }
-
-
- /**
- * Try reading external identifiers.
- * A system identifier is not required for notations.
- * @param inNotation Are we parsing a notation decl?
- * @param isSubset Parsing external subset decl (may be omitted)?
- * @return A three-member String array containing the identifiers,
- * or nulls. Order: public, system, baseURI.
- */
- private String[] readExternalIds (boolean inNotation, boolean isSubset)
+ }
+ else if ((flags & LIT_DISABLE_EREF) != 0)
+ {
+ dataBufferAppend('&');
+
+ // OK, it will be an entity ref -- expanded later.
+ }
+ else
+ {
+ String name = readNmtoken(true);
+ require(';');
+ dataBufferAppend('&');
+ dataBufferAppend(name);
+ dataBufferAppend(';');
+ }
+ }
+ c = readCh();
+ continue loop;
+
+ case '<':
+ // and why? Perhaps so "&foo;" expands the same
+ // inside and outside an attribute?
+ if ((flags & LIT_ATTRIBUTE) != 0)
+ {
+ error("attribute values may not contain '<'");
+ }
+ break;
+
+ // We don't worry about case '%' and PE refs, readCh does.
+
+ default:
+ break;
+ }
+ dataBufferAppend(c);
+ c = readCh();
+ }
+ }
+ catch (EOFException e)
+ {
+ error("end of input while looking for delimiter (started on line "
+ + startLine + ')', null, new Character(delim).toString());
+ }
+ inLiteral = false;
+ expandPE = saved;
+ doReport = savedReport;
+
+ // Normalise whitespace if necessary.
+ if ((flags & LIT_NORMALIZE) > 0)
+ {
+ dataBufferNormalize();
+ }
+
+ // Return the value.
+ return dataBufferToString();
+ }
+
+ /**
+ * Try reading external identifiers.
+ * A system identifier is not required for notations.
+ * @param inNotation Are we parsing a notation decl?
+ * @param isSubset Parsing external subset decl (may be omitted)?
+ * @return A three-member String array containing the identifiers,
+ * or nulls. Order: public, system, baseURI.
+ */
+ private ExternalIdentifiers readExternalIds(boolean inNotation,
+ boolean isSubset)
throws Exception
- {
- char c;
- String ids[] = new String [3];
- int flags = LIT_DISABLE_CREF | LIT_DISABLE_PE | LIT_DISABLE_EREF;
-
- if (tryRead ("PUBLIC")) {
- requireWhitespace ();
- ids [0] = readLiteral (LIT_NORMALIZE | LIT_PUBID | flags);
- if (inNotation) {
- skipWhitespace ();
- c = readCh ();
- unread (c);
- if (c == '"' || c == '\'') {
- ids [1] = readLiteral (flags);
- }
- } else {
- requireWhitespace ();
- ids [1] = readLiteral (flags);
- }
-
- for (int i = 0; i < ids [0].length (); i++) {
- c = ids [0].charAt (i);
- if (c >= 'a' && c <= 'z')
- continue;
- if (c >= 'A' && c <= 'Z')
- continue;
- if (" \r\n0123456789-' ()+,./:=?;!*#@$_%".indexOf (c) != -1)
- continue;
- error ("illegal PUBLIC id character U+"
- + Integer.toHexString (c));
- }
- } else if (tryRead ("SYSTEM")) {
- requireWhitespace ();
- ids [1] = readLiteral (flags);
- } else if (!isSubset)
- error ("missing SYSTEM or PUBLIC keyword");
-
- if (ids [1] != null) {
- if (ids [1].indexOf ('#') != -1)
- handler.verror ("SYSTEM id has a URI fragment: " + ids [1]);
- ids [2] = handler.getSystemId ();
- if (ids [2] == null)
- handler.warn ("No base URI; hope URI is absolute: "
- + ids [1]);
- }
-
- return ids;
- }
-
-
- /**
- * Test if a character is whitespace.
- * <pre>
- * [3] S ::= (#x20 | #x9 | #xd | #xa)+
- * </pre>
- * @param c The character to test.
- * @return true if the character is whitespace.
- */
- private final boolean isWhitespace (char c)
- {
- if (c > 0x20)
- return false;
- if (c == 0x20 || c == 0x0a || c == 0x09 || c == 0x0d)
- return true;
- return false; // illegal ...
- }
-
-
- //////////////////////////////////////////////////////////////////////
- // Utility routines.
- //////////////////////////////////////////////////////////////////////
-
-
- /**
- * Add a character to the data buffer.
- */
- private void dataBufferAppend (char c)
- {
- // Expand buffer if necessary.
- if (dataBufferPos >= dataBuffer.length)
- dataBuffer =
- (char[]) extendArray (dataBuffer,
- dataBuffer.length, dataBufferPos);
- dataBuffer [dataBufferPos++] = c;
- }
-
-
- /**
- * Add a string to the data buffer.
- */
- private void dataBufferAppend (String s)
- {
- dataBufferAppend (s.toCharArray (), 0, s.length ());
- }
-
+ {
+ char c;
+ ExternalIdentifiers ids = new ExternalIdentifiers();
+ int flags = LIT_DISABLE_CREF | LIT_DISABLE_PE | LIT_DISABLE_EREF;
+
+ if (tryRead("PUBLIC"))
+ {
+ requireWhitespace();
+ ids.publicId = readLiteral(LIT_NORMALIZE | LIT_PUBID | flags);
+ if (inNotation)
+ {
+ skipWhitespace();
+ c = readCh();
+ unread(c);
+ if (c == '"' || c == '\'')
+ {
+ ids.systemId = readLiteral(flags);
+ }
+ }
+ else
+ {
+ requireWhitespace();
+ ids.systemId = readLiteral(flags);
+ }
+
+ for (int i = 0; i < ids.publicId.length(); i++)
+ {
+ c = ids.publicId.charAt(i);
+ if (c >= 'a' && c <= 'z')
+ {
+ continue;
+ }
+ if (c >= 'A' && c <= 'Z')
+ {
+ continue;
+ }
+ if (" \r\n0123456789-' ()+,./:=?;!*#@$_%".indexOf(c) != -1)
+ {
+ continue;
+ }
+ error("illegal PUBLIC id character U+"
+ + Integer.toHexString(c));
+ }
+ }
+ else if (tryRead("SYSTEM"))
+ {
+ requireWhitespace();
+ ids.systemId = readLiteral(flags);
+ }
+ else if (!isSubset)
+ {
+ error("missing SYSTEM or PUBLIC keyword");
+ }
+
+ if (ids.systemId != null)
+ {
+ if (ids.systemId.indexOf('#') != -1)
+ {
+ handler.verror("SYSTEM id has an URI fragment: " + ids.systemId);
+ }
+ ids.baseUri = handler.getSystemId();
+ if (ids.baseUri == null && uriWarnings)
+ {
+ handler.warn("No base URI; hope URI is absolute: "
+ + ids.systemId);
+ }
+ }
+
+ return ids;
+ }
- /**
- * Append (part of) a character array to the data buffer.
- */
- private void dataBufferAppend (char ch[], int start, int length)
- {
- dataBuffer = (char[])
- extendArray (dataBuffer, dataBuffer.length,
- dataBufferPos + length);
+ /**
+ * Test if a character is whitespace.
+ * <pre>
+ * [3] S ::= (#x20 | #x9 | #xd | #xa)+
+ * </pre>
+ * @param c The character to test.
+ * @return true if the character is whitespace.
+ */
+ private final boolean isWhitespace(char c)
+ {
+ if (c > 0x20)
+ {
+ return false;
+ }
+ if (c == 0x20 || c == 0x0a || c == 0x09 || c == 0x0d)
+ {
+ return true;
+ }
+ return false; // illegal ...
+ }
- System.arraycopy (ch, start, dataBuffer, dataBufferPos, length);
- dataBufferPos += length;
- }
+ //////////////////////////////////////////////////////////////////////
+ // Utility routines.
+ //////////////////////////////////////////////////////////////////////
+
+ /**
+ * Add a character to the data buffer.
+ */
+ private void dataBufferAppend(char c)
+ {
+ // Expand buffer if necessary.
+ if (dataBufferPos >= dataBuffer.length)
+ {
+ dataBuffer = (char[]) extendArray(dataBuffer,
+ dataBuffer.length, dataBufferPos);
+ }
+ dataBuffer[dataBufferPos++] = c;
+ }
+ /**
+ * Add a string to the data buffer.
+ */
+ private void dataBufferAppend(String s)
+ {
+ dataBufferAppend(s.toCharArray(), 0, s.length());
+ }
- /**
- * Normalise space characters in the data buffer.
- */
- private void dataBufferNormalize ()
- {
- int i = 0;
- int j = 0;
- int end = dataBufferPos;
-
- // Skip spaces at the start.
- while (j < end && dataBuffer [j] == ' ') {
- j++;
- }
-
- // Skip whitespace at the end.
- while (end > j && dataBuffer [end - 1] == ' ') {
- end --;
- }
-
- // Start copying to the left.
- while (j < end) {
-
- char c = dataBuffer [j++];
-
- // Normalise all other spaces to
- // a single space.
- if (c == ' ') {
- while (j < end && dataBuffer [j++] == ' ')
- continue;
- dataBuffer [i++] = ' ';
- dataBuffer [i++] = dataBuffer [j - 1];
- } else {
- dataBuffer [i++] = c;
- }
- }
-
- // The new length is <= the old one.
- dataBufferPos = i;
- }
+ /**
+ * Append (part of) a character array to the data buffer.
+ */
+ private void dataBufferAppend(char[] ch, int start, int length)
+ {
+ dataBuffer = (char[]) extendArray(dataBuffer, dataBuffer.length,
+ dataBufferPos + length);
+
+ System.arraycopy(ch, start, dataBuffer, dataBufferPos, length);
+ dataBufferPos += length;
+ }
+ /**
+ * Normalise space characters in the data buffer.
+ */
+ private void dataBufferNormalize()
+ {
+ int i = 0;
+ int j = 0;
+ int end = dataBufferPos;
+
+ // Skip spaces at the start.
+ while (j < end && dataBuffer[j] == ' ')
+ {
+ j++;
+ }
+
+ // Skip whitespace at the end.
+ while (end > j && dataBuffer[end - 1] == ' ')
+ {
+ end --;
+ }
- /**
- * Convert the data buffer to a string.
- */
- private String dataBufferToString ()
- {
- String s = new String (dataBuffer, 0, dataBufferPos);
- dataBufferPos = 0;
- return s;
- }
+ // Start copying to the left.
+ while (j < end)
+ {
+
+ char c = dataBuffer[j++];
+
+ // Normalise all other spaces to
+ // a single space.
+ if (c == ' ')
+ {
+ while (j < end && dataBuffer[j++] == ' ')
+ {
+ continue;
+ }
+ dataBuffer[i++] = ' ';
+ dataBuffer[i++] = dataBuffer[j - 1];
+ }
+ else
+ {
+ dataBuffer[i++] = c;
+ }
+ }
+
+ // The new length is <= the old one.
+ dataBufferPos = i;
+ }
+ /**
+ * Convert the data buffer to a string.
+ */
+ private String dataBufferToString()
+ {
+ String s = new String(dataBuffer, 0, dataBufferPos);
+ dataBufferPos = 0;
+ return s;
+ }
- /**
- * Flush the contents of the data buffer to the handler, as
- * appropriate, and reset the buffer for new input.
- */
- private void dataBufferFlush ()
+ /**
+ * Flush the contents of the data buffer to the handler, as
+ * appropriate, and reset the buffer for new input.
+ */
+ private void dataBufferFlush()
throws SAXException
- {
- if (currentElementContent == CONTENT_ELEMENTS
- && dataBufferPos > 0
- && !inCDATA
- ) {
- // We can't just trust the buffer to be whitespace, there
- // are (error) cases when it isn't
- for (int i = 0; i < dataBufferPos; i++) {
- if (!isWhitespace (dataBuffer [i])) {
- handler.charData (dataBuffer, 0, dataBufferPos);
- dataBufferPos = 0;
- }
- }
- if (dataBufferPos > 0) {
- handler.ignorableWhitespace (dataBuffer, 0, dataBufferPos);
- dataBufferPos = 0;
- }
- } else if (dataBufferPos > 0) {
- handler.charData (dataBuffer, 0, dataBufferPos);
- dataBufferPos = 0;
- }
- }
-
+ {
+ if (currentElementContent == CONTENT_ELEMENTS
+ && dataBufferPos > 0
+ && !inCDATA)
+ {
+ // We can't just trust the buffer to be whitespace, there
+ // are (error) cases when it isn't
+ for (int i = 0; i < dataBufferPos; i++)
+ {
+ if (!isWhitespace(dataBuffer[i]))
+ {
+ handler.charData(dataBuffer, 0, dataBufferPos);
+ dataBufferPos = 0;
+ }
+ }
+ if (dataBufferPos > 0)
+ {
+ handler.ignorableWhitespace(dataBuffer, 0, dataBufferPos);
+ dataBufferPos = 0;
+ }
+ }
+ else if (dataBufferPos > 0)
+ {
+ handler.charData(dataBuffer, 0, dataBufferPos);
+ dataBufferPos = 0;
+ }
+ }
- /**
- * Require a string to appear, or throw an exception.
- * <p><em>Precondition:</em> Entity expansion is not required.
- * <p><em>Precondition:</em> data buffer has no characters that
- * will get sent to the application.
- */
- private void require (String delim)
+ /**
+ * Require a string to appear, or throw an exception.
+ * <p><em>Precondition:</em> Entity expansion is not required.
+ * <p><em>Precondition:</em> data buffer has no characters that
+ * will get sent to the application.
+ */
+ private void require(String delim)
throws SAXException, IOException
- {
- int length = delim.length ();
- char ch [];
-
- if (length < dataBuffer.length) {
- ch = dataBuffer;
- delim.getChars (0, length, ch, 0);
- } else
- ch = delim.toCharArray ();
-
- if (USE_CHEATS
- && length <= (readBufferLength - readBufferPos)) {
- int offset = readBufferPos;
-
- for (int i = 0; i < length; i++, offset++)
- if (ch [i] != readBuffer [offset])
- error ("required string", null, delim);
- readBufferPos = offset;
-
- } else {
- for (int i = 0; i < length; i++)
- require (ch [i]);
- }
- }
-
+ {
+ int length = delim.length();
+ char[] ch;
+
+ if (length < dataBuffer.length)
+ {
+ ch = dataBuffer;
+ delim.getChars(0, length, ch, 0);
+ }
+ else
+ {
+ ch = delim.toCharArray();
+ }
+
+ if (USE_CHEATS && length <= (readBufferLength - readBufferPos))
+ {
+ int offset = readBufferPos;
+
+ for (int i = 0; i < length; i++, offset++)
+ {
+ if (ch[i] != readBuffer[offset])
+ {
+ error ("required string", null, delim);
+ }
+ }
+ readBufferPos = offset;
+
+ }
+ else
+ {
+ for (int i = 0; i < length; i++)
+ {
+ require(ch[i]);
+ }
+ }
+ }
- /**
- * Require a character to appear, or throw an exception.
- */
- private void require (char delim)
+ /**
+ * Require a character to appear, or throw an exception.
+ */
+ private void require(char delim)
throws SAXException, IOException
- {
- char c = readCh ();
-
- if (c != delim) {
- error ("required character", c, new Character (delim).toString ());
- }
- }
-
-
- /**
- * Create an interned string from a character array.
- * &AElig;lfred uses this method to create an interned version
- * of all names and name tokens, so that it can test equality
- * with <code>==</code> instead of <code>String.equals ()</code>.
- *
- * <p>This is much more efficient than constructing a non-interned
- * string first, and then interning it.
- *
- * @param ch an array of characters for building the string.
- * @param start the starting position in the array.
- * @param length the number of characters to place in the string.
- * @return an interned string.
- * @see #intern (String)
- * @see java.lang.String#intern
- */
- public String intern (char ch[], int start, int length)
- {
- int index = 0;
- int hash = 0;
- Object bucket [];
-
- // Generate a hash code. This is a widely used string hash,
- // often attributed to Brian Kernighan.
- for (int i = start; i < start + length; i++)
- hash = 31 * hash + ch [i];
- hash = (hash & 0x7fffffff) % SYMBOL_TABLE_LENGTH;
-
- // Get the bucket -- consists of {array,String} pairs
- if ((bucket = symbolTable [hash]) == null) {
- // first string in this bucket
- bucket = new Object [8];
-
- // Search for a matching tuple, and
- // return the string if we find one.
- } else {
- while (index < bucket.length) {
- char chFound [] = (char []) bucket [index];
-
- // Stop when we hit an empty entry.
- if (chFound == null)
- break;
-
- // If they're the same length, check for a match.
- if (chFound.length == length) {
- for (int i = 0; i < chFound.length; i++) {
- // continue search on failure
- if (ch [start + i] != chFound [i]) {
- break;
- } else if (i == length - 1) {
- // That's it, we have a match!
- return (String) bucket [index + 1];
- }
- }
- }
- index += 2;
- }
- // Not found -- we'll have to add it.
-
- // Do we have to grow the bucket?
- bucket = (Object []) extendArray (bucket, bucket.length, index);
- }
- symbolTable [hash] = bucket;
-
- // OK, add it to the end of the bucket -- "local" interning.
- // Intern "globally" to let applications share interning benefits.
- // That is, "!=" and "==" work on our strings, not just equals().
- String s = new String (ch, start, length).intern ();
- bucket [index] = s.toCharArray ();
- bucket [index + 1] = s;
- return s;
- }
-
- /**
- * Ensure the capacity of an array, allocating a new one if
- * necessary. Usually extends only for name hash collisions.
- */
- private Object extendArray (Object array, int currentSize, int requiredSize)
- {
- if (requiredSize < currentSize) {
- return array;
- } else {
- Object newArray = null;
- int newSize = currentSize * 2;
-
- if (newSize <= requiredSize)
- newSize = requiredSize + 1;
-
- if (array instanceof char[])
- newArray = new char [newSize];
- else if (array instanceof Object[])
- newArray = new Object [newSize];
- else
- throw new RuntimeException ();
-
- System.arraycopy (array, 0, newArray, 0, currentSize);
- return newArray;
- }
- }
-
-
- //////////////////////////////////////////////////////////////////////
- // XML query routines.
- //////////////////////////////////////////////////////////////////////
-
-
- boolean isStandalone () { return docIsStandalone; }
-
-
- //
- // Elements
- //
-
- private int getContentType (Object element [], int defaultType)
- {
- int retval;
-
- if (element == null)
- return defaultType;
- retval = ((Integer) element [0]).intValue ();
- if (retval == CONTENT_UNDECLARED)
- retval = defaultType;
- return retval;
- }
-
-
- /**
- * Look up the content type of an element.
- * @param name The element type name.
- * @return An integer constant representing the content type.
- * @see #CONTENT_UNDECLARED
- * @see #CONTENT_ANY
- * @see #CONTENT_EMPTY
- * @see #CONTENT_MIXED
- * @see #CONTENT_ELEMENTS
- */
- public int getElementContentType (String name)
- {
- Object element [] = (Object []) elementInfo.get (name);
- return getContentType (element, CONTENT_UNDECLARED);
- }
-
-
- /**
- * Register an element.
- * Array format:
- * [0] element type name
- * [1] content model (mixed, elements only)
- * [2] attribute hash table
- */
- private void setElement (
- String name,
- int contentType,
- String contentModel,
- Hashtable attributes
- ) throws SAXException
- {
- if (skippedPE)
- return;
-
- Object element [] = (Object []) elementInfo.get (name);
-
- // first <!ELEMENT ...> or <!ATTLIST ...> for this type?
- if (element == null) {
- element = new Object [3];
- element [0] = new Integer (contentType);
- element [1] = contentModel;
- element [2] = attributes;
- elementInfo.put (name, element);
- return;
- }
-
- // <!ELEMENT ...> declaration?
- if (contentType != CONTENT_UNDECLARED) {
- // ... following an associated <!ATTLIST ...>
- if (((Integer) element [0]).intValue () == CONTENT_UNDECLARED) {
- element [0] = new Integer (contentType);
- element [1] = contentModel;
- } else
- // VC: Unique Element Type Declaration
- handler.verror ("multiple declarations for element type: "
- + name);
- }
-
- // first <!ATTLIST ...>, before <!ELEMENT ...> ?
- else if (attributes != null)
- element [2] = attributes;
- }
-
-
- /**
- * Look up the attribute hash table for an element.
- * The hash table is the second item in the element array.
- */
- private Hashtable getElementAttributes (String name)
- {
- Object element[] = (Object[]) elementInfo.get (name);
- if (element == null)
- return null;
- else
- return (Hashtable) element [2];
- }
-
-
-
- //
- // Attributes
- //
+ {
+ char c = readCh();
+
+ if (c != delim)
+ {
+ error("required character", c, new Character(delim).toString());
+ }
+ }
+
+ /**
+ * Create an interned string from a character array.
+ * &AElig;lfred uses this method to create an interned version
+ * of all names and name tokens, so that it can test equality
+ * with <code>==</code> instead of <code>String.equals ()</code>.
+ *
+ * <p>This is much more efficient than constructing a non-interned
+ * string first, and then interning it.
+ *
+ * @param ch an array of characters for building the string.
+ * @param start the starting position in the array.
+ * @param length the number of characters to place in the string.
+ * @return an interned string.
+ * @see #intern (String)
+ * @see java.lang.String#intern
+ */
+ public String intern(char[] ch, int start, int length)
+ {
+ int index = 0;
+ int hash = 0;
+ Object[] bucket;
+
+ // Generate a hash code. This is a widely used string hash,
+ // often attributed to Brian Kernighan.
+ for (int i = start; i < start + length; i++)
+ {
+ hash = 31 * hash + ch[i];
+ }
+ hash = (hash & 0x7fffffff) % SYMBOL_TABLE_LENGTH;
+
+ // Get the bucket -- consists of {array,String} pairs
+ if ((bucket = symbolTable[hash]) == null)
+ {
+ // first string in this bucket
+ bucket = new Object[8];
+
+ // Search for a matching tuple, and
+ // return the string if we find one.
+ }
+ else
+ {
+ while (index < bucket.length)
+ {
+ char[] chFound = (char[]) bucket[index];
+
+ // Stop when we hit an empty entry.
+ if (chFound == null)
+ {
+ break;
+ }
+
+ // If they're the same length, check for a match.
+ if (chFound.length == length)
+ {
+ for (int i = 0; i < chFound.length; i++)
+ {
+ // continue search on failure
+ if (ch[start + i] != chFound[i])
+ {
+ break;
+ }
+ else if (i == length - 1)
+ {
+ // That's it, we have a match!
+ return (String) bucket[index + 1];
+ }
+ }
+ }
+ index += 2;
+ }
+ // Not found -- we'll have to add it.
+
+ // Do we have to grow the bucket?
+ bucket = (Object[]) extendArray(bucket, bucket.length, index);
+ }
+ symbolTable[hash] = bucket;
+
+ // OK, add it to the end of the bucket -- "local" interning.
+ // Intern "globally" to let applications share interning benefits.
+ // That is, "!=" and "==" work on our strings, not just equals().
+ String s = new String(ch, start, length).intern();
+ bucket[index] = s.toCharArray();
+ bucket[index + 1] = s;
+ return s;
+ }
- /**
- * Get the declared attributes for an element type.
- * @param elname The name of the element type.
- * @return An Enumeration of all the attributes declared for
- * a specific element type. The results will be valid only
- * after the DTD (if any) has been parsed.
- * @see #getAttributeType
- * @see #getAttributeEnumeration
- * @see #getAttributeDefaultValueType
- * @see #getAttributeDefaultValue
- * @see #getAttributeExpandedValue
- */
- private Enumeration declaredAttributes (Object element [])
- {
- Hashtable attlist;
+ /**
+ * Ensure the capacity of an array, allocating a new one if
+ * necessary. Usually extends only for name hash collisions.
+ */
+ private Object extendArray(Object array, int currentSize, int requiredSize)
+ {
+ if (requiredSize < currentSize)
+ {
+ return array;
+ }
+ else
+ {
+ Object newArray = null;
+ int newSize = currentSize * 2;
+
+ if (newSize <= requiredSize)
+ {
+ newSize = requiredSize + 1;
+ }
+
+ if (array instanceof char[])
+ {
+ newArray = new char[newSize];
+ }
+ else if (array instanceof Object[])
+ {
+ newArray = new Object[newSize];
+ }
+ else
+ {
+ throw new RuntimeException();
+ }
+
+ System.arraycopy(array, 0, newArray, 0, currentSize);
+ return newArray;
+ }
+ }
- if (element == null)
- return null;
- if ((attlist = (Hashtable) element [2]) == null)
- return null;
- return attlist.keys ();
- }
+ //////////////////////////////////////////////////////////////////////
+ // XML query routines.
+ //////////////////////////////////////////////////////////////////////
+
+ boolean isStandalone()
+ {
+ return docIsStandalone;
+ }
+
+ //
+ // Elements
+ //
+
+ private int getContentType(ElementDecl element, int defaultType)
+ {
+ int retval;
+
+ if (element == null)
+ {
+ return defaultType;
+ }
+ retval = element.contentType;
+ if (retval == CONTENT_UNDECLARED)
+ {
+ retval = defaultType;
+ }
+ return retval;
+ }
- /**
- * Get the declared attributes for an element type.
- * @param elname The name of the element type.
- * @return An Enumeration of all the attributes declared for
- * a specific element type. The results will be valid only
- * after the DTD (if any) has been parsed.
- * @see #getAttributeType
- * @see #getAttributeEnumeration
- * @see #getAttributeDefaultValueType
- * @see #getAttributeDefaultValue
- * @see #getAttributeExpandedValue
- */
- public Enumeration declaredAttributes (String elname)
- {
- return declaredAttributes ((Object []) elementInfo.get (elname));
- }
+ /**
+ * Look up the content type of an element.
+ * @param name The element type name.
+ * @return An integer constant representing the content type.
+ * @see #CONTENT_UNDECLARED
+ * @see #CONTENT_ANY
+ * @see #CONTENT_EMPTY
+ * @see #CONTENT_MIXED
+ * @see #CONTENT_ELEMENTS
+ */
+ public int getElementContentType(String name)
+ {
+ ElementDecl element = (ElementDecl) elementInfo.get(name);
+ return getContentType(element, CONTENT_UNDECLARED);
+ }
+
+ /**
+ * Register an element.
+ * Array format:
+ * [0] element type name
+ * [1] content model (mixed, elements only)
+ * [2] attribute hash table
+ */
+ private void setElement(String name, int contentType,
+ String contentModel, HashMap attributes)
+ throws SAXException
+ {
+ if (skippedPE)
+ {
+ return;
+ }
+ ElementDecl element = (ElementDecl) elementInfo.get(name);
+
+ // first <!ELEMENT ...> or <!ATTLIST ...> for this type?
+ if (element == null)
+ {
+ element = new ElementDecl();
+ element.contentType = contentType;
+ element.contentModel = contentModel;
+ element.attributes = attributes;
+ elementInfo.put(name, element);
+ return;
+ }
+
+ // <!ELEMENT ...> declaration?
+ if (contentType != CONTENT_UNDECLARED)
+ {
+ // ... following an associated <!ATTLIST ...>
+ if (element.contentType == CONTENT_UNDECLARED)
+ {
+ element.contentType = contentType;
+ element.contentModel = contentModel;
+ }
+ else
+ {
+ // VC: Unique Element Type Declaration
+ handler.verror("multiple declarations for element type: "
+ + name);
+ }
+ }
+
+ // first <!ATTLIST ...>, before <!ELEMENT ...> ?
+ else if (attributes != null)
+ {
+ element.attributes = attributes;
+ }
+ }
+
+ /**
+ * Look up the attribute hash table for an element.
+ * The hash table is the second item in the element array.
+ */
+ private HashMap getElementAttributes(String name)
+ {
+ ElementDecl element = (ElementDecl) elementInfo.get(name);
+ return (element == null) ? null : element.attributes;
+ }
- /**
- * Retrieve the declared type of an attribute.
- * @param name The name of the associated element.
- * @param aname The name of the attribute.
- * @return An interend string denoting the type, or null
- * indicating an undeclared attribute.
- */
- public String getAttributeType (String name, String aname)
- {
- Object attribute[] = getAttribute (name, aname);
- if (attribute == null) {
- return null;
- } else {
- return (String) attribute [0];
- }
- }
+ //
+ // Attributes
+ //
+
+ /**
+ * Get the declared attributes for an element type.
+ * @param elname The name of the element type.
+ * @return An iterator over all the attributes declared for
+ * a specific element type. The results will be valid only
+ * after the DTD (if any) has been parsed.
+ * @see #getAttributeType
+ * @see #getAttributeEnumeration
+ * @see #getAttributeDefaultValueType
+ * @see #getAttributeDefaultValue
+ * @see #getAttributeExpandedValue
+ */
+ private Iterator declaredAttributes(ElementDecl element)
+ {
+ HashMap attlist;
+
+ if (element == null)
+ {
+ return null;
+ }
+ if ((attlist = element.attributes) == null)
+ {
+ return null;
+ }
+ return attlist.keySet().iterator();
+ }
+ /**
+ * Get the declared attributes for an element type.
+ * @param elname The name of the element type.
+ * @return An iterator over all the attributes declared for
+ * a specific element type. The results will be valid only
+ * after the DTD (if any) has been parsed.
+ * @see #getAttributeType
+ * @see #getAttributeEnumeration
+ * @see #getAttributeDefaultValueType
+ * @see #getAttributeDefaultValue
+ * @see #getAttributeExpandedValue
+ */
+ public Iterator declaredAttributes(String elname)
+ {
+ return declaredAttributes((ElementDecl) elementInfo.get(elname));
+ }
- /**
- * Retrieve the allowed values for an enumerated attribute type.
- * @param name The name of the associated element.
- * @param aname The name of the attribute.
- * @return A string containing the token list.
- */
- public String getAttributeEnumeration (String name, String aname)
- {
- Object attribute[] = getAttribute (name, aname);
- if (attribute == null) {
- return null;
- } else {
- // assert: attribute [0] is "ENUMERATION" or "NOTATION"
- return (String) attribute [3];
- }
- }
+ /**
+ * Retrieve the declared type of an attribute.
+ * @param name The name of the associated element.
+ * @param aname The name of the attribute.
+ * @return An interend string denoting the type, or null
+ * indicating an undeclared attribute.
+ */
+ public String getAttributeType(String name, String aname)
+ {
+ AttributeDecl attribute = getAttribute(name, aname);
+ return (attribute == null) ? null : attribute.type;
+ }
+ /**
+ * Retrieve the allowed values for an enumerated attribute type.
+ * @param name The name of the associated element.
+ * @param aname The name of the attribute.
+ * @return A string containing the token list.
+ */
+ public String getAttributeEnumeration(String name, String aname)
+ {
+ AttributeDecl attribute = getAttribute(name, aname);
+ // assert: attribute.enumeration is "ENUMERATION" or "NOTATION"
+ return (attribute == null) ? null : attribute.enumeration;
+ }
- /**
- * Retrieve the default value of a declared attribute.
- * @param name The name of the associated element.
- * @param aname The name of the attribute.
- * @return The default value, or null if the attribute was
- * #IMPLIED or simply undeclared and unspecified.
- * @see #getAttributeExpandedValue
- */
- public String getAttributeDefaultValue (String name, String aname)
- {
- Object attribute[] = getAttribute (name, aname);
- if (attribute == null) {
- return null;
- } else {
- return (String) attribute [1];
- }
- }
+ /**
+ * Retrieve the default value of a declared attribute.
+ * @param name The name of the associated element.
+ * @param aname The name of the attribute.
+ * @return The default value, or null if the attribute was
+ * #IMPLIED or simply undeclared and unspecified.
+ * @see #getAttributeExpandedValue
+ */
+ public String getAttributeDefaultValue(String name, String aname)
+ {
+ AttributeDecl attribute = getAttribute(name, aname);
+ return (attribute == null) ? null : attribute.value;
+ }
/*
@@ -3325,1789 +3940,1896 @@ loop:
* @param name The name of the associated element.
* @param aname The name of the attribute.
* @return The expanded default value, or null if the attribute was
- * #IMPLIED or simply undeclared
+ * #IMPLIED or simply undeclared
* @see #getAttributeDefaultValue
public String getAttributeExpandedValue (String name, String aname)
throws Exception
{
- Object attribute[] = getAttribute (name, aname);
-
- if (attribute == null) {
- return null;
- } else if (attribute [4] == null && attribute [1] != null) {
- // we MUST use the same buf for both quotes else the literal
- // can't be properly terminated
- char buf [] = new char [1];
- int flags = LIT_ENTITY_REF | LIT_ATTRIBUTE;
- String type = getAttributeType (name, aname);
-
- if (type != "CDATA" && type != null)
- flags |= LIT_NORMALIZE;
- buf [0] = '"';
- pushCharArray (null, buf, 0, 1);
- pushString (null, (String) attribute [1]);
- pushCharArray (null, buf, 0, 1);
- attribute [4] = readLiteral (flags);
- }
- return (String) attribute [4];
+ AttributeDecl attribute = getAttribute (name, aname);
+
+ if (attribute == null) {
+ return null;
+ } else if (attribute.defaultValue == null && attribute.value != null) {
+ // we MUST use the same buf for both quotes else the literal
+ // can't be properly terminated
+ char buf [] = new char [1];
+ int flags = LIT_ENTITY_REF | LIT_ATTRIBUTE;
+ String type = getAttributeType (name, aname);
+
+ if (type != "CDATA" && type != null)
+ flags |= LIT_NORMALIZE;
+ buf [0] = '"';
+ pushCharArray (null, buf, 0, 1);
+ pushString (null, attribute.value);
+ pushCharArray (null, buf, 0, 1);
+ attribute.defaultValue = readLiteral (flags);
+ }
+ return attribute.defaultValue;
}
*/
- /**
- * Retrieve the default value mode of a declared attribute.
- * @see #ATTRIBUTE_DEFAULT_SPECIFIED
- * @see #ATTRIBUTE_DEFAULT_IMPLIED
- * @see #ATTRIBUTE_DEFAULT_REQUIRED
- * @see #ATTRIBUTE_DEFAULT_FIXED
- */
- public int getAttributeDefaultValueType (String name, String aname)
- {
- Object attribute[] = getAttribute (name, aname);
- if (attribute == null) {
- return ATTRIBUTE_DEFAULT_UNDECLARED;
- } else {
- return ((Integer) attribute [2]).intValue ();
- }
- }
-
-
- /**
- * Register an attribute declaration for later retrieval.
- * Format:
- * - String type
- * - String default value
- * - int value type
- * - enumeration
- * - processed default value
- */
- private void setAttribute (String elName, String name, String type,
- String enumeration,
- String value, int valueType)
+ /**
+ * Retrieve the default value mode of a declared attribute.
+ * @see #ATTRIBUTE_DEFAULT_SPECIFIED
+ * @see #ATTRIBUTE_DEFAULT_IMPLIED
+ * @see #ATTRIBUTE_DEFAULT_REQUIRED
+ * @see #ATTRIBUTE_DEFAULT_FIXED
+ */
+ public int getAttributeDefaultValueType(String name, String aname)
+ {
+ AttributeDecl attribute = getAttribute(name, aname);
+ return (attribute == null) ? ATTRIBUTE_DEFAULT_UNDECLARED :
+ attribute.valueType;
+ }
+
+ /**
+ * Register an attribute declaration for later retrieval.
+ * Format:
+ * - String type
+ * - String default value
+ * - int value type
+ * - enumeration
+ * - processed default value
+ */
+ private void setAttribute(String elName, String name, String type,
+ String enumeration, String value, int valueType)
throws Exception
- {
- Hashtable attlist;
-
- if (skippedPE)
- return;
-
- // Create a new hashtable if necessary.
- attlist = getElementAttributes (elName);
- if (attlist == null)
- attlist = new Hashtable ();
-
- // ignore multiple attribute declarations!
- if (attlist.get (name) != null) {
- // warn ...
- return;
- } else {
- Object attribute [] = new Object [5];
- attribute [0] = type;
- attribute [1] = value;
- attribute [2] = new Integer (valueType);
- attribute [3] = enumeration;
- attribute [4] = null;
- attlist.put (name, attribute);
-
- // save; but don't overwrite any existing <!ELEMENT ...>
- setElement (elName, CONTENT_UNDECLARED, null, attlist);
- }
- }
-
-
- /**
- * Retrieve the array representing an attribute declaration.
- */
- private Object[] getAttribute (String elName, String name)
- {
- Hashtable attlist;
-
- attlist = getElementAttributes (elName);
- if (attlist == null)
- return null;
- return (Object[]) attlist.get (name);
- }
-
+ {
+ HashMap attlist;
+
+ if (skippedPE)
+ {
+ return;
+ }
+
+ // Create a new hashtable if necessary.
+ attlist = getElementAttributes(elName);
+ if (attlist == null)
+ {
+ attlist = new HashMap();
+ }
+
+ // ignore multiple attribute declarations!
+ if (attlist.get(name) != null)
+ {
+ // warn ...
+ return;
+ }
+ else
+ {
+ AttributeDecl attribute = new AttributeDecl();
+ attribute.type = type;
+ attribute.value = value;
+ attribute.valueType = valueType;
+ attribute.enumeration = enumeration;
+ attlist.put(name, attribute);
+
+ // save; but don't overwrite any existing <!ELEMENT ...>
+ setElement(elName, CONTENT_UNDECLARED, null, attlist);
+ }
+ }
- //
- // Entities
- //
+ /**
+ * Retrieve the attribute declaration for the given element name and name.
+ */
+ private AttributeDecl getAttribute(String elName, String name)
+ {
+ HashMap attlist = getElementAttributes(elName);
+ return (attlist == null) ? null : (AttributeDecl) attlist.get(name);
+ }
- /**
- * Find the type of an entity.
- * @returns An integer constant representing the entity type.
- * @see #ENTITY_UNDECLARED
- * @see #ENTITY_INTERNAL
- * @see #ENTITY_NDATA
- * @see #ENTITY_TEXT
- */
- public int getEntityType (String ename)
- {
- Object entity[] = (Object[]) entityInfo.get (ename);
- if (entity == null) {
- return ENTITY_UNDECLARED;
- } else {
- return ((Integer) entity [0]).intValue ();
- }
- }
+ //
+ // Entities
+ //
+
+ /**
+ * Find the type of an entity.
+ * @returns An integer constant representing the entity type.
+ * @see #ENTITY_UNDECLARED
+ * @see #ENTITY_INTERNAL
+ * @see #ENTITY_NDATA
+ * @see #ENTITY_TEXT
+ */
+ public int getEntityType(String ename)
+ {
+ EntityInfo entity = (EntityInfo) entityInfo.get(ename);
+ return (entity == null) ? ENTITY_UNDECLARED : entity.type;
+ }
+ /**
+ * Return an external entity's identifiers.
+ * @param ename The name of the external entity.
+ * @return The entity's public identifier, system identifier, and base URI.
+ * Null if the entity was not declared as an external entity.
+ * @see #getEntityType
+ */
+ public ExternalIdentifiers getEntityIds(String ename)
+ {
+ EntityInfo entity = (EntityInfo) entityInfo.get(ename);
+ return (entity == null) ? null : entity.ids;
+ }
- /**
- * Return an external entity's identifier array.
- * @param ename The name of the external entity.
- * @return Three element array containing (in order) the entity's
- * public identifier, system identifier, and base URI. Null if
- * the entity was not declared as an external entity.
- * @see #getEntityType
- */
- public String [] getEntityIds (String ename)
- {
- Object entity[] = (Object[]) entityInfo.get (ename);
- if (entity == null) {
- return null;
- } else {
- return (String []) entity [1];
- }
- }
+ /**
+ * Return an internal entity's replacement text.
+ * @param ename The name of the internal entity.
+ * @return The entity's replacement text, or null if
+ * the entity was not declared as an internal entity.
+ * @see #getEntityType
+ */
+ public String getEntityValue(String ename)
+ {
+ EntityInfo entity = (EntityInfo) entityInfo.get(ename);
+ return (entity == null) ? null : entity.value;
+ }
+ /**
+ * Register an entity declaration for later retrieval.
+ */
+ private void setInternalEntity(String eName, String value)
+ throws SAXException
+ {
+ if (skippedPE)
+ {
+ return;
+ }
- /**
- * Return an internal entity's replacement text.
- * @param ename The name of the internal entity.
- * @return The entity's replacement text, or null if
- * the entity was not declared as an internal entity.
- * @see #getEntityType
- */
- public String getEntityValue (String ename)
- {
- Object entity[] = (Object[]) entityInfo.get (ename);
- if (entity == null) {
- return null;
- } else {
- return (String) entity [3];
- }
- }
+ if (entityInfo.get(eName) == null)
+ {
+ EntityInfo entity = new EntityInfo();
+ entity.type = ENTITY_INTERNAL;
+ entity.value = value;
+ entityInfo.put(eName, entity);
+ }
+ if (handler.stringInterning)
+ {
+ if ("lt" == eName || "gt" == eName || "quot" == eName
+ || "apos" == eName || "amp" == eName)
+ {
+ return;
+ }
+ }
+ else
+ {
+ if ("lt".equals(eName) || "gt".equals(eName) || "quot".equals(eName)
+ || "apos".equals(eName) || "amp".equals(eName))
+ {
+ return;
+ }
+ }
+ handler.getDeclHandler().internalEntityDecl(eName, value);
+ }
+ /**
+ * Register an external entity declaration for later retrieval.
+ */
+ private void setExternalEntity(String eName, int eClass,
+ ExternalIdentifiers ids, String nName)
+ {
+ if (entityInfo.get(eName) == null)
+ {
+ EntityInfo entity = new EntityInfo();
+ entity.type = eClass;
+ entity.ids = ids;
+ entity.notationName = nName;
+ entityInfo.put(eName, entity);
+ }
+ }
- /**
- * Register an entity declaration for later retrieval.
- */
- private void setInternalEntity (String eName, String value)
+ //
+ // Notations.
+ //
+
+ /**
+ * Report a notation declaration, checking for duplicates.
+ */
+ private void setNotation(String nname, ExternalIdentifiers ids)
throws SAXException
- {
- if (skippedPE)
- return;
-
- if (entityInfo.get (eName) == null) {
- Object entity[] = new Object [5];
- entity [0] = new Integer (ENTITY_INTERNAL);
-// FIXME: shrink!! [2] useless
- entity [3] = value;
- entityInfo.put (eName, entity);
- }
- if (handler.getFeature (SAXDriver.FEATURE + "string-interning")) {
- if ("lt" == eName || "gt" == eName || "quot" == eName
- || "apos" == eName || "amp" == eName)
- return;
- } else {
- if ("lt".equals(eName) || "gt".equals(eName) || "quot".equals(eName)
- || "apos".equals(eName) || "amp".equals(eName))
- return;
+ {
+ if (skippedPE)
+ {
+ return;
+ }
+
+ handler.notationDecl(nname, ids.publicId, ids.systemId, ids.baseUri);
+ if (notationInfo.get(nname) == null)
+ {
+ notationInfo.put(nname, nname);
+ }
+ else
+ {
+ // VC: Unique Notation Name
+ handler.verror("Duplicate notation name decl: " + nname);
+ }
+ }
+
+ //
+ // Location.
+ //
+
+ /**
+ * Return the current line number.
+ */
+ public int getLineNumber()
+ {
+ return line;
}
- handler.getDeclHandler ()
- .internalEntityDecl (eName, value);
- }
+ /**
+ * Return the current column number.
+ */
+ public int getColumnNumber()
+ {
+ return column;
+ }
- /**
- * Register an external entity declaration for later retrieval.
- */
- private void setExternalEntity (String eName, int eClass,
- String ids [], String nName)
- {
- if (entityInfo.get (eName) == null) {
- Object entity[] = new Object [5];
- entity [0] = new Integer (eClass);
- entity [1] = ids;
-// FIXME: shrink!! [2] no longer used, [4] irrelevant given [0]
- entity [4] = nName;
- entityInfo.put (eName, entity);
- }
- }
+ //////////////////////////////////////////////////////////////////////
+ // High-level I/O.
+ //////////////////////////////////////////////////////////////////////
+
+ /**
+ * Read a single character from the readBuffer.
+ * <p>The readDataChunk () method maintains the buffer.
+ * <p>If we hit the end of an entity, try to pop the stack and
+ * keep going.
+ * <p> (This approach doesn't really enforce XML's rules about
+ * entity boundaries, but this is not currently a validating
+ * parser).
+ * <p>This routine also attempts to keep track of the current
+ * position in external entities, but it's not entirely accurate.
+ * @return The next available input character.
+ * @see #unread (char)
+ * @see #readDataChunk
+ * @see #readBuffer
+ * @see #line
+ * @return The next character from the current input source.
+ */
+ private char readCh()
+ throws SAXException, IOException
+ {
+ // As long as there's nothing in the
+ // read buffer, try reading more data
+ // (for an external entity) or popping
+ // the entity stack (for either).
+ while (readBufferPos >= readBufferLength)
+ {
+ switch (sourceType)
+ {
+ case INPUT_READER:
+ case INPUT_STREAM:
+ readDataChunk();
+ while (readBufferLength < 1)
+ {
+ popInput();
+ if (readBufferLength < 1)
+ {
+ readDataChunk();
+ }
+ }
+ break;
+
+ default:
+
+ popInput();
+ break;
+ }
+ }
+
+ char c = readBuffer[readBufferPos++];
+
+ if (c == '\n')
+ {
+ line++;
+ column = 0;
+ }
+ else
+ {
+ if (c == '<')
+ {
+ /* the most common return to parseContent () ... NOP */
+ }
+ else if (((c < 0x0020 && (c != '\t') && (c != '\r')) || c > 0xFFFD)
+ || ((c >= 0x007f) && (c <= 0x009f) && (c != 0x0085)
+ && xmlVersion == XML_11))
+ {
+ error("illegal XML character U+" + Integer.toHexString(c));
+ }
+ // If we're in the DTD and in a context where PEs get expanded,
+ // do so ... 1/14/2000 errata identify those contexts. There
+ // are also spots in the internal subset where PE refs are fatal
+ // errors, hence yet another flag.
+ else if (c == '%' && expandPE)
+ {
+ if (peIsError)
+ {
+ error("PE reference within decl in internal subset.");
+ }
+ parsePEReference();
+ return readCh();
+ }
+ column++;
+ }
- //
- // Notations.
- //
+ return c;
+ }
- /**
- * Report a notation declaration, checking for duplicates.
- */
- private void setNotation (String nname, String ids [])
+ /**
+ * Push a single character back onto the current input stream.
+ * <p>This method usually pushes the character back onto
+ * the readBuffer.
+ * <p>I don't think that this would ever be called with
+ * readBufferPos = 0, because the methods always reads a character
+ * before unreading it, but just in case, I've added a boundary
+ * condition.
+ * @param c The character to push back.
+ * @see #readCh
+ * @see #unread (char[])
+ * @see #readBuffer
+ */
+ private void unread(char c)
throws SAXException
- {
- if (skippedPE)
- return;
-
- handler.notationDecl (nname, ids);
- if (notationInfo.get (nname) == null)
- notationInfo.put (nname, nname);
- else
- // VC: Unique Notation Name
- handler.verror ("Duplicate notation name decl: " + nname);
- }
-
-
- //
- // Location.
- //
-
-
- /**
- * Return the current line number.
- */
- public int getLineNumber ()
- {
- return line;
- }
-
-
- /**
- * Return the current column number.
- */
- public int getColumnNumber ()
- {
- return column;
- }
+ {
+ // Normal condition.
+ if (c == '\n')
+ {
+ line--;
+ column = -1;
+ }
+ if (readBufferPos > 0)
+ {
+ readBuffer[--readBufferPos] = c;
+ }
+ else
+ {
+ pushString(null, new Character(c).toString());
+ }
+ }
+ /**
+ * Push a char array back onto the current input stream.
+ * <p>NOTE: you must <em>never</em> push back characters that you
+ * haven't actually read: use pushString () instead.
+ * @see #readCh
+ * @see #unread (char)
+ * @see #readBuffer
+ * @see #pushString
+ */
+ private void unread(char[] ch, int length)
+ throws SAXException
+ {
+ for (int i = 0; i < length; i++)
+ {
+ if (ch[i] == '\n')
+ {
+ line--;
+ column = -1;
+ }
+ }
+ if (length < readBufferPos)
+ {
+ readBufferPos -= length;
+ }
+ else
+ {
+ pushCharArray(null, ch, 0, length);
+ }
+ }
- //////////////////////////////////////////////////////////////////////
- // High-level I/O.
- //////////////////////////////////////////////////////////////////////
-
-
- /**
- * Read a single character from the readBuffer.
- * <p>The readDataChunk () method maintains the buffer.
- * <p>If we hit the end of an entity, try to pop the stack and
- * keep going.
- * <p> (This approach doesn't really enforce XML's rules about
- * entity boundaries, but this is not currently a validating
- * parser).
- * <p>This routine also attempts to keep track of the current
- * position in external entities, but it's not entirely accurate.
- * @return The next available input character.
- * @see #unread (char)
- * @see #readDataChunk
- * @see #readBuffer
- * @see #line
- * @return The next character from the current input source.
- */
- private char readCh ()
+ /**
+ * Push, or skip, a new external input source.
+ * The source will be some kind of parsed entity, such as a PE
+ * (including the external DTD subset) or content for the body.
+ *
+ * @param url The java.net.URL object for the entity.
+ * @see SAXDriver#resolveEntity
+ * @see #pushString
+ * @see #sourceType
+ * @see #pushInput
+ * @see #detectEncoding
+ * @see #sourceType
+ * @see #readBuffer
+ */
+ private void pushURL(boolean isPE,
+ String ename,
+ ExternalIdentifiers ids,
+ Reader reader,
+ InputStream stream,
+ String encoding,
+ boolean doResolve)
throws SAXException, IOException
- {
- // As long as there's nothing in the
- // read buffer, try reading more data
- // (for an external entity) or popping
- // the entity stack (for either).
- while (readBufferPos >= readBufferLength) {
- switch (sourceType) {
- case INPUT_READER:
- case INPUT_STREAM:
- readDataChunk ();
- while (readBufferLength < 1) {
- popInput ();
- if (readBufferLength < 1) {
- readDataChunk ();
- }
- }
- break;
-
- default:
-
- popInput ();
- break;
- }
- }
-
- char c = readBuffer [readBufferPos++];
-
- if (c == '\n') {
- line++;
- column = 0;
- } else {
- if (c == '<') {
- /* the most common return to parseContent () ... NOP */
- } else if (((c < 0x0020 && (c != '\t') && (c != '\r')) || c > 0xFFFD)
- || ((c >= 0x007f) && (c <= 0x009f) && (c != 0x0085)
- && xmlVersion == XML_11))
- error ("illegal XML character U+"
- + Integer.toHexString (c));
-
- // If we're in the DTD and in a context where PEs get expanded,
- // do so ... 1/14/2000 errata identify those contexts. There
- // are also spots in the internal subset where PE refs are fatal
- // errors, hence yet another flag.
- else if (c == '%' && expandPE) {
- if (peIsError)
- error ("PE reference within decl in internal subset.");
- parsePEReference ();
- return readCh ();
- }
- column++;
- }
-
- return c;
- }
+ {
+ boolean ignoreEncoding;
+ String systemId;
+ InputSource source;
+ if (!isPE)
+ {
+ dataBufferFlush();
+ }
- /**
- * Push a single character back onto the current input stream.
- * <p>This method usually pushes the character back onto
- * the readBuffer.
- * <p>I don't think that this would ever be called with
- * readBufferPos = 0, because the methods always reads a character
- * before unreading it, but just in case, I've added a boundary
- * condition.
- * @param c The character to push back.
- * @see #readCh
- * @see #unread (char[])
- * @see #readBuffer
- */
- private void unread (char c)
- throws SAXException
- {
- // Normal condition.
- if (c == '\n') {
- line--;
- column = -1;
- }
- if (readBufferPos > 0) {
- readBuffer [--readBufferPos] = c;
- } else {
- pushString (null, new Character (c).toString ());
- }
- }
+ scratch.setPublicId(ids.publicId);
+ scratch.setSystemId(ids.systemId);
+
+ // See if we should skip or substitute the entity.
+ // If we're not skipping, resolving reports startEntity()
+ // and updates the (handler's) stack of URIs.
+ if (doResolve)
+ {
+ // assert (stream == null && reader == null && encoding == null)
+ source = handler.resolveEntity(isPE, ename, scratch, ids.baseUri);
+ if (source == null)
+ {
+ handler.warn("skipping entity: " + ename);
+ handler.skippedEntity(ename);
+ if (isPE)
+ {
+ skippedPE = true;
+ }
+ return;
+ }
+ // we might be using alternate IDs/encoding
+ systemId = source.getSystemId();
+ // The following warning and setting systemId was deleted bcause
+ // the application has the option of not setting systemId
+ // provided that it has set the characte/byte stream.
+ /*
+ if (systemId == null) {
+ handler.warn ("missing system ID, using " + ids.systemId);
+ systemId = ids.systemId;
+ }
+ */
+ }
+ else
+ {
+ // "[document]", or "[dtd]" via getExternalSubset()
+ scratch.setCharacterStream(reader);
+ scratch.setByteStream(stream);
+ scratch.setEncoding(encoding);
+ source = scratch;
+ systemId = ids.systemId;
+ if (handler.stringInterning)
+ {
+ handler.startExternalEntity(ename, systemId,
+ "[document]" == ename);
+ }
+ else
+ {
+ handler.startExternalEntity(ename, systemId,
+ "[document]".equals(ename));
+ }
+ }
- /**
- * Push a char array back onto the current input stream.
- * <p>NOTE: you must <em>never</em> push back characters that you
- * haven't actually read: use pushString () instead.
- * @see #readCh
- * @see #unread (char)
- * @see #readBuffer
- * @see #pushString
- */
- private void unread (char ch[], int length)
- throws SAXException
- {
- for (int i = 0; i < length; i++) {
- if (ch [i] == '\n') {
- line--;
- column = -1;
- }
- }
- if (length < readBufferPos) {
- readBufferPos -= length;
- } else {
- pushCharArray (null, ch, 0, length);
- }
- }
+ // we may have been given I/O streams directly
+ if (source.getCharacterStream() != null)
+ {
+ if (source.getByteStream() != null)
+ error("InputSource has two streams!");
+ reader = source.getCharacterStream();
+ }
+ else if (source.getByteStream() != null)
+ {
+ encoding = source.getEncoding();
+ if (encoding == null)
+ {
+ stream = source.getByteStream();
+ }
+ else
+ {
+ try
+ {
+ reader = new InputStreamReader(source.getByteStream(),
+ encoding);
+ }
+ catch (IOException e)
+ {
+ stream = source.getByteStream();
+ }
+ }
+ }
+ else if (systemId == null)
+ {
+ error("InputSource has no URI!");
+ }
+ scratch.setCharacterStream(null);
+ scratch.setByteStream(null);
+ scratch.setEncoding(null);
+
+ // Push the existing status.
+ pushInput(ename);
+
+ // Create a new read buffer.
+ // (Note the four-character margin)
+ readBuffer = new char[READ_BUFFER_MAX + 4];
+ readBufferPos = 0;
+ readBufferLength = 0;
+ readBufferOverflow = -1;
+ is = null;
+ line = 1;
+ column = 0;
+ currentByteCount = 0;
+
+ // If there's an explicit character stream, just
+ // ignore encoding declarations.
+ if (reader != null)
+ {
+ sourceType = INPUT_READER;
+ this.reader = reader;
+ tryEncodingDecl(true);
+ return;
+ }
+
+ // Else we handle the conversion, and need to ensure
+ // it's done right.
+ sourceType = INPUT_STREAM;
+ if (stream != null)
+ {
+ is = stream;
+ }
+ else
+ {
+ // We have to open our own stream to the URL.
+ URL url = new URL(systemId);
+
+ externalEntity = url.openConnection();
+ externalEntity.connect();
+ is = externalEntity.getInputStream();
+ }
+
+ // If we get to here, there must be
+ // an InputStream available.
+ if (!is.markSupported())
+ {
+ is = new BufferedInputStream(is);
+ }
+ // Get any external encoding label.
+ if (encoding == null && externalEntity != null)
+ {
+ // External labels can be untrustworthy; filesystems in
+ // particular often have the wrong default for content
+ // that wasn't locally originated. Those we autodetect.
+ if (!"file".equals(externalEntity.getURL().getProtocol()))
+ {
+ int temp;
+
+ // application/xml;charset=something;otherAttr=...
+ // ... with many variants on 'something'
+ encoding = externalEntity.getContentType();
+
+ // MHK code (fix for Saxon 5.5.1/007):
+ // protect against encoding==null
+ if (encoding == null)
+ {
+ temp = -1;
+ }
+ else
+ {
+ temp = encoding.indexOf("charset");
+ }
+
+ // RFC 2376 sez MIME text defaults to ASCII, but since the
+ // JDK will create a MIME type out of thin air, we always
+ // autodetect when there's no explicit charset attribute.
+ if (temp < 0)
+ {
+ encoding = null; // autodetect
+ }
+ else
+ {
+ // only this one attribute
+ if ((temp = encoding.indexOf(';')) > 0)
+ {
+ encoding = encoding.substring(0, temp);
+ }
+
+ if ((temp = encoding.indexOf('=', temp + 7)) > 0)
+ {
+ encoding = encoding.substring(temp + 1);
+
+ // attributes can have comment fields (RFC 822)
+ if ((temp = encoding.indexOf('(')) > 0)
+ {
+ encoding = encoding.substring(0, temp);
+ }
+ // ... and values may be quoted
+ if ((temp = encoding.indexOf('"')) > 0)
+ {
+ encoding =
+ encoding.substring(temp + 1,
+ encoding.indexOf('"', temp + 2));
+ }
+ encoding.trim();
+ }
+ else
+ {
+ handler.warn("ignoring illegal MIME attribute: "
+ + encoding);
+ encoding = null;
+ }
+ }
+ }
+ }
+
+ // if we got an external encoding label, use it ...
+ if (encoding != null)
+ {
+ this.encoding = ENCODING_EXTERNAL;
+ setupDecoding(encoding);
+ ignoreEncoding = true;
+
+ // ... else autodetect from first bytes.
+ }
+ else
+ {
+ detectEncoding();
+ ignoreEncoding = false;
+ }
- /**
- * Push, or skip, a new external input source.
- * The source will be some kind of parsed entity, such as a PE
- * (including the external DTD subset) or content for the body.
- *
- * @param url The java.net.URL object for the entity.
- * @see SAXDriver#resolveEntity
- * @see #pushString
- * @see #sourceType
- * @see #pushInput
- * @see #detectEncoding
- * @see #sourceType
- * @see #readBuffer
- */
- private void pushURL (
- boolean isPE,
- String ename,
- String ids [], // public, system, baseURI
- Reader reader,
- InputStream stream,
- String encoding,
- boolean doResolve
- ) throws SAXException, IOException
- {
- boolean ignoreEncoding;
- String systemId;
- InputSource source;
-
- if (!isPE)
- dataBufferFlush ();
-
- scratch.setPublicId (ids [0]);
- scratch.setSystemId (ids [1]);
-
- // See if we should skip or substitute the entity.
- // If we're not skipping, resolving reports startEntity()
- // and updates the (handler's) stack of URIs.
- if (doResolve) {
- // assert (stream == null && reader == null && encoding == null)
- source = handler.resolveEntity (isPE, ename, scratch, ids [2]);
- if (source == null) {
- handler.warn ("skipping entity: " + ename);
- handler.skippedEntity (ename);
- if (isPE)
- skippedPE = true;
- return;
- }
-
- // we might be using alternate IDs/encoding
- systemId = source.getSystemId ();
- // The following warning and setting systemId was deleted bcause
- // the application has the option of not setting systemId
- // provided that it has set the characte/byte stream.
- /*
- if (systemId == null) {
- handler.warn ("missing system ID, using " + ids [1]);
- systemId = ids [1];
- }
- */
- } else {
- // "[document]", or "[dtd]" via getExternalSubset()
- scratch.setCharacterStream (reader);
- scratch.setByteStream (stream);
- scratch.setEncoding (encoding);
- source = scratch;
- systemId = ids [1];
- if (handler.getFeature (SAXDriver.FEATURE + "string-interning")) {
- handler.startExternalEntity (ename, systemId,
- "[document]" == ename);
- } else {
- handler.startExternalEntity (ename, systemId,
- "[document]".equals(ename));
- }
- }
-
- // we may have been given I/O streams directly
- if (source.getCharacterStream () != null) {
- if (source.getByteStream () != null)
- error ("InputSource has two streams!");
- reader = source.getCharacterStream ();
- } else if (source.getByteStream () != null) {
- encoding = source.getEncoding ();
- if (encoding == null)
- stream = source.getByteStream ();
- else try {
- reader = new InputStreamReader (
- source.getByteStream (),
- encoding);
- } catch (IOException e) {
- stream = source.getByteStream ();
- }
- } else if (systemId == null)
- error ("InputSource has no URI!");
- scratch.setCharacterStream (null);
- scratch.setByteStream (null);
- scratch.setEncoding (null);
-
- // Push the existing status.
- pushInput (ename);
-
- // Create a new read buffer.
- // (Note the four-character margin)
- readBuffer = new char [READ_BUFFER_MAX + 4];
- readBufferPos = 0;
- readBufferLength = 0;
- readBufferOverflow = -1;
- is = null;
- line = 1;
- column = 0;
- currentByteCount = 0;
-
- // If there's an explicit character stream, just
- // ignore encoding declarations.
- if (reader != null) {
- sourceType = INPUT_READER;
- this.reader = reader;
- tryEncodingDecl (true);
- return;
- }
-
- // Else we handle the conversion, and need to ensure
- // it's done right.
- sourceType = INPUT_STREAM;
- if (stream != null) {
- is = stream;
- } else {
- // We have to open our own stream to the URL.
- URL url = new URL (systemId);
-
- externalEntity = url.openConnection ();
- externalEntity.connect ();
- is = externalEntity.getInputStream ();
- }
-
- // If we get to here, there must be
- // an InputStream available.
- if (!is.markSupported ()) {
- is = new BufferedInputStream (is);
- }
-
- // Get any external encoding label.
- if (encoding == null && externalEntity != null) {
- // External labels can be untrustworthy; filesystems in
- // particular often have the wrong default for content
- // that wasn't locally originated. Those we autodetect.
- if (!"file".equals (externalEntity.getURL ().getProtocol ())) {
- int temp;
-
- // application/xml;charset=something;otherAttr=...
- // ... with many variants on 'something'
- encoding = externalEntity.getContentType ();
-
- // MHK code (fix for Saxon 5.5.1/007):
- // protect against encoding==null
- if (encoding==null) {
- temp = -1;
- } else {
- temp = encoding.indexOf ("charset");
- }
-
- // RFC 2376 sez MIME text defaults to ASCII, but since the
- // JDK will create a MIME type out of thin air, we always
- // autodetect when there's no explicit charset attribute.
- if (temp < 0)
- encoding = null; // autodetect
- else {
- // only this one attribute
- if ((temp = encoding.indexOf (';')) > 0)
- encoding = encoding.substring (0, temp);
-
- if ((temp = encoding.indexOf ('=', temp + 7)) > 0) {
- encoding = encoding.substring (temp + 1);
-
- // attributes can have comment fields (RFC 822)
- if ((temp = encoding.indexOf ('(')) > 0)
- encoding = encoding.substring (0, temp);
- // ... and values may be quoted
- if ((temp = encoding.indexOf ('"')) > 0)
- encoding = encoding.substring (temp + 1,
- encoding.indexOf ('"', temp + 2));
- encoding.trim ();
- } else {
- handler.warn ("ignoring illegal MIME attribute: "
- + encoding);
- encoding = null;
- }
- }
- }
- }
-
- // if we got an external encoding label, use it ...
- if (encoding != null) {
- this.encoding = ENCODING_EXTERNAL;
- setupDecoding (encoding);
- ignoreEncoding = true;
-
- // ... else autodetect from first bytes.
- } else {
- detectEncoding ();
- ignoreEncoding = false;
- }
-
- // Read any XML or text declaration.
- // If we autodetected, it may tell us the "real" encoding.
- try {
- tryEncodingDecl (ignoreEncoding);
- } catch (UnsupportedEncodingException x) {
- encoding = x.getMessage ();
-
- // if we don't handle the declared encoding,
- // try letting a JVM InputStreamReader do it
- try {
- if (sourceType != INPUT_STREAM)
- throw x;
-
- is.reset ();
- readBufferPos = 0;
- readBufferLength = 0;
- readBufferOverflow = -1;
- line = 1;
- currentByteCount = column = 0;
-
- sourceType = INPUT_READER;
- this.reader = new InputStreamReader (is, encoding);
- is = null;
-
- tryEncodingDecl (true);
-
- } catch (IOException e) {
- error ("unsupported text encoding",
- encoding,
- null);
- }
- }
- }
+ // Read any XML or text declaration.
+ // If we autodetected, it may tell us the "real" encoding.
+ try
+ {
+ tryEncodingDecl(ignoreEncoding);
+ }
+ catch (UnsupportedEncodingException x)
+ {
+ encoding = x.getMessage();
+ // if we don't handle the declared encoding,
+ // try letting a JVM InputStreamReader do it
+ try
+ {
+ if (sourceType != INPUT_STREAM)
+ {
+ throw x;
+ }
+
+ is.reset();
+ readBufferPos = 0;
+ readBufferLength = 0;
+ readBufferOverflow = -1;
+ line = 1;
+ currentByteCount = column = 0;
+
+ sourceType = INPUT_READER;
+ this.reader = new InputStreamReader(is, encoding);
+ is = null;
+
+ tryEncodingDecl(true);
+
+ }
+ catch (IOException e)
+ {
+ error("unsupported text encoding",
+ encoding,
+ null);
+ }
+ }
+ }
- /**
- * Check for an encoding declaration. This is the second part of the
- * XML encoding autodetection algorithm, relying on detectEncoding to
- * get to the point that this part can read any encoding declaration
- * in the document (using only US-ASCII characters).
- *
- * <p> Because this part starts to fill parser buffers with this data,
- * it's tricky to setup a reader so that Java's built-in decoders can be
- * used for the character encodings that aren't built in to this parser
- * (such as EUC-JP, KOI8-R, Big5, etc).
- *
- * @return any encoding in the declaration, uppercased; or null
- * @see detectEncoding
- */
- private String tryEncodingDecl (boolean ignoreEncoding)
+ /**
+ * Check for an encoding declaration. This is the second part of the
+ * XML encoding autodetection algorithm, relying on detectEncoding to
+ * get to the point that this part can read any encoding declaration
+ * in the document (using only US-ASCII characters).
+ *
+ * <p> Because this part starts to fill parser buffers with this data,
+ * it's tricky to setup a reader so that Java's built-in decoders can be
+ * used for the character encodings that aren't built in to this parser
+ * (such as EUC-JP, KOI8-R, Big5, etc).
+ *
+ * @return any encoding in the declaration, uppercased; or null
+ * @see detectEncoding
+ */
+ private String tryEncodingDecl(boolean ignoreEncoding)
throws SAXException, IOException
- {
- // Read the XML/text declaration.
- if (tryRead ("<?xml")) {
- if (tryWhitespace ()) {
- if (inputStack.size () > 0) {
- return parseTextDecl (ignoreEncoding);
- } else {
- return parseXMLDecl (ignoreEncoding);
- }
- } else {
- // <?xml-stylesheet ...?> or similar
- unread ('l');
- unread ('m');
- unread ('x');
- unread ('?');
- unread ('<');
- }
- }
- return null;
- }
-
+ {
+ // Read the XML/text declaration.
+ if (tryRead("<?xml"))
+ {
+ if (tryWhitespace())
+ {
+ if (inputStack.size() > 0)
+ {
+ return parseTextDecl(ignoreEncoding);
+ }
+ else
+ {
+ return parseXMLDecl(ignoreEncoding);
+ }
+ }
+ else
+ {
+ // <?xml-stylesheet ...?> or similar
+ unread('l');
+ unread('m');
+ unread('x');
+ unread('?');
+ unread('<');
+ }
+ }
+ return null;
+ }
- /**
- * Attempt to detect the encoding of an entity.
- * <p>The trick here (as suggested in the XML standard) is that
- * any entity not in UTF-8, or in UCS-2 with a byte-order mark,
- * <b>must</b> begin with an XML declaration or an encoding
- * declaration; we simply have to look for "&lt;?xml" in various
- * encodings.
- * <p>This method has no way to distinguish among 8-bit encodings.
- * Instead, it sets up for UTF-8, then (possibly) revises its assumption
- * later in setupDecoding (). Any ASCII-derived 8-bit encoding
- * should work, but most will be rejected later by setupDecoding ().
- * @see #tryEncoding (byte[], byte, byte, byte, byte)
- * @see #tryEncoding (byte[], byte, byte)
- * @see #setupDecoding
- */
- private void detectEncoding ()
+ /**
+ * Attempt to detect the encoding of an entity.
+ * <p>The trick here (as suggested in the XML standard) is that
+ * any entity not in UTF-8, or in UCS-2 with a byte-order mark,
+ * <b>must</b> begin with an XML declaration or an encoding
+ * declaration; we simply have to look for "&lt;?xml" in various
+ * encodings.
+ * <p>This method has no way to distinguish among 8-bit encodings.
+ * Instead, it sets up for UTF-8, then (possibly) revises its assumption
+ * later in setupDecoding (). Any ASCII-derived 8-bit encoding
+ * should work, but most will be rejected later by setupDecoding ().
+ * @see #tryEncoding (byte[], byte, byte, byte, byte)
+ * @see #tryEncoding (byte[], byte, byte)
+ * @see #setupDecoding
+ */
+ private void detectEncoding()
throws SAXException, IOException
- {
- byte signature[] = new byte [4];
-
- // Read the first four bytes for
- // autodetection.
- is.mark (4);
- is.read (signature);
- is.reset ();
-
- //
- // FIRST: four byte encodings (who uses these?)
- //
- if (tryEncoding (signature, (byte) 0x00, (byte) 0x00,
- (byte) 0x00, (byte) 0x3c)) {
- // UCS-4 must begin with "<?xml"
- // 0x00 0x00 0x00 0x3c: UCS-4, big-endian (1234)
- // "UTF-32BE"
- encoding = ENCODING_UCS_4_1234;
-
- } else if (tryEncoding (signature, (byte) 0x3c, (byte) 0x00,
- (byte) 0x00, (byte) 0x00)) {
- // 0x3c 0x00 0x00 0x00: UCS-4, little-endian (4321)
- // "UTF-32LE"
- encoding = ENCODING_UCS_4_4321;
-
- } else if (tryEncoding (signature, (byte) 0x00, (byte) 0x00,
- (byte) 0x3c, (byte) 0x00)) {
- // 0x00 0x00 0x3c 0x00: UCS-4, unusual (2143)
- encoding = ENCODING_UCS_4_2143;
-
- } else if (tryEncoding (signature, (byte) 0x00, (byte) 0x3c,
- (byte) 0x00, (byte) 0x00)) {
- // 0x00 0x3c 0x00 0x00: UCS-4, unusual (3421)
- encoding = ENCODING_UCS_4_3412;
-
- // 00 00 fe ff UCS_4_1234 (with BOM)
- // ff fe 00 00 UCS_4_4321 (with BOM)
- }
-
- //
- // SECOND: two byte encodings
- // note ... with 1/14/2000 errata the XML spec identifies some
- // more "broken UTF-16" autodetection cases, with no XML decl,
- // which we don't handle here (that's legal too).
- //
- else if (tryEncoding (signature, (byte) 0xfe, (byte) 0xff)) {
- // UCS-2 with a byte-order marker. (UTF-16)
- // 0xfe 0xff: UCS-2, big-endian (12)
- encoding = ENCODING_UCS_2_12;
- is.read (); is.read ();
-
- } else if (tryEncoding (signature, (byte) 0xff, (byte) 0xfe)) {
- // UCS-2 with a byte-order marker. (UTF-16)
- // 0xff 0xfe: UCS-2, little-endian (21)
- encoding = ENCODING_UCS_2_21;
- is.read (); is.read ();
-
- } else if (tryEncoding (signature, (byte) 0x00, (byte) 0x3c,
- (byte) 0x00, (byte) 0x3f)) {
- // UTF-16BE (otherwise, malformed UTF-16)
- // 0x00 0x3c 0x00 0x3f: UCS-2, big-endian, no byte-order mark
- encoding = ENCODING_UCS_2_12;
- error ("no byte-order mark for UCS-2 entity");
-
- } else if (tryEncoding (signature, (byte) 0x3c, (byte) 0x00,
- (byte) 0x3f, (byte) 0x00)) {
- // UTF-16LE (otherwise, malformed UTF-16)
- // 0x3c 0x00 0x3f 0x00: UCS-2, little-endian, no byte-order mark
- encoding = ENCODING_UCS_2_21;
- error ("no byte-order mark for UCS-2 entity");
- }
-
- //
- // THIRD: ASCII-derived encodings, fixed and variable lengths
- //
- else if (tryEncoding (signature, (byte) 0x3c, (byte) 0x3f,
- (byte) 0x78, (byte) 0x6d)) {
- // ASCII derived
- // 0x3c 0x3f 0x78 0x6d: UTF-8 or other 8-bit markup (read ENCODING)
- encoding = ENCODING_UTF_8;
- prefetchASCIIEncodingDecl ();
-
- } else if (signature [0] == (byte) 0xef
- && signature [1] == (byte) 0xbb
- && signature [2] == (byte) 0xbf) {
- // 0xef 0xbb 0xbf: UTF-8 BOM (not part of document text)
- // this un-needed notion slipped into XML 2nd ed through a
- // "non-normative" erratum; now required by MSFT and UDDI,
- // and E22 made it normative.
- encoding = ENCODING_UTF_8;
- is.read (); is.read (); is.read ();
-
- } else {
- // 4c 6f a7 94 ... we don't understand EBCDIC flavors
- // ... but we COULD at least kick in some fixed code page
-
- // (default) UTF-8 without encoding/XML declaration
- encoding = ENCODING_UTF_8;
- }
- }
-
+ {
+ byte[] signature = new byte[4];
- /**
- * Check for a four-byte signature.
- * <p>Utility routine for detectEncoding ().
- * <p>Always looks for some part of "<?XML" in a specific encoding.
- * @param sig The first four bytes read.
- * @param b1 The first byte of the signature
- * @param b2 The second byte of the signature
- * @param b3 The third byte of the signature
- * @param b4 The fourth byte of the signature
- * @see #detectEncoding
- */
- private static boolean tryEncoding (
- byte sig[], byte b1, byte b2, byte b3, byte b4)
- {
- return (sig [0] == b1 && sig [1] == b2
- && sig [2] == b3 && sig [3] == b4);
- }
+ // Read the first four bytes for
+ // autodetection.
+ is.mark(4);
+ is.read(signature);
+ is.reset();
+ //
+ // FIRST: four byte encodings (who uses these?)
+ //
+ if (tryEncoding(signature, (byte) 0x00, (byte) 0x00,
+ (byte) 0x00, (byte) 0x3c))
+ {
+ // UCS-4 must begin with "<?xml"
+ // 0x00 0x00 0x00 0x3c: UCS-4, big-endian (1234)
+ // "UTF-32BE"
+ encoding = ENCODING_UCS_4_1234;
+ }
+ else if (tryEncoding(signature, (byte) 0x3c, (byte) 0x00,
+ (byte) 0x00, (byte) 0x00))
+ {
+ // 0x3c 0x00 0x00 0x00: UCS-4, little-endian (4321)
+ // "UTF-32LE"
+ encoding = ENCODING_UCS_4_4321;
+ }
+ else if (tryEncoding(signature, (byte) 0x00, (byte) 0x00,
+ (byte) 0x3c, (byte) 0x00))
+ {
+ // 0x00 0x00 0x3c 0x00: UCS-4, unusual (2143)
+ encoding = ENCODING_UCS_4_2143;
+ }
+ else if (tryEncoding(signature, (byte) 0x00, (byte) 0x3c,
+ (byte) 0x00, (byte) 0x00))
+ {
+ // 0x00 0x3c 0x00 0x00: UCS-4, unusual (3421)
+ encoding = ENCODING_UCS_4_3412;
+
+ // 00 00 fe ff UCS_4_1234 (with BOM)
+ // ff fe 00 00 UCS_4_4321 (with BOM)
+ }
- /**
- * Check for a two-byte signature.
- * <p>Looks for a UCS-2 byte-order mark.
- * <p>Utility routine for detectEncoding ().
- * @param sig The first four bytes read.
- * @param b1 The first byte of the signature
- * @param b2 The second byte of the signature
- * @see #detectEncoding
- */
- private static boolean tryEncoding (byte sig[], byte b1, byte b2)
- {
- return ((sig [0] == b1) && (sig [1] == b2));
- }
+ //
+ // SECOND: two byte encodings
+ // note ... with 1/14/2000 errata the XML spec identifies some
+ // more "broken UTF-16" autodetection cases, with no XML decl,
+ // which we don't handle here (that's legal too).
+ //
+ else if (tryEncoding(signature, (byte) 0xfe, (byte) 0xff))
+ {
+ // UCS-2 with a byte-order marker. (UTF-16)
+ // 0xfe 0xff: UCS-2, big-endian (12)
+ encoding = ENCODING_UCS_2_12;
+ is.read(); is.read();
+ }
+ else if (tryEncoding(signature, (byte) 0xff, (byte) 0xfe))
+ {
+ // UCS-2 with a byte-order marker. (UTF-16)
+ // 0xff 0xfe: UCS-2, little-endian (21)
+ encoding = ENCODING_UCS_2_21;
+ is.read(); is.read();
+ }
+ else if (tryEncoding(signature, (byte) 0x00, (byte) 0x3c,
+ (byte) 0x00, (byte) 0x3f))
+ {
+ // UTF-16BE (otherwise, malformed UTF-16)
+ // 0x00 0x3c 0x00 0x3f: UCS-2, big-endian, no byte-order mark
+ encoding = ENCODING_UCS_2_12;
+ error("no byte-order mark for UCS-2 entity");
+ }
+ else if (tryEncoding(signature, (byte) 0x3c, (byte) 0x00,
+ (byte) 0x3f, (byte) 0x00))
+ {
+ // UTF-16LE (otherwise, malformed UTF-16)
+ // 0x3c 0x00 0x3f 0x00: UCS-2, little-endian, no byte-order mark
+ encoding = ENCODING_UCS_2_21;
+ error("no byte-order mark for UCS-2 entity");
+ }
+ //
+ // THIRD: ASCII-derived encodings, fixed and variable lengths
+ //
+ else if (tryEncoding(signature, (byte) 0x3c, (byte) 0x3f,
+ (byte) 0x78, (byte) 0x6d))
+ {
+ // ASCII derived
+ // 0x3c 0x3f 0x78 0x6d: UTF-8 or other 8-bit markup (read ENCODING)
+ encoding = ENCODING_UTF_8;
+ prefetchASCIIEncodingDecl();
+ }
+ else if (signature[0] == (byte) 0xef
+ && signature[1] == (byte) 0xbb
+ && signature[2] == (byte) 0xbf)
+ {
+ // 0xef 0xbb 0xbf: UTF-8 BOM (not part of document text)
+ // this un-needed notion slipped into XML 2nd ed through a
+ // "non-normative" erratum; now required by MSFT and UDDI,
+ // and E22 made it normative.
+ encoding = ENCODING_UTF_8;
+ is.read(); is.read(); is.read();
+ }
+ else
+ {
+ // 4c 6f a7 94 ... we don't understand EBCDIC flavors
+ // ... but we COULD at least kick in some fixed code page
+
+ // (default) UTF-8 without encoding/XML declaration
+ encoding = ENCODING_UTF_8;
+ }
+ }
- /**
- * This method pushes a string back onto input.
- * <p>It is useful either as the expansion of an internal entity,
- * or for backtracking during the parse.
- * <p>Call pushCharArray () to do the actual work.
- * @param s The string to push back onto input.
- * @see #pushCharArray
- */
- private void pushString (String ename, String s)
- throws SAXException
- {
- char ch[] = s.toCharArray ();
- pushCharArray (ename, ch, 0, ch.length);
- }
+ /**
+ * Check for a four-byte signature.
+ * <p>Utility routine for detectEncoding ().
+ * <p>Always looks for some part of "<?XML" in a specific encoding.
+ * @param sig The first four bytes read.
+ * @param b1 The first byte of the signature
+ * @param b2 The second byte of the signature
+ * @param b3 The third byte of the signature
+ * @param b4 The fourth byte of the signature
+ * @see #detectEncoding
+ */
+ private static boolean tryEncoding(byte[] sig, byte b1, byte b2,
+ byte b3, byte b4)
+ {
+ return (sig[0] == b1 && sig[1] == b2
+ && sig[2] == b3 && sig[3] == b4);
+ }
+ /**
+ * Check for a two-byte signature.
+ * <p>Looks for a UCS-2 byte-order mark.
+ * <p>Utility routine for detectEncoding ().
+ * @param sig The first four bytes read.
+ * @param b1 The first byte of the signature
+ * @param b2 The second byte of the signature
+ * @see #detectEncoding
+ */
+ private static boolean tryEncoding(byte[] sig, byte b1, byte b2)
+ {
+ return ((sig[0] == b1) && (sig[1] == b2));
+ }
- /**
- * Push a new internal input source.
- * <p>This method is useful for expanding an internal entity,
- * or for unreading a string of characters. It creates a new
- * readBuffer containing the characters in the array, instead
- * of characters converted from an input byte stream.
- * @param ch The char array to push.
- * @see #pushString
- * @see #pushURL
- * @see #readBuffer
- * @see #sourceType
- * @see #pushInput
- */
- private void pushCharArray (String ename, char ch[], int start, int length)
+ /**
+ * This method pushes a string back onto input.
+ * <p>It is useful either as the expansion of an internal entity,
+ * or for backtracking during the parse.
+ * <p>Call pushCharArray () to do the actual work.
+ * @param s The string to push back onto input.
+ * @see #pushCharArray
+ */
+ private void pushString(String ename, String s)
throws SAXException
- {
- // Push the existing status
- pushInput (ename);
- if (ename != null && doReport) {
- dataBufferFlush ();
- handler.startInternalEntity (ename);
- }
- sourceType = INPUT_INTERNAL;
- readBuffer = ch;
- readBufferPos = start;
- readBufferLength = length;
- readBufferOverflow = -1;
- }
-
+ {
+ char[] ch = s.toCharArray();
+ pushCharArray(ename, ch, 0, ch.length);
+ }
- /**
- * Save the current input source onto the stack.
- * <p>This method saves all of the global variables associated with
- * the current input source, so that they can be restored when a new
- * input source has finished. It also tests for entity recursion.
- * <p>The method saves the following global variables onto a stack
- * using a fixed-length array:
- * <ol>
- * <li>sourceType
- * <li>externalEntity
- * <li>readBuffer
- * <li>readBufferPos
- * <li>readBufferLength
- * <li>line
- * <li>encoding
- * </ol>
- * @param ename The name of the entity (if any) causing the new input.
- * @see #popInput
- * @see #sourceType
- * @see #externalEntity
- * @see #readBuffer
- * @see #readBufferPos
- * @see #readBufferLength
- * @see #line
- * @see #encoding
- */
- private void pushInput (String ename)
+ /**
+ * Push a new internal input source.
+ * <p>This method is useful for expanding an internal entity,
+ * or for unreading a string of characters. It creates a new
+ * readBuffer containing the characters in the array, instead
+ * of characters converted from an input byte stream.
+ * @param ch The char array to push.
+ * @see #pushString
+ * @see #pushURL
+ * @see #readBuffer
+ * @see #sourceType
+ * @see #pushInput
+ */
+ private void pushCharArray(String ename, char[] ch, int start, int length)
throws SAXException
- {
- // Check for entity recursion.
- if (ename != null) {
- Enumeration entities = entityStack.elements ();
- while (entities.hasMoreElements ()) {
- String e = (String) entities.nextElement ();
- if (e != null && e == ename) {
- error ("recursive reference to entity", ename, null);
- }
- }
- }
- entityStack.push (ename);
-
- // Don't bother if there is no current input.
- if (sourceType == INPUT_NONE) {
- return;
- }
-
- // Set up a snapshot of the current
- // input source.
- Object input[] = new Object [12];
-
- input [0] = new Integer (sourceType);
- input [1] = externalEntity;
- input [2] = readBuffer;
- input [3] = new Integer (readBufferPos);
- input [4] = new Integer (readBufferLength);
- input [5] = new Integer (line);
- input [6] = new Integer (encoding);
- input [7] = new Integer (readBufferOverflow);
- input [8] = is;
- input [9] = new Integer (currentByteCount);
- input [10] = new Integer (column);
- input [11] = reader;
-
- // Push it onto the stack.
- inputStack.push (input);
- }
+ {
+ // Push the existing status
+ pushInput(ename);
+ if (ename != null && doReport)
+ {
+ dataBufferFlush();
+ handler.startInternalEntity(ename);
+ }
+ sourceType = INPUT_INTERNAL;
+ readBuffer = ch;
+ readBufferPos = start;
+ readBufferLength = length;
+ readBufferOverflow = -1;
+ }
+ /**
+ * Save the current input source onto the stack.
+ * <p>This method saves all of the global variables associated with
+ * the current input source, so that they can be restored when a new
+ * input source has finished. It also tests for entity recursion.
+ * <p>The method saves the following global variables onto a stack
+ * using a fixed-length array:
+ * <ol>
+ * <li>sourceType
+ * <li>externalEntity
+ * <li>readBuffer
+ * <li>readBufferPos
+ * <li>readBufferLength
+ * <li>line
+ * <li>encoding
+ * </ol>
+ * @param ename The name of the entity (if any) causing the new input.
+ * @see #popInput
+ * @see #sourceType
+ * @see #externalEntity
+ * @see #readBuffer
+ * @see #readBufferPos
+ * @see #readBufferLength
+ * @see #line
+ * @see #encoding
+ */
+ private void pushInput(String ename)
+ throws SAXException
+ {
+ // Check for entity recursion.
+ if (ename != null)
+ {
+ Iterator entities = entityStack.iterator();
+ while (entities.hasNext())
+ {
+ String e = (String) entities.next();
+ if (e != null && e == ename)
+ {
+ error("recursive reference to entity", ename, null);
+ }
+ }
+ }
+ entityStack.addLast(ename);
+
+ // Don't bother if there is no current input.
+ if (sourceType == INPUT_NONE)
+ {
+ return;
+ }
+
+ // Set up a snapshot of the current
+ // input source.
+ Input input = new Input();
+
+ input.sourceType = sourceType;
+ input.externalEntity = externalEntity;
+ input.readBuffer = readBuffer;
+ input.readBufferPos = readBufferPos;
+ input.readBufferLength = readBufferLength;
+ input.line = line;
+ input.encoding = encoding;
+ input.readBufferOverflow = readBufferOverflow;
+ input.is = is;
+ input.currentByteCount = currentByteCount;
+ input.column = column;
+ input.reader = reader;
+
+ // Push it onto the stack.
+ inputStack.addLast(input);
+ }
- /**
- * Restore a previous input source.
- * <p>This method restores all of the global variables associated with
- * the current input source.
- * @exception java.io.EOFException
- * If there are no more entries on the input stack.
- * @see #pushInput
- * @see #sourceType
- * @see #externalEntity
- * @see #readBuffer
- * @see #readBufferPos
- * @see #readBufferLength
- * @see #line
- * @see #encoding
- */
- private void popInput ()
+ /**
+ * Restore a previous input source.
+ * <p>This method restores all of the global variables associated with
+ * the current input source.
+ * @exception java.io.EOFException
+ * If there are no more entries on the input stack.
+ * @see #pushInput
+ * @see #sourceType
+ * @see #externalEntity
+ * @see #readBuffer
+ * @see #readBufferPos
+ * @see #readBufferLength
+ * @see #line
+ * @see #encoding
+ */
+ private void popInput()
throws SAXException, IOException
- {
- String ename = (String) entityStack.pop ();
-
- if (ename != null && doReport)
- dataBufferFlush ();
- switch (sourceType) {
- case INPUT_STREAM:
- handler.endExternalEntity (ename);
- is.close ();
- break;
- case INPUT_READER:
- handler.endExternalEntity (ename);
- reader.close ();
- break;
- case INPUT_INTERNAL:
- if (ename != null && doReport)
- handler.endInternalEntity (ename);
- break;
- }
-
- // Throw an EOFException if there
- // is nothing else to pop.
- if (inputStack.isEmpty ()) {
- throw new EOFException ("no more input");
- }
-
- Object input [] = (Object[]) inputStack.pop ();
-
- sourceType = ((Integer) input [0]).intValue ();
- externalEntity = (URLConnection) input [1];
- readBuffer = (char[]) input [2];
- readBufferPos = ((Integer) input [3]).intValue ();
- readBufferLength = ((Integer) input [4]).intValue ();
- line = ((Integer) input [5]).intValue ();
- encoding = ((Integer) input [6]).intValue ();
- readBufferOverflow = ((Integer) input [7]).intValue ();
- is = (InputStream) input [8];
- currentByteCount = ((Integer) input [9]).intValue ();
- column = ((Integer) input [10]).intValue ();
- reader = (Reader) input [11];
- }
-
+ {
+ String ename = (String) entityStack.removeLast();
- /**
- * Return true if we can read the expected character.
- * <p>Note that the character will be removed from the input stream
- * on success, but will be put back on failure. Do not attempt to
- * read the character again if the method succeeds.
- * @param delim The character that should appear next. For a
- * insensitive match, you must supply this in upper-case.
- * @return true if the character was successfully read, or false if
- * it was not.
- * @see #tryRead (String)
- */
- private boolean tryRead (char delim)
- throws SAXException, IOException
- {
- char c;
-
- // Read the character
- c = readCh ();
-
- // Test for a match, and push the character
- // back if the match fails.
- if (c == delim) {
- return true;
- } else {
- unread (c);
- return false;
- }
- }
+ if (ename != null && doReport)
+ {
+ dataBufferFlush();
+ }
+ switch (sourceType)
+ {
+ case INPUT_STREAM:
+ handler.endExternalEntity(ename);
+ is.close();
+ break;
+ case INPUT_READER:
+ handler.endExternalEntity(ename);
+ reader.close();
+ break;
+ case INPUT_INTERNAL:
+ if (ename != null && doReport)
+ {
+ handler.endInternalEntity(ename);
+ }
+ break;
+ }
+ // Throw an EOFException if there
+ // is nothing else to pop.
+ if (inputStack.isEmpty())
+ {
+ throw new EOFException("no more input");
+ }
- /**
- * Return true if we can read the expected string.
- * <p>This is simply a convenience method.
- * <p>Note that the string will be removed from the input stream
- * on success, but will be put back on failure. Do not attempt to
- * read the string again if the method succeeds.
- * <p>This method will push back a character rather than an
- * array whenever possible (probably the majority of cases).
- * @param delim The string that should appear next.
- * @return true if the string was successfully read, or false if
- * it was not.
- * @see #tryRead (char)
- */
- private boolean tryRead (String delim)
+ Input input = (Input) inputStack.removeLast();
+
+ sourceType = input.sourceType;
+ externalEntity = input.externalEntity;
+ readBuffer = input.readBuffer;
+ readBufferPos = input.readBufferPos;
+ readBufferLength = input.readBufferLength;
+ line = input.line;
+ encoding = input.encoding;
+ readBufferOverflow = input.readBufferOverflow;
+ is = input.is;
+ currentByteCount = input.currentByteCount;
+ column = input.column;
+ reader = input.reader;
+ }
+
+ /**
+ * Return true if we can read the expected character.
+ * <p>Note that the character will be removed from the input stream
+ * on success, but will be put back on failure. Do not attempt to
+ * read the character again if the method succeeds.
+ * @param delim The character that should appear next. For a
+ * insensitive match, you must supply this in upper-case.
+ * @return true if the character was successfully read, or false if
+ * it was not.
+ * @see #tryRead (String)
+ */
+ private boolean tryRead(char delim)
throws SAXException, IOException
- {
- return tryRead (delim.toCharArray ());
- }
+ {
+ char c;
+
+ // Read the character
+ c = readCh();
+
+ // Test for a match, and push the character
+ // back if the match fails.
+ if (c == delim)
+ {
+ return true;
+ }
+ else
+ {
+ unread(c);
+ return false;
+ }
+ }
- private boolean tryRead (char ch [])
+ /**
+ * Return true if we can read the expected string.
+ * <p>This is simply a convenience method.
+ * <p>Note that the string will be removed from the input stream
+ * on success, but will be put back on failure. Do not attempt to
+ * read the string again if the method succeeds.
+ * <p>This method will push back a character rather than an
+ * array whenever possible (probably the majority of cases).
+ * @param delim The string that should appear next.
+ * @return true if the string was successfully read, or false if
+ * it was not.
+ * @see #tryRead (char)
+ */
+ private boolean tryRead(String delim)
throws SAXException, IOException
- {
- char c;
-
- // Compare the input, character-
- // by character.
-
- for (int i = 0; i < ch.length; i++) {
- c = readCh ();
- if (c != ch [i]) {
- unread (c);
- if (i != 0) {
- unread (ch, i);
- }
- return false;
- }
- }
- return true;
- }
-
-
+ {
+ return tryRead(delim.toCharArray());
+ }
- /**
- * Return true if we can read some whitespace.
- * <p>This is simply a convenience method.
- * <p>This method will push back a character rather than an
- * array whenever possible (probably the majority of cases).
- * @return true if whitespace was found.
- */
- private boolean tryWhitespace ()
+ private boolean tryRead(char[] ch)
throws SAXException, IOException
- {
- char c;
- c = readCh ();
- if (isWhitespace (c)) {
- skipWhitespace ();
- return true;
- } else {
- unread (c);
- return false;
- }
- }
+ {
+ char c;
+ // Compare the input, character-
+ // by character.
+
+ for (int i = 0; i < ch.length; i++)
+ {
+ c = readCh();
+ if (c != ch[i])
+ {
+ unread(c);
+ if (i != 0)
+ {
+ unread(ch, i);
+ }
+ return false;
+ }
+ }
+ return true;
+ }
- /**
- * Read all data until we find the specified string.
- * This is useful for scanning CDATA sections and PIs.
- * <p>This is inefficient right now, since it calls tryRead ()
- * for every character.
- * @param delim The string delimiter
- * @see #tryRead (String, boolean)
- * @see #readCh
- */
- private void parseUntil (String delim)
+ /**
+ * Return true if we can read some whitespace.
+ * <p>This is simply a convenience method.
+ * <p>This method will push back a character rather than an
+ * array whenever possible (probably the majority of cases).
+ * @return true if whitespace was found.
+ */
+ private boolean tryWhitespace()
throws SAXException, IOException
- {
- parseUntil (delim.toCharArray ());
- }
-
- private void parseUntil (char delim [])
+ {
+ char c;
+ c = readCh();
+ if (isWhitespace(c))
+ {
+ skipWhitespace();
+ return true;
+ }
+ else
+ {
+ unread(c);
+ return false;
+ }
+ }
+
+ /**
+ * Read all data until we find the specified string.
+ * This is useful for scanning CDATA sections and PIs.
+ * <p>This is inefficient right now, since it calls tryRead ()
+ * for every character.
+ * @param delim The string delimiter
+ * @see #tryRead (String, boolean)
+ * @see #readCh
+ */
+ private void parseUntil(String delim)
throws SAXException, IOException
- {
- char c;
- int startLine = line;
-
- try {
- while (!tryRead (delim)) {
- c = readCh ();
- dataBufferAppend (c);
- }
- } catch (EOFException e) {
- error ("end of input while looking for delimiter "
- + "(started on line " + startLine
- + ')', null, new String (delim));
- }
- }
-
-
- //////////////////////////////////////////////////////////////////////
- // Low-level I/O.
- //////////////////////////////////////////////////////////////////////
+ {
+ parseUntil(delim.toCharArray());
+ }
+ private void parseUntil(char[] delim)
+ throws SAXException, IOException
+ {
+ char c;
+ int startLine = line;
+
+ try
+ {
+ while (!tryRead(delim))
+ {
+ c = readCh();
+ dataBufferAppend(c);
+ }
+ }
+ catch (EOFException e)
+ {
+ error("end of input while looking for delimiter "
+ + "(started on line " + startLine
+ + ')', null, new String(delim));
+ }
+ }
- /**
- * Prefetch US-ASCII XML/text decl from input stream into read buffer.
- * Doesn't buffer more than absolutely needed, so that when an encoding
- * decl says we need to create an InputStreamReader, we can discard our
- * buffer and reset(). Caller knows the first chars of the decl exist
- * in the input stream.
- */
- private void prefetchASCIIEncodingDecl ()
+ //////////////////////////////////////////////////////////////////////
+ // Low-level I/O.
+ //////////////////////////////////////////////////////////////////////
+
+ /**
+ * Prefetch US-ASCII XML/text decl from input stream into read buffer.
+ * Doesn't buffer more than absolutely needed, so that when an encoding
+ * decl says we need to create an InputStreamReader, we can discard our
+ * buffer and reset(). Caller knows the first chars of the decl exist
+ * in the input stream.
+ */
+ private void prefetchASCIIEncodingDecl()
throws SAXException, IOException
- {
- int ch;
- readBufferPos = readBufferLength = 0;
-
- is.mark (readBuffer.length);
- while (true) {
- ch = is.read ();
- readBuffer [readBufferLength++] = (char) ch;
- switch (ch) {
- case (int) '>':
- return;
- case -1:
- error ("file ends before end of XML or encoding declaration.",
- null, "?>");
- }
- if (readBuffer.length == readBufferLength)
- error ("unfinished XML or encoding declaration");
- }
- }
+ {
+ int ch;
+ readBufferPos = readBufferLength = 0;
+
+ is.mark(readBuffer.length);
+ while (true)
+ {
+ ch = is.read();
+ readBuffer[readBufferLength++] = (char) ch;
+ switch (ch)
+ {
+ case (int) '>':
+ return;
+ case -1:
+ error("file ends before end of XML or encoding declaration.",
+ null, "?>");
+ }
+ if (readBuffer.length == readBufferLength)
+ {
+ error("unfinished XML or encoding declaration");
+ }
+ }
+ }
- /**
- * Read a chunk of data from an external input source.
- * <p>This is simply a front-end that fills the rawReadBuffer
- * with bytes, then calls the appropriate encoding handler.
- * @see #encoding
- * @see #rawReadBuffer
- * @see #readBuffer
- * @see #filterCR
- * @see #copyUtf8ReadBuffer
- * @see #copyIso8859_1ReadBuffer
- * @see #copyUcs_2ReadBuffer
- * @see #copyUcs_4ReadBuffer
- */
- private void readDataChunk ()
+ /**
+ * Read a chunk of data from an external input source.
+ * <p>This is simply a front-end that fills the rawReadBuffer
+ * with bytes, then calls the appropriate encoding handler.
+ * @see #encoding
+ * @see #rawReadBuffer
+ * @see #readBuffer
+ * @see #filterCR
+ * @see #copyUtf8ReadBuffer
+ * @see #copyIso8859_1ReadBuffer
+ * @see #copyUcs_2ReadBuffer
+ * @see #copyUcs_4ReadBuffer
+ */
+ private void readDataChunk()
throws SAXException, IOException
- {
- int count;
-
- // See if we have any overflow (filterCR sets for CR at end)
- if (readBufferOverflow > -1) {
- readBuffer [0] = (char) readBufferOverflow;
- readBufferOverflow = -1;
- readBufferPos = 1;
- sawCR = true;
- } else {
- readBufferPos = 0;
- sawCR = false;
- }
-
- // input from a character stream.
- if (sourceType == INPUT_READER) {
- count = reader.read (readBuffer,
- readBufferPos, READ_BUFFER_MAX - readBufferPos);
- if (count < 0)
- readBufferLength = readBufferPos;
- else
- readBufferLength = readBufferPos + count;
- if (readBufferLength > 0)
- filterCR (count >= 0);
- sawCR = false;
- return;
- }
-
- // Read as many bytes as possible into the raw buffer.
- count = is.read (rawReadBuffer, 0, READ_BUFFER_MAX);
-
- // Dispatch to an encoding-specific reader method to populate
- // the readBuffer. In most parser speed profiles, these routines
- // show up at the top of the CPU usage chart.
- if (count > 0) {
- switch (encoding) {
- // one byte builtins
- case ENCODING_ASCII:
- copyIso8859_1ReadBuffer (count, (char) 0x0080);
- break;
- case ENCODING_UTF_8:
- copyUtf8ReadBuffer (count);
- break;
- case ENCODING_ISO_8859_1:
- copyIso8859_1ReadBuffer (count, (char) 0);
- break;
-
- // two byte builtins
- case ENCODING_UCS_2_12:
- copyUcs2ReadBuffer (count, 8, 0);
- break;
- case ENCODING_UCS_2_21:
- copyUcs2ReadBuffer (count, 0, 8);
- break;
-
- // four byte builtins
- case ENCODING_UCS_4_1234:
- copyUcs4ReadBuffer (count, 24, 16, 8, 0);
- break;
- case ENCODING_UCS_4_4321:
- copyUcs4ReadBuffer (count, 0, 8, 16, 24);
- break;
- case ENCODING_UCS_4_2143:
- copyUcs4ReadBuffer (count, 16, 24, 0, 8);
- break;
- case ENCODING_UCS_4_3412:
- copyUcs4ReadBuffer (count, 8, 0, 24, 16);
- break;
- }
- } else
- readBufferLength = readBufferPos;
-
- readBufferPos = 0;
-
- // Filter out all carriage returns if we've seen any
- // (including any saved from a previous read)
- if (sawCR) {
- filterCR (count >= 0);
- sawCR = false;
-
- // must actively report EOF, lest some CRs get lost.
- if (readBufferLength == 0 && count >= 0)
- readDataChunk ();
- }
-
- if (count > 0)
- currentByteCount += count;
- }
+ {
+ int count;
+
+ // See if we have any overflow (filterCR sets for CR at end)
+ if (readBufferOverflow > -1)
+ {
+ readBuffer[0] = (char) readBufferOverflow;
+ readBufferOverflow = -1;
+ readBufferPos = 1;
+ sawCR = true;
+ }
+ else
+ {
+ readBufferPos = 0;
+ sawCR = false;
+ }
+ // input from a character stream.
+ if (sourceType == INPUT_READER)
+ {
+ count = reader.read(readBuffer,
+ readBufferPos, READ_BUFFER_MAX - readBufferPos);
+ if (count < 0)
+ {
+ readBufferLength = readBufferPos;
+ }
+ else
+ {
+ readBufferLength = readBufferPos + count;
+ }
+ if (readBufferLength > 0)
+ {
+ filterCR(count >= 0);
+ }
+ sawCR = false;
+ return;
+ }
+
+ // Read as many bytes as possible into the raw buffer.
+ count = is.read(rawReadBuffer, 0, READ_BUFFER_MAX);
+
+ // Dispatch to an encoding-specific reader method to populate
+ // the readBuffer. In most parser speed profiles, these routines
+ // show up at the top of the CPU usage chart.
+ if (count > 0)
+ {
+ switch (encoding)
+ {
+ // one byte builtins
+ case ENCODING_ASCII:
+ copyIso8859_1ReadBuffer(count, (char) 0x0080);
+ break;
+ case ENCODING_UTF_8:
+ copyUtf8ReadBuffer(count);
+ break;
+ case ENCODING_ISO_8859_1:
+ copyIso8859_1ReadBuffer(count, (char) 0);
+ break;
- /**
- * Filter carriage returns in the read buffer.
- * CRLF becomes LF; CR becomes LF.
- * @param moreData true iff more data might come from the same source
- * @see #readDataChunk
- * @see #readBuffer
- * @see #readBufferOverflow
- */
- private void filterCR (boolean moreData)
- {
- int i, j;
+ // two byte builtins
+ case ENCODING_UCS_2_12:
+ copyUcs2ReadBuffer(count, 8, 0);
+ break;
+ case ENCODING_UCS_2_21:
+ copyUcs2ReadBuffer(count, 0, 8);
+ break;
+
+ // four byte builtins
+ case ENCODING_UCS_4_1234:
+ copyUcs4ReadBuffer(count, 24, 16, 8, 0);
+ break;
+ case ENCODING_UCS_4_4321:
+ copyUcs4ReadBuffer(count, 0, 8, 16, 24);
+ break;
+ case ENCODING_UCS_4_2143:
+ copyUcs4ReadBuffer(count, 16, 24, 0, 8);
+ break;
+ case ENCODING_UCS_4_3412:
+ copyUcs4ReadBuffer(count, 8, 0, 24, 16);
+ break;
+ }
+ }
+ else
+ {
+ readBufferLength = readBufferPos;
+ }
- readBufferOverflow = -1;
+ readBufferPos = 0;
+
+ // Filter out all carriage returns if we've seen any
+ // (including any saved from a previous read)
+ if (sawCR)
+ {
+ filterCR(count >= 0);
+ sawCR = false;
+
+ // must actively report EOF, lest some CRs get lost.
+ if (readBufferLength == 0 && count >= 0)
+ {
+ readDataChunk();
+ }
+ }
+
+ if (count > 0)
+ {
+ currentByteCount += count;
+ }
+ }
+
+ /**
+ * Filter carriage returns in the read buffer.
+ * CRLF becomes LF; CR becomes LF.
+ * @param moreData true iff more data might come from the same source
+ * @see #readDataChunk
+ * @see #readBuffer
+ * @see #readBufferOverflow
+ */
+ private void filterCR(boolean moreData)
+ {
+ int i, j;
+ readBufferOverflow = -1;
+
loop:
- for (i = j = readBufferPos; j < readBufferLength; i++, j++) {
- switch (readBuffer [j]) {
- case '\r':
- if (j == readBufferLength - 1) {
- if (moreData) {
- readBufferOverflow = '\r';
- readBufferLength--;
- } else // CR at end of buffer
- readBuffer [i++] = '\n';
- break loop;
- } else if (readBuffer [j + 1] == '\n') {
- j++;
- }
- readBuffer [i] = '\n';
- break;
-
- case '\n':
- default:
- readBuffer [i] = readBuffer [j];
- break;
- }
- }
- readBufferLength = i;
- }
+ for (i = j = readBufferPos; j < readBufferLength; i++, j++)
+ {
+ switch (readBuffer[j])
+ {
+ case '\r':
+ if (j == readBufferLength - 1)
+ {
+ if (moreData)
+ {
+ readBufferOverflow = '\r';
+ readBufferLength--;
+ }
+ else // CR at end of buffer
+ {
+ readBuffer[i++] = '\n';
+ }
+ break loop;
+ }
+ else if (readBuffer[j + 1] == '\n')
+ {
+ j++;
+ }
+ readBuffer[i] = '\n';
+ break;
- /**
- * Convert a buffer of UTF-8-encoded bytes into UTF-16 characters.
- * <p>When readDataChunk () calls this method, the raw bytes are in
- * rawReadBuffer, and the final characters will appear in
- * readBuffer.
- * <p>Note that as of Unicode 3.1, good practice became a requirement,
- * so that each Unicode character has exactly one UTF-8 representation.
- * @param count The number of bytes to convert.
- * @see #readDataChunk
- * @see #rawReadBuffer
- * @see #readBuffer
- * @see #getNextUtf8Byte
- */
- private void copyUtf8ReadBuffer (int count)
+ case '\n':
+ default:
+ readBuffer[i] = readBuffer[j];
+ break;
+ }
+ }
+ readBufferLength = i;
+ }
+
+ /**
+ * Convert a buffer of UTF-8-encoded bytes into UTF-16 characters.
+ * <p>When readDataChunk () calls this method, the raw bytes are in
+ * rawReadBuffer, and the final characters will appear in
+ * readBuffer.
+ * <p>Note that as of Unicode 3.1, good practice became a requirement,
+ * so that each Unicode character has exactly one UTF-8 representation.
+ * @param count The number of bytes to convert.
+ * @see #readDataChunk
+ * @see #rawReadBuffer
+ * @see #readBuffer
+ * @see #getNextUtf8Byte
+ */
+ private void copyUtf8ReadBuffer(int count)
throws SAXException, IOException
- {
- int i = 0;
- int j = readBufferPos;
- int b1;
- char c = 0;
-
- /*
- // check once, so the runtime won't (if it's smart enough)
- if (count < 0 || count > rawReadBuffer.length)
- throw new ArrayIndexOutOfBoundsException (Integer.toString (count));
- */
-
- while (i < count) {
- b1 = rawReadBuffer [i++];
-
- // Determine whether we are dealing
- // with a one-, two-, three-, or four-
- // byte sequence.
- if (b1 < 0) {
- if ((b1 & 0xe0) == 0xc0) {
- // 2-byte sequence: 00000yyyyyxxxxxx = 110yyyyy 10xxxxxx
- c = (char) (((b1 & 0x1f) << 6)
- | getNextUtf8Byte (i++, count));
- if (c < 0x0080)
- encodingError ("Illegal two byte UTF-8 sequence",
- c, 0);
- //Sec 2.11
- // [1] the two-character sequence #xD #xA
- // [2] the two-character sequence #xD #x85
- if ((c == 0x0085 || c == 0x000a) && sawCR)
- continue;
-
- // Sec 2.11
- // [3] the single character #x85
-
- if(c == 0x0085 && xmlVersion == XML_11)
- readBuffer[j++] = '\r';
- } else if ((b1 & 0xf0) == 0xe0) {
- // 3-byte sequence:
- // zzzzyyyyyyxxxxxx = 1110zzzz 10yyyyyy 10xxxxxx
- // most CJKV characters
- c = (char) (((b1 & 0x0f) << 12) |
- (getNextUtf8Byte (i++, count) << 6) |
- getNextUtf8Byte (i++, count));
- //sec 2.11
- //[4] the single character #x2028
- if(c == 0x2028 && xmlVersion == XML_11){
- readBuffer[j++] = '\r';
- sawCR = true;
- continue;
- }
- if (c < 0x0800 || (c >= 0xd800 && c <= 0xdfff))
- encodingError ("Illegal three byte UTF-8 sequence",
- c, 0);
- } else if ((b1 & 0xf8) == 0xf0) {
- // 4-byte sequence: 11101110wwwwzzzzyy + 110111yyyyxxxxxx
- // = 11110uuu 10uuzzzz 10yyyyyy 10xxxxxx
- // (uuuuu = wwww + 1)
- // "Surrogate Pairs" ... from the "Astral Planes"
- // Unicode 3.1 assigned the first characters there
- int iso646 = b1 & 07;
- iso646 = (iso646 << 6) + getNextUtf8Byte (i++, count);
- iso646 = (iso646 << 6) + getNextUtf8Byte (i++, count);
- iso646 = (iso646 << 6) + getNextUtf8Byte (i++, count);
-
- if (iso646 <= 0xffff) {
- encodingError ("Illegal four byte UTF-8 sequence",
- iso646, 0);
- } else {
- if (iso646 > 0x0010ffff)
- encodingError (
- "UTF-8 value out of range for Unicode",
- iso646, 0);
- iso646 -= 0x010000;
- readBuffer [j++] = (char) (0xd800 | (iso646 >> 10));
- readBuffer [j++] = (char) (0xdc00 | (iso646 & 0x03ff));
- continue;
- }
- } else {
- // The five and six byte encodings aren't supported;
- // they exceed the Unicode (and XML) range.
- encodingError (
- "unsupported five or six byte UTF-8 sequence",
- 0xff & b1, i);
- // NOTREACHED
- c = 0;
- }
- } else {
- // 1-byte sequence: 000000000xxxxxxx = 0xxxxxxx
- // (US-ASCII character, "common" case, one branch to here)
- c = (char) b1;
- }
- readBuffer [j++] = c;
- if (c == '\r')
- sawCR = true;
- }
- // How many characters have we read?
- readBufferLength = j;
- }
+ {
+ int i = 0;
+ int j = readBufferPos;
+ int b1;
+ char c = 0;
+
+ /*
+ // check once, so the runtime won't (if it's smart enough)
+ if (count < 0 || count > rawReadBuffer.length)
+ throw new ArrayIndexOutOfBoundsException (Integer.toString (count));
+ */
+ while (i < count)
+ {
+ b1 = rawReadBuffer[i++];
- /**
- * Return the next byte value in a UTF-8 sequence.
- * If it is not possible to get a byte from the current
- * entity, throw an exception.
- * @param pos The current position in the rawReadBuffer.
- * @param count The number of bytes in the rawReadBuffer
- * @return The significant six bits of a non-initial byte in
- * a UTF-8 sequence.
- * @exception EOFException If the sequence is incomplete.
- */
- private int getNextUtf8Byte (int pos, int count)
+ // Determine whether we are dealing
+ // with a one-, two-, three-, or four-
+ // byte sequence.
+ if (b1 < 0)
+ {
+ if ((b1 & 0xe0) == 0xc0)
+ {
+ // 2-byte sequence: 00000yyyyyxxxxxx = 110yyyyy 10xxxxxx
+ c = (char) (((b1 & 0x1f) << 6)
+ | getNextUtf8Byte(i++, count));
+ if (c < 0x0080)
+ {
+ encodingError("Illegal two byte UTF-8 sequence",
+ c, 0);
+ }
+
+ //Sec 2.11
+ // [1] the two-character sequence #xD #xA
+ // [2] the two-character sequence #xD #x85
+ if ((c == 0x0085 || c == 0x000a) && sawCR)
+ {
+ continue;
+ }
+
+ // Sec 2.11
+ // [3] the single character #x85
+
+ if (c == 0x0085 && xmlVersion == XML_11)
+ {
+ readBuffer[j++] = '\r';
+ }
+ }
+ else if ((b1 & 0xf0) == 0xe0)
+ {
+ // 3-byte sequence:
+ // zzzzyyyyyyxxxxxx = 1110zzzz 10yyyyyy 10xxxxxx
+ // most CJKV characters
+ c = (char) (((b1 & 0x0f) << 12) |
+ (getNextUtf8Byte(i++, count) << 6) |
+ getNextUtf8Byte(i++, count));
+ //sec 2.11
+ //[4] the single character #x2028
+ if (c == 0x2028 && xmlVersion == XML_11)
+ {
+ readBuffer[j++] = '\r';
+ sawCR = true;
+ continue;
+ }
+ if (c < 0x0800 || (c >= 0xd800 && c <= 0xdfff))
+ {
+ encodingError("Illegal three byte UTF-8 sequence",
+ c, 0);
+ }
+ }
+ else if ((b1 & 0xf8) == 0xf0)
+ {
+ // 4-byte sequence: 11101110wwwwzzzzyy + 110111yyyyxxxxxx
+ // = 11110uuu 10uuzzzz 10yyyyyy 10xxxxxx
+ // (uuuuu = wwww + 1)
+ // "Surrogate Pairs" ... from the "Astral Planes"
+ // Unicode 3.1 assigned the first characters there
+ int iso646 = b1 & 07;
+ iso646 = (iso646 << 6) + getNextUtf8Byte(i++, count);
+ iso646 = (iso646 << 6) + getNextUtf8Byte(i++, count);
+ iso646 = (iso646 << 6) + getNextUtf8Byte(i++, count);
+
+ if (iso646 <= 0xffff)
+ {
+ encodingError("Illegal four byte UTF-8 sequence",
+ iso646, 0);
+ }
+ else
+ {
+ if (iso646 > 0x0010ffff)
+ {
+ encodingError("UTF-8 value out of range for Unicode",
+ iso646, 0);
+ }
+ iso646 -= 0x010000;
+ readBuffer[j++] = (char) (0xd800 | (iso646 >> 10));
+ readBuffer[j++] = (char) (0xdc00 | (iso646 & 0x03ff));
+ continue;
+ }
+ }
+ else
+ {
+ // The five and six byte encodings aren't supported;
+ // they exceed the Unicode (and XML) range.
+ encodingError("unsupported five or six byte UTF-8 sequence",
+ 0xff & b1, i);
+ // NOTREACHED
+ c = 0;
+ }
+ }
+ else
+ {
+ // 1-byte sequence: 000000000xxxxxxx = 0xxxxxxx
+ // (US-ASCII character, "common" case, one branch to here)
+ c = (char) b1;
+ }
+ readBuffer[j++] = c;
+ if (c == '\r')
+ {
+ sawCR = true;
+ }
+ }
+ // How many characters have we read?
+ readBufferLength = j;
+ }
+
+ /**
+ * Return the next byte value in a UTF-8 sequence.
+ * If it is not possible to get a byte from the current
+ * entity, throw an exception.
+ * @param pos The current position in the rawReadBuffer.
+ * @param count The number of bytes in the rawReadBuffer
+ * @return The significant six bits of a non-initial byte in
+ * a UTF-8 sequence.
+ * @exception EOFException If the sequence is incomplete.
+ */
+ private int getNextUtf8Byte(int pos, int count)
throws SAXException, IOException
- {
- int val;
-
- // Take a character from the buffer
- // or from the actual input stream.
- if (pos < count) {
- val = rawReadBuffer [pos];
- } else {
- val = is.read ();
- if (val == -1) {
- encodingError ("unfinished multi-byte UTF-8 sequence at EOF",
- -1, pos);
- }
- }
-
- // Check for the correct bits at the start.
- if ((val & 0xc0) != 0x80) {
- encodingError ("bad continuation of multi-byte UTF-8 sequence",
- val, pos + 1);
- }
-
- // Return the significant bits.
- return (val & 0x3f);
- }
+ {
+ int val;
+
+ // Take a character from the buffer
+ // or from the actual input stream.
+ if (pos < count)
+ {
+ val = rawReadBuffer[pos];
+ }
+ else
+ {
+ val = is.read();
+ if (val == -1)
+ {
+ encodingError("unfinished multi-byte UTF-8 sequence at EOF",
+ -1, pos);
+ }
+ }
+ // Check for the correct bits at the start.
+ if ((val & 0xc0) != 0x80)
+ {
+ encodingError("bad continuation of multi-byte UTF-8 sequence",
+ val, pos + 1);
+ }
- /**
- * Convert a buffer of US-ASCII or ISO-8859-1-encoded bytes into
- * UTF-16 characters.
- *
- * <p>When readDataChunk () calls this method, the raw bytes are in
- * rawReadBuffer, and the final characters will appear in
- * readBuffer.
- *
- * @param count The number of bytes to convert.
- * @param mask For ASCII conversion, 0x7f; else, 0xff.
- * @see #readDataChunk
- * @see #rawReadBuffer
- * @see #readBuffer
- */
- private void copyIso8859_1ReadBuffer (int count, char mask)
- throws IOException
- {
- int i, j;
- for (i = 0, j = readBufferPos; i < count; i++, j++) {
- char c = (char) (rawReadBuffer [i] & 0xff);
- if ((c & mask) != 0)
- throw new CharConversionException ("non-ASCII character U+"
- + Integer.toHexString (c));
- if (c == 0x0085 && xmlVersion == XML_11)
- c = '\r';
- readBuffer [j] = c;
- if (c == '\r') {
- sawCR = true;
- }
- }
- readBufferLength = j;
- }
+ // Return the significant bits.
+ return (val & 0x3f);
+ }
+ /**
+ * Convert a buffer of US-ASCII or ISO-8859-1-encoded bytes into
+ * UTF-16 characters.
+ *
+ * <p>When readDataChunk () calls this method, the raw bytes are in
+ * rawReadBuffer, and the final characters will appear in
+ * readBuffer.
+ *
+ * @param count The number of bytes to convert.
+ * @param mask For ASCII conversion, 0x7f; else, 0xff.
+ * @see #readDataChunk
+ * @see #rawReadBuffer
+ * @see #readBuffer
+ */
+ private void copyIso8859_1ReadBuffer(int count, char mask)
+ throws IOException
+ {
+ int i, j;
+ for (i = 0, j = readBufferPos; i < count; i++, j++)
+ {
+ char c = (char) (rawReadBuffer[i] & 0xff);
+ if ((c & mask) != 0)
+ {
+ throw new CharConversionException("non-ASCII character U+"
+ + Integer.toHexString(c));
+ }
+ if (c == 0x0085 && xmlVersion == XML_11)
+ {
+ c = '\r';
+ }
+ readBuffer[j] = c;
+ if (c == '\r')
+ {
+ sawCR = true;
+ }
+ }
+ readBufferLength = j;
+ }
- /**
- * Convert a buffer of UCS-2-encoded bytes into UTF-16 characters
- * (as used in Java string manipulation).
- *
- * <p>When readDataChunk () calls this method, the raw bytes are in
- * rawReadBuffer, and the final characters will appear in
- * readBuffer.
- * @param count The number of bytes to convert.
- * @param shift1 The number of bits to shift byte 1.
- * @param shift2 The number of bits to shift byte 2
- * @see #readDataChunk
- * @see #rawReadBuffer
- * @see #readBuffer
- */
- private void copyUcs2ReadBuffer (int count, int shift1, int shift2)
+ /**
+ * Convert a buffer of UCS-2-encoded bytes into UTF-16 characters
+ * (as used in Java string manipulation).
+ *
+ * <p>When readDataChunk () calls this method, the raw bytes are in
+ * rawReadBuffer, and the final characters will appear in
+ * readBuffer.
+ * @param count The number of bytes to convert.
+ * @param shift1 The number of bits to shift byte 1.
+ * @param shift2 The number of bits to shift byte 2
+ * @see #readDataChunk
+ * @see #rawReadBuffer
+ * @see #readBuffer
+ */
+ private void copyUcs2ReadBuffer(int count, int shift1, int shift2)
throws SAXException
- {
- int j = readBufferPos;
-
- if (count > 0 && (count % 2) != 0) {
- encodingError ("odd number of bytes in UCS-2 encoding", -1, count);
- }
- // The loops are faster with less internal brancing; hence two
- if (shift1 == 0) { // "UTF-16-LE"
- for (int i = 0; i < count; i += 2) {
- char c = (char) (rawReadBuffer [i + 1] << 8);
- c |= 0xff & rawReadBuffer [i];
- readBuffer [j++] = c;
- if (c == '\r')
- sawCR = true;
- }
- } else { // "UTF-16-BE"
- for (int i = 0; i < count; i += 2) {
- char c = (char) (rawReadBuffer [i] << 8);
- c |= 0xff & rawReadBuffer [i + 1];
- readBuffer [j++] = c;
- if (c == '\r')
- sawCR = true;
- }
- }
- readBufferLength = j;
- }
-
+ {
+ int j = readBufferPos;
+
+ if (count > 0 && (count % 2) != 0)
+ {
+ encodingError("odd number of bytes in UCS-2 encoding", -1, count);
+ }
+ // The loops are faster with less internal brancing; hence two
+ if (shift1 == 0)
+ { // "UTF-16-LE"
+ for (int i = 0; i < count; i += 2)
+ {
+ char c = (char) (rawReadBuffer[i + 1] << 8);
+ c |= 0xff & rawReadBuffer[i];
+ readBuffer[j++] = c;
+ if (c == '\r')
+ {
+ sawCR = true;
+ }
+ }
+ }
+ else
+ { // "UTF-16-BE"
+ for (int i = 0; i < count; i += 2)
+ {
+ char c = (char) (rawReadBuffer[i] << 8);
+ c |= 0xff & rawReadBuffer[i + 1];
+ readBuffer[j++] = c;
+ if (c == '\r')
+ {
+ sawCR = true;
+ }
+ }
+ }
+ readBufferLength = j;
+ }
- /**
- * Convert a buffer of UCS-4-encoded bytes into UTF-16 characters.
- *
- * <p>When readDataChunk () calls this method, the raw bytes are in
- * rawReadBuffer, and the final characters will appear in
- * readBuffer.
- * <p>Java has Unicode chars, and this routine uses surrogate pairs
- * for ISO-10646 values between 0x00010000 and 0x000fffff. An
- * exception is thrown if the ISO-10646 character has no Unicode
- * representation.
- *
- * @param count The number of bytes to convert.
- * @param shift1 The number of bits to shift byte 1.
- * @param shift2 The number of bits to shift byte 2
- * @param shift3 The number of bits to shift byte 2
- * @param shift4 The number of bits to shift byte 2
- * @see #readDataChunk
- * @see #rawReadBuffer
- * @see #readBuffer
- */
- private void copyUcs4ReadBuffer (int count, int shift1, int shift2,
- int shift3, int shift4)
+ /**
+ * Convert a buffer of UCS-4-encoded bytes into UTF-16 characters.
+ *
+ * <p>When readDataChunk () calls this method, the raw bytes are in
+ * rawReadBuffer, and the final characters will appear in
+ * readBuffer.
+ * <p>Java has Unicode chars, and this routine uses surrogate pairs
+ * for ISO-10646 values between 0x00010000 and 0x000fffff. An
+ * exception is thrown if the ISO-10646 character has no Unicode
+ * representation.
+ *
+ * @param count The number of bytes to convert.
+ * @param shift1 The number of bits to shift byte 1.
+ * @param shift2 The number of bits to shift byte 2
+ * @param shift3 The number of bits to shift byte 2
+ * @param shift4 The number of bits to shift byte 2
+ * @see #readDataChunk
+ * @see #rawReadBuffer
+ * @see #readBuffer
+ */
+ private void copyUcs4ReadBuffer(int count, int shift1, int shift2,
+ int shift3, int shift4)
throws SAXException
- {
- int j = readBufferPos;
-
- if (count > 0 && (count % 4) != 0) {
- encodingError (
- "number of bytes in UCS-4 encoding not divisible by 4",
- -1, count);
- }
- for (int i = 0; i < count; i += 4) {
- int value = (((rawReadBuffer [i] & 0xff) << shift1) |
- ((rawReadBuffer [i + 1] & 0xff) << shift2) |
- ((rawReadBuffer [i + 2] & 0xff) << shift3) |
- ((rawReadBuffer [i + 3] & 0xff) << shift4));
- if (value < 0x0000ffff) {
- readBuffer [j++] = (char) value;
- if (value == (int) '\r') {
- sawCR = true;
- }
- } else if (value < 0x0010ffff) {
- value -= 0x010000;
- readBuffer [j++] = (char) (0xd8 | ((value >> 10) & 0x03ff));
- readBuffer [j++] = (char) (0xdc | (value & 0x03ff));
- } else {
- encodingError ("UCS-4 value out of range for Unicode",
- value, i);
- }
- }
- readBufferLength = j;
- }
-
+ {
+ int j = readBufferPos;
+
+ if (count > 0 && (count % 4) != 0)
+ {
+ encodingError("number of bytes in UCS-4 encoding " +
+ "not divisible by 4",
+ -1, count);
+ }
+ for (int i = 0; i < count; i += 4)
+ {
+ int value = (((rawReadBuffer [i] & 0xff) << shift1) |
+ ((rawReadBuffer [i + 1] & 0xff) << shift2) |
+ ((rawReadBuffer [i + 2] & 0xff) << shift3) |
+ ((rawReadBuffer [i + 3] & 0xff) << shift4));
+ if (value < 0x0000ffff)
+ {
+ readBuffer [j++] = (char) value;
+ if (value == (int) '\r')
+ {
+ sawCR = true;
+ }
+ }
+ else if (value < 0x0010ffff)
+ {
+ value -= 0x010000;
+ readBuffer[j++] = (char) (0xd8 | ((value >> 10) & 0x03ff));
+ readBuffer[j++] = (char) (0xdc | (value & 0x03ff));
+ }
+ else
+ {
+ encodingError("UCS-4 value out of range for Unicode",
+ value, i);
+ }
+ }
+ readBufferLength = j;
+ }
- /**
- * Report a character encoding error.
- */
- private void encodingError (String message, int value, int offset)
+ /**
+ * Report a character encoding error.
+ */
+ private void encodingError(String message, int value, int offset)
throws SAXException
- {
- if (value != -1)
- message = message + " (character code: 0x" +
- Integer.toHexString (value) + ')';
- error (message);
- }
+ {
+ if (value != -1)
+ {
+ message = message + " (character code: 0x" +
+ Integer.toHexString(value) + ')';
+ error(message);
+ }
+ }
+
+ //////////////////////////////////////////////////////////////////////
+ // Local Variables.
+ //////////////////////////////////////////////////////////////////////
+
+ /**
+ * Re-initialize the variables for each parse.
+ */
+ private void initializeVariables()
+ {
+ // First line
+ line = 1;
+ column = 0;
+
+ // Set up the buffers for data and names
+ dataBufferPos = 0;
+ dataBuffer = new char[DATA_BUFFER_INITIAL];
+ nameBufferPos = 0;
+ nameBuffer = new char[NAME_BUFFER_INITIAL];
+
+ // Set up the DTD hash tables
+ elementInfo = new HashMap();
+ entityInfo = new HashMap();
+ notationInfo = new HashMap();
+ skippedPE = false;
+
+ // Set up the variables for the current
+ // element context.
+ currentElement = null;
+ currentElementContent = CONTENT_UNDECLARED;
+
+ // Set up the input variables
+ sourceType = INPUT_NONE;
+ inputStack = new LinkedList();
+ entityStack = new LinkedList();
+ externalEntity = null;
+ tagAttributePos = 0;
+ tagAttributes = new String[100];
+ rawReadBuffer = new byte[READ_BUFFER_MAX];
+ readBufferOverflow = -1;
+
+ scratch = new InputSource();
+
+ inLiteral = false;
+ expandPE = false;
+ peIsError = false;
+
+ doReport = false;
+
+ inCDATA = false;
+
+ symbolTable = new Object[SYMBOL_TABLE_LENGTH][];
+ }
+ static class ExternalIdentifiers
+ {
- //////////////////////////////////////////////////////////////////////
- // Local Variables.
- //////////////////////////////////////////////////////////////////////
+ String publicId;
+ String systemId;
+ String baseUri;
- /**
- * Re-initialize the variables for each parse.
- */
- private void initializeVariables ()
+ ExternalIdentifiers()
{
- // First line
- line = 1;
- column = 0;
-
- // Set up the buffers for data and names
- dataBufferPos = 0;
- dataBuffer = new char [DATA_BUFFER_INITIAL];
- nameBufferPos = 0;
- nameBuffer = new char [NAME_BUFFER_INITIAL];
-
- // Set up the DTD hash tables
- elementInfo = new Hashtable ();
- entityInfo = new Hashtable ();
- notationInfo = new Hashtable ();
- skippedPE = false;
-
- // Set up the variables for the current
- // element context.
- currentElement = null;
- currentElementContent = CONTENT_UNDECLARED;
-
- // Set up the input variables
- sourceType = INPUT_NONE;
- inputStack = new Stack ();
- entityStack = new Stack ();
- externalEntity = null;
- tagAttributePos = 0;
- tagAttributes = new String [100];
- rawReadBuffer = new byte [READ_BUFFER_MAX];
- readBufferOverflow = -1;
-
- scratch = new InputSource ();
-
- inLiteral = false;
- expandPE = false;
- peIsError = false;
-
- doReport = false;
-
- inCDATA = false;
-
- symbolTable = new Object [SYMBOL_TABLE_LENGTH][];
}
+ ExternalIdentifiers(String publicId, String systemId, String baseUri)
+ {
+ this.publicId = publicId;
+ this.systemId = systemId;
+ this.baseUri = baseUri;
+ }
+
+ }
- //
- // The current XML handler interface.
- //
- private SAXDriver handler;
-
- //
- // I/O information.
- //
- private Reader reader; // current reader
- private InputStream is; // current input stream
- private int line; // current line number
- private int column; // current column number
- private int sourceType; // type of input source
- private Stack inputStack; // stack of input soruces
- private URLConnection externalEntity; // current external entity
- private int encoding; // current character encoding
- private int currentByteCount; // bytes read from current source
- private InputSource scratch; // temporary
-
- //
- // Buffers for decoded but unparsed character input.
- //
- private char readBuffer [];
- private int readBufferPos;
- private int readBufferLength;
- private int readBufferOverflow; // overflow from last data chunk.
-
-
- //
- // Buffer for undecoded raw byte input.
- //
- private final static int READ_BUFFER_MAX = 16384;
- private byte rawReadBuffer [];
-
-
- //
- // Buffer for attribute values, char refs, DTD stuff.
- //
- private static int DATA_BUFFER_INITIAL = 4096;
- private char dataBuffer [];
- private int dataBufferPos;
-
- //
- // Buffer for parsed names.
- //
- private static int NAME_BUFFER_INITIAL = 1024;
- private char nameBuffer [];
- private int nameBufferPos;
-
- //
- // Save any standalone flag
- //
- private boolean docIsStandalone;
-
- //
- // Hashtables for DTD information on elements, entities, and notations.
- // Populated until we start ignoring decls (because of skipping a PE)
- //
- private Hashtable elementInfo;
- private Hashtable entityInfo;
- private Hashtable notationInfo;
- private boolean skippedPE;
-
-
- //
- // Element type currently in force.
- //
- private String currentElement;
- private int currentElementContent;
-
- //
- // Stack of entity names, to detect recursion.
- //
- private Stack entityStack;
-
- //
- // PE expansion is enabled in most chunks of the DTD, not all.
- // When it's enabled, literals are treated differently.
- //
- private boolean inLiteral;
- private boolean expandPE;
- private boolean peIsError;
-
- //
- // can't report entity expansion inside two constructs:
- // - attribute expansions (internal entities only)
- // - markup declarations (parameter entities only)
- //
- private boolean doReport;
-
- //
- // Symbol table, for caching interned names.
- //
- // These show up wherever XML names or nmtokens are used: naming elements,
- // attributes, PIs, notations, entities, and enumerated attribute values.
- //
- // NOTE: This hashtable doesn't grow. The default size is intended to be
- // rather large for most documents. Example: one snapshot of the DocBook
- // XML 4.1 DTD used only about 350 such names. As a rule, only pathological
- // documents (ones that don't reuse names) should ever see much collision.
- //
- // Be sure that SYMBOL_TABLE_LENGTH always stays prime, for best hashing.
- // "2039" keeps the hash table size at about two memory pages on typical
- // 32 bit hardware.
- //
- private final static int SYMBOL_TABLE_LENGTH = 2039;
+ static class EntityInfo
+ {
- private Object symbolTable [][];
+ int type;
+ ExternalIdentifiers ids;
+ String value;
+ String notationName;
+
+ }
- //
- // Hash table of attributes found in current start tag.
- //
- private String tagAttributes [];
- private int tagAttributePos;
+ static class AttributeDecl
+ {
+
+ String type;
+ String value;
+ int valueType;
+ String enumeration;
+ String defaultValue;
- //
- // Utility flag: have we noticed a CR while reading the last
- // data chunk? If so, we will have to go back and normalise
- // CR or CR/LF line ends.
- //
- private boolean sawCR;
+ }
- //
- // Utility flag: are we in CDATA? If so, whitespace isn't ignorable.
- //
- private boolean inCDATA;
+ static class ElementDecl
+ {
- //
- // Xml version.
- //
- private static final int XML_10 = 0;
- private static final int XML_11 = 1;
- private int xmlVersion = XML_10;
+ int contentType;
+ String contentModel;
+ HashMap attributes;
+
+ }
+
+ static class Input
+ {
+
+ int sourceType;
+ URLConnection externalEntity;
+ char[] readBuffer;
+ int readBufferPos;
+ int readBufferLength;
+ int line;
+ int encoding;
+ int readBufferOverflow;
+ InputStream is;
+ int currentByteCount;
+ int column;
+ Reader reader;
+
+ }
+
}
+
diff --git a/libjava/gnu/xml/aelfred2/XmlReader.java b/libjava/gnu/xml/aelfred2/XmlReader.java
index 96c9c72..dacf8b1 100644
--- a/libjava/gnu/xml/aelfred2/XmlReader.java
+++ b/libjava/gnu/xml/aelfred2/XmlReader.java
@@ -70,246 +70,305 @@ import gnu.xml.pipeline.ValidationConsumer;
*
* @author David Brownell
*/
-public final class XmlReader implements XMLReader
+public final class XmlReader
+ implements XMLReader
{
- private SAXDriver aelfred2 = new SAXDriver ();
- private EventFilter filter = new EventFilter ();
- private boolean isValidating;
- private boolean active;
-
- /** Constructs a SAX Parser. */
- public XmlReader ()
- { }
-
- /**
- * Constructs a SAX Parser, optionally treating validity errors
- * as if they were fatal errors.
- */
- public XmlReader (boolean invalidIsFatal)
- {
- if (invalidIsFatal)
- setErrorHandler (new DefaultHandler2 () {
- public void error (SAXParseException e)
- throws SAXException
- { throw e; }
- });
- }
-
- /**
- * <b>SAX2</b>: Returns the object used to report the logical
- * content of an XML document.
- */
- public ContentHandler getContentHandler ()
- { return filter.getContentHandler (); }
-
- /**
- * <b>SAX2</b>: Assigns the object used to report the logical
- * content of an XML document.
- * @exception IllegalStateException if called mid-parse
- */
- public void setContentHandler (ContentHandler handler)
+ static class FatalErrorHandler
+ extends DefaultHandler2
+ {
+
+ public void error(SAXParseException e)
+ throws SAXException
{
- if (active)
- throw new IllegalStateException ("already parsing");
- filter.setContentHandler (handler);
+ throw e;
}
-
- /**
- * <b>SAX2</b>: Returns the object used to process declarations related
- * to notations and unparsed entities.
- */
- public DTDHandler getDTDHandler ()
- { return filter.getDTDHandler (); }
-
- /**
- * <b>SAX1</b> Assigns DTD handler
- * @exception IllegalStateException if called mid-parse
- */
- public void setDTDHandler (DTDHandler handler)
- {
- if (active)
- throw new IllegalStateException ("already parsing");
- filter.setDTDHandler (handler);
- }
-
- /**
- * <b>SAX2</b>: Returns the object used when resolving external
- * entities during parsing (both general and parameter entities).
- */
- public EntityResolver getEntityResolver ()
- { return aelfred2.getEntityResolver (); }
-
- /** <b>SAX1</b> Assigns parser's entity resolver */
- public void setEntityResolver (EntityResolver handler)
- { aelfred2.setEntityResolver (handler); }
-
- /**
- * <b>SAX2</b>: Returns the object used to receive callbacks for XML
- * errors of all levels (fatal, nonfatal, warning); this is never null;
- */
- public ErrorHandler getErrorHandler ()
- { return aelfred2.getErrorHandler (); }
-
- /**
- * <b>SAX1</b> Assigns error handler
- * @exception IllegalStateException if called mid-parse
- */
- public void setErrorHandler (ErrorHandler handler)
- {
- if (active)
- throw new IllegalStateException ("already parsing");
- aelfred2.setErrorHandler (handler);
- }
-
- /**
- * <b>SAX2</b>: Assigns the specified property.
- * @exception IllegalStateException if called mid-parse
- */
- public void setProperty (String propertyId, Object value)
+
+ }
+
+ private SAXDriver aelfred2 = new SAXDriver();
+ private EventFilter filter = new EventFilter();
+ private boolean isValidating;
+ private boolean active;
+
+ /**
+ * Constructs a SAX Parser.
+ */
+ public XmlReader()
+ {
+ }
+
+ /**
+ * Constructs a SAX Parser, optionally treating validity errors
+ * as if they were fatal errors.
+ */
+ public XmlReader(boolean invalidIsFatal)
+ {
+ if (invalidIsFatal)
+ {
+ setErrorHandler(new FatalErrorHandler());
+ }
+ }
+
+ /**
+ * <b>SAX2</b>: Returns the object used to report the logical
+ * content of an XML document.
+ */
+ public ContentHandler getContentHandler()
+ {
+ return filter.getContentHandler();
+ }
+
+ /**
+ * <b>SAX2</b>: Assigns the object used to report the logical
+ * content of an XML document.
+ * @exception IllegalStateException if called mid-parse
+ */
+ public void setContentHandler(ContentHandler handler)
+ {
+ if (active)
+ {
+ throw new IllegalStateException("already parsing");
+ }
+ filter.setContentHandler(handler);
+ }
+
+ /**
+ * <b>SAX2</b>: Returns the object used to process declarations related
+ * to notations and unparsed entities.
+ */
+ public DTDHandler getDTDHandler()
+ {
+ return filter.getDTDHandler();
+ }
+
+ /**
+ * <b>SAX1</b> Assigns DTD handler
+ * @exception IllegalStateException if called mid-parse
+ */
+ public void setDTDHandler(DTDHandler handler)
+ {
+ if (active)
+ {
+ throw new IllegalStateException("already parsing");
+ }
+ filter.setDTDHandler(handler);
+ }
+
+ /**
+ * <b>SAX2</b>: Returns the object used when resolving external
+ * entities during parsing (both general and parameter entities).
+ */
+ public EntityResolver getEntityResolver()
+ {
+ return aelfred2.getEntityResolver();
+ }
+
+ /**
+ * <b>SAX1</b> Assigns parser's entity resolver
+ */
+ public void setEntityResolver(EntityResolver handler)
+ {
+ aelfred2.setEntityResolver(handler);
+ }
+
+ /**
+ * <b>SAX2</b>: Returns the object used to receive callbacks for XML
+ * errors of all levels (fatal, nonfatal, warning); this is never null;
+ */
+ public ErrorHandler getErrorHandler()
+ {
+ return aelfred2.getErrorHandler();
+ }
+
+ /**
+ * <b>SAX1</b> Assigns error handler
+ * @exception IllegalStateException if called mid-parse
+ */
+ public void setErrorHandler(ErrorHandler handler)
+ {
+ if (active)
+ {
+ throw new IllegalStateException("already parsing");
+ }
+ aelfred2.setErrorHandler(handler);
+ }
+
+ /**
+ * <b>SAX2</b>: Assigns the specified property.
+ * @exception IllegalStateException if called mid-parse
+ */
+ public void setProperty(String propertyId, Object value)
throws SAXNotRecognizedException, SAXNotSupportedException
- {
- if (active)
- throw new IllegalStateException ("already parsing");
- if (getProperty (propertyId) != value)
- filter.setProperty (propertyId, value);
- }
-
- /**
- * <b>SAX2</b>: Returns the specified property.
- */
- public Object getProperty (String propertyId)
+ {
+ if (active)
+ {
+ throw new IllegalStateException("already parsing");
+ }
+ if (getProperty(propertyId) != value)
+ {
+ filter.setProperty(propertyId, value);
+ }
+ }
+
+ /**
+ * <b>SAX2</b>: Returns the specified property.
+ */
+ public Object getProperty(String propertyId)
throws SAXNotRecognizedException
- {
- if ((SAXDriver.PROPERTY + "declaration-handler")
- .equals (propertyId)
- || (SAXDriver.PROPERTY + "lexical-handler")
- .equals (propertyId))
- return filter.getProperty (propertyId);
- throw new SAXNotRecognizedException (propertyId);
- }
-
- private void forceValidating ()
+ {
+ if ((SAXDriver.PROPERTY + "declaration-handler").equals(propertyId)
+ || (SAXDriver.PROPERTY + "lexical-handler").equals(propertyId))
+ {
+ return filter.getProperty(propertyId);
+ }
+ throw new SAXNotRecognizedException(propertyId);
+ }
+
+ private void forceValidating()
throws SAXNotRecognizedException, SAXNotSupportedException
- {
- aelfred2.setFeature (
- SAXDriver.FEATURE + "namespace-prefixes",
- true);
- aelfred2.setFeature (
- SAXDriver.FEATURE + "external-general-entities",
- true);
- aelfred2.setFeature (
- SAXDriver.FEATURE + "external-parameter-entities",
- true);
- }
-
- /**
- * <b>SAX2</b>: Sets the state of features supported in this parser.
- * Note that this parser requires reporting of namespace prefixes when
- * validating.
- */
- public void setFeature (String featureId, boolean state)
+ {
+ aelfred2.setFeature(SAXDriver.FEATURE + "namespace-prefixes",
+ true);
+ aelfred2.setFeature(SAXDriver.FEATURE + "external-general-entities",
+ true);
+ aelfred2.setFeature(SAXDriver.FEATURE + "external-parameter-entities",
+ true);
+ }
+
+ /**
+ * <b>SAX2</b>: Sets the state of features supported in this parser.
+ * Note that this parser requires reporting of namespace prefixes when
+ * validating.
+ */
+ public void setFeature(String featureId, boolean state)
throws SAXNotRecognizedException, SAXNotSupportedException
- {
- boolean value = getFeature (featureId);
-
- if (state == value)
- return;
-
- if ((SAXDriver.FEATURE + "validation").equals (featureId)) {
- if (active)
- throw new SAXNotSupportedException ("already parsing");
- if (state)
- forceValidating ();
- isValidating = state;
- } else
- aelfred2.setFeature (featureId, state);
- }
-
- /**
- * <b>SAX2</b>: Tells whether this parser supports the specified feature.
- * At this time, this directly parallels the underlying SAXDriver,
- * except that validation is optionally supported.
- *
- * @see SAXDriver
- */
- public boolean getFeature (String featureId)
+ {
+ boolean value = getFeature(featureId);
+
+ if (state == value)
+ {
+ return;
+ }
+
+ if ((SAXDriver.FEATURE + "validation").equals(featureId))
+ {
+ if (active)
+ {
+ throw new SAXNotSupportedException("already parsing");
+ }
+ if (state)
+ {
+ forceValidating();
+ }
+ isValidating = state;
+ }
+ else
+ {
+ aelfred2.setFeature(featureId, state);
+ }
+ }
+
+ /**
+ * <b>SAX2</b>: Tells whether this parser supports the specified feature.
+ * At this time, this directly parallels the underlying SAXDriver,
+ * except that validation is optionally supported.
+ *
+ * @see SAXDriver
+ */
+ public boolean getFeature(String featureId)
throws SAXNotRecognizedException, SAXNotSupportedException
- {
- if ((SAXDriver.FEATURE + "validation").equals (featureId))
- return isValidating;
-
- return aelfred2.getFeature (featureId);
- }
-
- /**
- * <b>SAX1</b>: Sets the locale used for diagnostics; currently,
- * only locales using the English language are supported.
- * @param locale The locale for which diagnostics will be generated
- */
- public void setLocale (Locale locale)
+ {
+ if ((SAXDriver.FEATURE + "validation").equals(featureId))
+ {
+ return isValidating;
+ }
+
+ return aelfred2.getFeature(featureId);
+ }
+
+ /**
+ * <b>SAX1</b>: Sets the locale used for diagnostics; currently,
+ * only locales using the English language are supported.
+ * @param locale The locale for which diagnostics will be generated
+ */
+ public void setLocale(Locale locale)
throws SAXException
- { aelfred2.setLocale (locale); }
+ {
+ aelfred2.setLocale(locale);
+ }
- /**
- * <b>SAX1</b>: Preferred API to parse an XML document, using a
- * system identifier (URI).
+ /**
+ * <b>SAX1</b>: Preferred API to parse an XML document, using a
+ * system identifier (URI).
*/
- public void parse (String systemId)
+ public void parse(String systemId)
throws SAXException, IOException
- {
- parse (new InputSource (systemId));
- }
-
- /**
- * <b>SAX1</b>: Underlying API to parse an XML document, used
- * directly when no URI is available. When this is invoked,
- * and the parser is set to validate, some features will be
- * automatically reset to appropriate values: for reporting
- * namespace prefixes, and incorporating external entities.
- *
- * @param source The XML input source.
- *
- * @exception IllegalStateException if called mid-parse
- * @exception SAXException The handlers may throw any SAXException,
- * and the parser normally throws SAXParseException objects.
- * @exception IOException IOExceptions are normally through through
- * the parser if there are problems reading the source document.
- */
- public void parse (InputSource source)
+ {
+ parse(new InputSource(systemId));
+ }
+
+ /**
+ * <b>SAX1</b>: Underlying API to parse an XML document, used
+ * directly when no URI is available. When this is invoked,
+ * and the parser is set to validate, some features will be
+ * automatically reset to appropriate values: for reporting
+ * namespace prefixes, and incorporating external entities.
+ *
+ * @param source The XML input source.
+ *
+ * @exception IllegalStateException if called mid-parse
+ * @exception SAXException The handlers may throw any SAXException,
+ * and the parser normally throws SAXParseException objects.
+ * @exception IOException IOExceptions are normally through through
+ * the parser if there are problems reading the source document.
+ */
+ public void parse(InputSource source)
throws SAXException, IOException
- {
- EventFilter next;
- boolean nsdecls;
-
- synchronized (aelfred2) {
- if (active)
- throw new IllegalStateException ("already parsing");
- active = true;
- }
-
- // set up the output pipeline
- if (isValidating) {
- forceValidating ();
- next = new ValidationConsumer (filter);
- } else
- next = filter;
-
- // connect pipeline and error handler
- // don't let _this_ call to bind() affect xmlns* attributes
- nsdecls = aelfred2.getFeature (
- SAXDriver.FEATURE + "namespace-prefixes");
- EventFilter.bind (aelfred2, next);
- if (!nsdecls)
- aelfred2.setFeature (
- SAXDriver.FEATURE + "namespace-prefixes",
- false);
-
- // parse, clean up
- try {
- aelfred2.parse (source);
- } finally {
- active = false;
- }
- }
+ {
+ EventFilter next;
+ boolean nsdecls;
+
+ synchronized (aelfred2)
+ {
+ if (active)
+ {
+ throw new IllegalStateException("already parsing");
+ }
+ active = true;
+ }
+
+ // set up the output pipeline
+ if (isValidating)
+ {
+ forceValidating();
+ next = new ValidationConsumer(filter);
+ }
+ else
+ {
+ next = filter;
+ }
+
+ // connect pipeline and error handler
+ // don't let _this_ call to bind() affect xmlns* attributes
+ nsdecls = aelfred2.getFeature(SAXDriver.FEATURE + "namespace-prefixes");
+ EventFilter.bind(aelfred2, next);
+ if (!nsdecls)
+ {
+ aelfred2.setFeature(SAXDriver.FEATURE + "namespace-prefixes",
+ false);
+ }
+
+ // parse, clean up
+ try
+ {
+ aelfred2.parse(source);
+ }
+ finally
+ {
+ active = false;
+ }
+ }
+
}
+
diff --git a/libjava/include/Makefile.in b/libjava/include/Makefile.in
index 56280f3..e31c543 100644
--- a/libjava/include/Makefile.in
+++ b/libjava/include/Makefile.in
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# Makefile.in generated by automake 1.9.3 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005 Free Software Foundation, Inc.
+# 2003, 2004 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
diff --git a/libjava/java/lang/VMClassLoader.java b/libjava/java/lang/VMClassLoader.java
index c0739ba..dfbfba4 100644
--- a/libjava/java/lang/VMClassLoader.java
+++ b/libjava/java/lang/VMClassLoader.java
@@ -53,6 +53,7 @@ import java.util.Enumeration;
import java.util.HashMap;
import java.util.Map;
import java.util.StringTokenizer;
+import gnu.gcj.runtime.BootClassLoader;
/**
* java.lang.VMClassLoader is a package-private helper for VMs to implement
@@ -82,6 +83,10 @@ final class VMClassLoader
static final HashMap definedPackages = new HashMap();
+ // This is a helper for handling java.endorsed.dirs. It is null
+ // until we've initialized the system, at which point it is created.
+ static BootClassLoader bootLoader;
+
/**
* Helper to define a class using a string of bytes. This assumes that
* the security checks have already been performed, if necessary.
@@ -153,6 +158,8 @@ final class VMClassLoader
*/
static URL getResource(String name)
{
+ if (bootLoader != null)
+ return bootLoader.bootGetResource(name);
return null;
}
@@ -168,6 +175,8 @@ final class VMClassLoader
*/
static Enumeration getResources(String name) throws IOException
{
+ if (bootLoader != null)
+ return bootLoader.bootGetResources(name);
return EmptyEnumeration.getInstance();
}
@@ -287,6 +296,8 @@ final class VMClassLoader
static native ClassLoader getSystemClassLoaderInternal();
+ static native void initBootLoader(String libdir);
+
static ClassLoader getSystemClassLoader()
{
// This method is called as the initialization of systemClassLoader,
@@ -310,6 +321,7 @@ final class VMClassLoader
+ loader, ex);
}
}
+
return default_sys;
}
}
diff --git a/libjava/java/lang/natClass.cc b/libjava/java/lang/natClass.cc
index f48a6fd..b936947 100644
--- a/libjava/java/lang/natClass.cc
+++ b/libjava/java/lang/natClass.cc
@@ -126,16 +126,16 @@ java::lang::Class::getClassLoader (void)
s->checkPermission (new RuntimePermission (JvNewStringLatin1 ("getClassLoader")));
}
- // The spec requires us to return `null' for primitive classes. In
- // other cases we have the option of returning `null' for classes
- // loaded with the bootstrap loader. All gcj-compiled classes which
- // are linked into the application used to return `null' here, but
- // that confuses some poorly-written applications. It is a useful
- // and apparently harmless compatibility hack to simply never return
- // `null' instead.
- if (isPrimitive ())
- return NULL;
- return loader ? loader : ClassLoader::systemClassLoader;
+ // This particular 'return' has been changed a couple of times over
+ // libgcj's history. This particular approach is a little weird,
+ // because it means that all classes linked into the application
+ // will see NULL for their class loader. This may confuse some
+ // applications that aren't expecting this; the solution is to use a
+ // different linking model for these applications. In the past we
+ // returned the system class loader in this case, but that is
+ // incorrect. Also, back then we didn't have other linkage models
+ // to fall back on.
+ return loader;
}
java::lang::reflect::Constructor *
diff --git a/libjava/java/lang/natClassLoader.cc b/libjava/java/lang/natClassLoader.cc
index dfb976a..c3b1f7e 100644
--- a/libjava/java/lang/natClassLoader.cc
+++ b/libjava/java/lang/natClassLoader.cc
@@ -43,6 +43,7 @@ details. */
#include <java/io/Serializable.h>
#include <java/lang/Cloneable.h>
#include <java/util/HashMap.h>
+#include <gnu/gcj/runtime/BootClassLoader.h>
// Size of local hash table.
#define HASH_LEN 1013
@@ -106,7 +107,7 @@ void
_Jv_RegisterInitiatingLoader (jclass klass, java::lang::ClassLoader *loader)
{
if (! loader)
- loader = java::lang::ClassLoader::systemClassLoader;
+ loader = java::lang::VMClassLoader::bootLoader;
loader->loadedClasses->put(klass->name->toString(), klass);
}
@@ -116,7 +117,7 @@ void
_Jv_UnregisterInitiatingLoader (jclass klass, java::lang::ClassLoader *loader)
{
if (! loader)
- loader = java::lang::ClassLoader::systemClassLoader;
+ loader = java::lang::VMClassLoader::bootLoader;
loader->loadedClasses->remove(klass->name->toString());
}
@@ -211,13 +212,14 @@ _Jv_FindClass (_Jv_Utf8Const *name, java::lang::ClassLoader *loader)
// See if the class was already loaded by this loader. This handles
// initiating loader checks, as we register classes with their
// initiating loaders.
- java::lang::ClassLoader *sys = java::lang::ClassLoader::systemClassLoader;
+
+ java::lang::ClassLoader *boot = java::lang::VMClassLoader::bootLoader;
java::lang::ClassLoader *real = loader;
if (! real)
- real = sys;
+ real = boot;
jstring sname = name->toString();
// We might still be bootstrapping the VM, in which case there
- // won't be a system class loader yet.
+ // won't be a bootstrap class loader yet.
jclass klass = real ? real->findLoadedClass (sname) : NULL;
if (! klass)
@@ -230,16 +232,16 @@ _Jv_FindClass (_Jv_Utf8Const *name, java::lang::ClassLoader *loader)
// If "loader" delegated the loadClass operation to another
// loader, explicitly register that it is also an initiating
// loader of the given class.
- java::lang::ClassLoader *delegate = (loader == sys
+ java::lang::ClassLoader *delegate = (loader == boot
? NULL
: loader);
if (klass && klass->getClassLoaderInternal () != delegate)
_Jv_RegisterInitiatingLoader (klass, loader);
}
- else if (sys)
+ else if (boot)
{
// Load using the bootstrap loader jvmspec 5.3.1.
- klass = sys->loadClass (sname, false);
+ klass = java::lang::VMClassLoader::loadClass (sname, false);
// Register that we're an initiating loader.
if (klass)
@@ -250,9 +252,21 @@ _Jv_FindClass (_Jv_Utf8Const *name, java::lang::ClassLoader *loader)
// Not even a bootstrap loader, try the built-in cache.
klass = _Jv_FindClassInCache (name);
- if (bootstrap_index == BOOTSTRAP_CLASS_LIST_SIZE)
- abort ();
- bootstrap_class_list[bootstrap_index++] = klass;
+ bool found = false;
+ for (int i = 0; i < bootstrap_index; ++i)
+ {
+ if (bootstrap_class_list[i] == klass)
+ {
+ found = true;
+ break;
+ }
+ }
+ if (! found)
+ {
+ if (bootstrap_index == BOOTSTRAP_CLASS_LIST_SIZE)
+ abort ();
+ bootstrap_class_list[bootstrap_index++] = klass;
+ }
}
}
else
diff --git a/libjava/java/lang/natVMClassLoader.cc b/libjava/java/lang/natVMClassLoader.cc
index 9a539d7..c59e1d6 100644
--- a/libjava/java/lang/natVMClassLoader.cc
+++ b/libjava/java/lang/natVMClassLoader.cc
@@ -25,6 +25,7 @@ details. */
#include <java/lang/VMCompiler.h>
#include <gnu/gcj/runtime/VMClassLoader.h>
#include <gnu/gcj/runtime/SystemClassLoader.h>
+#include <gnu/gcj/runtime/BootClassLoader.h>
#include <java/lang/ClassLoader.h>
#include <java/lang/Class.h>
#include <java/lang/Throwable.h>
@@ -66,9 +67,9 @@ java::lang::VMClassLoader::defineClass (java::lang::ClassLoader *loader,
// until we're done loading.
JvSynchronize sync (klass);
- // Record the defining loader. For the system class loader, we
- // record NULL.
- if (loader != java::lang::ClassLoader::systemClassLoader)
+ // Record the defining loader. For the bootstrap class loader,
+ // we record NULL.
+ if (loader != bootLoader)
klass->loader = loader;
if (name != 0)
@@ -122,11 +123,25 @@ java::lang::VMClassLoader::getPrimitiveClass (jchar type)
return _Jv_FindClassFromSignature (sig, NULL);
}
+void
+java::lang::VMClassLoader::initBootLoader(jstring libdir)
+{
+ bootLoader = new gnu::gcj::runtime::BootClassLoader(libdir);
+}
+
jclass
java::lang::VMClassLoader::loadClass(jstring name, jboolean resolve)
{
- _Jv_Utf8Const *utf = _Jv_makeUtf8Const (name);
- jclass klass = _Jv_FindClassInCache (utf);
+ // We try the boot loader first, so that the endorsed directory
+ // overrides compiled-in classes.
+ jclass klass = NULL;
+ if (bootLoader)
+ klass = bootLoader->bootLoadClass(name);
+ if (! klass)
+ {
+ _Jv_Utf8Const *utf = _Jv_makeUtf8Const (name);
+ klass = _Jv_FindClassInCache (utf);
+ }
if (klass)
{
// We never want to return a class without its supers linked.
diff --git a/libjava/prims.cc b/libjava/prims.cc
index 9281711..a916edd 100644
--- a/libjava/prims.cc
+++ b/libjava/prims.cc
@@ -55,6 +55,7 @@ details. */
#include <java/lang/OutOfMemoryError.h>
#include <java/lang/System.h>
#include <java/lang/VMThrowable.h>
+#include <java/lang/VMClassLoader.h>
#include <java/lang/reflect/Modifier.h>
#include <java/io/PrintStream.h>
#include <java/lang/UnsatisfiedLinkError.h>
@@ -1130,8 +1131,9 @@ _Jv_CreateJavaVM (JvVMInitArgs* vm_args)
// of VMClassLoader.
_Jv_InitClass (&java::lang::ClassLoader::class$);
- // Set up the system class loader.
+ // Set up the system class loader and the bootstrap class loader.
gnu::gcj::runtime::VMClassLoader::initialize();
+ java::lang::VMClassLoader::initBootLoader(JvNewStringLatin1(TOOLEXECLIBDIR));
_Jv_RegisterBootstrapPackages();
@@ -1209,7 +1211,10 @@ _Jv_RunMain (jclass klass, const char *name, int argc, const char **argv,
java::lang::System::err->println (JvNewStringLatin1
("Exception during runtime initialization"));
t->printStackTrace();
- runtime->exit (1);
+ if (runtime)
+ runtime->exit (1);
+ // In case the runtime creation failed.
+ ::exit (1);
}
_Jv_AttachCurrentThread (main_thread);
diff --git a/libjava/stacktrace.cc b/libjava/stacktrace.cc
index f307e7a..f4388aa 100644
--- a/libjava/stacktrace.cc
+++ b/libjava/stacktrace.cc
@@ -495,7 +495,7 @@ _Jv_StackTrace::non_system_trace_fn (_Jv_UnwindState *state)
{
classLoader = frame->klass->getClassLoaderInternal();
#ifdef INTERPRETER
- if (classLoader != NULL && classLoader != ClassLoader::systemClassLoader)
+ if (classLoader != NULL)
{
state->trace_data = (void *) classLoader;
return _URC_NORMAL_STOP;
diff --git a/libjava/testsuite/Makefile.in b/libjava/testsuite/Makefile.in
index 3336bcb..66b60af 100644
--- a/libjava/testsuite/Makefile.in
+++ b/libjava/testsuite/Makefile.in
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# Makefile.in generated by automake 1.9.3 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005 Free Software Foundation, Inc.
+# 2003, 2004 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.