summaryrefslogtreecommitdiff
path: root/gnu/packages/patches/ungoogled-chromium-system-jsoncpp.patch
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/patches/ungoogled-chromium-system-jsoncpp.patch')
-rw-r--r--gnu/packages/patches/ungoogled-chromium-system-jsoncpp.patch65
1 files changed, 65 insertions, 0 deletions
diff --git a/gnu/packages/patches/ungoogled-chromium-system-jsoncpp.patch b/gnu/packages/patches/ungoogled-chromium-system-jsoncpp.patch
new file mode 100644
index 0000000000..294e1ea33b
--- /dev/null
+++ b/gnu/packages/patches/ungoogled-chromium-system-jsoncpp.patch
@@ -0,0 +1,65 @@
+Build with the system jsoncpp instead of the bundled one.
+
+Adapted from Debian:
+https://salsa.debian.org/chromium-team/chromium/-/blob/master/debian/patches/system/jsoncpp.patch
+
+diff --git a/third_party/jsoncpp/BUILD.gn b/third_party/jsoncpp/BUILD.gn
+--- a/third_party/jsoncpp/BUILD.gn
++++ b/third_party/jsoncpp/BUILD.gn
+@@ -3,52 +3,14 @@
+ # found in the LICENSE file.
+
+ import("//testing/libfuzzer/fuzzer_test.gni")
++import("//build/config/linux/pkg_config.gni")
+
+-config("jsoncpp_config") {
+- include_dirs = [
+- "source/include",
+- "generated",
+- ]
+-
+- # TODO(crbug.com/983223): Update JsonCpp BUILD.gn to remove deprecated
+- # declaration flag.
+- # This temporary flag allowing clients to update to the new version, and then
+- # update to the new StreamWriter and CharReader classes.
+- if (!is_win || is_clang) {
+- cflags_cc = [ "-Wno-deprecated-declarations" ]
+- }
++pkg_config("jsoncpp_config") {
++ packages = [ "jsoncpp" ]
+ }
+
+-source_set("jsoncpp") {
+- sources = [
+- "generated/version.h",
+- "source/include/json/assertions.h",
+- "source/include/json/autolink.h",
+- "source/include/json/config.h",
+- "source/include/json/features.h",
+- "source/include/json/forwards.h",
+- "source/include/json/json.h",
+- "source/include/json/reader.h",
+- "source/include/json/value.h",
+- "source/include/json/writer.h",
+- "source/src/lib_json/json_reader.cpp",
+- "source/src/lib_json/json_tool.h",
+- "source/src/lib_json/json_value.cpp",
+- "source/src/lib_json/json_writer.cpp",
+- ]
+-
++group("jsoncpp") {
+ public_configs = [ ":jsoncpp_config" ]
+-
+- defines = [
+- "JSON_USE_EXCEPTION=0",
+- "JSON_USE_NULLREF=0",
+- ]
+-
+- include_dirs = [ "source/src/lib_json" ]
+-
+- if (!is_win || is_clang) {
+- cflags_cc = [ "-Wno-implicit-fallthrough" ]
+- }
+ }
+
+ if (build_with_chromium) {