From: Björn Ketelaars Subject: Unbreak databases/mongodb/44 (Re: amd64 bulk build failures 2026-08-31) To: Christian Weisgerber Cc: ports@openbsd.org Date: Fri, 4 Sep 2026 16:36:14 +0200 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 naddy@mips.inka.de > 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 ++#include + + #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 + #include ++#include + #include + + #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 +