commit:     d21a2403298d3aba04bd1a283a797e56d20a20e9
Author:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Sun May  1 11:58:40 2016 +0000
Commit:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Sun May  1 11:58:40 2016 +0000
URL:        https://gitweb.gentoo.org/repo/proj/prefix.git/commit/?id=d21a2403

dev-libs/gmp: add fix for gcc-apple, bug #536894

Package-Manager: portage-2.2.26

 dev-libs/gmp/files/gmp-6.0.0-gcc-inline-fix.patch | 21 +++++++++++++++++++++
 dev-libs/gmp/gmp-6.1.0.ebuild                     |  1 +
 2 files changed, 22 insertions(+)

diff --git a/dev-libs/gmp/files/gmp-6.0.0-gcc-inline-fix.patch 
b/dev-libs/gmp/files/gmp-6.0.0-gcc-inline-fix.patch
new file mode 100644
index 0000000..8960464
--- /dev/null
+++ b/dev-libs/gmp/files/gmp-6.0.0-gcc-inline-fix.patch
@@ -0,0 +1,21 @@
+--- gmp-6.0.0/gmp-h.in.orig    2015-01-16 22:25:51.000000000 +0100
++++ gmp-6.0.0/gmp-h.in 2015-01-16 22:26:40.000000000 +0100
+@@ -360,14 +360,14 @@
+     GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99
+     inline semantics, unless -fgnu89-inline is used.  */
+ #ifdef __GNUC__
+-#if (defined __GNUC_STDC_INLINE__) || (__GNUC__ == 4 && __GNUC_MINOR__ == 2) \
+-  || (defined __GNUC_GNU_INLINE__ && defined __cplusplus)
++#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 2)
+ #define __GMP_EXTERN_INLINE extern __inline__ __attribute__ ((__gnu_inline__))
+-#else
++#define __GMP_INLINE_PROTOTYPES  1
++#elif !(defined __APPLE__ && defined __MACH__ && __APPLE_CC__ >= 5465 && 
__STDC_VERSION__ >= 199901L)
+ #define __GMP_EXTERN_INLINE      extern __inline__
+-#endif
+ #define __GMP_INLINE_PROTOTYPES  1
+ #endif
++#endif
+ 
+ /* DEC C (eg. version 5.9) supports "static __inline foo()", even in -std1
+    strict ANSI mode.  Inlining is done even when not optimizing (ie. -O0

diff --git a/dev-libs/gmp/gmp-6.1.0.ebuild b/dev-libs/gmp/gmp-6.1.0.ebuild
index 55b774b..a50f6d4 100644
--- a/dev-libs/gmp/gmp-6.1.0.ebuild
+++ b/dev-libs/gmp/gmp-6.1.0.ebuild
@@ -39,6 +39,7 @@ src_prepare() {
        elibtoolize
 
        epatch "${FILESDIR}"/${PN}-6.1.0-noexecstack-detect.patch
+       epatch "${FILESDIR}"/${PN}-6.0.0-gcc-inline-fix.patch
 
        # GMP uses the "ABI" env var during configure as does Gentoo (econf).
        # So, to avoid patching the source constantly, wrap things up.

Reply via email to