commit:     afb1ec34cf10f931617592db03d8d096e4b703e2
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Tue Mar  1 09:11:34 2022 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Mar  1 09:12:39 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=afb1ec34

media-sound/mumble: Apply forthcoming upstream solution for system_json

Bug: https://bugs.gentoo.org/834030
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 .../mumble/files/mumble-9999-system_json.patch     | 58 +++++++++++++++++++---
 media-sound/mumble/mumble-9999.ebuild              |  1 +
 2 files changed, 51 insertions(+), 8 deletions(-)

diff --git a/media-sound/mumble/files/mumble-9999-system_json.patch 
b/media-sound/mumble/files/mumble-9999-system_json.patch
index 2be7553d50ef..bb04dc0a01e0 100644
--- a/media-sound/mumble/files/mumble-9999-system_json.patch
+++ b/media-sound/mumble/files/mumble-9999-system_json.patch
@@ -1,18 +1,60 @@
+From a239ccf62369880a0b08faf01021e7961ec1cc5a Mon Sep 17 00:00:00 2001
+From: Robert Adam <d...@robert-adam.de>
+Date: Fri, 25 Feb 2022 18:37:51 +0100
+Subject: [PATCH] BUILD(client): Add option to use system JSON lib
+
+This commit introduces an option that toggles between using a bundled
+version of nlohmann_json (default) and looking for a version installed
+on the system instead.
+
+Fixes #5584
+---
+ docs/dev/build-instructions/cmake_options.md |  5 +++++
+ src/mumble/CMakeLists.txt                    | 11 ++++++++---
+ 2 files changed, 13 insertions(+), 3 deletions(-)
+
+diff --git a/docs/dev/build-instructions/cmake_options.md 
b/docs/dev/build-instructions/cmake_options.md
+index 2a02b200b7..b395251069 100644
+--- a/docs/dev/build-instructions/cmake_options.md
++++ b/docs/dev/build-instructions/cmake_options.md
+@@ -34,6 +34,11 @@ Bundle Qt's translations as well
+ Build the included version of CELT instead of looking for one on the system.
+ (Default: ON)
+ 
++### bundled-json
++
++Build the included version of nlohmann_json instead of looking for one on the 
system
++(Default: ON)
++
+ ### bundled-opus
+ 
+ Build the included version of Opus instead of looking for one on the system.
 diff --git a/src/mumble/CMakeLists.txt b/src/mumble/CMakeLists.txt
-index bb8df1671..51f83850e 100644
+index bb8df16714..5f1c14ba97 100644
 --- a/src/mumble/CMakeLists.txt
 +++ b/src/mumble/CMakeLists.txt
-@@ -472,12 +472,7 @@ else()
+@@ -27,6 +27,7 @@ option(bundled-celt "Build the included version of CELT 
instead of looking for o
+ option(bundled-speex "Build the included version of Speex instead of looking 
for one on the system." ON)
+ option(rnnoise "Use RNNoise for machine learning noise reduction." ON)
+ option(bundled-rnnoise "Build the included version of RNNoise instead of 
looking for one on the system." ${rnnoise})
++option(bundled-json "Build the included version of nlohmann_json instead of 
looking for one on the system" ON)
+ 
+ option(manual-plugin "Include the built-in \"manual\" positional audio 
plugin." ON)
+ 
+@@ -472,9 +473,13 @@ else()
  endif()
  
  
 -set(JSON_BuildTests OFF CACHE INTERNAL "")
 -set(JSON_ImplicitConversions OFF CACHE INTERNAL "")
 -add_subdirectory("${3RDPARTY_DIR}/nlohmann_json/" 
"${CMAKE_CURRENT_BINARY_DIR}/nlohmann_json/")
--
--target_link_libraries(mumble_client_object_lib PUBLIC 
nlohmann_json::nlohmann_json)
--
-+find_pkg("nlohmann_json" REQUIRED)
- find_pkg("SndFile;LibSndFile;sndfile" REQUIRED)
++if(bundled-json)
++      set(JSON_BuildTests OFF CACHE INTERNAL "")
++      set(JSON_ImplicitConversions OFF CACHE INTERNAL "")
++      add_subdirectory("${3RDPARTY_DIR}/nlohmann_json/" 
"${CMAKE_CURRENT_BINARY_DIR}/nlohmann_json/")
++else()
++      find_pkg("nlohmann_json" REQUIRED)
++endif()
+ 
+ target_link_libraries(mumble_client_object_lib PUBLIC 
nlohmann_json::nlohmann_json)
  
- # Check if sndfile version supports opus

diff --git a/media-sound/mumble/mumble-9999.ebuild 
b/media-sound/mumble/mumble-9999.ebuild
index a5cfa6d410b7..abee2e9d032d 100644
--- a/media-sound/mumble/mumble-9999.ebuild
+++ b/media-sound/mumble/mumble-9999.ebuild
@@ -84,6 +84,7 @@ src_configure() {
        local mycmakeargs=(
                -Dalsa="$(usex alsa)"
                -Dbundled-celt="ON"
+               -Dbundled-json="OFF"
                -Dbundled-opus="OFF"
                -Dbundled-speex="OFF"
                -Ddbus="$(usex dbus)"

Reply via email to