From a7e28a58e95bb7540eafb21353b18345749bc215 Mon Sep 17 00:00:00 2001 From: Mats Lidell Date: Sun, 3 Apr 2016 01:57:47 +0200 Subject: [PATCH] app-editors/xemacs: gcc-5.3 patch. See bug 576512. Package-Manager: portage-2.2.26 --- .../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(-) create mode 100644 app-editors/xemacs/files/xemacs-21.4.24-gcc5.patch 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 0000000000000..494fc51c3b88d --- /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 97f68aec71e31..9ffda4d02393b 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} \