From 2e7fbb96f578454ea80cf604b636155779eb03bf Mon Sep 17 00:00:00 2001 From: Ilya Leoshkevich Date: Wed, 8 Feb 2023 20:52:24 +0100 Subject: configure: Use -fno-addrsig if possible By default, clang produces .llvm_addrsig sections [1]. The GNU toolchain does not know how to handle them yet [2], so just ask clang not to generate them for the time being. [1] https://llvm.org/docs/Extensions.html#sht-llvm-addrsig-section-address-significance-table [2] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105625 Signed-off-by: Ilya Leoshkevich --- configure.ac | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/configure.ac b/configure.ac index 8fe8baee..7dc9be63 100644 --- a/configure.ac +++ b/configure.ac @@ -588,6 +588,14 @@ CFLAGS="$old_CFLAGS"]) AM_CONDITIONAL(HAVE_NO_PACKED_NOT_ALIGNED_WARNING, [test "x$ac_cv_no_packed_not_aligned" != "xno"]) +AC_CACHE_CHECK([whether the compiler accepts -fno-addrsig], ac_cv_fno_addrsig, [dnl +old_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS -fno-addrsig -Werror" +AC_COMPILE_IFELSE([AC_LANG_SOURCE([])], + ac_cv_fno_addrsig=yes, ac_cv_fno_addrsig=no) +CFLAGS="$old_CFLAGS"]) +AS_IF([test "x$ac_cv_fno_addrsig" = "xyes"], CFLAGS="$CFLAGS -fno-addrsig") + saved_LIBS="$LIBS" AC_SEARCH_LIBS([argp_parse], [argp]) LIBS="$saved_LIBS" -- cgit v1.2.1