Index: libffi/include/ffi.h.in =================================================================== --- libffi.orig/include/ffi.h.in +++ libffi/include/ffi.h.in @@ -57,7 +57,9 @@ extern "C" { #endif /* Specify which architecture libffi is configured for. */ +#ifndef @TARGET@ #define @TARGET@ +#endif /* ---- System configuration information --------------------------------- */ Index: libffi/src/powerpc/ffitarget.h =================================================================== --- libffi.orig/src/powerpc/ffitarget.h +++ libffi/src/powerpc/ffitarget.h @@ -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: libffi/src/s390/ffitarget.h =================================================================== --- libffi.orig/src/s390/ffitarget.h +++ libffi/src/s390/ffitarget.h @@ -28,8 +28,10 @@ #define LIBFFI_TARGET_H #if defined (__s390x__) +#ifndef S390X #define S390X #endif +#endif /* ---- System specific configurations ----------------------------------- */ Index: libffi/src/sparc/ffitarget.h =================================================================== --- libffi.orig/src/sparc/ffitarget.h +++ libffi/src/sparc/ffitarget.h @@ -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; Index: libffi/ChangeLog =================================================================== --- libffi.orig/ChangeLog +++ libffi/ChangeLog @@ -8,6 +8,13 @@ * src/closures.c (selinux_enabled_check): Fix strncmp usage bug. +2010-07-07 Dan HorĂ¡k + + * include/ffi.h.in: Protect #define with #ifndef. + * src/powerpc/ffitarget.h: Ditto. + * src/s390/ffitarget.h: Ditto. + * src/sparc/ffitarget.h: Ditto. + 2010-05-11 Dan Witte * doc/libffi.tex: Document previous change.