core: New commands --lang and --have-lang for gpgme-config

* configure.ac (GPGME_CONFIG_AVAIL_LANG): New ac_subst.
* src/gpgme-config.in (avail_lang): Add commands --lang and
--have-lang.

Signed-off-by: Werner Koch <wk@gnupg.org>
This commit is contained in:
Werner Koch 2016-08-21 15:49:03 +02:00
parent 30f156280f
commit 3e60788810
No known key found for this signature in database
GPG Key ID: E3FDFF218E45B72B
3 changed files with 40 additions and 10 deletions

View File

@ -717,10 +717,12 @@ AH_BOTTOM([
GPGME_CONFIG_LIBS="-lgpgme" GPGME_CONFIG_LIBS="-lgpgme"
GPGME_CONFIG_CFLAGS="" GPGME_CONFIG_CFLAGS=""
GPGME_CONFIG_HOST="$host" GPGME_CONFIG_HOST="$host"
GPGME_CONFIG_AVAIL_LANG="$enabled_languages"
AC_SUBST(GPGME_CONFIG_API_VERSION) AC_SUBST(GPGME_CONFIG_API_VERSION)
AC_SUBST(GPGME_CONFIG_LIBS) AC_SUBST(GPGME_CONFIG_LIBS)
AC_SUBST(GPGME_CONFIG_CFLAGS) AC_SUBST(GPGME_CONFIG_CFLAGS)
AC_SUBST(GPGME_CONFIG_HOST) AC_SUBST(GPGME_CONFIG_HOST)
AC_SUBST(GPGME_CONFIG_AVAIL_LANG)
# Frob'da Variables # Frob'da Variables
LTLIBOBJS=`echo "$LIB@&t@OBJS" | LTLIBOBJS=`echo "$LIB@&t@OBJS" |

View File

@ -450,6 +450,19 @@ any other option to select the thread package you want to link with.
Supported thread packages are @option{--thread=pth} and Supported thread packages are @option{--thread=pth} and
@option{--thread=pthread}. @option{--thread=pthread}.
If you need to detect the installed language bindings you can use list
them using:
@example
gpgme-config --print-lang
@end example
or test for the availability using
@example
gpgme-config --have-lang=python && echo 'Bindings for Pythons available'
@end example
@node Largefile Support (LFS) @node Largefile Support (LFS)
@section Largefile Support (LFS) @section Largefile Support (LFS)

View File

@ -36,6 +36,8 @@ thread_modules=""
libs_pthread="-lpthread" libs_pthread="-lpthread"
cflags_pthread="" cflags_pthread=""
avail_lang='c @GPGME_CONFIG_AVAIL_LANG@'
# Configure glib. # Configure glib.
libs_glib="@GLIB_LIBS@" libs_glib="@GLIB_LIBS@"
cflags_glib="@GLIB_CFLAGS@" cflags_glib="@GLIB_CFLAGS@"
@ -48,16 +50,16 @@ usage()
cat <<EOF cat <<EOF
Usage: gpgme-config [OPTIONS] Usage: gpgme-config [OPTIONS]
Options: Options:
[--thread={${thread_modules}}] --thread={${thread_modules}}]
[--prefix] --prefix
[--exec-prefix] --exec-prefix
[--version] --version
[--api-version] --api-version
[--host] --host
[--libs] --libs
[--cflags] --cflags
[--get-gpg] --print-lang Print available language bindings
[--get-gpgsm] --have-lang=LANG Return success if LANG is available
EOF EOF
exit $1 exit $1
} }
@ -178,10 +180,23 @@ while test $# -gt 0; do
usage 1 1>&2 usage 1 1>&2
fi fi
;; ;;
--print-lang)
output="$avail_lang"
;;
--have-lang=*)
for lang in $avail_lang; do
if test x"$lang" = x"$optarg"; then
exit 0
fi
done
exit 1
;;
--get-gpg) --get-gpg)
# Deprecated
output="$output @GPG@" output="$output @GPG@"
;; ;;
--get-gpgsm) --get-gpgsm)
# Deprecated
output="$output @GPGSM@" output="$output @GPGSM@"
;; ;;
*) *)