Hi Marc,

Patch looks good to me :) Thanks!

On 8/6/24 18:43, Marc Poulhiès wrote:
Save LIBS around calls to AC_SEARCH_LIBS to avoid clobbering $LIBS.

ChangeLog:

        * configure: Regenerate.
        * configure.ac: Save LIBS around calls to AC_SEARCH_LIBS.

Signed-off-by: Marc Poulhiès <d...@kataplop.net>
Reviewed-by: Thomas Schwinge <tschwi...@baylibre.com>
Tested-by: Thomas Schwinge <tschwi...@baylibre.com>
---
Hello,

This has already been merged in our github repository: 
https://github.com/Rust-GCC/gccrs/pull/3121
When testing on Ubuntu 20.04, I (and Thomas, thanks for testing) get:
S["CRAB1_LIBS"]="-lpthread -ldl "
S["LIBS"]=""

So LIBS correctly stays unmodified by our calls to AC_SEARCH_LIBS.

Ok for master?

Marc

  configure    | 15 ++++++++-------
  configure.ac | 15 ++++++++-------
  2 files changed, 16 insertions(+), 14 deletions(-)

diff --git a/configure b/configure
index 51bf1d1add1..e9583f2ba0c 100755
--- a/configure
+++ b/configure
@@ -8878,9 +8878,12 @@ fi
# Rust requires -ldl and -lpthread if you are using an old glibc that does not include them by
  # default, so we check for them here
-
+# We are doing the test here and not in the gcc/configure to be able to nicely 
disable the
+# build of the Rust frontend in case a dep is missing.
  missing_rust_dynlibs=none
+save_LIBS="$LIBS"
+LIBS=
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dlopen" 
>&5
  $as_echo_n "checking for library containing dlopen... " >&6; }
  if ${ac_cv_search_dlopen+:} false; then :
@@ -8993,16 +8996,14 @@ if test "$ac_res" != no; then :
fi +CRAB1_LIBS="$LIBS"
+LIBS="$save_LIBS"
-if test "$ac_cv_search_dlopen" = -ldl; then
-    CRAB1_LIBS="$CRAB1_LIBS -ldl"
-elif test "$ac_cv_search_dlopen" = no; then
+if test "$ac_cv_search_dlopen" = no; then
      missing_rust_dynlibs="libdl"
  fi
-if test "$ac_cv_search_pthread_create" = -lpthread; then
-    CRAB1_LIBS="$CRAB1_LIBS -lpthread"
-elif test "$ac_cv_search_pthread_create" = no; then
+if test "$ac_cv_search_pthread_create" = no; then
      missing_rust_dynlibs="$missing_rust_dynlibs, libpthread"
  fi
diff --git a/configure.ac b/configure.ac
index 20457005e29..f61dbe64a94 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2039,21 +2039,22 @@ AC_SUBST(PICFLAG)
# Rust requires -ldl and -lpthread if you are using an old glibc that does not include them by
  # default, so we check for them here
-
+# We are doing the test here and not in the gcc/configure to be able to nicely 
disable the
+# build of the Rust frontend in case a dep is missing.
  missing_rust_dynlibs=none
+save_LIBS="$LIBS"
+LIBS=
  AC_SEARCH_LIBS([dlopen], [dl])
  AC_SEARCH_LIBS([pthread_create], [pthread])
+CRAB1_LIBS="$LIBS"
+LIBS="$save_LIBS"
-if test "$ac_cv_search_dlopen" = -ldl; then
-    CRAB1_LIBS="$CRAB1_LIBS -ldl"
-elif test "$ac_cv_search_dlopen" = no; then
+if test "$ac_cv_search_dlopen" = no; then
      missing_rust_dynlibs="libdl"
  fi
-if test "$ac_cv_search_pthread_create" = -lpthread; then
-    CRAB1_LIBS="$CRAB1_LIBS -lpthread"
-elif test "$ac_cv_search_pthread_create" = no; then
+if test "$ac_cv_search_pthread_create" = no; then
      missing_rust_dynlibs="$missing_rust_dynlibs, libpthread"
  fi

Reply via email to