[cp-patches] FYI: check for MSG_WAITALL and fix for Cygwin

2007-06-24 Thread Dalibor Topic

hi all,

the attached patch checks for MSG_WAITALL since it does not exist on 
Cygwin, and fixes the respective build failure in the nio code by 
defining the flag to be 0 in the case it does not exist on a system.


cheers,
dalibor topic

2007-06-25  Dalibor Topic  [EMAIL PROTECTED]

* configure.ac: Check for MSG_WAITALL, since it does not exist
on Cygwin.

* native/jni/java-nio/gnu_java_nio_VMChannel.c
(Java_gnu_java_nio_VMChannel_receive): Define MSG_WAITALL as 0
if it does not exist.

--- configure.ac10 Jun 2007 21:16:42 -  1.210
+++ configure.ac24 Jun 2007 20:38:25 -
@@ -589,6 +589,17 @@
  [Define this symbol if you have SO_NOSIGPIPE]) ],
   [ AC_MSG_RESULT(no)]
  )
+  dnl **
+  dnl Check for MSG_WAITALL
+  dnl **
+  AC_MSG_CHECKING(for MSG_WAITALL)
+  AC_TRY_COMPILE([#include sys/socket.h],
+   [ int f = MSG_WAITALL; ],
+   [ AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE_MSG_WAITALL, 1,
+  [Define this symbol if you have MSG_WAITALL]) ],
+   [ AC_MSG_RESULT(no)]
+  )
 
   dnl Check for plugin support headers and libraries.
   if test x${COMPILE_PLUGIN} = xyes; then
Index: examples/Makefile.am
===
RCS file: /sources/classpath/classpath/examples/Makefile.am,v
retrieving revision 1.20
--- native/jni/java-nio/gnu_java_nio_VMChannel.c	30 May 2007 09:56:57 -	1.19
+++ native/jni/java-nio/gnu_java_nio_VMChannel.c	24 Jun 2007 20:38:40 -
@@ -771,6 +771,10 @@
   if (JCL_init_buffer (env, buf, dst) == -1)
 JCL_ThrowException (env, IO_EXCEPTION, loading buffer failed);
 
+#ifndef HAVE_MSG_WAITALL
+#define MSG_WAITALL   0
+#endif
+
   ret = cpnio_recvfrom (fd, (buf.ptr[buf.position + buf.offset]),
 buf.limit - buf.position, MSG_WAITALL,
 sockaddr, slen);
Index: native/jni/native-lib/cpnet.c
===
RCS file: /sources/classpath/classpath/native/jni/native-lib/cpnet.c,v
retrieving revision 1.8


[cp-patches] FYI: allow configure to work when given --with-javac=javac -J-Xmx512M

2007-06-24 Thread Dalibor Topic

hi all,

the attached patch lets our configure script work with user supplied 
javac options.


cheers,
dalibor topic

2007-06-25  Dalibor Topic  [EMAIL PROTECTED]

* m4/acinclude.m4 (CLASSPATH_CHECK_JAVAC): If the user passes an
explicit argument to configure, just use it, and don't attempt
to run AC_CHECK_PROG. This makes --with-javac=javac -J-Xmx512M
work.



m4_acinclude.m4
Description: application/m4


[cp-patches] FYI: use HAVE_INET6 throughout the networking code

2007-06-24 Thread Dalibor Topic

hi all,

the attached patch largely fixes the build on cygwin, and lets IPv6 
dependant code only be built if we find IPv6 facilities.


cheers,
dalibor topic

2007-06-25  Dalibor Topic  [EMAIL PROTECTED]

* native/jni/java-net/gnu_java_net_VMPlainSocketImpl.c
(THROW_NO_IPV6): New macro.
(Java_gnu_java_net_VMPlainSocketImpl_bind6) Conditionally
build code if IPv6 facilities are available, otherwise
throw an error.
(Java_gnu_java_net_VMPlainSocketImpl_setMulticastInterface6,
Java_gnu_java_net_VMPlainSocketImpl_join6,
Java_gnu_java_net_VMPlainSocketImpl_leave6,
Java_gnu_java_net_VMPlainSocketImpl_joinGroup6,
Java_gnu_java_net_VMPlainSocketImpl_leaveGroup6)
Use THROW_NO_IPV6.

* native/jni/java-net/java_net_VMInetAddress.c
(Java_java_net_VMInetAddress_getHostByAddr,
Java_java_net_VMInetAddress_getHostByName,
Java_java_net_VMInetAddress_aton) Build IPv6 dependant
code conditionally on IPv6 facilities being available.
Switched if-else blocks where necessary to allow that.

* native/jni/java-net/javanet.c
(_javanet_get_ip_netaddr) Build IPv6 dependant code conditionally
on IPv6 facilities being available.

* native/jni/native-lib/cpnet.c
(cpnet_getHostByName, cpnet_getHostByAddr) Build IPv6 dependant
code conditionally on IPv6 facilities being available.
(cpnet_aton) Moved variable declaration of inet6_addr to the scope
of its use. Build IPv6 dependant code conditionally
on IPv6 facilities being available.

* native/jni/native-lib/cpnet.h (cpnet_newIPV6Address,
cpnet_isIPV6Address, cpnet_IPV6AddressToBytes,
cpnet_bytesToIPV6Address): Make IPv6 dependant utility functions
available conditionally on IPv6 facilities being available.

--- native/jni/java-net/gnu_java_net_VMPlainSocketImpl.c	26 Nov 2006 13:31:27 -	1.14
+++ native/jni/java-net/gnu_java_net_VMPlainSocketImpl.c	24 Jun 2007 20:38:38 -
@@ -69,6 +69,7 @@
 #include gnu_java_net_VMPlainSocketImpl.h
 
 #define THROW_NO_NETWORK(env) JCL_ThrowException (env, java/lang/InternalError, this platform not configured for network support)
+#define THROW_NO_IPV6(env)JCL_ThrowException (env, java/lang/InternalError, IPv6 support not available)
 
 /*
  * Class: gnu_java_net_VMPlainSocketImpl
@@ -120,7 +121,7 @@
jclass c __attribute__((unused)),
jint fd, jbyteArray addr, jint port)
 {
-  /* FIXME! Add check if we have IPv6! */
+#ifdef HAVE_INET6
   struct sockaddr_in6 sockaddr;
   jbyte *elems;
   int ret;
@@ -141,6 +142,9 @@
 
   if (-1 == ret)
 JCL_ThrowException (env, IO_EXCEPTION, strerror (errno));
+#else
+  THROW_NO_IPV6(env);
+#endif
 }
 
 
@@ -442,8 +446,7 @@
 #endif /* HAVE_INET6 */
 #else
   (void) fd;
-  JCL_ThrowException (env, java/lang/InternalError,
-  socket options not supported);
+  THROW_NO_IPV6(env);
 #endif /* HAVE_SETSOCKOPT */
 }
 
@@ -582,8 +585,7 @@
 #else
   (void) fd;
   (void) addr;
-  JCL_ThrowException (env, java/lang/InternalError,
-  IPv6 support not available);
+  THROW_NO_IPV6(env);
 #endif /* HAVE_INET6 */
 #else
   (void) fd;
@@ -657,8 +659,7 @@
 #else
   (void) fd;
   (void) addr;
-  JCL_ThrowException (env, java/lang/InternalError,
-  IPv6 support not available);
+  THROW_NO_IPV6(env);
 #endif /* HAVE_INET6 */
 #else
   (void) fd;
@@ -763,8 +764,7 @@
 #else
   (void) fd;
   (void) addr;
-  JCL_ThrowException (env, java/lang/InternalError,
-  IPv6 support not available);
+  THROW_NO_IPV6(env);
 #endif /* HAVE_INET6 */
 #else
   (void) fd;
@@ -865,8 +865,7 @@
 #else
   (void) fd;
   (void) addr;
-  JCL_ThrowException (env, java/lang/InternalError,
-  IPv6 support not available);
+  THROW_NO_IPV6(env);
 #endif /* HAVE_INET6 */
 #else
   (void) fd;
Index: native/jni/java-net/java_net_VMInetAddress.c
===
RCS file: /sources/classpath/classpath/native/jni/java-net/java_net_VMInetAddress.c,v
retrieving revision 1.9
--- native/jni/java-net/javanet.c	25 Oct 2006 00:39:02 -	1.37
+++ native/jni/java-net/javanet.c	24 Jun 2007 20:38:39 -
@@ -395,10 +395,12 @@
   netaddr = cpnet_newIPV4Address(env);
   cpnet_bytesToIPV4Address(netaddr, octets);
   break;
+#ifdef HAVE_INET6
 case 16:
   netaddr = cpnet_newIPV6Address(env);
   cpnet_bytesToIPV6Address(netaddr, octets);
   break;
+#endif
 default:
   /* This should not happen as we have checked before.
* But that way we shut the compiler warnings */
Index: native/jni/java-nio/gnu_java_nio_VMChannel.c
===
RCS file: 

[cp-patches] RFC: small makefile fixes for cygwin (vs. flat class trees)

2007-06-24 Thread Dalibor Topic

hi all,

attached are the two remaining makefile fixes for cygwin, that work 
around the problem that the path separator on windows is different from 
the path separator used on linux, so that a bootclasspath of 
../lib:../lib/glibj.zip for javac results in a build failure on Cygwin.


I've fixed that by removing the ../lib part of it, and I'd like to hear 
from the developers using flat class files (i.e. not building glibj.zip) 
if the patches work for them, too.


If they don't, I assume we'll need to rework the classpath build system 
a fair bit to introduce platform dependent path separators and use them 
throughout the makefiles.


cheers,
dalibor topic
--- examples/Makefile.am11 Jan 2007 22:13:23 -  1.20
+++ examples/Makefile.am24 Jun 2007 20:38:25 -
@@ -1,5 +1,5 @@
 ## Input file for automake to generate the Makefile.in used by configure
-GLIBJ_CLASSPATH='$(top_builddir)/lib':'$(top_builddir)/lib/glibj.zip':'$(top_builddir)/tools/tools.zip'
+GLIBJ_CLASSPATH='$(top_builddir)/lib/glibj.zip'
 
 # Setup the compiler to use the GNU Classpath library we just build
 #if FOUND_GCJ
@@ -12,7 +12,7 @@
 JCOMPILER = $(ECJ) -1.5 -encoding UTF-8 
-warn:-deprecation,serial,typeHiding,unchecked,unused,varargsCast 
-bootclasspath $(GLIBJ_CLASSPATH) -classpath .
 else
 if FOUND_JAVAC
-JCOMPILER = $(JAVAC) -encoding UTF-8 -bootclasspath $(GLIBJ_CLASSPATH) 
-classpath .
+JCOMPILER = $(JAVAC) -encoding UTF-8 -bootclasspath $(GLIBJ_CLASSPATH) 
-classpath '$(top_builddir)/tools/tools.zip'
 else
 error dunno how to setup the JCOMPILER and compile
 #endif
Index: m4/acinclude.m4
===
RCS file: /sources/classpath/classpath/m4/acinclude.m4,v
retrieving revision 1.18
--- tools/Makefile.am   21 Jun 2007 21:54:44 -  1.40
+++ tools/Makefile.am   24 Jun 2007 20:38:43 -
@@ -1,6 +1,6 @@
 ## Input file for automake to generate the Makefile.in used by configure
 
-GLIBJ_BOOTCLASSPATH='$(top_builddir)/lib':'$(top_builddir)/lib/glibj.zip'
+GLIBJ_BOOTCLASSPATH='$(top_builddir)/lib/glibj.zip'
 GLIBJ_CLASSPATH=asm
 
 # Setup the compiler to use the GNU Classpath library we just built.
@@ -8,7 +8,7 @@
 JCOMPILER = $(ECJ) -1.5 -encoding UTF-8 
-warn:-deprecation,serial,typeHiding,unchecked,unused,varargsCast 
-bootclasspath $(GLIBJ_BOOTCLASSPATH) -classpath .:$(GLIBJ_CLASSPATH)
 else
 if FOUND_JAVAC
-JCOMPILER = $(JAVAC) -encoding UTF-8 -bootclasspath $(GLIBJ_BOOTCLASSPATH) 
-classpath .:$(GLIBJ_CLASSPATH)
+JCOMPILER = $(JAVAC) -encoding UTF-8 -bootclasspath $(GLIBJ_BOOTCLASSPATH) 
-classpath $(GLIBJ_CLASSPATH)
 else
 error dunno how to setup the JCOMPILER and compile
 endif


[cp-testresults] FAIL: regressions for mauve-jamvm on Sun Jun 24 07:32:22 UTC 2007

2007-06-24 Thread cpdev
Baseline from: Sat Jun 23 09:33:44 UTC 2007

Regressions:
FAIL: java.awt.event.MouseEvent.modifiers
FAIL: java.awt.event.MouseEvent.modifiersEx
FAIL: javax.net.ssl.SSLEngine.TestHandshake

Totals:
PASS: 2925
XPASS: 0
FAIL: 189
XFAIL: 0


___
Classpath-testresults mailing list
Classpath-testresults@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath-testresults


[cp-testresults] FAIL: regressions for mauve-gij on Sun Jun 24 09:01:19 UTC 2007

2007-06-24 Thread cpdev
Baseline from: Sun Jun 24 01:08:12 UTC 2007

Regressions:
FAIL: gnu.javax.crypto.key.srp6.TestOfSRPKeyGeneration

New fails:
FAIL: java.lang.Class.init
FAIL: java.lang.Class.newInstance
FAIL: java.lang.Class.security
FAIL: java.lang.ClassLoader.findLoadedClass
FAIL: java.lang.Double.DoubleTest
FAIL: java.lang.Float.FloatTest
FAIL: java.lang.Runtime.security
FAIL: java.lang.String.StringTest
FAIL: java.lang.String.decode
FAIL: java.lang.String.getBytes13
FAIL: java.lang.Thread.contextClassLoader
FAIL: java.lang.Thread.daemon
FAIL: java.lang.Thread.insecurity
FAIL: java.lang.Thread.security
FAIL: java.lang.Thread.security10
FAIL: java.lang.Thread.stop
FAIL: java.lang.management.ClassLoadingMXBeanTest
FAIL: java.lang.management.OperatingSystemMXBeanTest
FAIL: java.lang.management.RuntimeMXBeanTest
FAIL: java.lang.reflect.InvocationTargetException.Chain
FAIL: java.math.BigDecimal.DiagBigDecimal
FAIL: java.math.BigInteger.TestOfPR27372
FAIL: java.net.DatagramPacket.DatagramPacketOffset
FAIL: java.net.DatagramSocket.DatagramSocketTest2
FAIL: java.net.DatagramSocket.security
FAIL: java.net.HttpURLConnection.getOutputStream
FAIL: java.net.InetAddress.security
FAIL: java.net.NetworkInterface.security
FAIL: java.net.ServerSocket.AcceptTimeout
FAIL: java.net.Socket.security
FAIL: java.net.URLConnection.getHeaderFields
FAIL: java.nio.ByteBuffer.TestAllocateDirect
FAIL: java.nio.CharBuffer.CharSequenceWrapper
FAIL: java.nio.DoubleBuffer.compareTo
FAIL: java.nio.FloatBuffer.compareTo
FAIL: java.nio.channels.FileChannel.lock
FAIL: java.nio.channels.FileChannel.manyopen
FAIL: java.nio.channels.FileChannel.map
FAIL: java.nio.channels.FileChannel.multibufferIO
FAIL: java.nio.channels.FileChannel.multidirectbufferIO
FAIL: java.nio.charset.Charset.encode
FAIL: java.text.Collator.GetSet
FAIL: java.text.DateFormat.equals
FAIL: java.text.DateFormatSymbols.Test
FAIL: java.text.DateFormatSymbols.setAmPmStrings
FAIL: java.text.DateFormatSymbols.setEras
FAIL: java.text.DateFormatSymbols.setMonths
FAIL: java.text.DateFormatSymbols.setShortMonths
FAIL: java.text.DateFormatSymbols.setShortWeekdays
FAIL: java.text.DateFormatSymbols.setWeekdays
FAIL: java.text.DateFormatSymbols.setZoneStrings
FAIL: java.text.DecimalFormat.MaximumAndMinimumDigits
FAIL: java.text.DecimalFormat.digits
FAIL: java.text.DecimalFormat.format
FAIL: java.text.DecimalFormat.formatExp
FAIL: java.text.DecimalFormat.getCurrency
FAIL: java.text.DecimalFormat.setCurrency
FAIL: java.text.DecimalFormat.setDecimalFormatSymbols
FAIL: java.text.DecimalFormat.toLocalizedPattern
FAIL: java.text.DecimalFormat.toPattern14
FAIL: java.text.MessageFormat.attribute
FAIL: java.text.MessageFormat.format14
FAIL: java.text.NumberFormat.UK
FAIL: java.text.RuleBasedCollator.CollatorTests
FAIL: java.text.SimpleDateFormat.Localization
FAIL: java.text.SimpleDateFormat.applyLocalizedPattern
FAIL: java.text.SimpleDateFormat.regress
FAIL: java.text.SimpleDateFormat.toLocalizedPattern
FAIL: java.util.Calendar.dstOffset
FAIL: java.util.Calendar.set
FAIL: java.util.Currency.France
FAIL: java.util.Currency.Germany
FAIL: java.util.Currency.Italy
FAIL: java.util.Currency.ReferenceEquality
FAIL: java.util.Currency.US
FAIL: java.util.GregorianCalendar.getMinimalDaysInFirstWeek
FAIL: java.util.GregorianCalendar.internal
FAIL: java.util.GregorianCalendar.weekOfYear
FAIL: java.util.SimpleTimeZone.check12
FAIL: java.util.SimpleTimeZone.equals
FAIL: java.util.SimpleTimeZone.getDSTSavings
FAIL: java.util.SimpleTimeZone.hasSameRules
FAIL: java.util.TimeZone.setDefault
FAIL: java.util.logging.Logger.getLogger
FAIL: java.util.logging.Logger.securityChecks
FAIL: java.util.logging.XMLFormatter.formatMessage
FAIL: java.util.prefs.PreferenceTest
FAIL: javax.imageio.ImageIO.ImageIOTest
FAIL: javax.management.MBeanServerInvocationHandler.MBeanProxy
FAIL: javax.management.ObjectName.applyJDK6
FAIL: javax.net.ssl.SSLContext.TestDefaultInit
FAIL: javax.net.ssl.SSLEngine.TestGNUHandshake
FAIL: javax.rmi.CORBA.Tie.RMI_IIOP
FAIL: javax.security.auth.login.TestOfPR25202
FAIL: javax.swing.BoxLayout.simplehorizontal
FAIL: javax.swing.BoxLayout.simplevertical
FAIL: javax.swing.DefaultListSelectionModel.addSelectionInterval
FAIL: javax.swing.DefaultListSelectionModel.insertIndexInterval
FAIL: javax.swing.DefaultListSelectionModel.moveLeadSelectionIndex
FAIL: javax.swing.DefaultListSelectionModel.removeIndexInterval
FAIL: javax.swing.DefaultListSelectionModel.removeSelectionInterval
FAIL: javax.swing.DefaultListSelectionModel.setLeadSelectionIndex
FAIL: javax.swing.DefaultListSelectionModel.setSelectionInterval
FAIL: javax.swing.DefaultListSelectionModel.toString
FAIL: javax.swing.InputMap.allKeys
FAIL: javax.swing.InputMap.keys
FAIL: javax.swing.JButton.constructors
FAIL: javax.swing.JComboBox.ComboRobot
FAIL: javax.swing.JComboBox.basic
FAIL: javax.swing.JEditorPane.ConstructorsAndTypes
FAIL: javax.swing.JEditorPane.getScrollableTracks
FAIL: javax.swing.JFileChooser.setAcceptAllFileFilterUsed
FAIL: 

[cp-testresults] FAIL: regressions for mauve-cacao on Sun Jun 24 15:43:50 UTC 2007

2007-06-24 Thread cpdev
Baseline from: Sun Jun 24 07:50:54 UTC 2007

Regressions:
FAIL: java.awt.ColorClass.brighter

Totals:
PASS: 1024
XPASS: 0
FAIL: 69
XFAIL: 0


___
Classpath-testresults mailing list
Classpath-testresults@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath-testresults


[cp-testresults] FAIL: regressions for mauve-jamvm on Sun Jun 24 22:55:04 UTC 2007

2007-06-24 Thread cpdev
Baseline from: Sun Jun 24 15:23:00 UTC 2007

Regressions:
FAIL: gnu.javax.crypto.sasl.srp.TestOfSRPPasswordFile

Improvements:
PASS: gnu.javax.crypto.key.srp6.TestOfSRPKeyGeneration

Totals:
PASS: 2928
XPASS: 0
FAIL: 186
XFAIL: 0


___
Classpath-testresults mailing list
Classpath-testresults@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath-testresults


[cp-testresults] FAIL: jamvm build on Mon Jun 25 04:53:14 UTC 2007

2007-06-24 Thread cpdev
Making all in sun
make[2]: Entering directory `/home/cpdev/Nightly/jamvm/build/lib/sun'
Making all in reflect
make[3]: Entering directory `/home/cpdev/Nightly/jamvm/build/lib/sun/reflect'
Making all in annotation
make[4]: Entering directory 
`/home/cpdev/Nightly/jamvm/build/lib/sun/reflect/annotation'
make[4]: Nothing to be done for `all'.
make[4]: Leaving directory 
`/home/cpdev/Nightly/jamvm/build/lib/sun/reflect/annotation'
make[4]: Entering directory `/home/cpdev/Nightly/jamvm/build/lib/sun/reflect'
make[4]: Nothing to be done for `all-am'.
make[4]: Leaving directory `/home/cpdev/Nightly/jamvm/build/lib/sun/reflect'
make[3]: Leaving directory `/home/cpdev/Nightly/jamvm/build/lib/sun/reflect'
make[3]: Entering directory `/home/cpdev/Nightly/jamvm/build/lib/sun'
make[3]: Nothing to be done for `all-am'.
make[3]: Leaving directory `/home/cpdev/Nightly/jamvm/build/lib/sun'
make[2]: Leaving directory `/home/cpdev/Nightly/jamvm/build/lib/sun'
make[2]: Entering directory `/home/cpdev/Nightly/jamvm/build/lib'
mkdir classes
ecj -bootclasspath 
/home/cpdev/Nightly/classpath/install/share/classpath/glibj.zip -d classes 
../../jamvm/lib/jamvm/java/lang/JarLauncher.java 
../../jamvm/lib/java/lang/VMRuntime.java 
../../jamvm/lib/java/lang/VMClassLoader.java 
../../jamvm/lib/java/lang/VMString.java ../../jamvm/lib/java/lang/VMThread.java 
../../jamvm/lib/java/lang/VMThrowable.java 
../../jamvm/lib/java/lang/reflect/Constructor.java 
../../jamvm/lib/java/lang/reflect/Field.java 
../../jamvm/lib/java/lang/reflect/Method.java 
../../jamvm/lib/java/security/VMAccessController.java 
../../jamvm/lib/gnu/classpath/VMSystemProperties.java 
../../jamvm/lib/sun/reflect/annotation/AnnotationInvocationHandler.java 
../../jamvm/lib/gnu/classpath/VMStackWalker.java
--
1. ERROR in ../../jamvm/lib/jamvm/java/lang/JarLauncher.java (at line 1)
/*
^
The type java.lang.Object cannot be resolved. It is indirectly referenced from 
required .class files
--
1 problem (1 error)make[2]: *** [classes.zip] Error 255
make[2]: Leaving directory `/home/cpdev/Nightly/jamvm/build/lib'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/cpdev/Nightly/jamvm/build/lib'
make: *** [all-recursive] Error 1


___
Classpath-testresults mailing list
Classpath-testresults@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath-testresults


[cp-testresults] FAIL: cacao build on Mon Jun 25 04:54:01 UTC 2007

2007-06-24 Thread cpdev
checking for dlopen in -ldl... yes
checking whether a program can dlopen itself... yes
checking whether a statically linked program can dlopen itself... no
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
configure: creating libtool
appending configuration tag CXX to libtool
checking for ld used by g++... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC
checking if g++ PIC flag -fPIC works... yes
checking if g++ static flag -static works... yes
checking if g++ supports -c -o file.o... yes
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
appending configuration tag F77 to libtool
checking whether to link CACAO statically... no
checking where CACAO's vm.zip is installed... 
/home/cpdev/Nightly/cacao/install/share/cacao/vm.zip
checking which Java core library to use... gnu
checking where Java core library is installed... 
/home/cpdev/Nightly/classpath/install
checking where Java core library classes are installed... 
/home/cpdev/Nightly/classpath/install/share/classpath/glibj.zip
checking where Java core library native libraries are installed... 
/home/cpdev/Nightly/classpath/install/lib
checking where Java core library headers are installed... 
/home/cpdev/Nightly/classpath/install/include
checking /home/cpdev/Nightly/classpath/install/include/jni_md.h usability... no
checking /home/cpdev/Nightly/classpath/install/include/jni_md.h presence... no
checking for /home/cpdev/Nightly/classpath/install/include/jni_md.h... no
configure: error: cannot find jni_md.h


___
Classpath-testresults mailing list
Classpath-testresults@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath-testresults


[cp-testresults] FAIL: ecj built with ecj on jamvm on Mon Jun 25 04:54:38 UTC 2007

2007-06-24 Thread cpdev
xargs: jamvm: No such file or directory


___
Classpath-testresults mailing list
Classpath-testresults@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath-testresults


[cp-testresults] FAIL: classpath build with ecj on Mon Jun 25 04:45:34 UTC 2007

2007-06-24 Thread cpdev
if /bin/sh ../../../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. 
-I../../../../classpath/native/jni/classpath -I../../../include  
-I../../../../classpath/include -I../../../../classpath/native/jni/classpath 
-I../../../../classpath/native/jni/native-lib  -W -Wall -Wmissing-declarations 
-Wwrite-strings -Wmissing-prototypes -Wno-long-long -Wstrict-prototypes 
-pedantic -Werror -g -O2 -MT jcl.lo -MD -MP -MF .deps/jcl.Tpo -c -o jcl.lo 
../../../../classpath/native/jni/classpath/jcl.c; \
then mv -f .deps/jcl.Tpo .deps/jcl.Plo; else rm -f .deps/jcl.Tpo; exit 1; 
fi
mkdir .libs
 gcc -DHAVE_CONFIG_H -I. -I../../../../classpath/native/jni/classpath 
-I../../../include -I../../../../classpath/include 
-I../../../../classpath/native/jni/classpath 
-I../../../../classpath/native/jni/native-lib -W -Wall -Wmissing-declarations 
-Wwrite-strings -Wmissing-prototypes -Wno-long-long -Wstrict-prototypes 
-pedantic -Werror -g -O2 -MT jcl.lo -MD -MP -MF .deps/jcl.Tpo -c 
../../../../classpath/native/jni/classpath/jcl.c  -fPIC -DPIC -o .libs/jcl.o
if /bin/sh ../../../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. 
-I../../../../classpath/native/jni/classpath -I../../../include  
-I../../../../classpath/include -I../../../../classpath/native/jni/classpath 
-I../../../../classpath/native/jni/native-lib  -W -Wall -Wmissing-declarations 
-Wwrite-strings -Wmissing-prototypes -Wno-long-long -Wstrict-prototypes 
-pedantic -Werror -g -O2 -MT jnilink.lo -MD -MP -MF .deps/jnilink.Tpo -c -o 
jnilink.lo ../../../../classpath/native/jni/classpath/jnilink.c; \
then mv -f .deps/jnilink.Tpo .deps/jnilink.Plo; else rm -f 
.deps/jnilink.Tpo; exit 1; fi
 gcc -DHAVE_CONFIG_H -I. -I../../../../classpath/native/jni/classpath 
-I../../../include -I../../../../classpath/include 
-I../../../../classpath/native/jni/classpath 
-I../../../../classpath/native/jni/native-lib -W -Wall -Wmissing-declarations 
-Wwrite-strings -Wmissing-prototypes -Wno-long-long -Wstrict-prototypes 
-pedantic -Werror -g -O2 -MT jnilink.lo -MD -MP -MF .deps/jnilink.Tpo -c 
../../../../classpath/native/jni/classpath/jnilink.c  -fPIC -DPIC -o 
.libs/jnilink.o
/bin/sh ../../../libtool --tag=CC --mode=link gcc -W -Wall 
-Wmissing-declarations -Wwrite-strings -Wmissing-prototypes -Wno-long-long 
-Wstrict-prototypes -pedantic -Werror -g -O2 -no-undefined  -o libclasspath.la  
 jcl.lo jnilink.lo  
ar cru .libs/libclasspath.a .libs/jcl.o .libs/jnilink.o
ranlib .libs/libclasspath.a
creating libclasspath.la
(cd .libs  rm -f libclasspath.la  ln -s ../libclasspath.la libclasspath.la)
make[3]: Leaving directory 
`/home/cpdev/Nightly/classpath/build/native/jni/classpath'
Making all in native-lib
make[3]: Entering directory 
`/home/cpdev/Nightly/classpath/build/native/jni/native-lib'
if /bin/sh ../../../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. 
-I../../../../classpath/native/jni/native-lib -I../../../include  
-I../../../../classpath/include -I../../../../classpath/native/jni/classpath 
-I../../../../classpath/native/jni/native-lib  -W -Wall -Wmissing-declarations 
-Wwrite-strings -Wmissing-prototypes -Wno-long-long -Wstrict-prototypes 
-pedantic -Werror -g -O2 -MT cpnet.lo -MD -MP -MF .deps/cpnet.Tpo -c -o 
cpnet.lo ../../../../classpath/native/jni/native-lib/cpnet.c; \
then mv -f .deps/cpnet.Tpo .deps/cpnet.Plo; else rm -f .deps/cpnet.Tpo; 
exit 1; fi
mkdir .libs
 gcc -DHAVE_CONFIG_H -I. -I../../../../classpath/native/jni/native-lib 
-I../../../include -I../../../../classpath/include 
-I../../../../classpath/native/jni/classpath 
-I../../../../classpath/native/jni/native-lib -W -Wall -Wmissing-declarations 
-Wwrite-strings -Wmissing-prototypes -Wno-long-long -Wstrict-prototypes 
-pedantic -Werror -g -O2 -MT cpnet.lo -MD -MP -MF .deps/cpnet.Tpo -c 
../../../../classpath/native/jni/native-lib/cpnet.c  -fPIC -DPIC -o 
.libs/cpnet.o
../../../../classpath/native/jni/native-lib/cpnet.c: In function 'cpnet_aton':
../../../../classpath/native/jni/native-lib/cpnet.c:794: error: 'inet6_addr' 
undeclared (first use in this function)
../../../../classpath/native/jni/native-lib/cpnet.c:794: error: (Each 
undeclared identifier is reported only once
../../../../classpath/native/jni/native-lib/cpnet.c:794: error: for each 
function it appears in.)
make[3]: *** [cpnet.lo] Error 1
make[3]: Leaving directory 
`/home/cpdev/Nightly/classpath/build/native/jni/native-lib'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/cpdev/Nightly/classpath/build/native/jni'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/cpdev/Nightly/classpath/build/native'
make: *** [all-recursive] Error 1


___
Classpath-testresults mailing list
Classpath-testresults@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath-testresults


NPE in gnu.xml.transform.WithParam.getValue

2007-06-24 Thread Christian Thalinger
Hi!

When building HotSpot in OpenJDK with CACAO I get this NPE:

/home/twisti/tmp/cacao/bin/java -classpath 
/home/twisti/cacao/sun/openjdk/jdk/control/build/linux-amd64-debug/hotspot/outputdir/linux_amd64_compiler2/jvmg/../generated/jvmtifiles
 jvmtiGen -IN 
/home/twisti/cacao/sun/openjdk/jdk/hotspot/src/share/vm/prims/jvmti.xml -XSL 
/home/twisti/cacao/sun/openjdk/jdk/hotspot/src/share/vm/prims/jvmtiEnter.xsl 
-OUT 
/home/twisti/cacao/sun/openjdk/jdk/control/build/linux-amd64-debug/hotspot/outputdir/linux_amd64_compiler2/jvmg/../generated/jvmtifiles/jvmtiEnter.cpp
 -PARAM interface jvmti
Exception in thread main java.lang.NullPointerException
   at gnu.xml.transform.WithParam.getValue(WithParam.java:89)
   at gnu.xml.transform.ApplyTemplatesNode.doApply(ApplyTemplatesNode.java:112)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.TextNode.doApply(TextNode.java:102)
snip

Does anyone know what the problem is?

- twisti




J2SE compliant RE for Arm Linux

2007-06-24 Thread Søren Boll Overgaard
Hello,

As part of my switch to a new job, I've been trying to convince my
employers to switch from C++ to java on an embedded ARM based platform. 

However, in order for the switch to be reasonably painless, we will need
a J2SE compliant (although we don't need any GUI components) runtime
environment for the embedded platform. I've been looking at various
alternatives based on GNU classpath (as well as a few others). They
include jamvm, mika, PERC, kaffe, gcj and a few more. So far, none of
the the platforms I've been looking at (except PERC, which is
prohibitively priced) support J2SE 5.0. Thus, my question is, can you
provide me with a pointer to a J2SE 5.0 JRE (GNU classpath based or
otherwise) which will run on an ARM Linux platform?

-- 
Søren O.

Oh, bother said the Borg, we've assimilated Pooh.




Re: J2SE compliant RE for Arm Linux

2007-06-24 Thread Andrew John Hughes
On Sunday 24 June 2007 21:58, Søren Boll Overgaard wrote:
 Hello,

 As part of my switch to a new job, I've been trying to convince my
 employers to switch from C++ to java on an embedded ARM based platform.

 However, in order for the switch to be reasonably painless, we will need
 a J2SE compliant (although we don't need any GUI components) runtime
 environment for the embedded platform. I've been looking at various
 alternatives based on GNU classpath (as well as a few others). They
 include jamvm, mika, PERC, kaffe, gcj and a few more. So far, none of
 the the platforms I've been looking at (except PERC, which is
 prohibitively priced) support J2SE 5.0. Thus, my question is, can you
 provide me with a pointer to a J2SE 5.0 JRE (GNU classpath based or
 otherwise) which will run on an ARM Linux platform?

Hi Søren,

It really depends what you mean by a 'J2SE 5.0 JRE' -- what particular 
features have you found lacking in the solutions you've tried?  GNU Classpath 
itself should support 95%+ of the 1.5 API, and, as of the 0.95 release, is 
only buildable with a 1.5 supporting compiler.  Personally, I've been using 
JamVM with 1.5 stuff for about the last three years.

If there is something missing, please file a bug with the respective project 
and let them know (GNU Classpath for library classes, the appropriate VM 
otherwise).  Which version of gcj and kaffe did you try?  These projects 
differ quite significantly between their current release versions and the 
version in their source repositories, and don't (as yet) directly use GNU 
Classpath, so there is some delay between code being written there and being 
imported into their own local tree.

Hope that helps,
-- 
Andrew :-)

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


pgpmurMLWlk4t.pgp
Description: PGP signature


Re: NPE in gnu.xml.transform.WithParam.getValue

2007-06-24 Thread Andrew John Hughes
On Sunday 24 June 2007 13:12, Christian Thalinger wrote:
 Hi!

 When building HotSpot in OpenJDK with CACAO I get this NPE:

 /home/twisti/tmp/cacao/bin/java -classpath
 /home/twisti/cacao/sun/openjdk/jdk/control/build/linux-amd64-debug/hotspot/
outputdir/linux_amd64_compiler2/jvmg/../generated/jvmtifiles jvmtiGen -IN
 /home/twisti/cacao/sun/openjdk/jdk/hotspot/src/share/vm/prims/jvmti.xml
 -XSL
 /home/twisti/cacao/sun/openjdk/jdk/hotspot/src/share/vm/prims/jvmtiEnter.xs
l -OUT
 /home/twisti/cacao/sun/openjdk/jdk/control/build/linux-amd64-debug/hotspot/
outputdir/linux_amd64_compiler2/jvmg/../generated/jvmtifiles/jvmtiEnter.cpp
 -PARAM interface jvmti Exception in thread main
 java.lang.NullPointerException
at gnu.xml.transform.WithParam.getValue(WithParam.java:89)
at
 gnu.xml.transform.ApplyTemplatesNode.doApply(ApplyTemplatesNode.java:112)
 at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
at gnu.xml.transform.TextNode.doApply(TextNode.java:102)
 snip

 Does anyone know what the problem is?

 - twisti

Sorry twisti, I can't help elucidate this one any further as yet, but just 
thought I'd chime in with a 'me too' as I've also seen this in trying to 
build HotSpot -- it's where I got stuck IIRC.

Cheers,
-- 
Andrew :-)

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


pgpCNRk2d58wk.pgp
Description: PGP signature


Re: NPE in gnu.xml.transform.WithParam.getValue

2007-06-24 Thread Mark Wielaard
On Sun, 2007-06-24 at 14:12 +0200, Christian Thalinger wrote:
 When building HotSpot in OpenJDK with CACAO I get this NPE:
 
 /home/twisti/tmp/cacao/bin/java -classpath 
 /home/twisti/cacao/sun/openjdk/jdk/control/build/linux-amd64-debug/hotspot/outputdir/linux_amd64_compiler2/jvmg/../generated/jvmtifiles
  jvmtiGen -IN 
 /home/twisti/cacao/sun/openjdk/jdk/hotspot/src/share/vm/prims/jvmti.xml -XSL 
 /home/twisti/cacao/sun/openjdk/jdk/hotspot/src/share/vm/prims/jvmtiEnter.xsl 
 -OUT 
 /home/twisti/cacao/sun/openjdk/jdk/control/build/linux-amd64-debug/hotspot/outputdir/linux_amd64_compiler2/jvmg/../generated/jvmtifiles/jvmtiEnter.cpp
  -PARAM interface jvmti
 Exception in thread main java.lang.NullPointerException
at gnu.xml.transform.WithParam.getValue(WithParam.java:89)
at 
 gnu.xml.transform.ApplyTemplatesNode.doApply(ApplyTemplatesNode.java:112)
at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
at gnu.xml.transform.TextNode.doApply(TextNode.java:102)
 snip
 
 Does anyone know what the problem is?

Do you have more context? (pun intended)

The part of the stacktrace you posted just pushes a 'null' context
reference around which is dereferenced and generates the
NullPointerException in the end. We need to see more to know why context
is null in the first place.

Cheers,

Mark


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


Re: NPE in gnu.xml.transform.WithParam.getValue

2007-06-24 Thread Christian Thalinger
On Sun, 2007-06-24 at 23:57 +0200, Mark Wielaard wrote:
 On Sun, 2007-06-24 at 14:12 +0200, Christian Thalinger wrote:
  When building HotSpot in OpenJDK with CACAO I get this NPE:
  
  /home/twisti/tmp/cacao/bin/java -classpath 
  /home/twisti/cacao/sun/openjdk/jdk/control/build/linux-amd64-debug/hotspot/outputdir/linux_amd64_compiler2/jvmg/../generated/jvmtifiles
   jvmtiGen -IN 
  /home/twisti/cacao/sun/openjdk/jdk/hotspot/src/share/vm/prims/jvmti.xml 
  -XSL 
  /home/twisti/cacao/sun/openjdk/jdk/hotspot/src/share/vm/prims/jvmtiEnter.xsl
   -OUT 
  /home/twisti/cacao/sun/openjdk/jdk/control/build/linux-amd64-debug/hotspot/outputdir/linux_amd64_compiler2/jvmg/../generated/jvmtifiles/jvmtiEnter.cpp
   -PARAM interface jvmti
  Exception in thread main java.lang.NullPointerException
 at gnu.xml.transform.WithParam.getValue(WithParam.java:89)
 at 
  gnu.xml.transform.ApplyTemplatesNode.doApply(ApplyTemplatesNode.java:112)
 at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
 at gnu.xml.transform.TextNode.doApply(TextNode.java:102)
  snip
  
  Does anyone know what the problem is?
 
 Do you have more context? (pun intended)
 
 The part of the stacktrace you posted just pushes a 'null' context
 reference around which is dereferenced and generates the
 NullPointerException in the end. We need to see more to know why context
 is null in the first place.

Here's the whole stacktrace:

Exception in thread main java.lang.NullPointerException
   at gnu.xml.transform.WithParam.getValue(WithParam.java:89)
   at gnu.xml.transform.ApplyTemplatesNode.doApply(ApplyTemplatesNode.java:112)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.TextNode.doApply(TextNode.java:102)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.TextNode.doApply(TextNode.java:102)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.ValueOfNode.doApply(ValueOfNode.java:115)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.TextNode.doApply(TextNode.java:102)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.ParameterNode.doApply(ParameterNode.java:100)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.ApplyTemplatesNode.doApply(ApplyTemplatesNode.java:153)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.ApplyTemplatesNode.doApply(ApplyTemplatesNode.java:153)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.ApplyTemplatesNode.doApply(ApplyTemplatesNode.java:153)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.ApplyTemplatesNode.doApply(ApplyTemplatesNode.java:153)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.OtherwiseNode.doApply(OtherwiseNode.java:69)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.WhenNode.doApply(WhenNode.java:90)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.ChooseNode.doApply(ChooseNode.java:69)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.TextNode.doApply(TextNode.java:102)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.ApplyTemplatesNode.doApply(ApplyTemplatesNode.java:165)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.TextNode.doApply(TextNode.java:102)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.IfNode.doApply(IfNode.java:88)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.TextNode.doApply(TextNode.java:102)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.ChooseNode.doApply(ChooseNode.java:73)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.ApplyTemplatesNode.doApply(ApplyTemplatesNode.java:165)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.TextNode.doApply(TextNode.java:102)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.ApplyTemplatesNode.doApply(ApplyTemplatesNode.java:165)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.TextNode.doApply(TextNode.java:102)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.ApplyTemplatesNode.doApply(ApplyTemplatesNode.java:165)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.TextNode.doApply(TextNode.java:102)
   at gnu.xml.transform.TemplateNode.apply(TemplateNode.java:79)
   at gnu.xml.transform.ApplyTemplatesNode.doApply(ApplyTemplatesNode.java:153)
   at 

Re: Search for the missing native code

2007-06-24 Thread Andrew John Hughes
On Tuesday 19 June 2007 09:53, Andrew Haley wrote:
 Andrew Haley writes:
   Andrew John Hughes writes:
 Hi everyone,

 I've recently been trying to build JikesRVM on a Free platform (using
 CACAO and some hacked up tools from OpenJDK in the form of IcePick). 
 I've got it just about there now, but I've been let down by a missing
 native method.

 Within the java.util.concurrent framework, the class AtomicLong has a
 native method, VMSupportsCS8 which CACAO at least doesn't provide. 
 It's basically just a check method to find out whether the VM
 supports lockless compare-set operations on longs.

 From java.util.concurrent.atomic.AtomicLong:

 /**
  * Records whether the underlying JVM supports lockless
  * CompareAndSet for longs. While the unsafe.CompareAndSetLong
  * method works in either case, some constructions should be
  * handled at Java level to avoid locking user-visible locks.
  */
 static final boolean VM_SUPPORTS_LONG_CAS = VMSupportsCS8();

 /**
  * Returns whether underlying JVM supports lockless CompareAndSet
  * for longs. Called only once and cached in
 VM_SUPPORTS_LONG_CAS. */
 private static native boolean VMSupportsCS8();

 Has anyone implemented this so far?  So near, but yet so far!
  
   Yes, it's in libgcj, of course.
  
   jboolean
   java::util::concurrent::atomic::AtomicLong::VMSupportsCS8 ()
   {
 // FIXME
 return false;
   }

 Actually, I didn't quite tell you the *whole* truth: VMSupportsCS8 is
 also a gcj builtin.  The code in libgcj is a fallback that gets called
 only if libgcj is built with no optimization.

 Andrew.

I've tried gcj this weekend (from svn), after finding that it has both 
VMSupportsCS8 (as aph mentions above) and annotation support (which is where 
cacao fell down pretty finally, after twisti patched up the VMSupportsCS8 
hole).  I get an interesting failure from this, which perhaps others may be 
able to enlighten me on.  It seems a bit less straightforward than a simple 
missing method or feature...

 [echo] java.lang.NoClassDefFoundError: 
java.util.Collections$CheckedMap$CheckedEntrySet$1
 [echo]at 
org.jikesrvm.classloader.VM_BootstrapClassLoader.loadVMClass(VM_BootstrapClassLoader.java:132)
 [echo]at 
org.jikesrvm.classloader.VM_TypeReference.resolveInternal(VM_TypeReference.java:745)
 [echo]at 
org.jikesrvm.classloader.VM_TypeReference.resolve(VM_TypeReference.java:719)
 [echo]at 
BootImageWriter.createBootImageObjects(BootImageWriter.java:1018)
 [echo]at BootImageWriter.main(BootImageWriter.java:614)
 [echo] Caused by: java.lang.IncompatibleClassChangeError: 
java.util.Collections$CheckedMap$CheckedEntrySet$1
 [echo]at java.lang.VMClassLoader.defineClass(natVMClassLoader.cc:83)
 [echo]at java.lang.ClassLoader.defineClass(ClassLoader.java:573)
 [echo]at 
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:85)
 [echo]at java.net.URLClassLoader.findClass(URLClassLoader.java:616)
 [echo]at java.lang.ClassLoader.loadClass(ClassLoader.java:442)
 [echo]at java.lang.ClassLoader.loadClass(ClassLoader.java:377)
 [echo]at java.lang.Class.forName(natClass.cc:105)
 [echo]at 
org.jikesrvm.classloader.VM_Type.createClassForType(VM_Type.java:506)

The problem is the java.lang.IncompatibleClassChangeError caused by trying to 
create a Class object for java.util.Collections$CheckedMap$CheckedEntrySet$1.  
This is thrown in _Jv_DefineClass (part of defineclass.c which is called by 
natVMClassLoader.cc above).   I narrowed this down using gdb to the method 
checkExtends((jclass sub 
= java.util.Collections$CheckedMap$CheckedEntrySet$1, jclass super 
= java.util.Collections$CheckedIterator)
and the failure of if (sub-loader != super-loader) for a non-public class 
(this anonymous class is a CheckedIterator implementation using by the 
CheckedEntrySet).

You can mimic this simply with:

public class TestClassLoading
{
  public static void main(String[] args)
throws Exception
  {  
System.out.println(Class.forName(java.util.Collections$CheckedMap$CheckedEntrySet$1));
  }
}

The class isn't in gcj, which I think may be the problem.  The example works 
fine with jamvm and cacao which has that class.  Putting either Classpath 
from my local copy or the JikesRVM build on the classpath causes the error.  
Otherwise, it's a ClassNotFoundException.  

Adding a line beforehand to try for CheckedIterator succeeds, so clearly the 
problem is that gcj has its own CheckedIterator but is loading this class 
from the jar file, so that the class loaders don't match.  This seems like a 
legitimate gcj error in that case, but that doesn't help with this corner 
case.  The code for the class is in the gcj libraries, so maybe it is being 
optimised out or something...?

Any help much 

[commit-cp] classpath ChangeLog native/jni/java-nio/gnu_jav...

2007-06-24 Thread Ito Kazumitsu
CVSROOT:/cvsroot/classpath
Module name:classpath
Changes by: Ito Kazumitsu itokaz  07/06/24 22:01:51

Modified files:
.  : ChangeLog 
native/jni/java-nio: gnu_java_nio_VMChannel.c 

Log message:
2007-06-24  Ito Kazumitsu  [EMAIL PROTECTED]

Fixes bug #30377
* native/jni/java-nio/gnu_java_nio_VMChannel.c
(Java_gnu_java_nio_VMChannel_available): Retry using fstat if 
ioctl
fails with ENOTTY.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/classpath/ChangeLog?cvsroot=classpathr1=1.9338r2=1.9339
http://cvs.savannah.gnu.org/viewcvs/classpath/native/jni/java-nio/gnu_java_nio_VMChannel.c?cvsroot=classpathr1=1.19r2=1.20




[commit-cp] classpath ChangeLog m4/acinclude.m4

2007-06-24 Thread Dalibor Topic
CVSROOT:/sources/classpath
Module name:classpath
Changes by: Dalibor Topic robilad 07/06/24 23:51:19

Modified files:
.  : ChangeLog 
m4 : acinclude.m4 

Log message:
2007-06-25  Dalibor Topic  [EMAIL PROTECTED]

* m4/acinclude.m4 (CLASSPATH_CHECK_JAVAC): If the user passes an
explicit argument to configure, just use it, and don't attempt 
to
run AC_CHECK_PROG. This makes --with-javac='javac -J-Xmx512M' 
work.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/classpath/ChangeLog?cvsroot=classpathr1=1.9340r2=1.9341
http://cvs.savannah.gnu.org/viewcvs/classpath/m4/acinclude.m4?cvsroot=classpathr1=1.18r2=1.19




[commit-cp] classpath ChangeLog native/jni/java-net/gnu_jav...

2007-06-24 Thread Dalibor Topic
CVSROOT:/sources/classpath
Module name:classpath
Changes by: Dalibor Topic robilad 07/06/25 00:05:33

Modified files:
.  : ChangeLog 
native/jni/java-net: gnu_java_net_VMPlainSocketImpl.c 
 java_net_VMInetAddress.c javanet.c 
native/jni/native-lib: cpnet.c cpnet.h 

Log message:
2007-06-25  Dalibor Topic  [EMAIL PROTECTED]

* native/jni/java-net/gnu_java_net_VMPlainSocketImpl.c
(THROW_NO_IPV6): New macro.
(Java_gnu_java_net_VMPlainSocketImpl_bind6) Conditionally
build code if IPv6 facilities are available, otherwise
throw an error.
(Java_gnu_java_net_VMPlainSocketImpl_setMulticastInterface6,
Java_gnu_java_net_VMPlainSocketImpl_join6,
Java_gnu_java_net_VMPlainSocketImpl_leave6,
Java_gnu_java_net_VMPlainSocketImpl_joinGroup6,
Java_gnu_java_net_VMPlainSocketImpl_leaveGroup6)
Use THROW_NO_IPV6.

* native/jni/java-net/java_net_VMInetAddress.c
(Java_java_net_VMInetAddress_getHostByAddr,
Java_java_net_VMInetAddress_getHostByName,
Java_java_net_VMInetAddress_aton) Build IPv6 dependant
code conditionally on IPv6 facilities being available.
Switched if-else blocks where necessary to allow that.

* native/jni/java-net/javanet.c
(_javanet_get_ip_netaddr) Build IPv6 dependant code 
conditionally 
on IPv6 facilities being available.

* native/jni/native-lib/cpnet.c
(cpnet_getHostByName, cpnet_getHostByAddr) Build IPv6 dependant 
code conditionally on IPv6 facilities being available.
(cpnet_aton) Moved variable declaration of inet6_addr to the 
scope 
of its use. Build IPv6 dependant code conditionally
on IPv6 facilities being available.

* native/jni/native-lib/cpnet.h (cpnet_newIPV6Address, 
cpnet_isIPV6Address, cpnet_IPV6AddressToBytes, 
cpnet_bytesToIPV6Address): Make IPv6 dependant utility 
functions 
available conditionally on IPv6 facilities being available.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/classpath/ChangeLog?cvsroot=classpathr1=1.9341r2=1.9342
http://cvs.savannah.gnu.org/viewcvs/classpath/native/jni/java-net/gnu_java_net_VMPlainSocketImpl.c?cvsroot=classpathr1=1.14r2=1.15
http://cvs.savannah.gnu.org/viewcvs/classpath/native/jni/java-net/java_net_VMInetAddress.c?cvsroot=classpathr1=1.9r2=1.10
http://cvs.savannah.gnu.org/viewcvs/classpath/native/jni/java-net/javanet.c?cvsroot=classpathr1=1.37r2=1.38
http://cvs.savannah.gnu.org/viewcvs/classpath/native/jni/native-lib/cpnet.c?cvsroot=classpathr1=1.8r2=1.9
http://cvs.savannah.gnu.org/viewcvs/classpath/native/jni/native-lib/cpnet.h?cvsroot=classpathr1=1.4r2=1.5