From 394f016bddf6ad783b3b031c97e93cab16715fa2 Mon Sep 17 00:00:00 2001 From: Hongze Zhang Date: Mon, 17 Feb 2025 21:47:37 +0800 Subject: [PATCH 1/5] Fix gflags issue --- CMake/resolve_dependency_modules/gflags.cmake | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/CMake/resolve_dependency_modules/gflags.cmake b/CMake/resolve_dependency_modules/gflags.cmake index 0a88ea5abb03..828ced48edb2 100644 --- a/CMake/resolve_dependency_modules/gflags.cmake +++ b/CMake/resolve_dependency_modules/gflags.cmake @@ -43,7 +43,18 @@ set(GFLAGS_IS_SUBPROJECT ON) # Workaround for https://github.com/gflags/gflags/issues/277 unset(BUILD_SHARED_LIBS) +if (DEFINED CACHE{BUILD_SHARED_LIBS}) + set(CACHED_BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS}) + unset(BUILD_SHARED_LIBS CACHE) +endif () + FetchContent_MakeAvailable(gflags) + +# Workaround for https://github.com/gflags/gflags/issues/277 +if (DEFINED CACHED_BUILD_SHARED_LIBS AND NOT DEFINED CACHE{BUILD_SHARED_LIBS}) + set(BUILD_SHARED_LIBS ${CACHED_BUILD_SHARED_LIBS} CACHE BOOL) +endif () + # This causes find_package(gflags) in other dependencies to search in the build # directory and prevents the system gflags from being found when they don't use # the target directly (like folly). From fdc331ebb558a264845ff0f7371db9e83cbdaf71 Mon Sep 17 00:00:00 2001 From: Hongze Zhang Date: Mon, 17 Feb 2025 21:51:17 +0800 Subject: [PATCH 2/5] Fix gflags issue --- CMake/resolve_dependency_modules/gflags.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMake/resolve_dependency_modules/gflags.cmake b/CMake/resolve_dependency_modules/gflags.cmake index 828ced48edb2..f83cee221aa5 100644 --- a/CMake/resolve_dependency_modules/gflags.cmake +++ b/CMake/resolve_dependency_modules/gflags.cmake @@ -52,7 +52,7 @@ FetchContent_MakeAvailable(gflags) # Workaround for https://github.com/gflags/gflags/issues/277 if (DEFINED CACHED_BUILD_SHARED_LIBS AND NOT DEFINED CACHE{BUILD_SHARED_LIBS}) - set(BUILD_SHARED_LIBS ${CACHED_BUILD_SHARED_LIBS} CACHE BOOL) + set(BUILD_SHARED_LIBS ${CACHED_BUILD_SHARED_LIBS} CACHE BOOL "Restored after setting up gflags") endif () # This causes find_package(gflags) in other dependencies to search in the build From a2cde876395f8655765c3c0d2e50afe90d223d8f Mon Sep 17 00:00:00 2001 From: Hongze Zhang Date: Mon, 17 Feb 2025 22:19:13 +0800 Subject: [PATCH 3/5] fixup --- CMake/resolve_dependency_modules/gflags.cmake | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/CMake/resolve_dependency_modules/gflags.cmake b/CMake/resolve_dependency_modules/gflags.cmake index f83cee221aa5..28ef389dd278 100644 --- a/CMake/resolve_dependency_modules/gflags.cmake +++ b/CMake/resolve_dependency_modules/gflags.cmake @@ -43,17 +43,19 @@ set(GFLAGS_IS_SUBPROJECT ON) # Workaround for https://github.com/gflags/gflags/issues/277 unset(BUILD_SHARED_LIBS) -if (DEFINED CACHE{BUILD_SHARED_LIBS}) - set(CACHED_BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS}) - unset(BUILD_SHARED_LIBS CACHE) -endif () +if(DEFINED CACHE{BUILD_SHARED_LIBS}) + set(CACHED_BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS}) + unset(BUILD_SHARED_LIBS CACHE) +endif() FetchContent_MakeAvailable(gflags) # Workaround for https://github.com/gflags/gflags/issues/277 -if (DEFINED CACHED_BUILD_SHARED_LIBS AND NOT DEFINED CACHE{BUILD_SHARED_LIBS}) - set(BUILD_SHARED_LIBS ${CACHED_BUILD_SHARED_LIBS} CACHE BOOL "Restored after setting up gflags") -endif () +if(DEFINED CACHED_BUILD_SHARED_LIBS AND NOT DEFINED CACHE{BUILD_SHARED_LIBS}) + set(BUILD_SHARED_LIBS + ${CACHED_BUILD_SHARED_LIBS} + CACHE BOOL "Restored after setting up gflags") +endif() # This causes find_package(gflags) in other dependencies to search in the build # directory and prevents the system gflags from being found when they don't use From 6d4691b1eaaa84f6e1f54b1538ac34ad6a3f3fd6 Mon Sep 17 00:00:00 2001 From: Hongze Zhang Date: Sun, 23 Feb 2025 21:56:05 +0800 Subject: [PATCH 4/5] fixup --- CMake/resolve_dependency_modules/gflags.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMake/resolve_dependency_modules/gflags.cmake b/CMake/resolve_dependency_modules/gflags.cmake index 28ef389dd278..98732c0be736 100644 --- a/CMake/resolve_dependency_modules/gflags.cmake +++ b/CMake/resolve_dependency_modules/gflags.cmake @@ -51,7 +51,7 @@ endif() FetchContent_MakeAvailable(gflags) # Workaround for https://github.com/gflags/gflags/issues/277 -if(DEFINED CACHED_BUILD_SHARED_LIBS AND NOT DEFINED CACHE{BUILD_SHARED_LIBS}) +if(DEFINED CACHED_BUILD_SHARED_LIBS) set(BUILD_SHARED_LIBS ${CACHED_BUILD_SHARED_LIBS} CACHE BOOL "Restored after setting up gflags") From 4b82b2fa8d0289e2dacf4a980a675a818d1d273f Mon Sep 17 00:00:00 2001 From: Hongze Zhang Date: Mon, 24 Feb 2025 18:23:34 +0800 Subject: [PATCH 5/5] fixup --- CMake/resolve_dependency_modules/gflags.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMake/resolve_dependency_modules/gflags.cmake b/CMake/resolve_dependency_modules/gflags.cmake index 98732c0be736..7c7aa2854cba 100644 --- a/CMake/resolve_dependency_modules/gflags.cmake +++ b/CMake/resolve_dependency_modules/gflags.cmake @@ -54,7 +54,7 @@ FetchContent_MakeAvailable(gflags) if(DEFINED CACHED_BUILD_SHARED_LIBS) set(BUILD_SHARED_LIBS ${CACHED_BUILD_SHARED_LIBS} - CACHE BOOL "Restored after setting up gflags") + CACHE BOOL "Restored after setting up gflags" FORCE) endif() # This causes find_package(gflags) in other dependencies to search in the build