app-editors/xemacs: Use system malloc and -no-pie
authorMats Lidell <matsl@gentoo.org>
Sun, 10 Dec 2017 12:34:21 +0000 (13:34 +0100)
committerMats Lidell <matsl@gentoo.org>
Sun, 10 Dec 2017 12:35:20 +0000 (13:35 +0100)
For 21.4 use system malloc on all architectures. For both 21.4 and 21.5 use -no-pie option
since xemacs can't be built with positions indipendent code yet. This is for adopting
to the 17.0 profiles which defaults to use PIE.

Bug: https://bugs.gentoo.org/639214
Bug: https://bugs.gentoo.org/639508
Bug: https://bugs.gentoo.org/639642
Package-Manager: Portage-2.3.13, Repoman-2.3.3

app-editors/xemacs/xemacs-21.4.24-r1.ebuild
app-editors/xemacs/xemacs-21.4.24.ebuild
app-editors/xemacs/xemacs-21.5.34-r4.ebuild

index 4b120d8e087d92eb995ce97dbf5faca959c7fc1c..980a68d80e3d912aa40fe9e1bd3791f60ecbb7fd 100644 (file)
@@ -1,9 +1,8 @@
 # Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
-# Note: xemacs currently does not work with a hardened profile. If you
-# want to use xemacs on a hardened profile then compile with the
-# -nopie flag in CFLAGS or help fix bug #75028.
+# Note: xemacs currently does not work with position independent code
+# so the build forces the use of the -no-pie option
 
 EAPI="5"
 
@@ -86,6 +85,10 @@ src_prepare() {
 src_configure() {
        local myconf=""
 
+       # Can't build with pie. See bug #75028
+       test-flags -no-pie >/dev/null && append-flags -no-pie
+       filter-flags -pie
+
        if use X; then
 
                myconf="${myconf} --with-widgets=athena"
@@ -156,14 +159,6 @@ src_configure() {
                myconf="${myconf} --without-database"
        fi
 
-       # fixes #21264, this should be fixed in 21.4.21 and has been fixed
-       # in 21.5 for sure. Now that 21.4.21 is out there is no real
-       # evidence that this indeed got fixed, so keep these exceptions
-       # for now.
-       use alpha && myconf="${myconf} --with-system-malloc"
-       use ppc64 && myconf="${myconf} --with-system-malloc"
-       use ia64  && myconf="${myconf} --with-system-malloc"
-
        # Enabling modules will cause segfaults outside the XEmacs build directory
        use ia64  && myconf="${myconf} --without-modules"
 
@@ -184,6 +179,7 @@ src_configure() {
                --compiler=$(tc-getCC) \
                --prefix=/usr \
                --with-ncurses \
+               --with-system-malloc \
                --with-msw=no \
                --mail-locking=flock \
                --with-site-lisp=yes \
index daf6425d4dac4f19cf22027fe5c72624948c5f77..4c1eaa52fd037bacc83485cc3bdedd77c811c7f8 100644 (file)
@@ -1,9 +1,8 @@
 # Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
-# Note: xemacs currently does not work with a hardened profile. If you
-# want to use xemacs on a hardened profile then compile with the
-# -nopie flag in CFLAGS or help fix bug #75028.
+# Note: xemacs currently does not work with position independent code
+# so the build forces the use of the -no-pie option
 
 EAPI="5"
 
@@ -85,6 +84,10 @@ src_prepare() {
 src_configure() {
        local myconf=""
 
+       # Can't build with pie. See bug #75028
+       test-flags -no-pie >/dev/null && append-flags -no-pie
+       filter-flags -pie
+
        if use X; then
 
                myconf="${myconf} --with-widgets=athena"
@@ -155,14 +158,6 @@ src_configure() {
                myconf="${myconf} --without-database"
        fi
 
-       # fixes #21264, this should be fixed in 21.4.21 and has been fixed
-       # in 21.5 for sure. Now that 21.4.21 is out there is no real
-       # evidence that this indeed got fixed, so keep these exceptions
-       # for now.
-       use alpha && myconf="${myconf} --with-system-malloc"
-       use ppc64 && myconf="${myconf} --with-system-malloc"
-       use ia64  && myconf="${myconf} --with-system-malloc"
-
        # Enabling modules will cause segfaults outside the XEmacs build directory
        use ia64  && myconf="${myconf} --without-modules"
 
@@ -186,6 +181,7 @@ src_configure() {
                --compiler=$(tc-getCC) \
                --prefix=/usr \
                --with-ncurses \
+               --with-system-malloc \
                --with-msw=no \
                --mail-locking=flock \
                --with-site-lisp=yes \
index dec26af2cdbd8005799f460f46d00fbe9740b82b..d806967cce40537efea49deaf9f5715cc621013c 100644 (file)
@@ -1,9 +1,8 @@
 # Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
-# Note: xemacs currently does not work with a hardened profile. If you
-# want to use xemacs on a hardened profile then compile with the
-# -nopie flag in CFLAGS or help fix bug #75028.
+# Note: xemacs currently does not work with position independent code
+# so the build forces the use of the -no-pie option
 
 EAPI=5
 
@@ -80,6 +79,10 @@ src_prepare() {
 src_configure() {
        local myconf=""
 
+       # bug #639642
+       test-flags -no-pie >/dev/null && append-flags -no-pie
+       filter-flags -pie
+
        if use X; then
 
                myconf="${myconf} --with-widgets=athena"