classpath-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[cp-patches] Second part of GNU JAXP import.


From: Mark Wielaard
Subject: [cp-patches] Second part of GNU JAXP import.
Date: Wed, 29 Dec 2004 22:48:18 +0100

Hi,

Here is the second part of the import. It adds the xmlj classes and
native JNI bindings. (New files not included in patch to keep the diff
small.)

2004-12-29  Mark Wielaard  <address@hidden>

        * configure.ac: Add --enable-xmlj option. Check for libxml2 and
        libxslt libraries when enabled. Add native/jni/xmlj/Makefile.
        * gnu/xml/libxmlj/*: New files.
        * include/Makefile.am: Add XMLJ_H_FILES. Group awt gtk peer headers
        under GTKPEER_H_FILES. Generate new headers.
        * include/gnu_xml_libxmlj_*.h: New generated files.
        * native/jni/Makefile.am: Conditionally add xmlj dir.
        * native/jni/xmlj/*: New files.

It uses the RawData(32/64) interface from the gnu.classpath package, but
that is the only change to the sources (except for the copyright notices
and distribution term updates).

By default the native part is not compiled yet. You will have to
explicitly give the --enable-xmlj option for that (and then set the
appropriate javax.xml.Factory system property). It needs a very recent
libxml2 and libxslt.

Next is adding support for generating the XPath parser with jay.
And adding all the documentation.

Cheers,

Mark
Index: configure.ac
===================================================================
RCS file: /cvsroot/classpath/classpath/configure.ac,v
retrieving revision 1.63
diff -u -r1.63 configure.ac
--- configure.ac        23 Dec 2004 22:38:42 -0000      1.63
+++ configure.ac        29 Dec 2004 21:20:14 -0000
@@ -55,6 +55,19 @@
               [ENABLE_WERROR=no])
 
 dnl -----------------------------------------------------------
+dnl Native libxml/xslt library (disabled by default)
+dnl -----------------------------------------------------------
+AC_ARG_ENABLE([xmlj],
+              [AS_HELP_STRING(--enable-xmlj,compile native libxml/xslt library 
[default=no])],
+              [case "${enableval}" in
+                yes) COMPILE_XMLJ=yes ;;
+                no) COMPILE_XMLJ=no ;;
+                *) COMPILE_XMLJ=no ;;
+              esac],
+              [COMPILE_XMLJ=no])
+AM_CONDITIONAL(CREATE_XMLJ_LIBRARY, test "x${COMPILE_XMLJ}" = xyes)
+
+dnl -----------------------------------------------------------
 dnl GTK native peer (enabled by default)
 dnl -----------------------------------------------------------
 AC_ARG_ENABLE([gtk-peer],
@@ -198,6 +211,17 @@
     AC_SUBST(ERROR_CFLAGS)
   fi
 
+  dnl Check for libxml and libxslt libraries (when xmlj is enabled).
+  if test "x${COMPILE_XMLJ}" = xyes
+  then
+    PKG_CHECK_MODULES(XML, xml2 >= 2-2.6.8)
+    PKG_CHECK_MODULES(XSLT, xslt >= 1.1.11)
+    AC_SUBST(XML_LIBS)
+    AC_SUBST(XML_CFLAGS)
+    AC_SUBST(XSLT_LIBS)
+    AC_SUBST(XSLT_CFLAGS)
+  fi
+
   dnl Check for AWT related gthread/gtk/libart_lgpl
   if test "x${COMPILE_GTK_PEER}" = xyes; then
      PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.4 gthread-2.0 >= 2.2 libart-2.0)
@@ -375,6 +399,7 @@
 native/jni/java-nio/Makefile
 native/jni/java-util/Makefile
 native/jni/gtk-peer/Makefile
+native/jni/xmlj/Makefile
 native/target/Makefile
 native/target/Linux/Makefile
 native/target/generic/Makefile
Index: include/Makefile.am
===================================================================
RCS file: /cvsroot/classpath/classpath/include/Makefile.am,v
retrieving revision 1.34
diff -u -r1.34 Makefile.am
--- include/Makefile.am 23 Nov 2004 12:51:36 -0000      1.34
+++ include/Makefile.am 29 Dec 2004 21:20:15 -0000
@@ -4,7 +4,29 @@
 ARG_CLASSPATH_JAVAH = -bootclasspath
 JAVAH = $(USER_JAVAH) $(ARG_JNI_JAVAH) $(ARG_CLASSPATH_JAVAH) 
../lib:$(USER_CLASSLIB)
 
-H_FILES = \
+XMLJ_H_FILES = \
+$(top_srcdir)/include/gnu_xml_libxmlj_dom_GnomeDocument.h \
+$(top_srcdir)/include/gnu_xml_libxmlj_dom_GnomeXPathNodeList.h \
+$(top_srcdir)/include/gnu_xml_libxmlj_dom_GnomeDocumentType.h \
+$(top_srcdir)/include/gnu_xml_libxmlj_dom_GnomeProcessingInstruction.h \
+$(top_srcdir)/include/gnu_xml_libxmlj_dom_GnomeXPathNSResolver.h \
+$(top_srcdir)/include/gnu_xml_libxmlj_dom_GnomeTypeInfo.h \
+$(top_srcdir)/include/gnu_xml_libxmlj_dom_GnomeNodeList.h \
+$(top_srcdir)/include/gnu_xml_libxmlj_dom_GnomeNotation.h \
+$(top_srcdir)/include/gnu_xml_libxmlj_dom_GnomeXPathResult.h \
+$(top_srcdir)/include/gnu_xml_libxmlj_dom_GnomeElement.h \
+$(top_srcdir)/include/gnu_xml_libxmlj_dom_GnomeEntity.h \
+$(top_srcdir)/include/gnu_xml_libxmlj_dom_GnomeNode.h \
+$(top_srcdir)/include/gnu_xml_libxmlj_dom_GnomeXPathExpression.h \
+$(top_srcdir)/include/gnu_xml_libxmlj_dom_GnomeNamedNodeMap.h \
+$(top_srcdir)/include/gnu_xml_libxmlj_dom_GnomeDocumentBuilder.h \
+$(top_srcdir)/include/gnu_xml_libxmlj_dom_GnomeAttr.h \
+$(top_srcdir)/include/gnu_xml_libxmlj_sax_GnomeLocator.h \
+$(top_srcdir)/include/gnu_xml_libxmlj_sax_GnomeXMLReader.h \
+$(top_srcdir)/include/gnu_xml_libxmlj_transform_GnomeTransformer.h \
+$(top_srcdir)/include/gnu_xml_libxmlj_transform_GnomeTransformerFactory.h
+
+GTKPEER_H_FILES = \
 $(top_srcdir)/include/gnu_java_awt_peer_gtk_GdkFontMetrics.h \
 $(top_srcdir)/include/gnu_java_awt_peer_gtk_GdkFontPeer.h \
 $(top_srcdir)/include/gnu_java_awt_peer_gtk_GdkGlyphVector.h \
@@ -42,7 +64,11 @@
 $(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkTextFieldPeer.h \
 $(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkToolkit.h \
 $(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkWindowPeer.h \
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.h \
+$(top_srcdir)/include/gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.h
+
+H_FILES = \
+$(XMLJ_H_FILES) \
+$(GTKPEER_H_FILES) \
 $(top_srcdir)/include/gnu_java_net_PlainDatagramSocketImpl.h \
 $(top_srcdir)/include/gnu_java_net_PlainSocketImpl.h \
 $(top_srcdir)/include/gnu_java_nio_VMPipe.h \
@@ -70,82 +96,18 @@
 
 all-local: $(H_FILES)
 
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GdkFontMetrics.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GdkFontMetrics.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GdkFontMetrics
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GdkFontPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GdkFontPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GdkFontPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GdkGlyphVector.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GdkGlyphVector.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GdkGlyphVector
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GdkGraphics.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GdkGraphics.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GdkGraphics
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GdkGraphics2D.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GdkGraphics2D.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GdkGraphics2D
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GdkGraphicsEnvironment.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GdkGraphicsEnvironment
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GdkPixbufDecoder.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GdkPixbufDecoder.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GdkPixbufDecoder
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GdkTextLayout.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GdkTextLayout.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GdkTextLayout
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkButtonPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkButtonPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkButtonPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkCanvasPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkCanvasPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkCanvasPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkCheckboxGroupPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkCheckboxGroupPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkCheckboxMenuItemPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkCheckboxMenuItemPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkCheckboxPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkCheckboxPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkCheckboxPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkChoicePeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkChoicePeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkChoicePeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkClipboard.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkClipboard.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkClipboard
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkComponentPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkComponentPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkComponentPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkEmbeddedWindowPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkEmbeddedWindowPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkFileDialogPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkFileDialogPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkFileDialogPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkFramePeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkFramePeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkFramePeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkGenericPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkGenericPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkGenericPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkImagePainter.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkImagePainter.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkImagePainter
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkLabelPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkLabelPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkLabelPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkListPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkListPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkListPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkMainThread.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkMainThread.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkMainThread
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkMenuBarPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkMenuBarPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkMenuBarPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkMenuComponentPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkMenuComponentPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkMenuComponentPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkMenuItemPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkMenuItemPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkMenuItemPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkMenuPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkMenuPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkMenuPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkPanelPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkPanelPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkPanelPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkPopupMenuPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkScrollPanePeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkScrollPanePeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkScrollPanePeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkScrollbarPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkScrollbarPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkScrollbarPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkTextAreaPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkTextAreaPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkTextAreaPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkTextComponentPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkTextComponentPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkTextComponentPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkTextFieldPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkTextFieldPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkTextFieldPeer
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkToolkit.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkToolkit.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkToolkit
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GThreadNativeMethodRunner.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GThreadNativeMethodRunner
-$(top_srcdir)/include/gnu_java_awt_peer_gtk_GtkWindowPeer.h: 
$(top_srcdir)/gnu/java/awt/peer/gtk/GtkWindowPeer.java
-       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.GtkWindowPeer
+$(top_srcdir)/include/gnu_xml_libxmlj_dom_%.h: 
$(top_builddir)/lib/gnu/xml/libxmlj/dom/%.class
+       $(JAVAH) -o $@ gnu.xml.libxmlj.dom.$*
+
+$(top_srcdir)/include/gnu_xml_libxmlj_sax_%.h: 
$(top_builddir)/lib/gnu/xml/libxmlj/sax/%.class
+       $(JAVAH) -o $@ gnu.xml.libxmlj.sax.$*
+
+$(top_srcdir)/include/gnu_xml_libxmlj_transform_%.h: 
$(top_builddir)/lib/gnu/xml/libxmlj/transform/%.class
+       $(JAVAH) -o $@ gnu.xml.libxmlj.transform.$*
+
+$(top_srcdir)/include/gnu_java_awt_peer_gtk_%.h: 
$(top_builddir)/lib/gnu/java/awt/peer/gtk/%.class
+       $(JAVAH) -o $@ gnu.java.awt.peer.gtk.$*
+
 $(top_srcdir)/include/gnu_java_net_PlainDatagramSocketImpl.h: 
$(top_srcdir)/gnu/java/net/PlainDatagramSocketImpl.java
        $(JAVAH) -o $@ gnu.java.net.PlainDatagramSocketImpl
 $(top_srcdir)/include/gnu_java_net_PlainSocketImpl.h: 
$(top_srcdir)/gnu/java/net/PlainSocketImpl.java
Index: native/jni/Makefile.am
===================================================================
RCS file: /cvsroot/classpath/classpath/native/jni/Makefile.am,v
retrieving revision 1.11
diff -u -r1.11 Makefile.am
--- native/jni/Makefile.am      15 Nov 2004 20:36:50 -0000      1.11
+++ native/jni/Makefile.am      29 Dec 2004 21:20:16 -0000
@@ -4,8 +4,14 @@
   GTKDIR = gtk-peer
 endif
 
-SUBDIRS = classpath java-io java-lang java-net java-nio java-util $(GTKDIR)
-DIST_SUBDIRS = classpath java-io java-lang java-net java-nio java-util gtk-peer
+if CREATE_XMLJ_LIBRARY
+  XMLJDIR = xmlj
+endif
+
+SUBDIRS = classpath java-io java-lang java-net java-nio java-util \
+          $(GTKDIR) $(XMLJDIR)
+DIST_SUBDIRS = classpath java-io java-lang java-net java-nio java-util \
+               gtk-peer xmlj
 
 all-local:
        cd $(top_srcdir) && scripts/check_jni_methods.sh

Attachment: signature.asc
Description: This is a digitally signed message part


reply via email to

[Prev in Thread] Current Thread [Next in Thread]