From 22bc8cef36a1eb49b4e1f83880489b052716777e Mon Sep 17 00:00:00 2001 From: Corentin Le Molgat Date: Thu, 16 Oct 2025 09:20:55 +0200 Subject: [PATCH] dependencies: bump abseil-cpp to 20250814.1 --- Dependencies.txt | 2 +- MODULE.bazel | 14 ++- cmake/dependencies/CMakeLists.txt | 4 +- cmake/host.CMakeLists.txt | 4 +- patches/abseil-cpp-20250814.0.patch | 151 ---------------------------- patches/abseil-cpp-20250814.1.patch | 46 +++++++++ patches/fuzztest-2025-08-05.patch | 2 +- 7 files changed, 58 insertions(+), 165 deletions(-) delete mode 100644 patches/abseil-cpp-20250814.0.patch create mode 100644 patches/abseil-cpp-20250814.1.patch diff --git a/Dependencies.txt b/Dependencies.txt index 082f2c8354..eca87b0516 100644 --- a/Dependencies.txt +++ b/Dependencies.txt @@ -1,5 +1,5 @@ ZLIB=1.3.1 -abseil-cpp=20250814.0 +abseil-cpp=20250814.1 Protobuf=v32.0 Eigen=3.4.0 Re2=2024-07-02 diff --git a/MODULE.bazel b/MODULE.bazel index 5f37bfb477..37d12cf5f8 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -25,39 +25,37 @@ module( # see https://registry.bazel.build/ # Bazel dependencies -# keep sorted go/buildifier#keep-sorted bazel_dep(name = "bazel_skylib", version = "1.8.1") +bazel_dep(name = "contrib_rules_jvm", version = "0.28.0") bazel_dep(name = "platforms", version = "1.0.0") bazel_dep(name = "rules_cc", version = "0.2.0") bazel_dep(name = "rules_go", version = "0.53.0") bazel_dep(name = "rules_java", version = "8.14.0") bazel_dep(name = "rules_jvm_external", version = "6.7") -bazel_dep(name = "contrib_rules_jvm", version = "0.28.0") bazel_dep(name = "rules_license", version = "1.0.0") bazel_dep(name = "rules_proto", version = "7.1.0") -bazel_dep(name = "rules_python", version = "1.5.1") +bazel_dep(name = "rules_python", version = "1.6.3") +bazel_dep(name = "rules_shell", version = "0.6.1") # OR-Tools C++ dependencies -# keep sorted go/buildifier#keep-sorted -bazel_dep(name = "abseil-cpp", version = "20250814.0") +bazel_dep(name = "abseil-cpp", version = "20250814.1") bazel_dep(name = "bzip2", version = "1.0.8.bcr.2") bazel_dep(name = "eigen", version = "3.4.0.bcr.3") bazel_dep(name = "fuzztest", version = "20250805.0") bazel_dep(name = "glpk", version = "5.0.bcr.4") bazel_dep(name = "google_benchmark", version = "1.9.2") bazel_dep(name = "googletest", version = "1.17.0") -bazel_dep(name = "protobuf-matchers", version = "0.1.1") bazel_dep(name = "highs", version = "1.11.0") +bazel_dep(name = "protobuf-matchers", version = "0.1.1") bazel_dep(name = "protobuf", version = "32.0") bazel_dep(name = "re2", version = "2025-08-12") bazel_dep(name = "scip", version = "9.2.3") bazel_dep(name = "zlib", version = "1.3.1.bcr.7") # OR-Tools wrappers dependencies -# keep sorted go/buildifier#keep-sorted bazel_dep(name = "gazelle", version = "0.43.0") -bazel_dep(name = "pybind11_bazel", version = "2.13.6") bazel_dep(name = "pybind11_abseil", version = "202402.0") +bazel_dep(name = "pybind11_bazel", version = "2.13.6") bazel_dep(name = "pybind11_protobuf", version = "0.0.0-20240524-1d7a729") bazel_dep(name = "swig", version = "4.3.0") diff --git a/cmake/dependencies/CMakeLists.txt b/cmake/dependencies/CMakeLists.txt index e40906beb7..9dfc48c4b5 100644 --- a/cmake/dependencies/CMakeLists.txt +++ b/cmake/dependencies/CMakeLists.txt @@ -120,11 +120,11 @@ if(BUILD_absl) FetchContent_Declare( absl GIT_REPOSITORY "https://github.com/abseil/abseil-cpp.git" - GIT_TAG "20250814.0" + GIT_TAG "20250814.1" GIT_SHALLOW TRUE UPDATE_COMMAND git reset --hard PATCH_COMMAND git apply --ignore-whitespace - "${CMAKE_CURRENT_LIST_DIR}/../../patches/abseil-cpp-20250814.0.patch" + "${CMAKE_CURRENT_LIST_DIR}/../../patches/abseil-cpp-20250814.1.patch" OVERRIDE_FIND_PACKAGE ) FetchContent_MakeAvailable(absl) diff --git a/cmake/host.CMakeLists.txt b/cmake/host.CMakeLists.txt index 21b114bcfb..693f9d8a55 100644 --- a/cmake/host.CMakeLists.txt +++ b/cmake/host.CMakeLists.txt @@ -106,10 +106,10 @@ set(ABSL_BUILD_TESTING OFF) FetchContent_Declare( absl GIT_REPOSITORY "https://github.com/abseil/abseil-cpp.git" - GIT_TAG "20250814.0" + GIT_TAG "20250814.1" GIT_SHALLOW TRUE PATCH_COMMAND git apply --ignore-whitespace - "${CMAKE_CURRENT_LIST_DIR}/@PATCHES_PATH@/abseil-cpp-20250814.0.patch" + "${CMAKE_CURRENT_LIST_DIR}/@PATCHES_PATH@/abseil-cpp-20250814.1.patch" ) FetchContent_MakeAvailable(absl) list(POP_BACK CMAKE_MESSAGE_INDENT) diff --git a/patches/abseil-cpp-20250814.0.patch b/patches/abseil-cpp-20250814.0.patch deleted file mode 100644 index 15b025d8f0..0000000000 --- a/patches/abseil-cpp-20250814.0.patch +++ /dev/null @@ -1,151 +0,0 @@ -diff --git a/CMake/AbseilHelpers.cmake b/CMake/AbseilHelpers.cmake -index 624a3c7..8d0493d 100644 ---- a/CMake/AbseilHelpers.cmake -+++ b/CMake/AbseilHelpers.cmake -@@ -345,7 +345,7 @@ Cflags: -I\${includedir}${PC_CFLAGS}\n") - endif() - endif() - -- if(ABSL_ENABLE_INSTALL) -+ if(ABSL_ENABLE_INSTALL AND NOT ABSL_CC_LIB_TESTONLY) - install(TARGETS ${_NAME} EXPORT ${PROJECT_NAME}Targets - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 1e7c856..a3c3dae 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -145,7 +145,7 @@ if((BUILD_TESTING AND ABSL_BUILD_TESTING) OR ABSL_BUILD_TEST_HELPERS) - add_library(GTest::gmock ALIAS gmock) - add_library(GTest::gmock_main ALIAS gmock_main) - else() -- message(FATAL_ERROR "ABSL_USE_EXTERNAL_GOOGLETEST is ON and ABSL_FIND_GOOGLETEST is OFF, which means that the top-level project must build the Google Test project. However, the target gtest was not found.") -+ message(WARNING "ABSL_USE_EXTERNAL_GOOGLETEST is ON and ABSL_FIND_GOOGLETEST is OFF, which means that the top-level project must build the Google Test project. However, the target gtest was not found.") - endif() - endif() - else() -diff --git a/absl/flags/declare.h b/absl/flags/declare.h -index 8d2a856..a154046 100644 ---- a/absl/flags/declare.h -+++ b/absl/flags/declare.h -@@ -59,10 +59,15 @@ ABSL_NAMESPACE_END - - // Internal implementation of ABSL_DECLARE_FLAG to allow macro expansion of its - // arguments. Clients must use ABSL_DECLARE_FLAG instead. -+#if defined(_MSC_VER) -+#define ABSL_DECLARE_FLAG_INTERNAL(type, name) \ -+ extern absl::Flag FLAGS_##name -+#else - #define ABSL_DECLARE_FLAG_INTERNAL(type, name) \ - extern absl::Flag FLAGS_##name; \ - namespace absl /* block flags in namespaces */ {} \ - /* second redeclaration is to allow applying attributes */ \ - extern absl::Flag FLAGS_##name -+#endif // _MSC_VER - - #endif // ABSL_FLAGS_DECLARE_H_ -diff --git a/absl/log/CMakeLists.txt b/absl/log/CMakeLists.txt -index eb19bec..13b2d24 100644 ---- a/absl/log/CMakeLists.txt -+++ b/absl/log/CMakeLists.txt -@@ -47,6 +47,7 @@ absl_cc_library( - absl::base - absl::config - absl::core_headers -+ absl::has_ostream_operator - absl::leak_check - absl::log_internal_nullguard - absl::log_internal_nullstream -diff --git a/absl/log/check_test_impl.inc b/absl/log/check_test_impl.inc -index 5a7caf4..7bcedd4 100644 ---- a/absl/log/check_test_impl.inc -+++ b/absl/log/check_test_impl.inc -@@ -13,6 +13,8 @@ - // See the License for the specific language governing permissions and - // limitations under the License. - -+// SKIP_ABSL_INLINE_NAMESPACE_CHECK -+ - #ifndef ABSL_LOG_CHECK_TEST_IMPL_H_ - #define ABSL_LOG_CHECK_TEST_IMPL_H_ - -@@ -241,6 +243,18 @@ TEST(CHECKTest, TestBinaryChecksWithPrimitives) { - ABSL_TEST_CHECK_LT(1, 2); - } - -+TEST(CHECKTest, TestBinaryChecksWithStringComparison) { -+ const std::string a = "a"; -+ ABSL_TEST_CHECK_EQ(a, "a"); -+ ABSL_TEST_CHECK_NE(a, "b"); -+ ABSL_TEST_CHECK_GE(a, a); -+ ABSL_TEST_CHECK_GE("b", a); -+ ABSL_TEST_CHECK_LE(a, "a"); -+ ABSL_TEST_CHECK_LE(a, "b"); -+ ABSL_TEST_CHECK_GT("b", a); -+ ABSL_TEST_CHECK_LT(a, "b"); -+} -+ - // For testing using CHECK*() on anonymous enums. - enum { CASE_A, CASE_B }; - -diff --git a/absl/log/internal/BUILD.bazel b/absl/log/internal/BUILD.bazel -index 1ba9d76..005861f 100644 ---- a/absl/log/internal/BUILD.bazel -+++ b/absl/log/internal/BUILD.bazel -@@ -82,6 +82,7 @@ cc_library( - "//absl/base:nullability", - "//absl/debugging:leak_check", - "//absl/strings", -+ "//absl/strings:has_ostream_operator", - ], - ) - -diff --git a/absl/log/internal/check_op.h b/absl/log/internal/check_op.h -index 4554475..c607864 100644 ---- a/absl/log/internal/check_op.h -+++ b/absl/log/internal/check_op.h -@@ -40,6 +40,7 @@ - #include "absl/log/internal/nullstream.h" - #include "absl/log/internal/strip.h" - #include "absl/strings/has_absl_stringify.h" -+#include "absl/strings/has_ostream_operator.h" - #include "absl/strings/string_view.h" - - // `ABSL_LOG_INTERNAL_STRIP_STRING_LITERAL` wraps string literals that -@@ -357,21 +358,12 @@ std::enable_if_t::value, - StringifyToStreamWrapper> - Detect(...); // Ellipsis has lowest preference when int passed. - --// is_streamable is true for types that have an output stream operator<<. --template --struct is_streamable : std::false_type {}; -- --template --struct is_streamable() -- << std::declval())>> -- : std::true_type {}; -- - // This overload triggers when T is neither possible to print nor an enum. - template - std::enable_if_t, std::is_enum, - std::is_pointer, std::is_same, -- is_streamable, HasAbslStringify>>, -+ HasOstreamOperator, HasAbslStringify>>, - UnprintableWrapper> - Detect(...); - -@@ -382,9 +374,10 @@ Detect(...); - // one backed by another integer is converted to (u)int64_t. - template - std::enable_if_t< -- std::conjunction_v< -- std::is_enum, std::negation>, -- std::negation>, std::negation>>, -+ std::conjunction_v, -+ std::negation>, -+ std::negation>, -+ std::negation>>, - std::conditional_t< - std::is_same_v, bool> || - std::is_same_v, char> || diff --git a/patches/abseil-cpp-20250814.1.patch b/patches/abseil-cpp-20250814.1.patch new file mode 100644 index 0000000000..bcef641cfb --- /dev/null +++ b/patches/abseil-cpp-20250814.1.patch @@ -0,0 +1,46 @@ +diff --git a/CMake/AbseilHelpers.cmake b/CMake/AbseilHelpers.cmake +index 624a3c7..8d0493d 100644 +--- a/CMake/AbseilHelpers.cmake ++++ b/CMake/AbseilHelpers.cmake +@@ -345,7 +345,7 @@ Cflags: -I\${includedir}${PC_CFLAGS}\n") + endif() + endif() + +- if(ABSL_ENABLE_INSTALL) ++ if(ABSL_ENABLE_INSTALL AND NOT ABSL_CC_LIB_TESTONLY) + install(TARGETS ${_NAME} EXPORT ${PROJECT_NAME}Targets + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 1e7c856..a3c3dae 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -145,7 +145,7 @@ if((BUILD_TESTING AND ABSL_BUILD_TESTING) OR ABSL_BUILD_TEST_HELPERS) + add_library(GTest::gmock ALIAS gmock) + add_library(GTest::gmock_main ALIAS gmock_main) + else() +- message(FATAL_ERROR "ABSL_USE_EXTERNAL_GOOGLETEST is ON and ABSL_FIND_GOOGLETEST is OFF, which means that the top-level project must build the Google Test project. However, the target gtest was not found.") ++ message(WARNING "ABSL_USE_EXTERNAL_GOOGLETEST is ON and ABSL_FIND_GOOGLETEST is OFF, which means that the top-level project must build the Google Test project. However, the target gtest was not found.") + endif() + endif() + else() +diff --git a/absl/flags/declare.h b/absl/flags/declare.h +index 8d2a856..a154046 100644 +--- a/absl/flags/declare.h ++++ b/absl/flags/declare.h +@@ -59,10 +59,15 @@ ABSL_NAMESPACE_END + + // Internal implementation of ABSL_DECLARE_FLAG to allow macro expansion of its + // arguments. Clients must use ABSL_DECLARE_FLAG instead. ++#if defined(_MSC_VER) ++#define ABSL_DECLARE_FLAG_INTERNAL(type, name) \ ++ extern absl::Flag FLAGS_##name ++#else + #define ABSL_DECLARE_FLAG_INTERNAL(type, name) \ + extern absl::Flag FLAGS_##name; \ + namespace absl /* block flags in namespaces */ {} \ + /* second redeclaration is to allow applying attributes */ \ + extern absl::Flag FLAGS_##name ++#endif // _MSC_VER + + #endif // ABSL_FLAGS_DECLARE_H_ diff --git a/patches/fuzztest-2025-08-05.patch b/patches/fuzztest-2025-08-05.patch index d46f92ff34..7551b5fb89 100644 --- a/patches/fuzztest-2025-08-05.patch +++ b/patches/fuzztest-2025-08-05.patch @@ -20,7 +20,7 @@ index d8565c0..24b7f52 100644 set(absl_URL https://github.com/abseil/abseil-cpp.git) -set(absl_TAG d04b964d82ed5146f7e5e34701a5ba69f9514c9a) -+set(absl_TAG 20250814.0) ++set(absl_TAG 20250814.1) set(re2_URL https://github.com/google/re2.git) set(re2_TAG 2024-07-02)