From 2acf9e6bbf2cf225e92f80e5437376ac90cf6ffc Mon Sep 17 00:00:00 2001 From: Steven Perron Date: Fri, 12 Jun 2026 10:21:27 -0400 Subject: [PATCH] Fix Abseil MSVC runtime library selection Respect EFFCEE_ENABLE_SHARED_CRT when configuring Abseil, so that it uses the same MSVC runtime library as the parent project when forced. --- third_party/CMakeLists.txt | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/third_party/CMakeLists.txt b/third_party/CMakeLists.txt index f106463..0ac9720 100644 --- a/third_party/CMakeLists.txt +++ b/third_party/CMakeLists.txt @@ -51,10 +51,18 @@ if (NOT TARGET absl::base) set(ABSL_INTERNAL_AT_LEAST_CXX17 ON) set(ABSL_PROPAGATE_CXX_STD ON) set(ABSL_ENABLE_INSTALL ON) - if (BUILD_SHARED_LIBS) - set(ABSL_MSVC_STATIC_RUNTIME OFF) + if (DEFINED EFFCEE_ENABLE_SHARED_CRT) + if (EFFCEE_ENABLE_SHARED_CRT) + set(ABSL_MSVC_STATIC_RUNTIME OFF) + else() + set(ABSL_MSVC_STATIC_RUNTIME ON) + endif() else() - set(ABSL_MSVC_STATIC_RUNTIME ON) + if (BUILD_SHARED_LIBS) + set(ABSL_MSVC_STATIC_RUNTIME OFF) + else() + set(ABSL_MSVC_STATIC_RUNTIME ON) + endif() endif() add_subdirectory(${EFFCEE_ABSEIL_DIR} absl EXCLUDE_FROM_ALL) endif()