diff options
Diffstat (limited to 'emacs/24.2/02_all_paxctl.patch')
-rw-r--r-- | emacs/24.2/02_all_paxctl.patch | 66 |
1 files changed, 0 insertions, 66 deletions
diff --git a/emacs/24.2/02_all_paxctl.patch b/emacs/24.2/02_all_paxctl.patch deleted file mode 100644 index 1f659e6..0000000 --- a/emacs/24.2/02_all_paxctl.patch +++ /dev/null @@ -1,66 +0,0 @@ -On grsecurity/PaX systems, unexec will fail due to a gap between -the bss section and the heap. This can be prevented by disabling -memory randomization in temacs with "paxctl -r". -https://bugs.gentoo.org/411439 -https://bugs.gentoo.org/426394 -http://debbugs.gnu.org/11398 - ---- emacs-24.1-orig/configure.in -+++ emacs-24.1/configure.in -@@ -757,6 +757,16 @@ - dnl Don't use GZIP, which is used by gzip for additional parameters. - AC_PATH_PROG(GZIP_PROG, gzip) - -+if test $opsys = gnu-linux; then -+ AC_PATH_PROG(PAXCTL, paxctl,, -+ [$PATH$PATH_SEPARATOR/sbin$PATH_SEPARATOR/usr/sbin]) -+ if test "X$PAXCTL" != X; then -+ AC_MSG_CHECKING([whether binaries have a PT_PAX_FLAGS header]) -+ AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])], -+ [if $PAXCTL -v conftest$EXEEXT >/dev/null 2>&1; then AC_MSG_RESULT(yes) -+ else AC_MSG_RESULT(no); PAXCTL=""; fi]) -+ fi -+fi - - ## Need makeinfo >= 4.6 (?) to build the manuals. - AC_PATH_PROG(MAKEINFO, makeinfo, no) ---- emacs-24.1-orig/src/Makefile.in -+++ emacs-24.1/src/Makefile.in -@@ -116,6 +116,12 @@ - ## $LDFLAGS or empty if NS_IMPL_GNUSTEP (for some reason). - TEMACS_LDFLAGS2 = @TEMACS_LDFLAGS2@ - -+## If available, the full path to the paxctl program. -+## On grsecurity/PaX systems, unexec will fail due to a gap between -+## the bss section and the heap. This can be prevented by disabling -+## memory randomization in temacs with "paxctl -r". See bug#11398. -+PAXCTL = @PAXCTL@ -+ - ## Some systems define this to request special libraries. - LIBS_SYSTEM=@LIBS_SYSTEM@ - -@@ -406,6 +412,7 @@ - -f list-load-path-shadows || true; \ - else \ - LC_ALL=C $(RUN_TEMACS) -batch -l loadup dump || exit 1; \ -+ test "X$(PAXCTL)" = X || $(PAXCTL) -zex emacs$(EXEEXT); \ - ln -f emacs$(EXEEXT) bootstrap-emacs$(EXEEXT); \ - ./emacs -batch -f list-load-path-shadows || true; \ - fi -@@ -453,6 +460,8 @@ - temacs$(EXEEXT): $(START_FILES) stamp-oldxmenu $(obj) $(otherobj) $(lib)/libgnu.a - $(CC) $(LD_FIRSTFLAG) $(ALL_CFLAGS) $(TEMACS_LDFLAGS) $(TEMACS_LDFLAGS2) \ - -o temacs $(START_FILES) $(obj) $(otherobj) $(lib)/libgnu.a $(LIBES) -+ test "$(CANNOT_DUMP)" = "yes" || \ -+ test "X$(PAXCTL)" = X || $(PAXCTL) -r temacs$(EXEEXT) - - ## The following oldxmenu-related rules are only (possibly) used if - ## HAVE_X11 && !USE_GTK, but there is no harm in always defining them -@@ -600,6 +609,7 @@ - ln -f temacs$(EXEEXT) bootstrap-emacs$(EXEEXT); \ - else \ - $(RUN_TEMACS) --batch --load loadup bootstrap || exit 1; \ -+ test "X$(PAXCTL)" = X || $(PAXCTL) -zex emacs$(EXEEXT); \ - mv -f emacs$(EXEEXT) bootstrap-emacs$(EXEEXT); \ - fi - @: Compile some files earlier to speed up further compilation. |