62fe4ffb98
Previously, the automatic soname detection were failing when the -Wl,--as-needed option was provided in LDFLAGS, which lead the FIPS self-tests to fail.
61 lines
2.1 KiB
Diff
61 lines
2.1 KiB
Diff
From b57b820a3f0464e3151dd675af4f28ad109d683c Mon Sep 17 00:00:00 2001
|
|
From: Vitezslav Cizek <vcizek@suse.com>
|
|
Date: Tue, 9 Jun 2020 13:54:04 +0200
|
|
Subject: [PATCH] configure: improve nettle, gmp, and hogweed soname detection
|
|
|
|
Some linkers might optimize away the libraries passed on the
|
|
command line if they aren't actually needed, such as gnu ld with
|
|
--as-needed.
|
|
The ldd output then won't list the shared libraries and the
|
|
detection will fail.
|
|
Make sure nettle and others are really used.
|
|
|
|
Signed-off-by: Vitezslav Cizek <vcizek@suse.com>
|
|
---
|
|
configure.ac | 15 ++++++++++++---
|
|
1 file changed, 12 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/configure.ac b/configure.ac
|
|
index e4ca66aec..ccbe4e563 100644
|
|
--- a/configure.ac
|
|
+++ b/configure.ac
|
|
@@ -741,7 +741,10 @@ LIBS=$save_LIBS
|
|
save_LIBS=$LIBS
|
|
LIBS="$LIBS $GMP_LIBS"
|
|
AC_MSG_CHECKING([gmp soname])
|
|
-AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
|
|
+AC_LINK_IFELSE([AC_LANG_PROGRAM([
|
|
+ #include <gmp.h>],[
|
|
+ mpz_t n;
|
|
+ mpz_init(n);])],
|
|
[gmp_so=`(eval "$LDDPROG conftest$EXEEXT $LDDPOSTPROC") | grep '^libgmp\.so'`],
|
|
[gmp_so=none])
|
|
if test -z "$gmp_so"; then
|
|
@@ -754,7 +757,10 @@ LIBS=$save_LIBS
|
|
save_LIBS=$LIBS
|
|
LIBS="$LIBS $NETTLE_LIBS"
|
|
AC_MSG_CHECKING([nettle soname])
|
|
-AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
|
|
+AC_LINK_IFELSE([AC_LANG_PROGRAM([
|
|
+ #include <nettle/sha2.h>],[
|
|
+ struct sha256_ctx ctx;
|
|
+ sha256_init(&ctx);])],
|
|
[nettle_so=`(eval "$LDDPROG conftest$EXEEXT $LDDPOSTPROC") | grep '^libnettle\.so'`],
|
|
[nettle_so=none])
|
|
if test -z "$nettle_so"; then
|
|
@@ -767,7 +773,10 @@ LIBS=$save_LIBS
|
|
save_LIBS=$LIBS
|
|
LIBS="$LIBS $HOGWEED_LIBS"
|
|
AC_MSG_CHECKING([hogweed soname])
|
|
-AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
|
|
+AC_LINK_IFELSE([AC_LANG_PROGRAM([
|
|
+ #include <nettle/rsa.h>],[
|
|
+ struct rsa_private_key priv;
|
|
+ nettle_rsa_private_key_init(&priv);])],
|
|
[hogweed_so=`(eval "$LDDPROG conftest$EXEEXT $LDDPOSTPROC") | grep '^libhogweed\.so'`],
|
|
[hogweed_so=none])
|
|
if test -z "$hogweed_so"; then
|
|
--
|
|
2.25.4
|
|
|