diff options
Diffstat (limited to 'www/firefox-esr/files/patch-third__party_libwebrtc_build_config_BUILDCONFIG.gn')
-rw-r--r-- | www/firefox-esr/files/patch-third__party_libwebrtc_build_config_BUILDCONFIG.gn | 132 |
1 files changed, 132 insertions, 0 deletions
diff --git a/www/firefox-esr/files/patch-third__party_libwebrtc_build_config_BUILDCONFIG.gn b/www/firefox-esr/files/patch-third__party_libwebrtc_build_config_BUILDCONFIG.gn new file mode 100644 index 000000000000..e4607283ebcf --- /dev/null +++ b/www/firefox-esr/files/patch-third__party_libwebrtc_build_config_BUILDCONFIG.gn @@ -0,0 +1,132 @@ +commit da40b474fba2247ffc07696a2c565d830e900c9c +Author: Christoph Moench-Tegeder <cmt@FreeBSD.org> + + enable pipewire on bsd + +diff --git third_party/chromium/build/config/BUILDCONFIG.gn third_party/chromium/build/config/BUILDCONFIG.gn +index 889bdb92354c..ccda96d998c5 100644 +--- third_party/chromium/build/config/BUILDCONFIG.gn ++++ third_party/chromium/build/config/BUILDCONFIG.gn +@@ -132,6 +132,7 @@ declare_args() { + + # Set to true when compiling with the Clang compiler. + is_clang = current_os != "linux" || current_os == "openbsd" || ++ current_os == "freebsd" || + (current_cpu != "s390x" && current_cpu != "s390" && + current_cpu != "ppc64" && current_cpu != "ppc" && + current_cpu != "mips" && current_cpu != "mips64" && +@@ -184,7 +185,7 @@ if (host_toolchain == "") { + # TODO(dpranke): Add some sort of assert here that verifies that + # no toolchain omitted host_toolchain from its toolchain_args(). + +- if (host_os == "linux" || host_os == "openbsd") { ++ if (host_os == "linux" || host_os == "openbsd" || host_os == "freebsd") { + if (target_os != "linux") { + host_toolchain = "//chromium/build/toolchain/linux:clang_$host_cpu" + } else if (is_clang) { +@@ -222,7 +223,7 @@ if (target_os == "android") { + assert(host_os == "linux" || host_os == "mac", + "Android builds are only supported on Linux and Mac hosts.") + _default_toolchain = "//chromium/build/toolchain/android:android_clang_$target_cpu" +-} else if (target_os == "chromeos" || target_os == "linux" || target_os == "openbsd") { ++} else if (target_os == "chromeos" || target_os == "linux" || target_os == "openbsd" || target_os == "freebsd") { + # See comments in build/toolchain/cros/BUILD.gn about board compiles. + if (is_clang) { + _default_toolchain = "//chromium/build/toolchain/linux:clang_$target_cpu" +@@ -288,7 +289,7 @@ is_chromeos = current_os == "chromeos" + is_fuchsia = current_os == "fuchsia" + is_ios = current_os == "ios" + is_linux = current_os == "linux" +-is_bsd = current_os == "openbsd" ++is_bsd = current_os == "openbsd" || current_os == "freebsd" + is_mac = current_os == "mac" + is_nacl = current_os == "nacl" + is_win = current_os == "win" || current_os == "winuwp" +diff --git third_party/libwebrtc/BUILD.gn third_party/libwebrtc/BUILD.gn +index 397df7b27b24..8a587feed6b9 100644 +--- third_party/libwebrtc/BUILD.gn ++++ third_party/libwebrtc/BUILD.gn +@@ -107,7 +107,7 @@ if (!build_with_chromium && !build_with_mozilla) { + "tools_webrtc/perf:webrtc_dashboard_upload", + ] + } +- if ((is_linux || is_chromeos) && rtc_use_pipewire) { ++ if ((is_linux || is_chromeos || is_bsd) && rtc_use_pipewire) { + deps += [ "modules/desktop_capture:shared_screencast_stream_test" ] + } + } +diff --git third_party/libwebrtc/modules/desktop_capture/BUILD.gn third_party/libwebrtc/modules/desktop_capture/BUILD.gn +index de00f688871c..e32c19d38c8d 100644 +--- third_party/libwebrtc/modules/desktop_capture/BUILD.gn ++++ third_party/libwebrtc/modules/desktop_capture/BUILD.gn +@@ -74,7 +74,7 @@ if (rtc_include_tests) { + "window_finder_unittest.cc", + ] + +- if ((is_linux || is_chromeos) && rtc_use_pipewire) { ++ if ((is_linux || is_chromeos || is_bsd) && rtc_use_pipewire) { + configs += [ "../portal:gio" ] + } + +@@ -86,7 +86,7 @@ if (rtc_include_tests) { + } + } + +- if ((is_linux || is_chromeos) && rtc_use_pipewire) { ++ if ((is_linux || is_chromeos || is_bsd) && rtc_use_pipewire) { + rtc_test("shared_screencast_stream_test") { + testonly = true + +@@ -145,7 +145,7 @@ if (rtc_include_tests) { + "test_utils_unittest.cc", + ] + +- if ((is_linux || is_chromeos) && rtc_use_pipewire) { ++ if ((is_linux || is_chromeos || is_bsd) && rtc_use_pipewire) { + configs += [ "../portal:gio" ] + } + +@@ -267,7 +267,7 @@ if (rtc_include_tests) { + } + + # TODO(bugs.webrtc.org/14187): remove when all users are gone +-if ((is_linux || is_chromeos) && rtc_use_pipewire) { ++if ((is_linux || is_chromeos || is_bsd) && rtc_use_pipewire) { + config("pipewire_config") { + configs = [ "../portal:pipewire_config" ] + } +@@ -330,7 +330,7 @@ rtc_library("desktop_capture") { + "window_finder.cc", + "window_finder.h", + ] +- if (is_linux && !is_castos && rtc_use_pipewire) { ++ if ((is_linux || is_bsd) && !is_castos && rtc_use_pipewire) { + sources += [ "desktop_capture_metadata.h" ] + } + if (is_mac) { +diff --git third_party/libwebrtc/modules/portal/BUILD.gn third_party/libwebrtc/modules/portal/BUILD.gn +index 6828388b31af..7e1857d861c5 100644 +--- third_party/libwebrtc/modules/portal/BUILD.gn ++++ third_party/libwebrtc/modules/portal/BUILD.gn +@@ -10,7 +10,7 @@ import("//chromium/build/config/linux/pkg_config.gni") + import("//tools/generate_stubs/rules.gni") + import("../../webrtc.gni") + +-if ((is_linux || is_chromeos) && rtc_use_pipewire) { ++if ((is_linux || is_chromeos || is_bsd) && rtc_use_pipewire) { + if (!build_with_mozilla) { + pkg_config("gio") { + packages = [ +diff --git third_party/libwebrtc/webrtc.gni third_party/libwebrtc/webrtc.gni +index 58b450cbb16e..00b9ca49c71f 100644 +--- third_party/libwebrtc/webrtc.gni ++++ third_party/libwebrtc/webrtc.gni +@@ -154,7 +154,7 @@ declare_args() { + # By default it's only enabled on desktop Linux (excludes ChromeOS) and + # only when using the sysroot as PipeWire is not available in older and + # supported Ubuntu and Debian distributions. +- rtc_use_pipewire = is_linux && use_sysroot ++ rtc_use_pipewire = (is_linux || is_bsd) && use_sysroot + + # Set this to link PipeWire and required libraries directly instead of using the dlopen. + rtc_link_pipewire = false |