On Tue 01/09/2026 18:20, Christian Weisgerber wrote:
> After the libc++ update, there are now a number of bulk build
> failures on amd64:
>
> databases/mongodb/44 C++
> devel/libggml timeout (60 min)
> games/cataclysm-dda,no_x11 strtoll_l
> games/flightgear/base strtod_l
> games/keeperrl C++
> graphics/stable-diffusion.cpp,vulkan timeout (60 min)
> net/barrier gtest C++ version mismatch
>
> For stable-diffusion, I was around to take a look before it was
> killed, and there was a c++ compiler job that had accumulated nearly
> an hour of CPU time.
>
> Build logs:
> http://build-failures.rhaalovely.net/amd64/2026-08-31/
>
> --
> Christian "naddy" Weisgerber [email protected]
>
Diff below unbreaks building of databases/mongodb/44.
OK?
diff --git Makefile Makefile
index a7e1b2fea04..1f65e4d94af 100644
--- Makefile
+++ Makefile
@@ -4,7 +4,7 @@ PORTROACH = limit:^4\.4\.
ONLY_FOR_ARCHS = amd64
V = 4.4.30
-REVISION = 3
+REVISION = 4
WANTLIB += ${COMPILER_LIBCXX}
WANTLIB += boost_filesystem-mt boost_iostreams-mt boost_log-mt
diff --git patches/patch-src_mongo_db_auth_security_key_test_cpp
patches/patch-src_mongo_db_auth_security_key_test_cpp
new file mode 100644
index 00000000000..a9520d5d50d
--- /dev/null
+++ patches/patch-src_mongo_db_auth_security_key_test_cpp
@@ -0,0 +1,14 @@
+Explicitly include boost/filesystem/fstream.hpp to fix missing template
+declaration for boost::filesystem::ofstream.
+
+Index: src/mongo/db/auth/security_key_test.cpp
+--- src/mongo/db/auth/security_key_test.cpp.orig
++++ src/mongo/db/auth/security_key_test.cpp
+@@ -30,6 +30,7 @@
+ #include "mongo/platform/basic.h"
+
+ #include <boost/filesystem.hpp>
++#include <boost/filesystem/fstream.hpp>
+
+ #include "mongo/base/string_data.h"
+ #include "mongo/db/auth/authorization_manager.h"
diff --git
patches/patch-src_mongo_db_storage_wiredtiger_wiredtiger_kv_engine_test_cpp
patches/patch-src_mongo_db_storage_wiredtiger_wiredtiger_kv_engine_test_cpp
new file mode 100644
index 00000000000..c62170dd735
--- /dev/null
+++ patches/patch-src_mongo_db_storage_wiredtiger_wiredtiger_kv_engine_test_cpp
@@ -0,0 +1,14 @@
+Explicitly include boost/filesystem/fstream.hpp to fix missing template
+declaration for boost::filesystem::ofstream.
+
+Index: src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine_test.cpp
+--- src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine_test.cpp.orig
++++ src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine_test.cpp
+@@ -35,6 +35,7 @@
+
+ #include <boost/filesystem.hpp>
+ #include <boost/filesystem/path.hpp>
++#include <boost/filesystem/fstream.hpp>
+ #include <memory>
+
+ #include "mongo/base/init.h"
diff --git patches/patch-src_third_party_s2_s2polyline_cc
patches/patch-src_third_party_s2_s2polyline_cc
new file mode 100644
index 00000000000..09e241d8f72
--- /dev/null
+++ patches/patch-src_third_party_s2_s2polyline_cc
@@ -0,0 +1,17 @@
+Provide strict weak ordering for SearchState to fix compilation errors.
+
+Index: src/third_party/s2/s2polyline.cc
+--- src/third_party/s2/s2polyline.cc.orig
++++ src/third_party/s2/s2polyline.cc
+@@ -470,6 +470,11 @@ struct SearchState {
+ int i;
+ int j;
+ bool i_in_progress;
++
++ bool operator<(const SearchState& other) const {
++ return std::tie(i, j, i_in_progress) <
++ std::tie(other.i, other.j, other.i_in_progress);
++ }
+ };
+ } // namespace
+