diff -Naur gcc-4.9.2-orig/libjava/classpath/configure gcc-4.9.2/libjava/classpath/configure --- gcc-4.9.2-orig/libjava/classpath/configure 2013-09-20 12:47:52.000000000 +0300 +++ gcc-4.9.2/libjava/classpath/configure 2014-11-03 23:57:13.709800000 +0300 @@ -3180,7 +3180,7 @@ cp_module="" ;; *) - cp_module="-module" + cp_module="-module -avoid-version" ;; esac diff -Naur gcc-4.9.2-orig/libjava/classpath/configure.ac gcc-4.9.2/libjava/classpath/configure.ac --- gcc-4.9.2-orig/libjava/classpath/configure.ac 2013-05-23 00:25:59.000000000 +0300 +++ gcc-4.9.2/libjava/classpath/configure.ac 2014-11-03 23:57:13.725400000 +0300 @@ -64,7 +64,7 @@ cp_module="" ;; *) - cp_module="-module" + cp_module="-module -avoid-version" ;; esac diff -Naur gcc-4.9.2-orig/libjava/include/posix.h gcc-4.9.2/libjava/include/posix.h --- gcc-4.9.2-orig/libjava/include/posix.h 2012-03-12 18:35:56.000000000 +0300 +++ gcc-4.9.2/libjava/include/posix.h 2014-11-03 23:57:13.725400000 +0300 @@ -42,11 +42,17 @@ #include // Prefix and suffix for shared libraries. +#ifdef __CYGWIN__ +#define _Jv_platform_solib_prefix "cyg" +#else #define _Jv_platform_solib_prefix "lib" +#endif #if defined(__APPLE__) && defined(__MACH__) #define _Jv_platform_solib_suffix ".dylib" #elif defined(HPUX) && defined(HP_PA) #define _Jv_platform_solib_suffix ".sl" +#elif defined(__CYGWIN__) +#define _Jv_platform_solib_suffix ".dll" #else #define _Jv_platform_solib_suffix ".so" #endif diff -Naur gcc-4.9.2-orig/libjava/java/net/natVMURLConnection.cc gcc-4.9.2/libjava/java/net/natVMURLConnection.cc --- gcc-4.9.2-orig/libjava/java/net/natVMURLConnection.cc 2009-12-02 01:05:25.000000000 +0300 +++ gcc-4.9.2/libjava/java/net/natVMURLConnection.cc 2014-11-03 23:57:13.725400000 +0300 @@ -32,7 +32,11 @@ java::net::VMURLConnection::init () { #if defined (HAVE_MAGIC_T) && defined (HAVE_MAGIC_H) && defined (USE_LTDL) +#ifdef __CYGWIN__ + lt_dlhandle handle = lt_dlopenext ("cygmagic-1.dll"); +#else lt_dlhandle handle = lt_dlopenext ("libmagic.so"); +#endif if (!handle) return;