Subject: bug#11979: closed (Re: bug#11979: 24.1.50; paxctl: file temacs does not have a PT_PAX_FLAGS program header)

From: [email-masked] (GNU bug Tracking System)
Date: Sun, 05 Aug 2012 05:09:02 +0000

Your bug report

#11979: 24.1.50; [PATCH] paxctl: file temacs does not have a PT_PAX_FLAGS program header

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
11979: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11979
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#11979: 24.1.50; paxctl: file temacs does not have a PT_PAX_FLAGS program header
From: Glenn Morris <[email-masked]>
To: [email-masked]
Date: Sun, 05 Aug 2012 01:01:07 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

Version: 24.2

Thanks; applied.

Subject: 24.1.50; paxctl: file temacs does not have a PT_PAX_FLAGS program header
From: Ulrich Mueller <[email-masked]>
To: [email-masked]
Date: Wed, 18 Jul 2012 18:22:42 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

This is a fallout from bug #11398:

If the paxctl utility is present, but the system's toolchain doesn't
support the PT_PAX_FLAGS program header, then "paxctl -r temacs" will
fail:

   test "no" = "yes" || \
     test "X/sbin/paxctl" = X || /sbin/paxctl -r temacs
   file temacs does not have a PT_PAX_FLAGS program header, try conversion
   make[1]: *** [temacs] Error 1
   make[1]: Leaving directory
   `/var/build/portage/app-editors/emacs-24.1/work/emacs-24.1/src'
   make: *** [src] Error 2

A patch is included below. I've tested it with binutils-2.22, both
with and without PT_PAX_FLAGS support.

See also downstream bug: <https://bugs.gentoo.org/426394>

--- emacs-orig/ChangeLog
+++ emacs/ChangeLog
@@ -1,3 +1,8 @@
+2012-07-18  Ulrich Müller  <[email-masked]>
+
+	* configure.ac: Disable paxctl if binaries don't have a
+	PT_PAX_FLAGS program header.
+
 2012-07-17  Dmitry Antipov  <[email-masked]>
 
 	Fix toolkit configuration report.
--- emacs-orig/configure.ac
+++ emacs/configure.ac
@@ -736,6 +736,12 @@
 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.7 (?) to build the manuals.