aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-support/libgcrypt/files/add-pkgconfig-support.patch
blob: 69589f548241de65ab12d7ca6e5ce97c0bb1e555 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
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.7.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 f683e21..566e1c8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2314,6 +2314,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} 
-- 
2.8.1