| From 72b9e9040d58c15f0302bd8abda28179f04e1c5f Mon Sep 17 00:00:00 2001 |
| From: Richard Purdie <richard.purdie@linuxfoundation.org> |
| Date: Wed, 16 Aug 2017 10:43:18 +0800 |
| Subject: [PATCH 1/4] Add and use pkg-config for libgcrypt instead of -config |
| scripts. |
| |
| Upstream-Status: Denied [upstream have indicated they don't want a |
| pkg-config dependency] |
| |
| RP 2014/5/22 |
| |
| Rebase to 1.8.0 |
| |
| Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> |
| --- |
| configure.ac | 1 + |
| src/libgcrypt.m4 | 71 +++-------------------------------------------------- |
| src/libgcrypt.pc.in | 33 +++++++++++++++++++++++++ |
| 3 files changed, 38 insertions(+), 67 deletions(-) |
| create mode 100644 src/libgcrypt.pc.in |
| |
| diff --git a/configure.ac b/configure.ac |
| index bbe8104..3d2de73 100644 |
| --- a/configure.ac |
| +++ b/configure.ac |
| @@ -2607,6 +2607,7 @@ random/Makefile |
| doc/Makefile |
| src/Makefile |
| src/gcrypt.h |
| +src/libgcrypt.pc |
| src/libgcrypt-config |
| src/versioninfo.rc |
| tests/Makefile |
| diff --git a/src/libgcrypt.m4 b/src/libgcrypt.m4 |
| index c67cfec..4ea5f2c 100644 |
| --- a/src/libgcrypt.m4 |
| +++ b/src/libgcrypt.m4 |
| @@ -29,30 +29,6 @@ dnl is added to the gpg_config_script_warn variable. |
| dnl |
| AC_DEFUN([AM_PATH_LIBGCRYPT], |
| [ AC_REQUIRE([AC_CANONICAL_HOST]) |
| - AC_ARG_WITH(libgcrypt-prefix, |
| - AC_HELP_STRING([--with-libgcrypt-prefix=PFX], |
| - [prefix where LIBGCRYPT is installed (optional)]), |
| - libgcrypt_config_prefix="$withval", libgcrypt_config_prefix="") |
| - if test x"${LIBGCRYPT_CONFIG}" = x ; then |
| - if test x"${libgcrypt_config_prefix}" != x ; then |
| - LIBGCRYPT_CONFIG="${libgcrypt_config_prefix}/bin/libgcrypt-config" |
| - else |
| - case "${SYSROOT}" in |
| - /*) |
| - if test -x "${SYSROOT}/bin/libgcrypt-config" ; then |
| - LIBGCRYPT_CONFIG="${SYSROOT}/bin/libgcrypt-config" |
| - fi |
| - ;; |
| - '') |
| - ;; |
| - *) |
| - AC_MSG_WARN([Ignoring \$SYSROOT as it is not an absolute path.]) |
| - ;; |
| - esac |
| - fi |
| - fi |
| - |
| - AC_PATH_PROG(LIBGCRYPT_CONFIG, libgcrypt-config, no) |
| tmp=ifelse([$1], ,1:1.2.0,$1) |
| if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then |
| req_libgcrypt_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'` |
| @@ -62,48 +38,13 @@ AC_DEFUN([AM_PATH_LIBGCRYPT], |
| min_libgcrypt_version="$tmp" |
| fi |
| |
| - AC_MSG_CHECKING(for LIBGCRYPT - version >= $min_libgcrypt_version) |
| - ok=no |
| - if test "$LIBGCRYPT_CONFIG" != "no" ; then |
| - req_major=`echo $min_libgcrypt_version | \ |
| - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\1/'` |
| - req_minor=`echo $min_libgcrypt_version | \ |
| - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\2/'` |
| - req_micro=`echo $min_libgcrypt_version | \ |
| - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\3/'` |
| - libgcrypt_config_version=`$LIBGCRYPT_CONFIG --version` |
| - major=`echo $libgcrypt_config_version | \ |
| - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'` |
| - minor=`echo $libgcrypt_config_version | \ |
| - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\2/'` |
| - micro=`echo $libgcrypt_config_version | \ |
| - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\3/'` |
| - if test "$major" -gt "$req_major"; then |
| - ok=yes |
| - else |
| - if test "$major" -eq "$req_major"; then |
| - if test "$minor" -gt "$req_minor"; then |
| - ok=yes |
| - else |
| - if test "$minor" -eq "$req_minor"; then |
| - if test "$micro" -ge "$req_micro"; then |
| - ok=yes |
| - fi |
| - fi |
| - fi |
| - fi |
| - fi |
| - fi |
| - if test $ok = yes; then |
| - AC_MSG_RESULT([yes ($libgcrypt_config_version)]) |
| - else |
| - AC_MSG_RESULT(no) |
| - fi |
| + PKG_CHECK_MODULES(LIBGCRYPT, [libgcrypt >= $min_libgcrypt_version], [ok=yes], [ok=no]) |
| + |
| if test $ok = yes; then |
| # If we have a recent libgcrypt, we should also check that the |
| # API is compatible |
| if test "$req_libgcrypt_api" -gt 0 ; then |
| - tmp=`$LIBGCRYPT_CONFIG --api-version 2>/dev/null || echo 0` |
| + tmp=`$PKG_CONFIG --variable=api_version libgcrypt` |
| if test "$tmp" -gt 0 ; then |
| AC_MSG_CHECKING([LIBGCRYPT API version]) |
| if test "$req_libgcrypt_api" -eq "$tmp" ; then |
| @@ -116,10 +57,8 @@ AC_DEFUN([AM_PATH_LIBGCRYPT], |
| fi |
| fi |
| if test $ok = yes; then |
| - LIBGCRYPT_CFLAGS=`$LIBGCRYPT_CONFIG --cflags` |
| - LIBGCRYPT_LIBS=`$LIBGCRYPT_CONFIG --libs` |
| ifelse([$2], , :, [$2]) |
| - libgcrypt_config_host=`$LIBGCRYPT_CONFIG --host 2>/dev/null || echo none` |
| + libgcrypt_config_host=`$PKG_CONFIG --variable=host libgcrypt` |
| if test x"$libgcrypt_config_host" != xnone ; then |
| if test x"$libgcrypt_config_host" != x"$host" ; then |
| AC_MSG_WARN([[ |
| @@ -134,8 +73,6 @@ AC_DEFUN([AM_PATH_LIBGCRYPT], |
| fi |
| fi |
| else |
| - LIBGCRYPT_CFLAGS="" |
| - LIBGCRYPT_LIBS="" |
| ifelse([$3], , :, [$3]) |
| fi |
| AC_SUBST(LIBGCRYPT_CFLAGS) |
| diff --git a/src/libgcrypt.pc.in b/src/libgcrypt.pc.in |
| new file mode 100644 |
| index 0000000..2fc8f53 |
| --- /dev/null |
| +++ b/src/libgcrypt.pc.in |
| @@ -0,0 +1,33 @@ |
| +# Process this file with autoconf to produce a pkg-config metadata file. |
| +# Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation |
| +# Author: Simon Josefsson |
| +# |
| +# This file is free software; as a special exception the author gives |
| +# unlimited permission to copy and/or distribute it, with or without |
| +# modifications, as long as this notice is preserved. |
| +# |
| +# This file is distributed in the hope that it will be useful, but |
| +# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the |
| +# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
| + |
| +prefix=@prefix@ |
| +exec_prefix=@exec_prefix@ |
| +libdir=@libdir@ |
| +includedir=@includedir@ |
| + |
| +# API info |
| +api_version=@LIBGCRYPT_CONFIG_API_VERSION@ |
| +host=@LIBGCRYPT_CONFIG_HOST@ |
| + |
| +# Misc information. |
| +symmetric_ciphers=@LIBGCRYPT_CIPHERS@ |
| +asymmetric_ciphers=@LIBGCRYPT_PUBKEY_CIPHERS@ |
| +digests=@LIBGCRYPT_DIGESTS@ |
| + |
| +Name: libgcrypt |
| +Description: GNU crypto library |
| +URL: http://www.gnupg.org |
| +Version: @VERSION@ |
| +Libs: -L${libdir} -lgcrypt |
| +Libs.private: -L${libdir} -lgpg-error |
| +Cflags: -I${includedir} |
| -- |
| 1.8.3.1 |
| |