git: 4df468324acd - main - databases/mongodb80: fix build with llvm19
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 14 Dec 2024 16:26:31 UTC
The branch main has been updated by ronald:
URL: https://cgit.FreeBSD.org/ports/commit/?id=4df468324acd2d51439b16ff8d626e77580f1b6c
commit 4df468324acd2d51439b16ff8d626e77580f1b6c
Author: Ronald Klop <ronald@FreeBSD.org>
AuthorDate: 2024-12-11 08:30:11 +0000
Commit: Ronald Klop <ronald@FreeBSD.org>
CommitDate: 2024-12-14 16:25:31 +0000
databases/mongodb80: fix build with llvm19
Build with clang from base.
Uses 2 public patches. Documentation is in the patches themselves.
---
databases/mongodb80/Makefile | 14 ++++++++------
databases/mongodb80/distinfo | 4 +++-
...atch-src_third__party_boost_boost_thread_future.hpp | 18 ++++++++++++++++++
3 files changed, 29 insertions(+), 7 deletions(-)
diff --git a/databases/mongodb80/Makefile b/databases/mongodb80/Makefile
index c249c4c9136a..78c5ebc57b3d 100644
--- a/databases/mongodb80/Makefile
+++ b/databases/mongodb80/Makefile
@@ -1,8 +1,13 @@
PORTNAME= mongodb
DISTVERSIONPREFIX= r
DISTVERSION= 8.0.4
+PORTREVISION= 1
CATEGORIES= databases net
+MASTER_SITES= https://hg.mozilla.org/mozilla-central/raw-rev/:patches
PKGNAMESUFFIX= ${DISTVERSION:R:S/.//}
+DISTFILES= 223087fdc29f18678f6174e9807b8780e439acf6:patches # https://bugzilla.mozilla.org/1894423
+EXTRACT_ONLY= ${GH_ACCOUNT}-${GH_PROJECT}-${DISTVERSIONPREFIX}${DISTVERSION}_GH0.tar.gz \
+ ${GH_ACCOUNT}-forks-spidermonkey-${MOZJS_TAG}_GH0.tar.gz
MAINTAINER= ronald@FreeBSD.org
COMMENT= MongoDB Community Edition (8.0.x Branch)
@@ -111,12 +116,6 @@ NOAVX_EXTRA_PATCHES= ${FILESDIR}/extrapatch-src_third__party_mozjs_SConscript \
SASL_LIB_DEPENDS= libsasl2.so:security/cyrus-sasl2
SASL_MAKE_ARGS= --use-sasl-client
-.include <bsd.port.options.mk>
-
-.if ${OPSYS} == FreeBSD && ${OSVERSION} >= 1500026 # llvm 19.1.2 import
-USES+= llvm:max=18,build
-.endif
-
.include <bsd.port.pre.mk>
ALL_TARGET= install-servers
@@ -135,6 +134,9 @@ MOZJS_ARCH= ppc64le
MOZJS_ARCH= ${ARCH}
.endif
+post-patch:
+ ${PATCH} -d ${WRKSRC}/src/third_party/mozjs/extract --quiet -p1 -V none < ${DISTDIR}/223087fdc29f18678f6174e9807b8780e439acf6
+
pre-configure:
# Verify we downloaded the proper mozjs git tag.
${SH} -c "test \"X`grep -E '^LIB_GIT_REVISION=' ${WRKSRC}/src/third_party/mozjs/get-sources.sh`\" = \"XLIB_GIT_REVISION=${MOZJS_TAG}\""
diff --git a/databases/mongodb80/distinfo b/databases/mongodb80/distinfo
index 673f662a8e79..60ac7f4b73cd 100644
--- a/databases/mongodb80/distinfo
+++ b/databases/mongodb80/distinfo
@@ -1,4 +1,6 @@
-TIMESTAMP = 1732871587
+TIMESTAMP = 1733047625
+SHA256 (223087fdc29f18678f6174e9807b8780e439acf6) = f234371584e2b2bc9953ae4fd145da19c99a6f04087f53d59616aecf29df039c
+SIZE (223087fdc29f18678f6174e9807b8780e439acf6) = 1597
SHA256 (mongodb-mongo-r8.0.4_GH0.tar.gz) = 1fa8bb002983580fd3668099ce218778a294d864db4d3721fffc6782bea6ba2c
SIZE (mongodb-mongo-r8.0.4_GH0.tar.gz) = 94649995
SHA256 (mongodb-forks-spidermonkey-bb6edb4fcd43607c87de81df8c58db11a663634a_GH0.tar.gz) = 8b237164cb3f492aa1658080b91bafb3c98fe72da11ffb65513e4bffe01553f9
diff --git a/databases/mongodb80/files/patch-src_third__party_boost_boost_thread_future.hpp b/databases/mongodb80/files/patch-src_third__party_boost_boost_thread_future.hpp
new file mode 100644
index 000000000000..cf4ad80ef93d
--- /dev/null
+++ b/databases/mongodb80/files/patch-src_third__party_boost_boost_thread_future.hpp
@@ -0,0 +1,18 @@
+https://github.com/boostorg/thread/issues/402
+
+In file included from src/third_party/boost/libs/thread/src/pthread/thread.cpp:19:
+src/third_party/boost/boost/thread/future.hpp:4672:19: error: no member named 'that' in 'run_it<FutureExecutorContinuationSharedState>'; did you mean 'that_'?
+ 4672 | that_=x.that;
+ | ^~~~
+
+--- src/third_party/boost/boost/thread/future.hpp.orig 2024-12-12 08:36:29 UTC
++++ src/third_party/boost/boost/thread/future.hpp
+@@ -4669,7 +4669,7 @@ namespace detail
+ }
+ run_it& operator=(BOOST_THREAD_RV_REF(run_it) x) BOOST_NOEXCEPT {
+ if (this != &x) {
+- that_=x.that;
++ that_=x.that_;
+ x.that_.reset();
+ }
+ return *this;