From dd571c2fb007f7a2fc5f32dcc08fe4e7f0a703f2 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jan=20Dj=C3=A4rv?= Date: Sat, 25 Sep 2004 20:41:08 +0000 Subject: [PATCH] * configure.in (HAVE_EXECSHIELD): Only define on x86. * configure: Rebuild. --- ChangeLog | 5 +++++ configure | 18 +++++++++++++++--- configure.in | 21 +++++++++++++++------ 3 files changed, 35 insertions(+), 9 deletions(-) diff --git a/ChangeLog b/ChangeLog index a06d464ea91..3b77d509727 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2004-09-25 Jan Dj,Ad(Brv + + * configure.in (HAVE_EXECSHIELD): Only define on x86. + * configure: Rebuild. + 2004-09-24 Jan Dj,Ad(Brv * configure.in: Check for exec-shield. diff --git a/configure b/configure index 204bf90b06d..6cbdf0b2e99 100755 --- a/configure +++ b/configure @@ -4302,7 +4302,7 @@ else fi if test "$emacs_cv_execshield" = 1; then - # Extract the first word of "setarch", so it can be a program name with args. + # Extract the first word of "setarch", so it can be a program name with args. set dummy setarch; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 @@ -4343,13 +4343,25 @@ echo "${ECHO_T}no" >&6 fi - if test "$setarch" != no; then + if test "$setarch" != no && test "$machine" = "intel386"; then cat >>confdefs.h <<\_ACEOF #define HAVE_EXECSHIELD 1 _ACEOF - fi + else + case "`cat /proc/sys/kernel/exec-shield`" in + 0) ;; + *) + { { echo "$as_me:$LINENO: error: Exec-shield is turned on. +Emacs can not dump itself if exec-shield is turned on. +See \`etc/PROBLEMS' for further information." >&5 +echo "$as_me: error: Exec-shield is turned on. +Emacs can not dump itself if exec-shield is turned on. +See \`etc/PROBLEMS' for further information." >&2;} + { (exit 1); exit 1; }; } + esac + fi fi #### Extract some information from the operating system and machine files. diff --git a/configure.in b/configure.in index 52c35bb2b09..95ff1f855f7 100644 --- a/configure.in +++ b/configure.in @@ -1288,13 +1288,22 @@ AC_AIX dnl check if exec-shield is present. AC_CHECK_FILE(/proc/sys/kernel/exec-shield, emacs_cv_execshield=1, - emacs_cv_execshield=0) + emacs_cv_execshield=0) if test "$emacs_cv_execshield" = 1; then - AC_PATH_PROG(SETARCH, setarch, no) - AC_SUBST(SETARCH) - if test "$setarch" != no; then - AC_DEFINE(HAVE_EXECSHIELD, 1, [Define to 1 if this OS has exec shield.]) - fi + AC_PATH_PROG(SETARCH, setarch, no) + AC_SUBST(SETARCH) + if test "$setarch" != no && test "$machine" = "intel386"; then + AC_DEFINE(HAVE_EXECSHIELD, 1, + [Define to 1 if this OS has exec shield and we can handle it.]) + else + case "`cat /proc/sys/kernel/exec-shield`" in + 0) ;; + *) + AC_MSG_ERROR([Exec-shield is turned on. +Emacs can not dump itself if exec-shield is turned on. +See `etc/PROBLEMS' for further information.]) + esac + fi fi #### Extract some information from the operating system and machine files. -- 2.39.2