]> git.ipfire.org Git - thirdparty/openvpn.git/commitdiff
configure: Try to use pkg-config to detect mbedTLS
authorFrank Lichtenheld <frank@lichtenheld.com>
Fri, 6 Sep 2024 16:05:10 +0000 (18:05 +0200)
committerGert Doering <gert@greenie.muc.de>
Sun, 8 Sep 2024 12:15:43 +0000 (14:15 +0200)
mbedTLS does not seem to have pkg-config support on e.g.
Debian/Ubuntu, so we definitely need to keep the
fallback check as well.

Change-Id: I5d0da76018e874cda5dbab9202a2b817ad5e4692
Signed-off-by: Frank Lichtenheld <frank@lichtenheld.com>
Acked-by: Yuriy Darnobyt <yura.uddr@gmail.com>
Message-Id: <20240906160510.76387-1-frank@lichtenheld.com>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg29090.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
configure.ac

index ea0da1fffb168d199ee19b1b6ec54d5a4b99ed15..9e569bfcac3db754a4418cbea5f3d3605df7dc28 100644 (file)
@@ -1000,14 +1000,21 @@ elif test "${with_crypto_library}" = "mbedtls"; then
 
        if test -z "${MBEDTLS_CFLAGS}" -a -z "${MBEDTLS_LIBS}"; then
                # if the user did not explicitly specify flags, try to autodetect
-               LIBS="${LIBS} -lmbedtls -lmbedx509 -lmbedcrypto"
-               AC_CHECK_LIB(
-                       [mbedtls],
-                       [mbedtls_ssl_init],
-                       [MBEDTLS_LIBS="-lmbedtls -lmbedx509 -lmbedcrypto"],
-                       [AC_MSG_ERROR([Could not find mbed TLS.])],
-                       [${PKCS11_HELPER_LIBS}]
+               PKG_CHECK_MODULES([MBEDTLS],
+                       [mbedtls >= 2.0.0 mbedx509 >= 2.0.0 mbedcrypto >= 2.0.0],
+                       [have_mbedtls="yes"],
+                       [LIBS="${LIBS} -lmbedtls -lmbedx509 -lmbedcrypto"]
                )
+               # mbedtls might not have pkgconfig integration, so try manually
+                if test "${have_mbedtls}" != "yes"; then
+                       AC_CHECK_LIB(
+                               [mbedtls],
+                               [mbedtls_ssl_init],
+                               [MBEDTLS_LIBS="-lmbedtls -lmbedx509 -lmbedcrypto"],
+                               [AC_MSG_ERROR([Could not find mbed TLS.])],
+                               [${PKCS11_HELPER_LIBS}]
+                       )
+               fi
        fi
 
        CFLAGS="${MBEDTLS_CFLAGS} ${PKCS11_HELPER_CFLAGS} ${CFLAGS}"