aboutsummaryrefslogtreecommitdiffstats
path: root/configure.ac
diff options
context:
space:
mode:
authorAndre Heinecke <[email protected]>2016-11-08 14:32:14 +0000
committerAndre Heinecke <[email protected]>2016-11-10 12:33:13 +0000
commit09b64554328445e99a8cc78fc34ea49c2ea2e7f9 (patch)
treef5d68498f7b5b099a62486c45ce5aa23ee6445d3 /configure.ac
parentpython: Require at least GPGME 1.7 for out-of-tree builds. (diff)
downloadgpgme-09b64554328445e99a8cc78fc34ea49c2ea2e7f9.tar.gz
gpgme-09b64554328445e99a8cc78fc34ea49c2ea2e7f9.zip
core: Use gpgrt locking for thread safeness
* configure.ac: Require libgpg-error 1.17. No longer check for pthread. * doc/gpgme.texi: Document removed neccessity for thread safe gpgme flavours. * src/sema.h (DEFINE_GLOBAL_LOCK), (DEFINE_STATIC_LOCK, INIT_LOCK, DECLARE_LOCK) (DESTROY_LOCK, LOCK, UNLOCK): Change to gpgrt equivalents. * src/posix-sema.c, src/w32-sema.c: Removed. * src/Makefile.am: Remove libpthread and Update accordingly. * src/ath.c, src/ath.h (ath_mutex_init) (ath_mutex_destroy, ath_mutex_lock, ath_mutex_unlock): Removed. * src/ath.h (ATH_MUTEX_INITIALIZER): Removed. * src/version.c (do_subsystem_inits): sema_subsystem_init is no longer required. * tests/gpg/Makefile.am: Add new threading tests. (t_thread1_LDADD, t_cancel_LDADD): Use just gpgme. * tests/gpg/t-thread-keylist-verify.c, tests/gpg/t-thread-keylist.c: New. * src/gpgme-config.in: Use -lgpgme for thread-model pthread. -- Using gpgrt locks instead of pthread locks removes the neccessity to link pthread directly to gpgme and have a different, thread safe flavor of gpgme. Now gpgme is thread-safe if the conditions mentioned in the doc are met. As the cpp bindings linked against libgpgme and not libgpgme-pthread this fixes threading problems with them. libgpgme-pthread is removed but gpgme-config still supports --thread=pthread for compatibility with find scripts.
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac10
1 files changed, 1 insertions, 9 deletions
diff --git a/configure.ac b/configure.ac
index b52f2143..4afad853 100644
--- a/configure.ac
+++ b/configure.ac
@@ -71,7 +71,7 @@ LIBQGPGME_LT_REVISION=0
GPGME_CONFIG_API_VERSION=1
##############################################
-NEED_GPG_ERROR_VERSION=1.11
+NEED_GPG_ERROR_VERSION=1.17
NEED_LIBASSUAN_API=2
NEED_LIBASSUAN_VERSION=2.0.2
@@ -211,11 +211,6 @@ case "${host}" in
;;
*)
- AC_CHECK_LIB(pthread,pthread_create,have_pthread=yes)
- if test "$have_pthread" = yes; then
- AC_DEFINE(HAVE_PTHREAD, ,[Define if we have pthread.])
- fi
-
# XXX: Probably use exec-prefix here?
# GPG_DEFAULT='/usr/bin/gpg'
# GPGSM_DEFAULT='/usr/bin/gpgsm'
@@ -257,8 +252,6 @@ AM_CONDITIONAL(HAVE_ANDROID_SYSTEM, test "$have_android_system" = yes)
AM_CONDITIONAL(BUILD_W32_GLIB, test "$build_w32_glib" = yes)
-AM_CONDITIONAL(HAVE_PTHREAD, test "$have_pthread" = "yes")
-
AC_ARG_ENABLE([fixed-path],
AC_HELP_STRING([--enable-fixed-path=PATH],
@@ -905,7 +898,6 @@ echo "
UI Server: $uiserver
FD Passing: $use_descriptor_passing
- GPGME Pthread: $have_pthread
Language bindings: ${enabled_languages_v:-$enabled_languages}
"