repo/extra/firefox/patches/firefox-69.0.2-no-dbus.patch
2019-10-03 15:22:17 +03:00

215 lines
8.2 KiB
Diff

Dylan Araps <dylan.araps@gmail.com>
Firefox 69 - Disable mandatory dependency on dbus.
Firefox has historically allowed the disablement of dbus through
the '--disable-dbus' mozconfig option, in 69.0 this option is broken.
The new feature to prioritize audio threads requires dbus to function
and the build will fail when dbus isn't installed on the host machine.
This patch disables 'audio_thread_priority' which in effect disables
the dbus dependency.
diff --git a/Cargo.lock b/Cargo.lock
index 9aef82c139..8f2400e746 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -76,19 +76,6 @@ dependencies = [
"winapi 0.3.6 (git+https://github.com/froydnj/winapi-rs?branch=aarch64)",
]
-[[package]]
-name = "audio_thread_priority"
-version = "0.15.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "dbus 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "mach 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "winapi 0.3.6 (git+https://github.com/froydnj/winapi-rs?branch=aarch64)",
-]
-
[[package]]
name = "audioipc"
version = "0.2.4"
@@ -117,7 +104,6 @@ dependencies = [
name = "audioipc-client"
version = "0.4.0"
dependencies = [
- "audio_thread_priority 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)",
"audioipc 0.2.4",
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"cubeb-backend 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -135,7 +121,6 @@ dependencies = [
name = "audioipc-server"
version = "0.2.3"
dependencies = [
- "audio_thread_priority 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)",
"audioipc 0.2.4",
"bytes 0.4.9 (registry+https://github.com/rust-lang/crates.io-index)",
"cubeb-core 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1242,7 +1227,6 @@ name = "gkrust-shared"
version = "0.1.0"
dependencies = [
"arrayvec 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "audio_thread_priority 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)",
"audioipc-client 0.4.0",
"audioipc-server 0.2.3",
"authenticator 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -3845,7 +3829,6 @@ dependencies = [
"checksum arrayvec 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2f0ef4a9820019a0c91d918918c93dc71d469f581a49b47ddc1d285d4270bbe2"
"checksum atomic_refcell 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fb2dcb6e6d35f20276943cc04bb98e538b348d525a04ac79c10021561d202f21"
"checksum atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "9a7d5b8723950951411ee34d271d99dddcc2035a16ab25310ea2c8cfd4369652"
-"checksum audio_thread_priority 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)" = "047460864ea9f62fbdfb80fc04a2e5d844aef9e50727e6e9730ca58d9f1a9267"
"checksum authenticator 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ec149e5d5d4caa2c9ead53a8ce1ea9c4204c388c65bf3b96c2d1dc0fcf4aeb66"
"checksum autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799"
"checksum backtrace 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "89a47830402e9981c5c41223151efcced65a0510c13097c769cede7efb34782a"
diff --git a/dom/ipc/ContentChild.cpp b/dom/ipc/ContentChild.cpp
index 659d4f94f6..9fe6583fb2 100644
--- a/dom/ipc/ContentChild.cpp
+++ b/dom/ipc/ContentChild.cpp
@@ -104,7 +104,6 @@
#include "nsIStringBundle.h"
#include "nsIWorkerDebuggerManager.h"
#include "nsGeolocation.h"
-#include "audio_thread_priority.h"
#if !defined(XP_WIN)
# include "mozilla/Omnijar.h"
diff --git a/dom/media/GraphRunner.cpp b/dom/media/GraphRunner.cpp
index f764623737..73811c0f8c 100644
--- a/dom/media/GraphRunner.cpp
+++ b/dom/media/GraphRunner.cpp
@@ -13,7 +13,6 @@
#include "nsISupportsImpl.h"
#include "prthread.h"
#include "Tracing.h"
-#include "audio_thread_priority.h"
namespace mozilla {
@@ -93,9 +92,6 @@ bool GraphRunner::OneIteration(GraphTime aStateEnd) {
void GraphRunner::Run() {
PR_SetCurrentThreadName("GraphRunner");
- atp_handle* handle =
- atp_promote_current_thread_to_real_time(0, mGraph->GraphRate());
-
MonitorAutoLock lock(mMonitor);
while (true) {
while (mThreadState == ThreadState::Wait) {
@@ -111,10 +107,6 @@ void GraphRunner::Run() {
mMonitor.Notify();
}
- if (handle) {
- atp_demote_current_thread_from_real_time(handle);
- }
-
dom::WorkletThread::DeleteCycleCollectedJSContext();
}
diff --git a/dom/media/moz.build b/dom/media/moz.build
index 8f89e7b940..524bb3a4de 100644
--- a/dom/media/moz.build
+++ b/dom/media/moz.build
@@ -89,7 +89,6 @@ XPIDL_SOURCES += [
XPIDL_MODULE = 'dom_media'
EXPORTS += [
- '../../third_party/rust/audio_thread_priority/audio_thread_priority.h',
'ADTSDecoder.h',
'ADTSDemuxer.h',
'AsyncLogger.h',
diff --git a/media/audioipc/client/Cargo.toml b/media/audioipc/client/Cargo.toml
index 90fa464f2a..60039f3117 100644
--- a/media/audioipc/client/Cargo.toml
+++ b/media/audioipc/client/Cargo.toml
@@ -17,6 +17,5 @@ libc = "0.2"
log = "0.4"
tokio-core = "0.1"
tokio-uds = "0.1.7"
-audio_thread_priority = "0.15.0"
lazy_static = "1.2.0"
cfg-if = "0.1.0"
diff --git a/media/audioipc/client/src/lib.rs b/media/audioipc/client/src/lib.rs
index 848559607b..9b30a2643e 100644
--- a/media/audioipc/client/src/lib.rs
+++ b/media/audioipc/client/src/lib.rs
@@ -14,7 +14,6 @@ extern crate libc;
extern crate log;
extern crate tokio_core;
extern crate tokio_uds;
-extern crate audio_thread_priority;
#[macro_use]
extern crate lazy_static;
#[macro_use]
@@ -32,7 +31,6 @@ use std::os::raw::{c_char, c_int};
use stream::ClientStream;
use std::sync::{Mutex};
use futures_cpupool::CpuPool;
-use audio_thread_priority::RtPriorityHandle;
cfg_if! {
if #[cfg(target_os = "linux")] {
use std::sync::{Arc, Condvar};
@@ -45,7 +43,6 @@ type InitParamsTls = std::cell::RefCell<Option<CpuPoolInitParams>>;
thread_local!(static IN_CALLBACK: std::cell::RefCell<bool> = std::cell::RefCell::new(false));
thread_local!(static CPUPOOL_INIT_PARAMS: InitParamsTls = std::cell::RefCell::new(None));
-thread_local!(static G_PRIORITY_HANDLES: std::cell::RefCell<Vec<RtPriorityHandle>> = std::cell::RefCell::new(vec![]));
lazy_static! {
static ref G_THREAD_POOL: Mutex<Option<CpuPool>> = Mutex::new(None);
diff --git a/media/audioipc/server/Cargo.toml b/media/audioipc/server/Cargo.toml
index 8daa952823..62b6d838ea 100644
--- a/media/audioipc/server/Cargo.toml
+++ b/media/audioipc/server/Cargo.toml
@@ -18,7 +18,6 @@ slab = "0.3.0"
futures = "0.1.18"
tokio-core = "0.1"
tokio-uds = "0.1.7"
-audio_thread_priority = "0.15.0"
[dependencies.error-chain]
version = "0.11.0"
diff --git a/media/audioipc/server/src/lib.rs b/media/audioipc/server/src/lib.rs
index 776c6e5000..df1a6a3396 100644
--- a/media/audioipc/server/src/lib.rs
+++ b/media/audioipc/server/src/lib.rs
@@ -18,7 +18,6 @@ extern crate libc;
extern crate slab;
extern crate tokio_core;
extern crate tokio_uds;
-extern crate audio_thread_priority;
use audioipc::core;
use audioipc::platformhandle_passing::framed_with_platformhandles;
diff --git a/toolkit/library/rust/shared/Cargo.toml b/toolkit/library/rust/shared/Cargo.toml
index c659552cdc..71b9d64942 100644
--- a/toolkit/library/rust/shared/Cargo.toml
+++ b/toolkit/library/rust/shared/Cargo.toml
@@ -39,7 +39,6 @@ bitsdownload = { path = "../../../components/bitsdownload", optional = true }
storage = { path = "../../../../storage/rust" }
bookmark_sync = { path = "../../../components/places/bookmark_sync", optional = true }
shift_or_euc_c = "0.1.0"
-audio_thread_priority = "0.15.0"
[build-dependencies]
rustc_version = "0.2"
diff --git a/toolkit/library/rust/shared/lib.rs b/toolkit/library/rust/shared/lib.rs
index c5ff9e10dc..a648c7ea13 100644
--- a/toolkit/library/rust/shared/lib.rs
+++ b/toolkit/library/rust/shared/lib.rs
@@ -48,8 +48,6 @@ extern crate shift_or_euc_c;
extern crate arrayvec;
-extern crate audio_thread_priority;
-
use std::boxed::Box;
use std::env;
use std::ffi::{CStr, CString};