From 45a8b46f478d4aa63ae5df74b6bb28ebdd7521ac Mon Sep 17 00:00:00 2001 From: Behdad Esfahbod Date: Wed, 8 Apr 2015 12:49:38 -0700 Subject: [PATCH] Allow implementing atomic and mutex ops in config Motivated by https://github.com/behdad/harfbuzz/pull/92 --- src/hb-atomic-private.hh | 6 +++++- src/hb-mutex-private.hh | 7 ++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/hb-atomic-private.hh b/src/hb-atomic-private.hh index e6738b7d9..6fa86d39f 100644 --- a/src/hb-atomic-private.hh +++ b/src/hb-atomic-private.hh @@ -39,7 +39,11 @@ /* We need external help for these */ -#if 0 +#if defined(hb_atomic_int_add) \ + && defined(hb_atomic_ptr_get) \ + && defined(hb_atomic_ptr_cmpexch) + +/* Defined externally, i.e. in config.h */ #elif !defined(HB_NO_MT) && (defined(_WIN32) || defined(__CYGWIN__)) diff --git a/src/hb-mutex-private.hh b/src/hb-mutex-private.hh index a8ea39ccf..64c552f79 100644 --- a/src/hb-mutex-private.hh +++ b/src/hb-mutex-private.hh @@ -39,7 +39,12 @@ /* We need external help for these */ -#if 0 +#if defined(hb_mutex_impl_init) \ + && defined(hb_mutex_impl_lock) \ + && defined(hb_mutex_impl_unlock) \ + && defined(hb_mutex_impl_finish) + +/* Defined externally, i.e. in config.h */ #elif !defined(HB_NO_MT) && (defined(_WIN32) || defined(__CYGWIN__))