| From 7b3a00cb0fc27c896dd85c9afc474bd9c2aea30d Mon Sep 17 00:00:00 2001 |
| From: Richard Purdie <richard.purdie@linuxfoundation.org> |
| Date: Fri, 10 May 2019 14:23:55 +0800 |
| Subject: [PATCH] pkgconfig |
| |
| Update gpgme to use pkgconfig instead of -config files since its |
| simpler and less error prone when cross compiling. |
| |
| Upstream-Status: Denied [Upstream not interested in pkg-config support] |
| RP 2015/4/17 |
| |
| Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> |
| |
| Rebase to 1.13.0 |
| Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> |
| Rebase to 1.17.0 |
| Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> |
| |
| --- |
| configure.ac | 1 + |
| src/Makefile.am | 4 +- |
| src/gpgme-pthread.pc.in | 15 +++++ |
| src/gpgme.m4 | 119 +++------------------------------------- |
| src/gpgme.pc.in | 4 +- |
| 5 files changed, 29 insertions(+), 114 deletions(-) |
| create mode 100644 src/gpgme-pthread.pc.in |
| |
| diff --git a/configure.ac b/configure.ac |
| index ae4c7da..df892c9 100644 |
| --- a/configure.ac |
| +++ b/configure.ac |
| @@ -1112,6 +1112,7 @@ AC_CONFIG_FILES(Makefile src/Makefile |
| src/gpgme-glib.pc |
| src/gpgme.h) |
| AC_CONFIG_FILES(src/gpgme-config, chmod +x src/gpgme-config) |
| +AC_CONFIG_FILES(src/gpgme-pthread.pc) |
| AC_CONFIG_FILES(lang/cpp/Makefile lang/cpp/src/Makefile) |
| AC_CONFIG_FILES(lang/cpp/tests/Makefile) |
| AC_CONFIG_FILES(lang/cpp/src/GpgmeppConfig-w32.cmake.in) |
| diff --git a/src/Makefile.am b/src/Makefile.am |
| index ca70950..bda5498 100644 |
| --- a/src/Makefile.am |
| +++ b/src/Makefile.am |
| @@ -20,11 +20,11 @@ |
| ## Process this file with automake to produce Makefile.in |
| |
| pkgconfigdir = $(libdir)/pkgconfig |
| -pkgconfig_DATA = gpgme.pc gpgme-glib.pc |
| +pkgconfig_DATA = gpgme.pc gpgme-glib.pc gpgme-pthread.pc |
| |
| EXTRA_DIST = gpgme-config.in gpgme.m4 libgpgme.vers ChangeLog-2011 \ |
| gpgme.h.in versioninfo.rc.in gpgme.def \ |
| - gpgme.pc.in gpgme-glib.pc.in |
| + gpgme.pc.in gpgme-glib.pc.in gpgme-pthread.pc.in |
| |
| if USE_GPGRT_CONFIG |
| noinst_SCRIPTS = gpgme-config |
| diff --git a/src/gpgme-pthread.pc.in b/src/gpgme-pthread.pc.in |
| new file mode 100644 |
| index 0000000..074bbf6 |
| --- /dev/null |
| +++ b/src/gpgme-pthread.pc.in |
| @@ -0,0 +1,15 @@ |
| +prefix=@prefix@ |
| +exec_prefix=@exec_prefix@ |
| +libdir=@libdir@ |
| +includedir=@includedir@ |
| + |
| +# API info |
| +api_version=@GPGME_CONFIG_API_VERSION@ |
| +host=@GPGME_CONFIG_HOST@ |
| + |
| +Name: gpgme |
| +Description: GnuPG Made Easy (GPGME) is a C language library that allows to addsupport for cryptography to a program (deprecated) |
| +Version: @VERSION@ |
| +Libs: -L${libdir} -lgpgme -lpthread |
| +Cflags: -I${includedir} |
| +Requires: libassuan gpg-error |
| diff --git a/src/gpgme.m4 b/src/gpgme.m4 |
| index 8cc2898..0ff550e 100644 |
| --- a/src/gpgme.m4 |
| +++ b/src/gpgme.m4 |
| @@ -168,7 +168,7 @@ dnl config script does not match the host specification the script |
| dnl is added to the gpg_config_script_warn variable. |
| dnl |
| AC_DEFUN([AM_PATH_GPGME], |
| -[ AC_REQUIRE([_AM_PATH_GPGME_CONFIG])dnl |
| +[ |
| tmp=ifelse([$1], ,1:0.4.2,$1) |
| if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then |
| req_gpgme_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'` |
| @@ -178,36 +178,12 @@ AC_DEFUN([AM_PATH_GPGME], |
| min_gpgme_version="$tmp" |
| fi |
| |
| - AC_MSG_CHECKING(for GPGME - version >= $min_gpgme_version) |
| - ok=no |
| - if test "$GPGME_CONFIG" != "no" ; then |
| - req_major=`echo $min_gpgme_version | \ |
| - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\1/'` |
| - req_minor=`echo $min_gpgme_version | \ |
| - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\2/'` |
| - req_micro=`echo $min_gpgme_version | \ |
| - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\3/'` |
| - if test "$gpgme_version_major" -gt "$req_major"; then |
| - ok=yes |
| - else |
| - if test "$gpgme_version_major" -eq "$req_major"; then |
| - if test "$gpgme_version_minor" -gt "$req_minor"; then |
| - ok=yes |
| - else |
| - if test "$gpgme_version_minor" -eq "$req_minor"; then |
| - if test "$gpgme_version_micro" -ge "$req_micro"; then |
| - ok=yes |
| - fi |
| - fi |
| - fi |
| - fi |
| - fi |
| - fi |
| + PKG_CHECK_MODULES(GPGME, [gpgme >= $min_gpgme_version], [ok=yes], [ok=no]) |
| if test $ok = yes; then |
| # If we have a recent GPGME, we should also check that the |
| # API is compatible. |
| if test "$req_gpgme_api" -gt 0 ; then |
| - tmp=`$GPGME_CONFIG --api-version 2>/dev/null || echo 0` |
| + tmp=`$PKG_CONFIG --variable=api_version gpgme 2>/dev/null || echo 0` |
| if test "$tmp" -gt 0 ; then |
| if test "$req_gpgme_api" -ne "$tmp" ; then |
| ok=no |
| @@ -216,19 +192,11 @@ AC_DEFUN([AM_PATH_GPGME], |
| fi |
| fi |
| if test $ok = yes; then |
| - GPGME_CFLAGS=`$GPGME_CONFIG --cflags` |
| - GPGME_LIBS=`$GPGME_CONFIG --libs` |
| - AC_MSG_RESULT(yes) |
| ifelse([$2], , :, [$2]) |
| _AM_PATH_GPGME_CONFIG_HOST_CHECK |
| else |
| - GPGME_CFLAGS="" |
| - GPGME_LIBS="" |
| - AC_MSG_RESULT(no) |
| ifelse([$3], , :, [$3]) |
| fi |
| - AC_SUBST(GPGME_CFLAGS) |
| - AC_SUBST(GPGME_LIBS) |
| ]) |
| |
| dnl AM_PATH_GPGME_PTHREAD([MINIMUM-VERSION, |
| @@ -236,9 +204,8 @@ dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]]) |
| dnl Test for libgpgme and define GPGME_PTHREAD_CFLAGS |
| dnl and GPGME_PTHREAD_LIBS. |
| dnl |
| -AC_DEFUN([AM_PATH_GPGME_PTHREAD],[ |
| - AC_OBSOLETE([$0], [; use AM_PATH_GPGME instead to use GPGME_CFLAGS and GPGME_LIBS])dnl |
| - AC_REQUIRE([_AM_PATH_GPGME_CONFIG])dnl |
| +AC_DEFUN([AM_PATH_GPGME_PTHREAD], |
| +[ |
| tmp=ifelse([$1], ,1:0.4.2,$1) |
| if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then |
| req_gpgme_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'` |
| @@ -248,40 +215,12 @@ AC_DEFUN([AM_PATH_GPGME_PTHREAD],[ |
| min_gpgme_version="$tmp" |
| fi |
| |
| - AC_MSG_CHECKING(for GPGME pthread - version >= $min_gpgme_version) |
| - ok=no |
| - if test "$GPGME_CONFIG" != "no" ; then |
| - req_major=`echo $min_gpgme_version | \ |
| - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\1/'` |
| - req_minor=`echo $min_gpgme_version | \ |
| - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\2/'` |
| - req_micro=`echo $min_gpgme_version | \ |
| - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\3/'` |
| - if test "$gpgme_version_major" -gt "$req_major"; then |
| - ok=yes |
| - else |
| - if test "$gpgme_version_major" -eq "$req_major"; then |
| - if test "$gpgme_version_minor" -gt "$req_minor"; then |
| - ok=yes |
| - else |
| - if test "$gpgme_version_minor" -eq "$req_minor"; then |
| - if test "$gpgme_version_micro" -ge "$req_micro"; then |
| - ok=yes |
| - fi |
| - fi |
| - fi |
| - fi |
| - fi |
| - fi |
| + PKG_CHECK_MODULES(GPGME_PTHREAD, [gpgme-pthread >= $min_gpgme_version], [ok=yes], [ok=no]) |
| if test $ok = yes; then |
| # If we have a recent GPGME, we should also check that the |
| # API is compatible. |
| if test "$req_gpgme_api" -gt 0 ; then |
| - if test -z "$use_gpgrt_config"; then |
| - tmp=`$GPGME_CONFIG --api-version 2>/dev/null || echo 0` |
| - else |
| - tmp=`$GPGME_CONFIG --variable=api_version 2>/dev/null || echo 0` |
| - fi |
| + tmp=`$PKG_CONFIG --variable=api_version gpgme-pthread 2>/dev/null || echo 0` |
| if test "$tmp" -gt 0 ; then |
| if test "$req_gpgme_api" -ne "$tmp" ; then |
| ok=no |
| @@ -290,19 +229,11 @@ AC_DEFUN([AM_PATH_GPGME_PTHREAD],[ |
| fi |
| fi |
| if test $ok = yes; then |
| - GPGME_PTHREAD_CFLAGS=`$GPGME_CONFIG --cflags` |
| - GPGME_PTHREAD_LIBS=`$GPGME_CONFIG --libs` |
| - AC_MSG_RESULT(yes) |
| ifelse([$2], , :, [$2]) |
| _AM_PATH_GPGME_CONFIG_HOST_CHECK |
| else |
| - GPGME_PTHREAD_CFLAGS="" |
| - GPGME_PTHREAD_LIBS="" |
| - AC_MSG_RESULT(no) |
| ifelse([$3], , :, [$3]) |
| fi |
| - AC_SUBST(GPGME_PTHREAD_CFLAGS) |
| - AC_SUBST(GPGME_PTHREAD_LIBS) |
| ]) |
| |
| |
| @@ -321,36 +252,12 @@ AC_DEFUN([AM_PATH_GPGME_GLIB], |
| min_gpgme_version="$tmp" |
| fi |
| |
| - AC_MSG_CHECKING(for GPGME - version >= $min_gpgme_version) |
| - ok=no |
| - if test "$GPGME_CONFIG" != "no" ; then |
| - req_major=`echo $min_gpgme_version | \ |
| - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\1/'` |
| - req_minor=`echo $min_gpgme_version | \ |
| - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\2/'` |
| - req_micro=`echo $min_gpgme_version | \ |
| - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\3/'` |
| - if test "$gpgme_version_major" -gt "$req_major"; then |
| - ok=yes |
| - else |
| - if test "$gpgme_version_major" -eq "$req_major"; then |
| - if test "$gpgme_version_minor" -gt "$req_minor"; then |
| - ok=yes |
| - else |
| - if test "$gpgme_version_minor" -eq "$req_minor"; then |
| - if test "$gpgme_version_micro" -ge "$req_micro"; then |
| - ok=yes |
| - fi |
| - fi |
| - fi |
| - fi |
| - fi |
| - fi |
| + PKG_CHECK_MODULES(GPGME_GLIB, [gpgme >= $min_gpgme_version glib-2.0], [ok=yes], [ok=no]) |
| if test $ok = yes; then |
| # If we have a recent GPGME, we should also check that the |
| # API is compatible. |
| if test "$req_gpgme_api" -gt 0 ; then |
| - tmp=`$GPGME_CONFIG --api-version 2>/dev/null || echo 0` |
| + tmp=`$PKG_CONFIG --variable=api_version gpgme 2>/dev/null || echo 0` |
| if test "$tmp" -gt 0 ; then |
| if test "$req_gpgme_api" -ne "$tmp" ; then |
| ok=no |
| @@ -359,17 +266,9 @@ AC_DEFUN([AM_PATH_GPGME_GLIB], |
| fi |
| fi |
| if test $ok = yes; then |
| - GPGME_GLIB_CFLAGS=`$GPGME_CONFIG --glib --cflags` |
| - GPGME_GLIB_LIBS=`$GPGME_CONFIG --glib --libs` |
| - AC_MSG_RESULT(yes) |
| ifelse([$2], , :, [$2]) |
| _AM_PATH_GPGME_CONFIG_HOST_CHECK |
| else |
| - GPGME_GLIB_CFLAGS="" |
| - GPGME_GLIB_LIBS="" |
| - AC_MSG_RESULT(no) |
| ifelse([$3], , :, [$3]) |
| fi |
| - AC_SUBST(GPGME_GLIB_CFLAGS) |
| - AC_SUBST(GPGME_GLIB_LIBS) |
| ]) |
| diff --git a/src/gpgme.pc.in b/src/gpgme.pc.in |
| index 9ddef5c..932645b 100644 |
| --- a/src/gpgme.pc.in |
| +++ b/src/gpgme.pc.in |
| @@ -9,6 +9,6 @@ Name: gpgme |
| Description: GnuPG Made Easy to access GnuPG |
| Requires.private: gpg-error, libassuan |
| Version: @PACKAGE_VERSION@ |
| -Cflags: @GPGME_CONFIG_CFLAGS@ |
| -Libs: @GPGME_CONFIG_LIBS@ |
| +Cflags: -I${includedir} |
| +Libs: -L${libdir} -lgpgme |
| URL: https://www.gnupg.org/software/gpgme/index.html |