1 |
commit: a7e28a58e95bb7540eafb21353b18345749bc215 |
2 |
Author: Mats Lidell <matsl <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sat Apr 2 23:57:47 2016 +0000 |
4 |
Commit: Mats Lidell <matsl <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat Apr 2 23:58:41 2016 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a7e28a58 |
7 |
|
8 |
app-editors/xemacs: gcc-5.3 patch. See bug 576512. |
9 |
|
10 |
Package-Manager: portage-2.2.26 |
11 |
|
12 |
app-editors/xemacs/files/xemacs-21.4.24-gcc5.patch | 32 ++++++++++++++++++++++ |
13 |
app-editors/xemacs/xemacs-21.4.24.ebuild | 7 ++++- |
14 |
2 files changed, 38 insertions(+), 1 deletion(-) |
15 |
|
16 |
diff --git a/app-editors/xemacs/files/xemacs-21.4.24-gcc5.patch b/app-editors/xemacs/files/xemacs-21.4.24-gcc5.patch |
17 |
new file mode 100644 |
18 |
index 0000000..494fc51 |
19 |
--- /dev/null |
20 |
+++ b/app-editors/xemacs/files/xemacs-21.4.24-gcc5.patch |
21 |
@@ -0,0 +1,32 @@ |
22 |
+diff -r e2da872593c0 configure.in |
23 |
+--- a/configure.in Tue Mar 24 22:15:53 2015 -0400 |
24 |
++++ b/configure.in Sun Mar 13 13:48:24 2016 +0100 |
25 |
+@@ -1939,6 +1939,8 @@ |
26 |
+ CFLAGS="-g -O3 -Wall -Wno-switch -Winline -Wmissing-prototypes" |
27 |
+ dnl Yuck, bad compares have been worth at least 3 crashes! |
28 |
+ CFLAGS="$CFLAGS -Wsign-compare" |
29 |
++ dnl Use old gnu inline semantics until we fix the source |
30 |
++ CFLAGS="$CFLAGS -fgnu89-inline" |
31 |
+ dnl XEmacs is known not to be strict-aliasing-safe. |
32 |
+ case "`gcc -v --help 2>&1`" in |
33 |
+ *-fstrict-aliasing* ) CFLAGS="$CFLAGS -fno-strict-aliasing" ;; |
34 |
+diff -r e2da872593c0 src/lisp.h |
35 |
+--- a/src/lisp.h Tue Mar 24 22:15:53 2015 -0400 |
36 |
++++ b/src/lisp.h Sun Mar 13 13:48:24 2016 +0100 |
37 |
+@@ -193,6 +193,8 @@ |
38 |
+ # endif /* GNUC */ |
39 |
+ #endif |
40 |
+ |
41 |
++#ifndef _GCC_MAX_ALIGN_T |
42 |
++#define _GCC_MAX_ALIGN_T |
43 |
+ /* No type has a greater alignment requirement than max_align_t. |
44 |
+ (except perhaps for types we don't use, like long double) */ |
45 |
+ typedef union |
46 |
+@@ -202,6 +204,7 @@ |
47 |
+ struct { void (*f)(void); } f; |
48 |
+ struct { double d; } d; |
49 |
+ } max_align_t; |
50 |
++#endif |
51 |
+ |
52 |
+ #ifndef ALIGNOF |
53 |
+ # if defined (__GNUC__) && (__GNUC__ >= 2) |
54 |
|
55 |
diff --git a/app-editors/xemacs/xemacs-21.4.24.ebuild b/app-editors/xemacs/xemacs-21.4.24.ebuild |
56 |
index 97f68ae..9ffda4d 100644 |
57 |
--- a/app-editors/xemacs/xemacs-21.4.24.ebuild |
58 |
+++ b/app-editors/xemacs/xemacs-21.4.24.ebuild |
59 |
@@ -9,7 +9,7 @@ |
60 |
EAPI="5" |
61 |
|
62 |
WANT_AUTOCONF="2.1" |
63 |
-inherit autotools eutils toolchain-funcs |
64 |
+inherit autotools eutils flag-o-matic toolchain-funcs |
65 |
|
66 |
DESCRIPTION="highly customizable open source text editor and application development system" |
67 |
HOMEPAGE="http://www.xemacs.org/" |
68 |
@@ -62,6 +62,8 @@ src_unpack() { |
69 |
src_prepare() { |
70 |
# see bug 58350, 102540 and 143580 |
71 |
epatch "${FILESDIR}"/xemacs-21.4.19-db.patch |
72 |
+ # see bug 576512 |
73 |
+ epatch "${FILESDIR}"/xemacs-21.4.24-gcc5.patch |
74 |
|
75 |
# Some binaries and man pages are installed under suffixed names |
76 |
# to avoid collions with their GNU Emacs counterparts (see below). |
77 |
@@ -168,6 +170,9 @@ src_configure() { |
78 |
|
79 |
einfo "${myconf}" |
80 |
|
81 |
+ # see bug 576512 |
82 |
+ append-cflags -std=gnu89 |
83 |
+ |
84 |
# Don't use econf because it uses options which this configure |
85 |
# script does not understand (like --host). |
86 |
./configure ${myconf} ${EXTRA_ECONF} \ |