summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMats Lidell <matsl@gentoo.org>2016-04-03 01:57:47 +0200
committerMats Lidell <matsl@gentoo.org>2016-04-03 01:58:41 +0200
commita7e28a58e95bb7540eafb21353b18345749bc215 (patch)
treef249f14ceca04c60c905802287a4b4817235526a /app-editors
parentx11-themes/elementary-xfce-icon-theme: bump to 0.7_p20160321 (diff)
downloadgentoo-a7e28a58e95bb7540eafb21353b18345749bc215.tar.gz
gentoo-a7e28a58e95bb7540eafb21353b18345749bc215.tar.bz2
gentoo-a7e28a58e95bb7540eafb21353b18345749bc215.zip
app-editors/xemacs: gcc-5.3 patch. See bug 576512.
Package-Manager: portage-2.2.26
Diffstat (limited to 'app-editors')
-rw-r--r--app-editors/xemacs/files/xemacs-21.4.24-gcc5.patch32
-rw-r--r--app-editors/xemacs/xemacs-21.4.24.ebuild7
2 files changed, 38 insertions, 1 deletions
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 000000000000..494fc51c3b88
--- /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 97f68aec71e3..9ffda4d02393 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} \