[PATCH] configure: Don't check whether -m64 works for 32bit host biarch check

Mark Wielaard mark@klomp.org
Sun Mar 20 23:47:51 GMT 2022


Running a 32bit backtrace test against a 64bit binary doesn't work.
Only a 64bit binary can backtrace a 32bit binary. So disable the
biarch check that inserts -m64 for a 32bit host.

https://sourceware.org/bugzilla/show_bug.cgi?id=24158

Signed-off-by: Mark Wielaard <mark@klomp.org>
---
 ChangeLog    | 5 +++++
 configure.ac | 2 --
 m4/ChangeLog | 4 ++++
 m4/biarch.m4 | 2 +-
 4 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 2f46f903..3357f69b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2021-03-20  Mark Wielaard  <mark@klomp.org>
+
+	* configure.ac: Remove -m64 on 32bit target comments for
+	utrace_BIARCH check.
+
 2021-03-14  Mark Wielaard  <mark@klomp.org>
 
 	* configure.ac: Use AS_HELP_STRING instead of AC_HELP_STRING.
diff --git a/configure.ac b/configure.ac
index 1aff9f30..2418d474 100644
--- a/configure.ac
+++ b/configure.ac
@@ -706,9 +706,7 @@ if test "$sys_user_has_user_regs" = "yes"; then
 fi
 
 # On a 64-bit host where can can use $CC -m32, we'll run two sets of tests.
-# Likewise in a 32-bit build on a host where $CC -m64 works.
 utrace_BIARCH
-# `$utrace_biarch' will be `-m64' even on an uniarch i386 machine.
 CC_BIARCH="$CC $utrace_biarch"
 AC_SUBST([CC_BIARCH])
 
diff --git a/m4/ChangeLog b/m4/ChangeLog
index d4c3c28c..8729f58c 100644
--- a/m4/ChangeLog
+++ b/m4/ChangeLog
@@ -1,3 +1,7 @@
+2022-03-20  Mark Wielaard  <mark@klomp.org>
+
+	* biarch.m4: Don't check whether -m64 works for 32bit host.
+
 2022-03-14  Mark Wielaard  <mark@klomp.org>
 
 	* biarch.m4: Use AS_HELP_STRING instead of AC_HELP_STRING.
diff --git a/m4/biarch.m4 b/m4/biarch.m4
index 68618473..c7baead7 100644
--- a/m4/biarch.m4
+++ b/m4/biarch.m4
@@ -34,7 +34,7 @@ AC_ARG_WITH([biarch],
 AS_IF([test $utrace_biarch_forced = yes], [dnl
 utrace_cv_cc_biarch=yes
 AC_MSG_NOTICE([enabling biarch tests regardless using $biarch_CC])], [dnl
-AS_IF([test x$utrace_cv_CC_m32 != xnone], [dnl
+AS_IF([test x$utrace_cv_CC_m32 != xnone -a x$utrace_cv_host64 != xno], [dnl
 AC_CACHE_CHECK([whether $biarch_CC makes executables we can run],
 	       utrace_cv_cc_biarch, [dnl
 save_CC="$CC"
-- 
2.30.2



More information about the Elfutils-devel mailing list