summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgreen <green@138bc75d-0d04-0410-961f-82ee72b054a4>2010-08-06 12:26:52 +0000
committergreen <green@138bc75d-0d04-0410-961f-82ee72b054a4>2010-08-06 12:26:52 +0000
commit9e338d61be8585118f9d8da7f9db054f237a7f69 (patch)
tree105c2336b4252813cb4b4f1e5ef59cba44228c8d
parentb7e554696457939778e4be53d04b9eea3e5475ce (diff)
downloadgcc-9e338d61be8585118f9d8da7f9db054f237a7f69.tar.gz
Define libffi macros carefully
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@162945 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--libffi/ChangeLog7
-rw-r--r--libffi/include/ffi.h.in2
-rw-r--r--libffi/src/powerpc/ffitarget.h6
-rw-r--r--libffi/src/s390/ffitarget.h2
-rw-r--r--libffi/src/sparc/ffitarget.h2
5 files changed, 19 insertions, 0 deletions
diff --git a/libffi/ChangeLog b/libffi/ChangeLog
index e9a5d0b53e1..2342a77bba4 100644
--- a/libffi/ChangeLog
+++ b/libffi/ChangeLog
@@ -2,6 +2,13 @@
* src/closures.c (selinux_enabled_check): Fix strncmp usage bug.
+2010-07-07 Dan HorĂ¡k <dan@danny.cz>
+
+ * include/ffi.h.in: Protect #define with #ifndef.
+ * src/powerpc/ffitarget.h: Ditto.
+ * src/s390/ffitarget.h: Ditto.
+ * src/sparc/ffitarget.h: Ditto.
+
2010-07-07 Neil Roberts <neil@linux.intel.com>
* src/x86/sysv.S (ffi_call_SYSV): Align the stack pointer to
diff --git a/libffi/include/ffi.h.in b/libffi/include/ffi.h.in
index df7d2cd78b4..92e38c42f2d 100644
--- a/libffi/include/ffi.h.in
+++ b/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 --------------------------------- */
diff --git a/libffi/src/powerpc/ffitarget.h b/libffi/src/powerpc/ffitarget.h
index b4f992e6df4..45529eda59a 100644
--- a/libffi/src/powerpc/ffitarget.h
+++ b/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;
diff --git a/libffi/src/s390/ffitarget.h b/libffi/src/s390/ffitarget.h
index 78f3c6537d0..386273897e2 100644
--- a/libffi/src/s390/ffitarget.h
+++ b/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 ----------------------------------- */
diff --git a/libffi/src/sparc/ffitarget.h b/libffi/src/sparc/ffitarget.h
index 1a1a1ac8d98..50554b8805d 100644
--- a/libffi/src/sparc/ffitarget.h
+++ b/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;