File 0010-Use-bundled-expected-gsl-lite-websocketpp.patch of Package rstudio

From 834b274627e6b2b9191ff8e8a84100517b42ffdf Mon Sep 17 00:00:00 2001
From: haem <mixosaurus+obs@pm.me>
Date: Fri, 12 Sep 2025 18:03:43 +0200
Subject: [PATCH 10/12] Use bundled expected, gsl-lite, websocketpp

---
 src/cpp/core/CMakeLists.txt |  4 ++--
 src/cpp/ext/CMakeLists.txt  | 16 +++++++++++++---
 2 files changed, 15 insertions(+), 5 deletions(-)

diff --git a/src/cpp/core/CMakeLists.txt b/src/cpp/core/CMakeLists.txt
index 563f4c38..0fa71d81 100644
--- a/src/cpp/core/CMakeLists.txt
+++ b/src/cpp/core/CMakeLists.txt
@@ -334,9 +334,9 @@ target_link_libraries(rstudio-core
    ${SOCI_LIBRARIES}
    ${CORE_SYSTEM_LIBRARIES}
    fmt::fmt
-   gsl::gsl-lite-v1
-   tl::expected
    yaml-cpp::yaml-cpp
+   gsl-lite
+   expected
 )
 
 if(WIN32)
diff --git a/src/cpp/ext/CMakeLists.txt b/src/cpp/ext/CMakeLists.txt
index bc4f84cf..4c6349cc 100644
--- a/src/cpp/ext/CMakeLists.txt
+++ b/src/cpp/ext/CMakeLists.txt
@@ -207,11 +207,17 @@ function(fetch)
       list(GET ARGV ${_INDEX1} _PREFIX)
 
       if(${_PREFIX}_FETCHED)
-         message(STATUS "Fetching dependency ${_NAME} ${${_PREFIX}_VERSION}")
-         FetchContent_MakeAvailable("${_NAME}")
-         message(STATUS "Fetching dependency ${_NAME} ${${_PREFIX}_VERSION} - success")
          set("${_PREFIX}_SOURCE_DIR" "${CMAKE_BINARY_DIR}/_deps/${_NAME}-src" CACHE INTERNAL "")
          set("${_PREFIX}_BINARY_DIR" "${CMAKE_BINARY_DIR}/_deps/${_NAME}-build" CACHE INTERNAL "")
+
+         if(NOT ${_PREFIX}_BUNDLED)
+            message(STATUS "Fetching dependency ${_NAME} ${${_PREFIX}_VERSION}")
+            FetchContent_MakeAvailable("${_NAME}")
+            message(STATUS "Fetching dependency ${_NAME} ${${_PREFIX}_VERSION} - success")
+         else()
+            add_subdirectory(${${_PREFIX}_SOURCE_DIR} ${${_PREFIX}_BINARY_DIR})
+            message(STATUS "Using bundled dependency ${_NAME} ${${_PREFIX}_VERSION} at ${${_PREFIX}_SOURCE_DIR}")
+         endif()
       endif()
 
    endwhile()
@@ -219,6 +225,10 @@ function(fetch)
 endfunction()
 
 
+set(EXPECTED_BUNDLED TRUE)
+set(GSL_LITE_BUNDLED TRUE)
+set(WEBSOCKETPP_BUNDLED TRUE)
+
 fetch(
    expected     EXPECTED
    fmt          FMT
-- 
2.51.0

openSUSE Build Service is sponsored by