define generic symbols carefully
[libffi.git] / patches / define-generic-symbols-carefully
1 Index: libffi/include/ffi.h.in
2 ===================================================================
3 --- libffi.orig/include/ffi.h.in
4 +++ libffi/include/ffi.h.in
5 @@ -57,7 +57,9 @@ extern "C" {
6  #endif
7  
8  /* Specify which architecture libffi is configured for. */
9 +#ifndef @TARGET@
10  #define @TARGET@
11 +#endif
12  
13  /* ---- System configuration information --------------------------------- */
14  
15 Index: libffi/src/powerpc/ffitarget.h
16 ===================================================================
17 --- libffi.orig/src/powerpc/ffitarget.h
18 +++ libffi/src/powerpc/ffitarget.h
19 @@ -31,12 +31,18 @@
20  /* ---- System specific configurations ----------------------------------- */
21  
22  #if defined (POWERPC) && defined (__powerpc64__)       /* linux64 */
23 +#ifndef POWERPC64
24  #define POWERPC64
25 +#endif
26  #elif defined (POWERPC_DARWIN) && defined (__ppc64__)  /* Darwin */
27 +#ifndef POWERPC64
28  #define POWERPC64
29 +#endif
30  #elif defined (POWERPC_AIX) && defined (__64BIT__)     /* AIX64 */
31 +#ifndef POWERPC64
32  #define POWERPC64
33  #endif
34 +#endif
35  
36  #ifndef LIBFFI_ASM
37  typedef unsigned long          ffi_arg;
38 Index: libffi/src/s390/ffitarget.h
39 ===================================================================
40 --- libffi.orig/src/s390/ffitarget.h
41 +++ libffi/src/s390/ffitarget.h
42 @@ -28,8 +28,10 @@
43  #define LIBFFI_TARGET_H
44  
45  #if defined (__s390x__)
46 +#ifndef S390X
47  #define S390X
48  #endif
49 +#endif
50  
51  /* ---- System specific configurations ----------------------------------- */
52  
53 Index: libffi/src/sparc/ffitarget.h
54 ===================================================================
55 --- libffi.orig/src/sparc/ffitarget.h
56 +++ libffi/src/sparc/ffitarget.h
57 @@ -30,8 +30,10 @@
58  /* ---- System specific configurations ----------------------------------- */
59  
60  #if defined(__arch64__) || defined(__sparcv9)
61 +#ifndef SPARC64
62  #define SPARC64
63  #endif
64 +#endif
65  
66  #ifndef LIBFFI_ASM
67  typedef unsigned long          ffi_arg;
68 Index: libffi/ChangeLog
69 ===================================================================
70 --- libffi.orig/ChangeLog
71 +++ libffi/ChangeLog
72 @@ -8,6 +8,13 @@
73  
74         * src/closures.c (selinux_enabled_check): Fix strncmp usage bug.
75  
76 +2010-07-07  Dan HorĂ¡k <dan@danny.cz>
77 +
78 +       * include/ffi.h.in: Protect #define with #ifndef.
79 +       * src/powerpc/ffitarget.h: Ditto.
80 +       * src/s390/ffitarget.h: Ditto.
81 +       * src/sparc/ffitarget.h: Ditto.
82 +
83  2010-05-11  Dan Witte  <dwitte@mozilla.com>
84  
85         * doc/libffi.tex: Document previous change.