public inbox for java-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [0.98 merge] FYI: More build fixes
@ 2008-09-08 17:54 Andrew John Hughes
  2008-09-08 18:25 ` David Daney
  2008-09-14 19:56 ` Andrew John Hughes
  0 siblings, 2 replies; 6+ messages in thread
From: Andrew John Hughes @ 2008-09-08 17:54 UTC (permalink / raw)
  To: java-patches

[-- Attachment #1: Type: text/plain, Size: 1127 bytes --]

This patch fixes a number of further issues found
when trying to build the GCJ 0.98 merge tree.

ChangeLog:

2008-09-04  Andrew John Hughes  <gnu_andrew@member.fsf.org>

	* Makefile.in,
	* classpath/configure: Regenerated.
	* gnu/gcj/util/natDebug.cc,
	* gnu/gcj/xlib/natColormap.cc,
	* gnu/gcj/xlib/natDisplay.cc,
	* gnu/gcj/xlib/natDrawable.cc,
	* gnu/gcj/xlib/natFont.cc,
	* gnu/gcj/xlib/natWMSizeHints.cc,
	* gnu/gcj/xlib/natWindow.cc,
	* gnu/gcj/xlib/natXImage.cc:
	Add :: prefix to namespaces.
	* java/io/CharArrayWriter.h,
	* java/lang/StringBuffer.h:
	Regenerated using patched gjavah.
	* java/lang/natStringBuffer.cc:
	Fix naming of append(jint).
	* java/sql/Timestamp.h: Regenerated
	using patched gjavah.
	* jni.cc: Rename p to functions
	to match change in GNU Classpath.
	* scripts/makemake.tcl: Switch
	gnu.java.math to BC compilation.
	* sources.am: Regenerated.

-- 
Andrew :)

Support Free Java!
Contribute to GNU Classpath and the OpenJDK
http://www.gnu.org/software/classpath
http://openjdk.java.net
PGP Key: 94EFD9D8 (http://subkeys.pgp.net)
Fingerprint = F8EF F1EA 401E 2E60 15FA  7927 142C 2591 94EF D9D8

[-- Attachment #2: 0.98_merge-03.diff --]
[-- Type: text/plain, Size: 16907 bytes --]

Index: libjava/Makefile.in
===================================================================
--- libjava/Makefile.in	(revision 139925)
+++ libjava/Makefile.in	(working copy)
@@ -183,14 +183,14 @@
 	gnu/java/awt/java2d.lo gnu/java/awt/peer.lo \
 	gnu/java/awt/peer/headless.lo gnu/java/awt/print.lo \
 	gnu/java/io.lo gnu/java/lang.lo gnu/java/lang/reflect.lo \
-	gnu/java/locale.lo gnu/java/math.lo gnu/java/net.lo \
-	gnu/java/net/loader.lo gnu/java/net/local.lo \
-	gnu/java/net/protocol/core.lo gnu/java/net/protocol/file.lo \
-	gnu/java/net/protocol/ftp.lo gnu/java/net/protocol/gcjlib.lo \
-	gnu/java/net/protocol/http.lo gnu/java/net/protocol/https.lo \
-	gnu/java/net/protocol/jar.lo gnu/java/nio.lo \
-	gnu/java/nio/channels.lo gnu/java/nio/charset.lo \
-	gnu/java/rmi.lo gnu/java/rmi/activation.lo gnu/java/rmi/dgc.lo \
+	gnu/java/locale.lo gnu/java/net.lo gnu/java/net/loader.lo \
+	gnu/java/net/local.lo gnu/java/net/protocol/core.lo \
+	gnu/java/net/protocol/file.lo gnu/java/net/protocol/ftp.lo \
+	gnu/java/net/protocol/gcjlib.lo gnu/java/net/protocol/http.lo \
+	gnu/java/net/protocol/https.lo gnu/java/net/protocol/jar.lo \
+	gnu/java/nio.lo gnu/java/nio/channels.lo \
+	gnu/java/nio/charset.lo gnu/java/rmi.lo \
+	gnu/java/rmi/activation.lo gnu/java/rmi/dgc.lo \
 	gnu/java/rmi/registry.lo gnu/java/rmi/server.lo \
 	gnu/java/security.lo gnu/java/security/action.lo \
 	gnu/java/security/ber.lo gnu/java/security/der.lo \
@@ -292,7 +292,7 @@
 	sun/reflect/misc.lo $(am__DEPENDENCIES_1)
 am__DEPENDENCIES_3 = gnu-CORBA.lo gnu-java-awt-dnd-peer-gtk.lo \
 	gnu-java-awt-peer-gtk.lo gnu-java-awt-peer-swing.lo \
-	gnu-java-beans.lo gnu-java-lang-management.lo \
+	gnu-java-beans.lo gnu-java-lang-management.lo gnu-java-math.lo \
 	gnu-java-util-prefs-gconf.lo gnu-javax-management.lo \
 	gnu-javax-rmi.lo gnu-javax-sound-midi.lo gnu-xml-aelfred2.lo \
 	gnu-xml-dom.lo gnu-xml-libxmlj.lo gnu-xml-pipeline.lo \
@@ -1904,7 +1904,6 @@
 classpath/gnu/java/math/GMP.java \
 classpath/gnu/java/math/MPN.java
 
-gnu_java_math_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_math_source_files)))
 gnu_java_net_source_files = \
 classpath/gnu/java/net/CRLFInputStream.java \
 classpath/gnu/java/net/CRLFOutputStream.java \
@@ -7349,7 +7348,6 @@
   gnu/java/lang.list \
   gnu/java/lang/reflect.list \
   gnu/java/locale.list \
-  gnu/java/math.list \
   gnu/java/net.list \
   gnu/java/net/loader.list \
   gnu/java/net/local.list \
@@ -7601,7 +7599,6 @@
   $(gnu_java_lang_management_header_files) \
   $(gnu_java_lang_reflect_header_files) \
   $(gnu_java_locale_header_files) \
-  $(gnu_java_math_header_files) \
   $(gnu_java_net_header_files) \
   $(gnu_java_net_loader_header_files) \
   $(gnu_java_net_local_header_files) \
@@ -7826,6 +7823,7 @@
   gnu-java-awt-peer-swing.lo \
   gnu-java-beans.lo \
   gnu-java-lang-management.lo \
+  gnu-java-math.lo \
   gnu-java-util-prefs-gconf.lo \
   gnu-javax-management.lo \
   gnu-javax-rmi.lo \
@@ -10735,12 +10733,11 @@
 
 -include gnu/java/locale.deps
 
-gnu/java/math.list: $(gnu_java_math_source_files)
-	@$(mkinstalldirs) $(dir $@)
-	echo $(srcdir)/classpath/lib/gnu/java/math/*.class > gnu/java/math.list
+gnu-java-math.lo: $(gnu_java_math_source_files)
+	@find $(srcdir)/classpath/lib/gnu/java/math -name '*.class' > gnu-java-math.list
+	$(LTGCJCOMPILE) -fsource-filename=$(here)/classpath/lib/classes -fjni $(LIBGCJ_BC_FLAGS) -c -o gnu-java-math.lo @gnu-java-math.list
+	@rm -f gnu-java-math.list
 
--include gnu/java/math.deps
-
 gnu/java/net.list: $(gnu_java_net_source_files)
 	@$(mkinstalldirs) $(dir $@)
 	echo $(srcdir)/classpath/lib/gnu/java/net/*.class > gnu/java/net.list
Index: libjava/scripts/makemake.tcl
===================================================================
--- libjava/scripts/makemake.tcl	(revision 139925)
+++ libjava/scripts/makemake.tcl	(working copy)
@@ -95,6 +95,7 @@
 set package_map(java/lang/management) bc
 set package_map(gnu/classpath/management) bc
 set package_map(gnu/javax/management) bc
+set package_map(gnu/java/math) bc
 
 # parser/HTML_401F.class is really big, and there have been complaints
 # about this package requiring too much memory to build.  So, we
Index: libjava/classpath/configure
===================================================================
--- libjava/classpath/configure	(revision 139925)
+++ libjava/classpath/configure	(working copy)
@@ -872,13 +872,13 @@
   	  /^X\(\/\).*/{ s//\1/; q; }
   	  s/.*/./; q'`
   srcdir=$ac_confdir
-  if test ! -r "$srcdir/$ac_unique_file"; then
+  if test ! -r $srcdir/$ac_unique_file; then
     srcdir=..
   fi
 else
   ac_srcdir_defaulted=no
 fi
-if test ! -r "$srcdir/$ac_unique_file"; then
+if test ! -r $srcdir/$ac_unique_file; then
   if test "$ac_srcdir_defaulted" = yes; then
     { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2
    { (exit 1); exit 1; }; }
@@ -887,7 +887,7 @@
    { (exit 1); exit 1; }; }
   fi
 fi
-(cd $srcdir && test -r "./$ac_unique_file") 2>/dev/null ||
+(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null ||
   { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2
    { (exit 1); exit 1; }; }
 srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'`
Index: libjava/jni.cc
===================================================================
--- libjava/jni.cc	(revision 139925)
+++ libjava/jni.cc	(working copy)
@@ -2118,7 +2118,7 @@
   if (__builtin_expect (env == NULL, false))
     {
       env = (JNIEnv *) _Jv_MallocUnchecked (sizeof (JNIEnv));
-      env->p = &_Jv_JNIFunctions;
+      env->functions = &_Jv_JNIFunctions;
       env->locals = NULL;
       // We set env->ex below.
 
@@ -2428,7 +2428,7 @@
   env = (JNIEnv *) _Jv_MallocUnchecked (sizeof (JNIEnv));
   if (env == NULL)
     return JNI_ERR;
-  env->p = &_Jv_JNIFunctions;
+  env->functions = &_Jv_JNIFunctions;
   env->ex = NULL;
   env->bottom_locals
     = (_Jv_JNI_LocalFrame *) _Jv_MallocUnchecked (sizeof (_Jv_JNI_LocalFrame)
Index: libjava/gnu/gcj/util/natDebug.cc
===================================================================
--- libjava/gnu/gcj/util/natDebug.cc	(revision 139925)
+++ libjava/gnu/gcj/util/natDebug.cc	(working copy)
@@ -70,28 +70,28 @@
   if (! type->isPrimitive ())
     return * (jobject*) addr;
   if (type == JvPrimClass (double))
-    return new java::lang::Double (* (jdouble*) addr);
+    return new ::java::lang::Double (* (jdouble*) addr);
   if (type == JvPrimClass (float))
-    return new java::lang::Float (* (jfloat*) addr);
+    return new ::java::lang::Float (* (jfloat*) addr);
   if (type == JvPrimClass (long))
-    return new java::lang::Long (* (jlong*) addr);
+    return new ::java::lang::Long (* (jlong*) addr);
   if (type == JvPrimClass (int))
-    return new java::lang::Integer (* (jint*) addr);
+    return new ::java::lang::Integer (* (jint*) addr);
   if (type == JvPrimClass (short))
-    return new java::lang::Short (* (jshort*) addr);
+    return new ::java::lang::Short (* (jshort*) addr);
   if (type == JvPrimClass (byte))
-    return new java::lang::Byte (* (jbyte*) addr);
+    return new ::java::lang::Byte (* (jbyte*) addr);
   if (type == JvPrimClass (char))
-    return new java::lang::Character (* (jchar*) addr);
+    return new ::java::lang::Character (* (jchar*) addr);
   if (type == JvPrimClass (boolean))
     {
-      _Jv_InitClass (&java::lang::Boolean::class$);
+      _Jv_InitClass (&::java::lang::Boolean::class$);
       if (* (jboolean*) addr)
-	return java::lang::Boolean::TRUE;
+	return ::java::lang::Boolean::TRUE;
       else
-	return java::lang::Boolean::FALSE;
+	return ::java::lang::Boolean::FALSE;
     }
-  throw new java::lang::IllegalArgumentException;
+  throw new ::java::lang::IllegalArgumentException;
 }
 
 /* A simple method of printing an object that can be called from a
Index: libjava/gnu/gcj/xlib/natWindow.cc
===================================================================
--- libjava/gnu/gcj/xlib/natWindow.cc	(revision 139925)
+++ libjava/gnu/gcj/xlib/natWindow.cc	(working copy)
@@ -23,7 +23,7 @@
 #include <gnu/gcj/xlib/Visual.h>
 #include <gnu/gcj/xlib/XException.h>
 
-jint gnu::gcj::xlib::Window::createChildXID(java::awt::Rectangle* bounds,
+jint gnu::gcj::xlib::Window::createChildXID(::java::awt::Rectangle* bounds,
 					jint borderWidth,
 					WindowAttributes* attributes,
 					jint windowIOClass, 
Index: libjava/gnu/gcj/xlib/natDrawable.cc
===================================================================
--- libjava/gnu/gcj/xlib/natDrawable.cc	(revision 139925)
+++ libjava/gnu/gcj/xlib/natDrawable.cc	(working copy)
@@ -64,7 +64,7 @@
 }
 
 java::awt::Rectangle*
-gnu::gcj::xlib::Drawable::getBounds(java::awt::Rectangle* rv)
+gnu::gcj::xlib::Drawable::getBounds(::java::awt::Rectangle* rv)
 {
   ::Display* dpy = (::Display*) (getDisplay()->display);
 
@@ -86,7 +86,7 @@
  
   if (rv == 0)
     {
-      rv = new java::awt::Rectangle(x, y, w, h);
+      rv = new ::java::awt::Rectangle(x, y, w, h);
     }
   else
     {
Index: libjava/gnu/gcj/xlib/natDisplay.cc
===================================================================
--- libjava/gnu/gcj/xlib/natDisplay.cc	(revision 139925)
+++ libjava/gnu/gcj/xlib/natDisplay.cc	(working copy)
@@ -118,8 +118,8 @@
 {
   if (XInitThreads() == 0)
     {
-      char msg[] = "threads is not supported on this platform";
-      throw new java::lang::RuntimeException(JvNewStringLatin1(msg));
+      char msg[] = "threads are not supported on this platform";
+      throw new ::java::lang::RuntimeException(JvNewStringLatin1(msg));
     }
   
   XSetErrorHandler(&handleXError);
Index: libjava/gnu/gcj/xlib/natFont.cc
===================================================================
--- libjava/gnu/gcj/xlib/natFont.cc	(revision 139925)
+++ libjava/gnu/gcj/xlib/natFont.cc	(working copy)
@@ -75,7 +75,7 @@
   return returnValue-1;  // -1 to exclude the baseline
 }
 
-jint gnu::gcj::xlib::Font::getStringWidth(java::lang::String* text)
+jint gnu::gcj::xlib::Font::getStringWidth(::java::lang::String* text)
 {
   XFontStruct* fontStruct = (XFontStruct*) structure;
   
Index: libjava/gnu/gcj/xlib/natWMSizeHints.cc
===================================================================
--- libjava/gnu/gcj/xlib/natWMSizeHints.cc	(revision 139925)
+++ libjava/gnu/gcj/xlib/natWMSizeHints.cc	(working copy)
@@ -23,7 +23,7 @@
   if (hints == 0)
     {
       jstring errorMessage = JvNewStringLatin1("XAllocSizeHints failed");
-      throw new java::lang::OutOfMemoryError(errorMessage);
+      throw new ::java::lang::OutOfMemoryError(errorMessage);
     }
 
   if (copyFrom != 0)
Index: libjava/gnu/gcj/xlib/natXImage.cc
===================================================================
--- libjava/gnu/gcj/xlib/natXImage.cc	(revision 139925)
+++ libjava/gnu/gcj/xlib/natXImage.cc	(working copy)
@@ -40,7 +40,7 @@
   if (ximage == 0)
     {
       jstring errorMessage = JvNewStringLatin1("XCreateImage failed");
-      throw new java::lang::OutOfMemoryError(errorMessage);
+      throw new ::java::lang::OutOfMemoryError(errorMessage);
     }
     
   bool reinitialize = false;
Index: libjava/gnu/gcj/xlib/natColormap.cc
===================================================================
--- libjava/gnu/gcj/xlib/natColormap.cc	(revision 139925)
+++ libjava/gnu/gcj/xlib/natColormap.cc	(working copy)
@@ -30,7 +30,7 @@
   ::XColor* col = (::XColor*) (color->structure);
   Status result = XAllocColor(dpy, xid, col);
   if (result == 0)
-    throw new java::lang::RuntimeException(
+    throw new ::java::lang::RuntimeException(
       JvNewStringLatin1("Unable to allocate color pixel."));
 
   return col->pixel;
Index: libjava/sources.am
===================================================================
--- libjava/sources.am	(revision 139925)
+++ libjava/sources.am	(working copy)
@@ -1227,15 +1227,11 @@
 classpath/gnu/java/math/GMP.java \
 classpath/gnu/java/math/MPN.java
 
-gnu_java_math_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_math_source_files)))
+gnu-java-math.lo: $(gnu_java_math_source_files)
+	@find $(srcdir)/classpath/lib/gnu/java/math -name '*.class' > gnu-java-math.list
+	$(LTGCJCOMPILE) -fsource-filename=$(here)/classpath/lib/classes -fjni $(LIBGCJ_BC_FLAGS) -c -o gnu-java-math.lo @gnu-java-math.list
+	@rm -f gnu-java-math.list
 
-gnu/java/math.list: $(gnu_java_math_source_files)
-	@$(mkinstalldirs) $(dir $@)
-	echo $(srcdir)/classpath/lib/gnu/java/math/*.class > gnu/java/math.list
-
--include gnu/java/math.deps
-
-
 gnu_java_net_source_files = \
 classpath/gnu/java/net/CRLFInputStream.java \
 classpath/gnu/java/net/CRLFOutputStream.java \
@@ -8619,7 +8615,6 @@
   gnu/java/lang.list \
   gnu/java/lang/reflect.list \
   gnu/java/locale.list \
-  gnu/java/math.list \
   gnu/java/net.list \
   gnu/java/net/loader.list \
   gnu/java/net/local.list \
@@ -8871,7 +8866,6 @@
   $(gnu_java_lang_management_header_files) \
   $(gnu_java_lang_reflect_header_files) \
   $(gnu_java_locale_header_files) \
-  $(gnu_java_math_header_files) \
   $(gnu_java_net_header_files) \
   $(gnu_java_net_loader_header_files) \
   $(gnu_java_net_local_header_files) \
@@ -9096,6 +9090,7 @@
   gnu-java-awt-peer-swing.lo \
   gnu-java-beans.lo \
   gnu-java-lang-management.lo \
+  gnu-java-math.lo \
   gnu-java-util-prefs-gconf.lo \
   gnu-javax-management.lo \
   gnu-javax-rmi.lo \
Index: libjava/java/sql/Timestamp.h
===================================================================
--- libjava/java/sql/Timestamp.h	(revision 139925)
+++ libjava/java/sql/Timestamp.h	(working copy)
@@ -39,7 +39,7 @@
   virtual jboolean equals(::java::lang::Object *);
   virtual jboolean equals(::java::sql::Timestamp *);
   virtual jint compareTo(::java::sql::Timestamp *);
-  virtual jint Timestamp$compareTo(::java::util::Date *);
+  virtual jint Date$compareTo(::java::util::Date *);
 public: // actually package-private
   static const jlong serialVersionUID = 2745179027874758501LL;
 private:
Index: libjava/java/lang/StringBuffer.h
===================================================================
--- libjava/java/lang/StringBuffer.h	(revision 139925)
+++ libjava/java/lang/StringBuffer.h	(working copy)
@@ -94,12 +94,12 @@
   ::java::lang::AbstractStringBuffer * append(jlong);
   ::java::lang::AbstractStringBuffer * append(jint);
   ::java::lang::Appendable * append(jchar);
-  ::java::lang::AbstractStringBuffer * StringBuffer$append(jchar);
+  ::java::lang::AbstractStringBuffer * AbstractStringBuffer$append(jchar);
   ::java::lang::AbstractStringBuffer * append(jboolean);
   ::java::lang::Appendable * append(::java::lang::CharSequence *, jint, jint);
-  ::java::lang::AbstractStringBuffer * StringBuffer$append(::java::lang::CharSequence *, jint, jint);
+  ::java::lang::AbstractStringBuffer * AbstractStringBuffer$append(::java::lang::CharSequence *, jint, jint);
   ::java::lang::Appendable * append(::java::lang::CharSequence *);
-  ::java::lang::AbstractStringBuffer * StringBuffer$append(::java::lang::CharSequence *);
+  ::java::lang::AbstractStringBuffer * AbstractStringBuffer$append(::java::lang::CharSequence *);
   ::java::lang::AbstractStringBuffer * append(JArray< jchar > *, jint, jint);
   ::java::lang::AbstractStringBuffer * append(JArray< jchar > *);
   ::java::lang::AbstractStringBuffer * append(::java::lang::StringBuffer *);
Index: libjava/java/lang/natStringBuffer.cc
===================================================================
--- libjava/java/lang/natStringBuffer.cc	(revision 139925)
+++ libjava/java/lang/natStringBuffer.cc	(working copy)
@@ -13,7 +13,7 @@
 #include <java/lang/StringBuffer.h>
 
 java::lang::StringBuffer*
-java::lang::StringBuffer::append (jint num)
+java::lang::StringBuffer::StringBuffer$append (jint num)
 {
   // Use an array large enough for "-2147483648"; i.e. 11 chars.
   jchar buffer[11];
Index: libjava/java/io/CharArrayWriter.h
===================================================================
--- libjava/java/io/CharArrayWriter.h	(revision 139925)
+++ libjava/java/io/CharArrayWriter.h	(working copy)
@@ -33,11 +33,11 @@
   void resize(jint);
 public:
   virtual ::java::lang::Appendable * append(::java::lang::CharSequence *, jint, jint);
-  virtual ::java::io::Writer * CharArrayWriter$append(::java::lang::CharSequence *, jint, jint);
+  virtual ::java::io::Writer * Writer$append(::java::lang::CharSequence *, jint, jint);
   virtual ::java::lang::Appendable * append(::java::lang::CharSequence *);
-  virtual ::java::io::Writer * CharArrayWriter$append(::java::lang::CharSequence *);
+  virtual ::java::io::Writer * Writer$append(::java::lang::CharSequence *);
   virtual ::java::lang::Appendable * append(jchar);
-  virtual ::java::io::Writer * CharArrayWriter$append(jchar);
+  virtual ::java::io::Writer * Writer$append(jchar);
 private:
   static const jint DEFAULT_INITIAL_BUFFER_SIZE = 32;
 public: // actually protected

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [0.98 merge] FYI: More build fixes
  2008-09-08 17:54 [0.98 merge] FYI: More build fixes Andrew John Hughes
@ 2008-09-08 18:25 ` David Daney
  2008-09-08 19:09   ` Andrew Haley
  2008-09-08 19:17   ` Andrew John Hughes
  2008-09-14 19:56 ` Andrew John Hughes
  1 sibling, 2 replies; 6+ messages in thread
From: David Daney @ 2008-09-08 18:25 UTC (permalink / raw)
  To: Andrew John Hughes; +Cc: java-patches

Andrew John Hughes wrote:
> 	* scripts/makemake.tcl: Switch
> 	gnu.java.math to BC compilation.

Can you explain why this was necessary?

Thanks,
David Daney

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [0.98 merge] FYI: More build fixes
  2008-09-08 18:25 ` David Daney
@ 2008-09-08 19:09   ` Andrew Haley
  2008-09-08 19:17   ` Andrew John Hughes
  1 sibling, 0 replies; 6+ messages in thread
From: Andrew Haley @ 2008-09-08 19:09 UTC (permalink / raw)
  To: David Daney; +Cc: Andrew John Hughes, java-patches

David Daney wrote:
> Andrew John Hughes wrote:
>>     * scripts/makemake.tcl: Switch
>>     gnu.java.math to BC compilation.
> 
> Can you explain why this was necessary?

I'm tempted to reject this.

Andrew.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [0.98 merge] FYI: More build fixes
  2008-09-08 18:25 ` David Daney
  2008-09-08 19:09   ` Andrew Haley
@ 2008-09-08 19:17   ` Andrew John Hughes
  2008-09-08 19:28     ` David Daney
  1 sibling, 1 reply; 6+ messages in thread
From: Andrew John Hughes @ 2008-09-08 19:17 UTC (permalink / raw)
  To: David Daney; +Cc: java-patches

2008/9/8 David Daney <ddaney@avtrex.com>:
> Andrew John Hughes wrote:
>>
>>        * scripts/makemake.tcl: Switch
>>        gnu.java.math to BC compilation.
>
> Can you explain why this was necessary?
>
> Thanks,
> David Daney
>

Without this, the build fails as there is no CNI implementation of the
GMP support.
Thus, I switched them to bc as is done with the Classpath Gtk+, Qt,
gconf, gstreamer, etc. peers.
If there is a preferable way of doing this, then I'll switch to this
but this was the most obvious method
given how the other peers are handled.
-- 
Andrew :-)

Support Free Java!
Contribute to GNU Classpath and the OpenJDK
http://www.gnu.org/software/classpath
http://openjdk.java.net

PGP Key: 94EFD9D8 (http://subkeys.pgp.net)
Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [0.98 merge] FYI: More build fixes
  2008-09-08 19:17   ` Andrew John Hughes
@ 2008-09-08 19:28     ` David Daney
  0 siblings, 0 replies; 6+ messages in thread
From: David Daney @ 2008-09-08 19:28 UTC (permalink / raw)
  To: Andrew John Hughes; +Cc: java-patches

Andrew John Hughes wrote:
> 2008/9/8 David Daney <ddaney@avtrex.com>:
>> Andrew John Hughes wrote:
>>>        * scripts/makemake.tcl: Switch
>>>        gnu.java.math to BC compilation.
>> Can you explain why this was necessary?
>>
>> Thanks,
>> David Daney
>>
> 
> Without this, the build fails as there is no CNI implementation of the
> GMP support.
> Thus, I switched them to bc as is done with the Classpath Gtk+, Qt,
> gconf, gstreamer, etc. peers.
> If there is a preferable way of doing this, then I'll switch to this
> but this was the most obvious method
> given how the other peers are handled.

It is unfortunate that the only way to get -fjni is to force the package 
to be bc.

We could augment makemake.tcl so that there was a 'jni' specification 
that did jni but not bc.  FWIW, that would be my preference.  But I am 
not a maintainer...


David Daney

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [0.98 merge] FYI: More build fixes
  2008-09-08 17:54 [0.98 merge] FYI: More build fixes Andrew John Hughes
  2008-09-08 18:25 ` David Daney
@ 2008-09-14 19:56 ` Andrew John Hughes
  1 sibling, 0 replies; 6+ messages in thread
From: Andrew John Hughes @ 2008-09-14 19:56 UTC (permalink / raw)
  To: java-patches

2008/9/8 Andrew John Hughes <gnu_andrew@member.fsf.org>:
> This patch fixes a number of further issues found
> when trying to build the GCJ 0.98 merge tree.
>
> ChangeLog:
>
> 2008-09-04  Andrew John Hughes  <gnu_andrew@member.fsf.org>
>
>        * Makefile.in,
>        * classpath/configure: Regenerated.
>        * gnu/gcj/util/natDebug.cc,
>        * gnu/gcj/xlib/natColormap.cc,
>        * gnu/gcj/xlib/natDisplay.cc,
>        * gnu/gcj/xlib/natDrawable.cc,
>        * gnu/gcj/xlib/natFont.cc,
>        * gnu/gcj/xlib/natWMSizeHints.cc,
>        * gnu/gcj/xlib/natWindow.cc,
>        * gnu/gcj/xlib/natXImage.cc:
>        Add :: prefix to namespaces.
>        * java/io/CharArrayWriter.h,
>        * java/lang/StringBuffer.h:
>        Regenerated using patched gjavah.
>        * java/lang/natStringBuffer.cc:
>        Fix naming of append(jint).
>        * java/sql/Timestamp.h: Regenerated
>        using patched gjavah.
>        * jni.cc: Rename p to functions
>        to match change in GNU Classpath.
>        * scripts/makemake.tcl: Switch
>        gnu.java.math to BC compilation.
>        * sources.am: Regenerated.
>

Just realised how sparse on detail this mail was.  The actual changes are:

* Fixes to a number of CNI files to add the prefix '::' before the namespace
e.g. java::lang becomes ::java::lang.

This avoids failures such as:

/home/andrew/projects/classpath/gcj/sources/gcc/libjava/gnu/gcj/util/natDebug.cc:
In static member function 'static java::lang::Object*
gnu::gcj::util::Debug::getField(java::lang::Object*,
java::lang::reflect::Field*)':
/home/andrew/projects/classpath/gcj/sources/gcc/libjava/gnu/gcj/util/natDebug.cc:73:
error: expected type-specifier
/home/andrew/projects/classpath/gcj/sources/gcc/libjava/gnu/gcj/util/natDebug.cc:73:
error: cannot convert 'int*' to 'java::lang::Object*' in return
/home/andrew/projects/classpath/gcj/sources/gcc/libjava/gnu/gcj/util/natDebug.cc:73:
error: expected ';'
/home/andrew/projects/classpath/gcj/sources/gcc/libjava/gnu/gcj/util/natDebug.cc:73:
error: 'Double' is not a member of 'gnu::java::lang'

which was mentioned in http://gcc.gnu.org/ml/java/2008-09/msg00002.html

* gjavah was fixed in GNU Classpath to use the originating class
rather than the current
class when naming bridge methods.  The header files listed in this
patch are a result of
regenerating the headers with the patched gjavah.  The actual gjavah
will be merged into
the tree with other recent Classpath changes by Matthias Klose (doko).

See http://gcc.gnu.org/ml/java/2008-08/msg00060.html

* jni.cc was altered due to a change in jni.h made by
Christian Thalinger (twisti):

2008-06-23  Christian Thalinger  <twisti@complang.tuwien.ac.at>

        * include/jni.h [__cplusplus] (_Jv_JNIEnv): Renamed member p to
        functions to be compatible with OpenJDK.

* gnu.java.math: The build failed when this was compiled normally, as there
is no CNI code implementation of the GMP bindings.  As David Daney has
mentioned,
we perhaps need a target that just does JNI as opposed to CNI linking,
without also
using the BC ABI.

Hope that makes things clearer, and apologies for putting so many
issues in one patch.
-- 
Andrew :-)

Support Free Java!
Contribute to GNU Classpath and the OpenJDK
http://www.gnu.org/software/classpath
http://openjdk.java.net

PGP Key: 94EFD9D8 (http://subkeys.pgp.net)
Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2008-09-14 18:23 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-09-08 17:54 [0.98 merge] FYI: More build fixes Andrew John Hughes
2008-09-08 18:25 ` David Daney
2008-09-08 19:09   ` Andrew Haley
2008-09-08 19:17   ` Andrew John Hughes
2008-09-08 19:28     ` David Daney
2008-09-14 19:56 ` Andrew John Hughes

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).