aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPiotr Kubaj <pkubaj@FreeBSD.org>2021-05-20 13:41:42 +0000
committerPiotr Kubaj <pkubaj@FreeBSD.org>2021-05-20 13:41:42 +0000
commitdb917ae45eeedce0b9a508f7875fd85905b1df9f (patch)
tree2413f4611344ff0dfa3e77416d164acb22f2b95e
parent8ad46e2fad4a0f38a7a25105cd63bcf96740b20f (diff)
downloadports-db917ae45eeedce0b9a508f7875fd85905b1df9f.tar.gz
ports-db917ae45eeedce0b9a508f7875fd85905b1df9f.zip
databases/leofs: fix build on powerpc*
Same fix as the one for databases/p5-Tie-LevelDB.
-rw-r--r--databases/leofs/Makefile7
-rw-r--r--databases/leofs/files/patch-deps_leveldb_port_atomic__pointer.h11
2 files changed, 17 insertions, 1 deletions
diff --git a/databases/leofs/Makefile b/databases/leofs/Makefile
index 8b0c7479660f..46f358e64f87 100644
--- a/databases/leofs/Makefile
+++ b/databases/leofs/Makefile
@@ -12,7 +12,7 @@ COMMENT= Highly scalable, fault-tolerant distributed file system
LICENSE= APACHE20
BROKEN_aarch64= Does not compile: fatal error: lzo/lzo1x.h file not found
-NOT_FOR_ARCHS= powerpc64 powerpc64le riscv64 sparc64
+NOT_FOR_ARCHS= riscv64 sparc64
NOT_FOR_ARCHS_REASON= does not build: error Please implement AtomicPointer for this platform
BUILD_DEPENDS= ${LOCALBASE}/lib/erlang21/bin/erlc:lang/erlang-runtime21 \
@@ -107,6 +107,11 @@ LEOFS_DEPS= \
GH_TUPLE= ${LEOFS_DEPS:C,(.*)/(.*)=(.*):(.*),\1:\2:\3:\4/deps/\4,}
+CFLAGS_powerpc= -DLEVELDB_CSTDATOMIC_PRESENT
+CFLAGS_powerpc64= -DLEVELDB_CSTDATOMIC_PRESENT
+CFLAGS_powerpc64le= -DLEVELDB_CSTDATOMIC_PRESENT
+CFLAGS_powerpcspe= -DLEVELDB_CSTDATOMIC_PRESENT
+
post-extract:
.for dep in ${LEOFS_DEPS}
.for tagname in ${dep:C,^[^=]+=([^\?]+)\?.*$,\1,}
diff --git a/databases/leofs/files/patch-deps_leveldb_port_atomic__pointer.h b/databases/leofs/files/patch-deps_leveldb_port_atomic__pointer.h
new file mode 100644
index 000000000000..4bf4ce34ce1a
--- /dev/null
+++ b/databases/leofs/files/patch-deps_leveldb_port_atomic__pointer.h
@@ -0,0 +1,11 @@
+--- deps/leveldb/port/atomic_pointer.h.orig 2021-05-20 13:33:22 UTC
++++ deps/leveldb/port/atomic_pointer.h
+@@ -116,7 +116,7 @@ class AtomicPointer {
+
+ // AtomicPointer based on <cstdatomic>
+ #elif defined(LEVELDB_CSTDATOMIC_PRESENT)
+-#include <cstdatomic>
++#include <atomic>
+
+ class AtomicPointer {
+ private: