[cp-patches] FYI: check for MSG_WAITALL and fix for Cygwin
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
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
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)
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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...
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
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...
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