commit:     a7e28a58e95bb7540eafb21353b18345749bc215
Author:     Mats Lidell <matsl <AT> gentoo <DOT> org>
AuthorDate: Sat Apr  2 23:57:47 2016 +0000
Commit:     Mats Lidell <matsl <AT> gentoo <DOT> org>
CommitDate: Sat Apr  2 23:58:41 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a7e28a58

app-editors/xemacs: gcc-5.3 patch. See bug 576512.

Package-Manager: portage-2.2.26

 app-editors/xemacs/files/xemacs-21.4.24-gcc5.patch | 32 ++++++++++++++++++++++
 app-editors/xemacs/xemacs-21.4.24.ebuild           |  7 ++++-
 2 files changed, 38 insertions(+), 1 deletion(-)

diff --git a/app-editors/xemacs/files/xemacs-21.4.24-gcc5.patch 
b/app-editors/xemacs/files/xemacs-21.4.24-gcc5.patch
new file mode 100644
index 0000000..494fc51
--- /dev/null
+++ b/app-editors/xemacs/files/xemacs-21.4.24-gcc5.patch
@@ -0,0 +1,32 @@
+diff -r e2da872593c0 configure.in
+--- a/configure.in     Tue Mar 24 22:15:53 2015 -0400
++++ b/configure.in     Sun Mar 13 13:48:24 2016 +0100
+@@ -1939,6 +1939,8 @@
+     CFLAGS="-g -O3 -Wall -Wno-switch -Winline -Wmissing-prototypes"
+     dnl Yuck, bad compares have been worth at least 3 crashes!
+     CFLAGS="$CFLAGS -Wsign-compare"
++    dnl Use old gnu inline semantics until we fix the source
++    CFLAGS="$CFLAGS -fgnu89-inline"
+     dnl XEmacs is known not to be strict-aliasing-safe.
+     case "`gcc -v --help 2>&1`" in
+       *-fstrict-aliasing* ) CFLAGS="$CFLAGS -fno-strict-aliasing" ;;
+diff -r e2da872593c0 src/lisp.h
+--- a/src/lisp.h       Tue Mar 24 22:15:53 2015 -0400
++++ b/src/lisp.h       Sun Mar 13 13:48:24 2016 +0100
+@@ -193,6 +193,8 @@
+ # endif /* GNUC */
+ #endif
+ 
++#ifndef _GCC_MAX_ALIGN_T
++#define _GCC_MAX_ALIGN_T
+ /* No type has a greater alignment requirement than max_align_t.
+    (except perhaps for types we don't use, like long double) */
+ typedef union
+@@ -202,6 +204,7 @@
+   struct { void (*f)(void); } f;
+   struct { double d; } d;
+ } max_align_t;
++#endif
+ 
+ #ifndef ALIGNOF
+ # if defined (__GNUC__) && (__GNUC__ >= 2)

diff --git a/app-editors/xemacs/xemacs-21.4.24.ebuild 
b/app-editors/xemacs/xemacs-21.4.24.ebuild
index 97f68ae..9ffda4d 100644
--- a/app-editors/xemacs/xemacs-21.4.24.ebuild
+++ b/app-editors/xemacs/xemacs-21.4.24.ebuild
@@ -9,7 +9,7 @@
 EAPI="5"
 
 WANT_AUTOCONF="2.1"
-inherit autotools eutils toolchain-funcs
+inherit autotools eutils flag-o-matic toolchain-funcs
 
 DESCRIPTION="highly customizable open source text editor and application 
development system"
 HOMEPAGE="http://www.xemacs.org/";
@@ -62,6 +62,8 @@ src_unpack() {
 src_prepare() {
        # see bug 58350, 102540 and 143580
        epatch "${FILESDIR}"/xemacs-21.4.19-db.patch
+       # see bug 576512
+       epatch "${FILESDIR}"/xemacs-21.4.24-gcc5.patch
 
        # Some binaries and man pages are installed under suffixed names
        # to avoid collions with their GNU Emacs counterparts (see below).
@@ -168,6 +170,9 @@ src_configure() {
 
        einfo "${myconf}"
 
+       # see bug 576512
+       append-cflags -std=gnu89
+
        # Don't use econf because it uses options which this configure
        # script does not understand (like --host).
        ./configure ${myconf} ${EXTRA_ECONF} \

Reply via email to