]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
build-sys: Update configure.ac
authorAlex Xu <351006+Hello71@users.noreply.github.com>
Wed, 16 Jun 2021 13:58:25 +0000 (13:58 +0000)
committerKarel Zak <kzak@redhat.com>
Thu, 17 Jun 2021 11:59:35 +0000 (13:59 +0200)
1. the test incorrectly used AC_COMPILE_IFELSE instead of
   AC_LINK_IFELSE, defeating the purpose of checking -lcrypt.
2. the test did not properly restore LIBS, causing later checks to all
   fail if libcrypt wasn't found.
3. HAVE_LIBCRYPT only controls whether to use -lcrypt, it is not
   needed or used in any source files.

[kzak@redhat.com: - improve commit message
                  - use UL_{SET,RESTORE}_FLAGS() rather than directly
    modify $LIBS]

Signed-off-by: Karel Zak <kzak@redhat.com>
configure.ac

index 5181d524c6c64610d4194b8d0fae829210edeea8..939c6d2d33047c1f4558045410f91214c6de2f7f 100644 (file)
@@ -845,8 +845,8 @@ char *c = crypt("abc","pw");
   have_libcrypt=no
   have_crypt=yes
 ],[
-  LIBS="$LIBS -lcrypt"
-  AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+  UL_SET_FLAGS([], [], [-lcrypt])
+  AC_LINK_IFELSE([AC_LANG_PROGRAM([[
   #ifdef HAVE_CRYPT_H
   #include <crypt.h>
   #else
@@ -856,12 +856,12 @@ char *c = crypt("abc","pw");
   ]], [[
   char *c = crypt("abc","pw");
   ]])],[
-  AC_DEFINE([HAVE_LIBCRYPT], [1], [Do we need -lcrypt?])
   have_libcrypt=yes
   have_crypt=yes
   ],[
   AC_MSG_WARN([crypt() is not available])
   ])
+  UL_RESTORE_FLAGS
 ])
 AM_CONDITIONAL([HAVE_LIBCRYPT], [test "x$have_libcrypt" = xyes])