One other bug that breaks OpenJDK is fixed in libffi upstream:

The unconditional #define of ARM in /usr/lib/libffi-3.0.9/include/ffi.h
breaks the OpenJDK build.  It was fixed by the patch I've appended.

This fix doesn't seem to be in the libffi package in F14.  I don't
know if it's fixed in F15.

Andrew.



2010-07-07  Dan Horák <[email protected]>

        * include/ffi.h.in: Protect #define with #ifndef.
        * src/powerpc/ffitarget.h: Ditto.
        * src/s390/ffitarget.h: Ditto.
        * src/sparc/ffitarget.h: Ditto.

Index: include/ffi.h.in
===================================================================
--- include/ffi.h.in    (revision 162944)
+++ include/ffi.h.in    (revision 162945)
@@ -57,7 +57,9 @@
 #endif

 /* Specify which architecture libffi is configured for. */
+#ifndef @TARGET@
 #define @TARGET@
+#endif

 /* ---- System configuration information --------------------------------- */

Index: src/powerpc/ffitarget.h
===================================================================
--- src/powerpc/ffitarget.h     (revision 162944)
+++ src/powerpc/ffitarget.h     (revision 162945)
@@ -31,12 +31,18 @@
 /* ---- System specific configurations ----------------------------------- */

 #if defined (POWERPC) && defined (__powerpc64__)       /* linux64 */
+#ifndef POWERPC64
 #define POWERPC64
+#endif
 #elif defined (POWERPC_DARWIN) && defined (__ppc64__)  /* Darwin */
+#ifndef POWERPC64
 #define POWERPC64
+#endif
 #elif defined (POWERPC_AIX) && defined (__64BIT__)     /* AIX64 */
+#ifndef POWERPC64
 #define POWERPC64
 #endif
+#endif

 #ifndef LIBFFI_ASM
 typedef unsigned long          ffi_arg;
Index: src/s390/ffitarget.h
===================================================================
--- src/s390/ffitarget.h        (revision 162944)
+++ src/s390/ffitarget.h        (revision 162945)
@@ -28,8 +28,10 @@
 #define LIBFFI_TARGET_H

 #if defined (__s390x__)
+#ifndef S390X
 #define S390X
 #endif
+#endif

 /* ---- System specific configurations ----------------------------------- */

Index: src/sparc/ffitarget.h
===================================================================
--- src/sparc/ffitarget.h       (revision 162944)
+++ src/sparc/ffitarget.h       (revision 162945)
@@ -30,8 +30,10 @@
 /* ---- System specific configurations ----------------------------------- */

 #if defined(__arch64__) || defined(__sparcv9)
+#ifndef SPARC64
 #define SPARC64
 #endif
+#endif

 #ifndef LIBFFI_ASM
 typedef unsigned long          ffi_arg;
_______________________________________________
arm mailing list
[email protected]
https://admin.fedoraproject.org/mailman/listinfo/arm

Reply via email to