aboutsummaryrefslogtreecommitdiff
path: root/databases/lmdb
diff options
context:
space:
mode:
authorJan Beich <jbeich@FreeBSD.org>2018-08-28 00:01:28 +0000
committerJan Beich <jbeich@FreeBSD.org>2018-08-28 00:01:28 +0000
commit855a5b4b58edff0571840c2bc261637ac531265d (patch)
tree03c040aa899b47e0d3043d67ef71a723e0d183ef /databases/lmdb
parent80fbe46e498514206ede571c60b6a268bf45d71a (diff)
downloadports-855a5b4b58edff0571840c2bc261637ac531265d.tar.gz
ports-855a5b4b58edff0571840c2bc261637ac531265d.zip
databases/lmdb: switch to robust mutexes on FreeBSD >= 11
PR: 230564 Approved by: delphij (maintainer)
Notes
Notes: svn path=/head/; revision=478269
Diffstat (limited to 'databases/lmdb')
-rw-r--r--databases/lmdb/Makefile1
-rw-r--r--databases/lmdb/files/patch-mdb.c24
2 files changed, 19 insertions, 6 deletions
diff --git a/databases/lmdb/Makefile b/databases/lmdb/Makefile
index 7942ae4c8bbd..1b74c21f3bec 100644
--- a/databases/lmdb/Makefile
+++ b/databases/lmdb/Makefile
@@ -4,6 +4,7 @@
PORTNAME= lmdb
PORTVERSION= 0.9.22
DISTVERSIONPREFIX= ${PORTNAME:tu}_
+PORTREVISION= 1
PORTEPOCH= 1
CATEGORIES= databases
diff --git a/databases/lmdb/files/patch-mdb.c b/databases/lmdb/files/patch-mdb.c
index 5194cbbeb91a..f0d9335e26b0 100644
--- a/databases/lmdb/files/patch-mdb.c
+++ b/databases/lmdb/files/patch-mdb.c
@@ -1,11 +1,23 @@
---- mdb.c.orig 2017-06-01 16:51:10 UTC
+- NetBSD has fdatasync(2), see https://github.com/NetBSD/src/commit/e963c41c6fb9
+- OpenBSD has fdatasync(3), see https://github.com/openbsd/src/commit/aa96fc3dc04f
+- FreeBSD 11.0 has robust mutexes (see base r300043) and 11.1 has fdatasync(2) (see base r304977)
+
+--- mdb.c.orig 2018-03-22 15:23:05 UTC
+++ mdb.c
-@@ -125,6 +125,8 @@ typedef SSIZE_T ssize_t;
- # define MDB_FDATASYNC fsync
- #elif defined(ANDROID)
+@@ -124,11 +124,12 @@ typedef SSIZE_T ssize_t;
+ #include <resolv.h> /* defines BYTE_ORDER on HPUX and Solaris */
+ #endif
+
+-#if defined(__APPLE__) || defined (BSD) || defined(__FreeBSD_kernel__)
+-# define MDB_USE_POSIX_SEM 1
++#if defined(__APPLE__) || defined(ANDROID) || defined(__DragonFly__) || (defined(__FreeBSD__) && __FreeBSD__ < 11)
# define MDB_FDATASYNC fsync
-+#elif defined(__FreeBSD_version) && __FreeBSD_version < 1101000
-+# define MDB_FDATASYNC fsync
+-#elif defined(ANDROID)
+-# define MDB_FDATASYNC fsync
++#endif
++
++#if defined(__APPLE__) || defined(__DragonFly__) || defined(__NetBSD__) || defined(__OpenBSD__) || (defined(__FreeBSD__) && __FreeBSD__ < 11)
++# define MDB_USE_POSIX_SEM 1
#endif
#ifndef _WIN32