commit:     20580b5f864c79f89e85244d6312887cbcd9442b
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue May 23 13:24:58 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue May 23 13:25:05 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=20580b5f

dev-db/mongodb: fix build w/ arm64+gcc-12

Closes: https://bugs.gentoo.org/855128
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-db/mongodb/files/mongodb-5.0.16-arm64-assert.patch | 16 ++++++++++++++++
 dev-db/mongodb/mongodb-5.0.16-r1.ebuild                |  1 +
 2 files changed, 17 insertions(+)

diff --git a/dev-db/mongodb/files/mongodb-5.0.16-arm64-assert.patch 
b/dev-db/mongodb/files/mongodb-5.0.16-arm64-assert.patch
new file mode 100644
index 000000000000..6a6b9f14afe0
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-5.0.16-arm64-assert.patch
@@ -0,0 +1,16 @@
+The upstream patch for this is far too big to backport, so for now, just drop
+the assert given it's somewhat harmless compared to not being able to build at 
all.
+
+https://jira.mongodb.org/browse/SERVER-65664
+https://bugs.gentoo.org/855128
+--- a/src/mongo/db/stats/counters.h
++++ b/src/mongo/db/stats/counters.h
+@@ -221,8 +221,6 @@ private:
+         AtomicWord<long long> requests{0};
+     };
+     CacheAligned<Together> _together{};
+-    static_assert(sizeof(decltype(_together)) <= 
stdx::hardware_constructive_interference_size,
+-                  "cache line spill");
+ 
+     CacheAligned<AtomicWord<long long>> _logicalBytesOut{0};
+ 

diff --git a/dev-db/mongodb/mongodb-5.0.16-r1.ebuild 
b/dev-db/mongodb/mongodb-5.0.16-r1.ebuild
index a0fc28ebe45c..95e24df12a4f 100644
--- a/dev-db/mongodb/mongodb-5.0.16-r1.ebuild
+++ b/dev-db/mongodb/mongodb-5.0.16-r1.ebuild
@@ -72,6 +72,7 @@ PATCHES=(
        "${FILESDIR}/${PN}-4.4.10-boost-1.81.patch"
        "${FILESDIR}/${PN}-5.0.5-boost-1.81-extra.patch"
        "${FILESDIR}/${PN}-4.4.8-gcc-13.patch"
+       "${FILESDIR}/${PN}-5.0.16-arm64-assert.patch"
 )
 
 S="${WORKDIR}/${MY_P}"

Reply via email to