aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2016-08-21 13:49:03 +0000
committerWerner Koch <[email protected]>2016-08-21 13:49:03 +0000
commit3e60788810f93cfcd7f08e5882aff32ed7b6f831 (patch)
treeed0efb269d6a12d65deed4f418616147ed71edc0
parentcore: Remove (now) useless diagnostic (diff)
downloadgpgme-3e60788810f93cfcd7f08e5882aff32ed7b6f831.tar.gz
gpgme-3e60788810f93cfcd7f08e5882aff32ed7b6f831.zip
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 <[email protected]>
-rw-r--r--configure.ac2
-rw-r--r--doc/gpgme.texi13
-rw-r--r--src/gpgme-config.in35
3 files changed, 40 insertions, 10 deletions
diff --git a/configure.ac b/configure.ac
index 9eb55bb1..744b52a1 100644
--- a/configure.ac
+++ b/configure.ac
@@ -717,10 +717,12 @@ AH_BOTTOM([
GPGME_CONFIG_LIBS="-lgpgme"
GPGME_CONFIG_CFLAGS=""
GPGME_CONFIG_HOST="$host"
+GPGME_CONFIG_AVAIL_LANG="$enabled_languages"
AC_SUBST(GPGME_CONFIG_API_VERSION)
AC_SUBST(GPGME_CONFIG_LIBS)
AC_SUBST(GPGME_CONFIG_CFLAGS)
AC_SUBST(GPGME_CONFIG_HOST)
+AC_SUBST(GPGME_CONFIG_AVAIL_LANG)
# Frob'da Variables
LTLIBOBJS=`echo "$LIB@&t@OBJS" |
diff --git a/doc/gpgme.texi b/doc/gpgme.texi
index ac0fffab..e8a735a2 100644
--- a/doc/gpgme.texi
+++ b/doc/gpgme.texi
@@ -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
@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)
@section Largefile Support (LFS)
diff --git a/src/gpgme-config.in b/src/gpgme-config.in
index 4be1e08e..0d9fda21 100644
--- a/src/gpgme-config.in
+++ b/src/gpgme-config.in
@@ -36,6 +36,8 @@ thread_modules=""
libs_pthread="-lpthread"
cflags_pthread=""
+avail_lang='c @GPGME_CONFIG_AVAIL_LANG@'
+
# Configure glib.
libs_glib="@GLIB_LIBS@"
cflags_glib="@GLIB_CFLAGS@"
@@ -48,16 +50,16 @@ usage()
cat <<EOF
Usage: gpgme-config [OPTIONS]
Options:
- [--thread={${thread_modules}}]
- [--prefix]
- [--exec-prefix]
- [--version]
- [--api-version]
- [--host]
- [--libs]
- [--cflags]
- [--get-gpg]
- [--get-gpgsm]
+ --thread={${thread_modules}}]
+ --prefix
+ --exec-prefix
+ --version
+ --api-version
+ --host
+ --libs
+ --cflags
+ --print-lang Print available language bindings
+ --have-lang=LANG Return success if LANG is available
EOF
exit $1
}
@@ -178,10 +180,23 @@ while test $# -gt 0; do
usage 1 1>&2
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)
+ # Deprecated
output="$output @GPG@"
;;
--get-gpgsm)
+ # Deprecated
output="$output @GPGSM@"
;;
*)