git: 7ba8ef48ce6c - 2026Q2 - databases/pecl-couchbase: fix build on armv7
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 21 Apr 2026 20:17:01 UTC
The branch 2026Q2 has been updated by fuz:
URL: https://cgit.FreeBSD.org/ports/commit/?id=7ba8ef48ce6ce4d7320b5a2c84b11a5d1e16da95
commit 7ba8ef48ce6ce4d7320b5a2c84b11a5d1e16da95
Author: Robert Clausecker <fuz@FreeBSD.org>
AuthorDate: 2026-04-20 19:34:47 +0000
Commit: Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2026-04-21 20:16:07 +0000
databases/pecl-couchbase: fix build on armv7
This port bundles an older version of snappy that does not build on
armv7 due to an issue that was fixed in the snappy port long ago.
Grab my old armv7 patch for archivers/snappy from the attic to fix
the build. Long term, the dependency should probably be unbundled.
See also: 9a0a2422622d5feee7d77ddc954540daff449a1d
Approved by: portmgr (build fix blanket)
MFH: 2026Q2
(cherry picked from commit 99f343f62620243a68d37717cbfbdaa9bc3ecf53)
---
databases/pecl-couchbase/Makefile | 2 ++
...se-cxx-client_third__party_snappy_snappy-internal.h | 18 ++++++++++++++++++
2 files changed, 20 insertions(+)
diff --git a/databases/pecl-couchbase/Makefile b/databases/pecl-couchbase/Makefile
index e221b67eb038..2ffe6a665cbc 100644
--- a/databases/pecl-couchbase/Makefile
+++ b/databases/pecl-couchbase/Makefile
@@ -1,5 +1,6 @@
PORTNAME= couchbase
PORTVERSION= 4.1.6
+PORTREVISION= 1
CATEGORIES= databases
MASTER_SITES= https://github.com/couchbase/couchbase-php-client/releases/download/${PORTVERSION}/
@@ -14,5 +15,6 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
USES= cmake:indirect compiler:c++17-lang php:build,pecl
CONFIGURE_ARGS= COUCHBASE_CMAKE_EXTRA="-DCOUCHBASE_CXX_CLIENT_EMBED_MOZILLA_CA_BUNDLE=OFF"
+NO_SHLIB_REQUIRES_GLOB= libcouchbase_php_wrapper.so
.include <bsd.port.mk>
diff --git a/databases/pecl-couchbase/files/patch-src_deps_couchbase-cxx-client_third__party_snappy_snappy-internal.h b/databases/pecl-couchbase/files/patch-src_deps_couchbase-cxx-client_third__party_snappy_snappy-internal.h
new file mode 100644
index 000000000000..ba50ae5bc6cd
--- /dev/null
+++ b/databases/pecl-couchbase/files/patch-src_deps_couchbase-cxx-client_third__party_snappy_snappy-internal.h
@@ -0,0 +1,18 @@
+--- src/deps/couchbase-cxx-client/third_party/snappy/snappy-internal.h.orig 2026-04-20 17:49:19 UTC
++++ src/deps/couchbase-cxx-client/third_party/snappy/snappy-internal.h
+@@ -102,6 +102,15 @@ inline void V128_StoreU(V128* dst, V128 val) {
+ vst1q_u8(reinterpret_cast<uint8_t*>(dst), val);
+ }
+
++#ifdef __arm__
++inline uint8x16_t vqtbl1q_u8(uint8x16_t table, uint8x16_t idx) {
++ uint8x8x2_t table2{vget_low_u8(table), vget_high_u8(table)};
++ uint8x8_t lo = vtbl2_u8(table2, vget_low_u8(idx));
++ uint8x8_t hi = vtbl2_u8(table2, vget_high_u8(idx));
++ return vcombine_u8(lo, hi);
++}
++#endif
++
+ inline V128 V128_Shuffle(V128 input, V128 shuffle_mask) {
+ assert(vminvq_u8(shuffle_mask) >= 0 && vmaxvq_u8(shuffle_mask) <= 15);
+ return vqtbl1q_u8(input, shuffle_mask);