From 8b5510050ddbf5bdee4a7cb89f8ee32e08aecd94 Mon Sep 17 00:00:00 2001
From: =?utf8?q?P=C3=A1draig=20Brady?=
Date: Sun, 8 Dec 2013 23:19:29 +0000
Subject: [PATCH] md5, sha1, sha256, sha512: fix link error with partial
libcrypto
* m4/gl-openssl.m4 (gl_CRYPTO_CHECK): Only clear LIB_CRYPTO at
init time, so that if early checks find crypto routines,
while the last does not, then @LIB_CRYPTO@ is replaced correctly,
avoiding link failures.
---
ChangeLog | 8 ++++++++
m4/gc.m4 | 1 -
m4/gl-openssl.m4 | 5 ++++-
3 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 9688c32d7c..563e867162 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2013-12-07 Pádraig Brady
+
+ md5, sha1, sha256, sha512: fix link error with partial libcrypto
+ * m4/gl-openssl.m4 (gl_CRYPTO_CHECK): Only clear LIB_CRYPTO at
+ init time, so that if early checks find crypto routines,
+ while the last does not, then @LIB_CRYPTO@ is replaced correctly,
+ avoiding link failures.
+
2013-12-07 Paul Eggert
md5, sha1, sha256, sha512: add gl_SET_CRYPTO_CHECK_DEFAULT
diff --git a/m4/gc.m4 b/m4/gc.m4
index 3d133540ef..66736b8032 100644
--- a/m4/gc.m4
+++ b/m4/gc.m4
@@ -6,7 +6,6 @@ dnl with or without modifications, as long as this notice is preserved.
AC_DEFUN([gl_GC],
[
- LIB_CRYPTO=
AC_SUBST([LIB_CRYPTO])
AC_ARG_WITH([libgcrypt],
AS_HELP_STRING([--with-libgcrypt], [use libgcrypt for low-level crypto]),
diff --git a/m4/gl-openssl.m4 b/m4/gl-openssl.m4
index c8f9dd95e6..0434c4c872 100644
--- a/m4/gl-openssl.m4
+++ b/m4/gl-openssl.m4
@@ -12,8 +12,12 @@ gl_SET_CRYPTO_CHECK_DEFAULT([no])
AC_DEFUN([gl_CRYPTO_CHECK],
[
+ dnl gnulib users set this before gl_INIT with gl_SET_CRYPTO_CHECK_DEFAULT()
m4_divert_once([DEFAULTS], [with_openssl_default='gl_CRYPTO_CHECK_DEFAULT'])
+ dnl Only clear once, so crypto routines can be checked for individually
+ m4_divert_once([DEFAULTS], [LIB_CRYPTO=])
+
AC_ARG_WITH([openssl],
[AS_HELP_STRING([--with-openssl],
[use libcrypto hash routines. Valid ARGs are:
@@ -29,7 +33,6 @@ AC_DEFUN([gl_CRYPTO_CHECK],
ALG_header=sha.h
fi
- LIB_CRYPTO=
AC_SUBST([LIB_CRYPTO])
if test "x$with_openssl" != xno; then
AC_CHECK_LIB([crypto], [$1],
--
2.39.5