File gcc-4.7.0-libjava.patch of Package mingw64-cross-gcc

--- libjava/configure	2012-03-22 08:37:39.000000000 +0100
+++ libjava/configure	2012-03-28 13:34:36.132967705 +0200
@@ -20550,6 +20550,9 @@
     LIBSTDCXXSPEC=-lstdc++
     LIBGCJTESTSPEC="-L`${PWDCMD-pwd}`/.libs -L`${PWDCMD-pwd}`/../libstdc++-v3/src/.libs -rpath `${PWDCMD-pwd}`/.libs:`${PWDCMD-pwd}`/../libstdc++-v3/src/.libs -lstdc++"
     ;;
+*-*-mingw*)
+    extra_ldflags_libjava=-lws2_32
+    ;;
 *-*-cygwin)
     extra_ldflags_libjava=-liconv
     ;;
--- libjava/configure.ac	2012-02-24 16:21:12.000000000 +0100
+++ libjava/configure.ac	2012-03-28 13:34:36.133967679 +0200
@@ -939,6 +939,9 @@
     LIBSTDCXXSPEC=-lstdc++
     LIBGCJTESTSPEC="-L`${PWDCMD-pwd}`/.libs -L`${PWDCMD-pwd}`/../libstdc++-v3/src/.libs -rpath `${PWDCMD-pwd}`/.libs:`${PWDCMD-pwd}`/../libstdc++-v3/src/.libs -lstdc++"
     ;;
+*-*-mingw*)
+    extra_ldflags_libjava=-lws2_32
+    ;;
 *-*-cygwin)
     extra_ldflags_libjava=-liconv
     ;;
--- libjava/gcj/javaprims.h	2011-04-08 16:16:38.000000000 +0200
+++ libjava/gcj/javaprims.h	2012-03-28 13:34:36.134967653 +0200
@@ -35,6 +35,18 @@
  #endif
 #endif
 
+// JNI calling convention.  Also defined in jni.h.
+// This is needed here because some classes have JNI friends. 
+
+#ifndef JNICALL
+ #if (defined (_WIN32) || defined (__WIN32__) || defined (WIN32)) && !defined (_WIN64)
+  #define JNICALL __stdcall
+ #else
+  #define JNICALL
+ #endif
+#endif
+
+
 // To force selection of correct types that will mangle consistently
 // across platforms.
 extern "Java"
--- libjava/include/jni_md.h	2011-04-08 16:16:38.000000000 +0200
+++ libjava/include/jni_md.h	2012-03-28 13:34:36.134967653 +0200
@@ -124,6 +124,15 @@
 
 #endif /* __GCJ_JNI_IMPL__ */
 
+/*  JNI calling convention.  Also defined in javaprims.h. */
+#ifndef JNICALL
+ #if (defined (_WIN32) || defined (__WIN32__) || defined (WIN32)) && !defined (_WIN64)
+  #define JNICALL __stdcall
+ #else
+  #define JNICALL
+ #endif
+#endif
+
 
 /* Linkage and calling conventions. */
 #if (defined (_WIN32) || defined (__WIN32__) || defined (WIN32)) \
--- libjava/libgcj-noncore-dummy.def	2010-03-21 20:41:37.000000000 +0100
+++ libjava/libgcj-noncore-dummy.def	2012-03-28 13:34:42.326811182 +0200
@@ -1,5 +1,5 @@
 
-LIBRARY cyggcj-noncore-11.dll
+LIBRARY libgcj-noncore-12.dll
 
 EXPORTS
 
--- libjava/Makefile.am	2011-08-05 16:37:48.000000000 +0200
+++ libjava/Makefile.am	2012-03-28 13:34:42.327811157 +0200
@@ -524,7 +524,7 @@
 ## either always loads both at runtime.
 DLL_VERSION=`expr \`grep -v '^\#' $(srcdir)/libtool-version | sed -e 's/\(.*\):\(.*\):.*/\1 + \2/'\``
 libgcj-noncore-dummy.dll.a : $(srcdir)/libgcj-noncore-dummy.def
-	$(DLLTOOL) -d $^ -l $@ --dllname cyggcj-noncore-$(DLL_VERSION).dll 
+	$(DLLTOOL) -d $^ -l $@ --dllname libgcj-noncore-$(DLL_VERSION).dll 
 
 ## These are the libtool definitions for the noncore library.
 libgcj_noncore_la_SOURCES =
--- libjava/Makefile.in	2012-03-22 08:37:39.000000000 +0100
+++ libjava/Makefile.in	2012-03-28 13:34:42.332811030 +0200
@@ -10546,7 +10546,7 @@
 interpret.lo:  AM_CXXFLAGS += -fwrapv
 prims.lo: AM_CXXFLAGS += -fno-omit-frame-pointer
 @BUILD_SUBLIBS_TRUE@libgcj-noncore-dummy.dll.a : $(srcdir)/libgcj-noncore-dummy.def
-@BUILD_SUBLIBS_TRUE@	$(DLLTOOL) -d $^ -l $@ --dllname cyggcj-noncore-$(DLL_VERSION).dll 
+@BUILD_SUBLIBS_TRUE@	$(DLLTOOL) -d $^ -l $@ --dllname libgcj-noncore-$(DLL_VERSION).dll 
 
 $(db_name): gcj-dbtool$(EXEEXT)
 	@rm -f $(db_name)
--- ltmain.sh	2011-01-13 19:51:10.000000000 +0100
+++ ltmain.sh	2012-03-28 13:34:42.334810980 +0200
@@ -5438,7 +5438,7 @@
 	    case " $dlpreconveniencelibs " in
 	    *" $deplib "*) ;;
 	    *)
-	      valid_a_lib=no
+	      valid_a_lib=yes
 	      case $deplibs_check_method in
 		match_pattern*)
 		  set dummy $deplibs_check_method; shift
openSUSE Build Service is sponsored by