firefox (beta): bump to 73.0b1

This commit is contained in:
Dylan Araps 2020-01-07 12:01:41 +02:00
parent d66eda9591
commit 8a19b60033
No known key found for this signature in database
GPG Key ID: 46D62DD9F1DE636E
15 changed files with 891 additions and 0 deletions

39
testing/firefox/build Executable file
View File

@ -0,0 +1,39 @@
#!/bin/sh -e
# Build autoconf 2.13 for Firefox's sole use.
# See: https://bugzilla.mozilla.org/show_bug.cgi?id=104642
(
cd autoconf2.13
./configure \
--prefix="$PWD/../autoconf" \
--program-suffix=-2.13
make
make install
)
export PATH=$PWD/autoconf/bin:$PATH
export LDFLAGS="$LDFLAGS -Wl,-rpath=/usr/lib/firefox"
export CC=${CC:-gcc}
export CXX=${CXX:-g++}
for patch in *.patch; do
patch -p1 < "$patch"
done
# Fix OOM errors.
cores=$(nproc)
printf '%s\n' "mk_add_options MOZ_MAKE_FLAGS=\"-j$cores -l$cores\"" >> mozconfig
./mach build
DESTDIR="$1" ./mach install
rm -rf "$1/usr/include"
rm -rf "$1/usr/lib/firefox-devel"
rm -rf "$1/usr/share/idl"
rm -rf "$1/usr/lib/firefox/gtk2"
rm -f "$1/usr/lib/firefox/browser/features/fxmonitor@mozilla.org.xpi"
rm -f "$1/usr/lib/firefox/browser/features/screenshots@mozilla.org.xpi"
rm -f "$1/usr/lib/firefox/browser/features/webcompat-reporter@mozilla.org.xpi"
rm -f "$1/usr/lib/firefox/browser/features/webcompat@mozilla.org.xpi"

11
testing/firefox/checksums Normal file
View File

@ -0,0 +1,11 @@
1ec1da97356352421e6bd5a0553e26945f24f30b09d2fc32e5fe8c069584d76b firefox-73.0b1.source.tar.xz
f0611136bee505811e9ca11ca7ac188ef5323a8e2ef19cffd3edb3cf08fd791e autoconf-2.13.tar.gz
b5e70b12cc9dd18fffd7924a7d3a2e11574136fe0764359d08eba0755f1c5d4c mozconfig
960d82bbfdc88c95f5cb4f2e1c1bf23dae7519b3b7203914d7b3ddbff1ba4c28 stab.h
315880530f09175788dfa48a1915bfa1e190bfd3e267988b9100cb93006c808c fix-fortify-system-wrappers.patch
14f281ee323aa682e04479019171bde243ac6227820856aa03b162179b14bfd9 fix-seccomp-bpf.patch
b19aaae7fc45db643f8d2540d96919c745ea341e36d9aea2df40e3e90eb951f0 fix-toolkit.patch
e24f71a6a0d8d4637b2081780c66b01be4eeb4dd496031270d0ae0b898be94d2 fix-tools.patch
5e0fcfde375837074baad21a8ab26aa442a7940617ebd074a6b238a48f2ceb63 fix-webrtc-glibcisms.patch
1d4a8f110d34da478f5597727eda9acacebd443dd86cce5bb64f898c01feabce mallinfo.patch
0f1573138ea671100328572d533d68c2a7d9e55ad27b46e573cf55345076307d firefox-73-no-dbus.patch

53
testing/firefox/depends Normal file
View File

@ -0,0 +1,53 @@
alsa-lib
atk
bzip2
cairo
cbindgen make
clang make
expat
ffmpeg
fontconfig
freetype-harfbuzz
fribidi
gdk-pixbuf
glib
gtk+2 make
gtk+3
hicolor-icon-theme
libICE
libSM
libX11
libXau
libXcomposite
libXcursor
libXdamage
libXext
libXfixes
libXi
libXinerama
libXrandr
libXrender
libXt
libXxf86vm
libdrm
libepoxy
libffi
libjpeg-turbo
libpng
libvpx
libxcb
libxshmfence
llvm make
mesa
nasm make
nodejs make
pango
perl make
pixman
python make
python2 make
rust make
util-linux
yasm make
zip make
zlib

View File

@ -0,0 +1,59 @@
ac_add_options --prefix=/usr
ac_add_options --libdir=/usr/lib
ac_add_options --enable-official-branding
ac_add_options --enable-optimize="$CFLAGS"
ac_add_options --enable-install-strip
ac_add_options --enable-strip
ac_add_options --without-system-nspr
ac_add_options --without-system-nss
ac_add_options --with-system-jpeg
ac_add_options --with-system-zlib
ac_add_options --with-system-bz2
ac_add_options --with-system-png
# System 'libvpx' is too new.
ac_add_options --without-system-libvpx
ac_add_options --with-system-pixman
ac_add_options --with-system-ffi
ac_add_options --disable-gconf
ac_add_options --disable-profiling
ac_add_options --disable-accessibility
ac_add_options --disable-tests
ac_add_options --disable-system-extension-dirs
ac_add_options --disable-parental-controls
ac_add_options --disable-debug-symbols
ac_add_options --disable-callgrind
ac_add_options --disable-vtune
# Settings for musl.
ac_add_options --disable-elf-hack
ac_add_options --disable-gold
ac_add_options --disable-jemalloc
ac_add_options --enable-release
# ALSA/PulseAudio (removed in 70 (still present in 71b4(?!))
ac_add_options --disable-pulseaudio
ac_add_options --enable-alsa
ac_add_options --disable-startup-notification
# Respect the user.
ac_add_options MOZ_SERVICES_METRICS=
ac_add_options MOZ_PAY=
ac_add_options MOZ_SERVICES_HEALTHREPORTER=
ac_add_options MOZ_SERVICES_FXACCOUNTS=
ac_add_options MOZ_SERVICES_METRICS=
ac_add_options MOZ_DATA_REPORTING=
ac_add_options MOZ_DEVICES=
ac_add_options MOZ_REQUIRE_SIGNING=
ac_add_options MOZ_TELEMETRY_REPORTING=
ac_add_options --disable-crashreporter
ac_add_options --disable-updater
ac_add_options --disable-dbus
ac_add_options --disable-eme
ac_add_options --disable-necko-wifi
ac_add_options --disable-webrtc

View File

@ -0,0 +1,71 @@
/* $OpenBSD: stab.h,v 1.3 2003/06/02 19:34:12 millert Exp $ */
/* $NetBSD: stab.h,v 1.4 1994/10/26 00:56:25 cgd Exp $ */
/*-
* Copyright (c) 1991 The Regents of the University of California.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)stab.h 5.2 (Berkeley) 4/4/91
*/
#ifndef _STAB_H_
#define _STAB_H_
/*
* The following are symbols used by various debuggers and by the Pascal
* compiler. Each of them must have one (or more) of the bits defined by
* the N_STAB mask set.
*/
#define N_GSYM 0x20 /* global symbol */
#define N_FNAME 0x22 /* F77 function name */
#define N_FUN 0x24 /* procedure name */
#define N_STSYM 0x26 /* data segment variable */
#define N_LCSYM 0x28 /* bss segment variable */
#define N_MAIN 0x2a /* main function name */
#define N_PC 0x30 /* global Pascal symbol */
#define N_RSYM 0x40 /* register variable */
#define N_SLINE 0x44 /* text segment line number */
#define N_DSLINE 0x46 /* data segment line number */
#define N_BSLINE 0x48 /* bss segment line number */
#define N_SSYM 0x60 /* structure/union element */
#define N_SO 0x64 /* main source file name */
#define N_LSYM 0x80 /* stack variable */
#define N_BINCL 0x82 /* include file beginning */
#define N_SOL 0x84 /* included source file name */
#define N_PSYM 0xa0 /* parameter variable */
#define N_EINCL 0xa2 /* include file end */
#define N_ENTRY 0xa4 /* alternate entry point */
#define N_LBRAC 0xc0 /* left bracket */
#define N_EXCL 0xc2 /* deleted include file */
#define N_RBRAC 0xe0 /* right bracket */
#define N_BCOMM 0xe2 /* begin common */
#define N_ECOMM 0xe4 /* end common */
#define N_ECOML 0xe8 /* end common (local name) */
#define N_LENG 0xfe /* length of preceding entry */
#endif /* !_STAB_H_ */

View File

@ -0,0 +1,424 @@
diff --git a/Cargo.lock b/Cargo.lock
index 43b600432a..e109c8a63e 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -82,24 +82,11 @@ dependencies = [
"winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
]
-[[package]]
-name = "audio_thread_priority"
-version = "0.20.2"
-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.59 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "mach 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
-]
[[package]]
name = "audioipc"
version = "0.2.4"
dependencies = [
- "audio_thread_priority 0.20.2 (registry+https://github.com/rust-lang/crates.io-index)",
"bincode 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
"bytes 0.4.9 (registry+https://github.com/rust-lang/crates.io-index)",
"cc 1.0.47 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -127,7 +114,6 @@ dependencies = [
name = "audioipc-client"
version = "0.4.0"
dependencies = [
- "audio_thread_priority 0.20.2 (registry+https://github.com/rust-lang/crates.io-index)",
"audioipc 0.2.4",
"cubeb-backend 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
"futures 0.1.23 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -140,7 +126,6 @@ dependencies = [
name = "audioipc-server"
version = "0.2.3"
dependencies = [
- "audio_thread_priority 0.20.2 (registry+https://github.com/rust-lang/crates.io-index)",
"audioipc 0.2.4",
"cubeb-core 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
"error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -922,14 +907,6 @@ dependencies = [
"syn 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
]
-[[package]]
-name = "dbus"
-version = "0.6.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "libc 0.2.59 (registry+https://github.com/rust-lang/crates.io-index)",
- "libdbus-sys 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-]
[[package]]
name = "deflate"
@@ -1465,7 +1442,6 @@ dependencies = [
name = "gkrust-shared"
version = "0.1.0"
dependencies = [
- "audio_thread_priority 0.20.2 (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)",
@@ -1860,13 +1836,6 @@ name = "libc"
version = "0.2.59"
source = "registry+https://github.com/rust-lang/crates.io-index"
-[[package]]
-name = "libdbus-sys"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
-]
[[package]]
name = "libloading"
@@ -4662,7 +4631,6 @@ dependencies = [
"checksum atomic 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c210c1f4db048cda477b652d170572d84c9640695835f17663595d3bd543fc28"
"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.20.2 (registry+https://github.com/rust-lang/crates.io-index)" = "197b2d259505d11c92d266e1784f01cc935eb764d2f54e16aedf4e5085197871"
"checksum authenticator 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ec149e5d5d4caa2c9ead53a8ce1ea9c4204c388c65bf3b96c2d1dc0fcf4aeb66"
"checksum autocfg 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "b671c8fb71b457dd4ae18c4ba1e59aa81793daacc361d82fcd410cef0d491875"
"checksum backtrace 0.3.38 (registry+https://github.com/rust-lang/crates.io-index)" = "690a62be8920ccf773ee00ef0968649b0e724cda8bd5b12286302b4ae955fdf5"
@@ -4736,7 +4704,6 @@ dependencies = [
"checksum darling 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3fe629a532efad5526454efb0700f86d5ad7ff001acb37e431c8bf017a432a8e"
"checksum darling_core 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ee54512bec54b41cf2337a22ddfadb53c7d4c738494dc2a186d7b037ad683b85"
"checksum darling_macro 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0cd3e432e52c0810b72898296a69d66b1d78d1517dff6cde7a130557a55a62c1"
-"checksum dbus 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b9e1b39f3f6aa3d4a1522c4f0f9f1e9e9167bd93740a8690874caa7cf8ce47d7"
"checksum deflate 0.7.19 (registry+https://github.com/rust-lang/crates.io-index)" = "8a6abb26e16e8d419b5c78662aa9f82857c2386a073da266840e474d5055ec86"
"checksum derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2159be042979966de68315bce7034bb000c775f22e3e834e1c52ff78f041cae8"
"checksum devd-rs 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0d009f166c0d9e9f9909dc751630b3a6411ab7f85a153d32d01deb364ffe52a7"
@@ -4809,7 +4776,6 @@ dependencies = [
"checksum lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
"checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f"
"checksum libc 0.2.59 (registry+https://github.com/rust-lang/crates.io-index)" = "3262021842bf00fe07dbd6cf34ff25c99d7a7ebef8deea84db72be3ea3bb0aff"
-"checksum libdbus-sys 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "18cb88963258d00f4962205dbb5933d82780d9962c8c8a064b651d2ad7189210"
"checksum libloading 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9c3ad660d7cb8c5822cd83d10897b0f1f1526792737a179e73896152f85b88c2"
"checksum libudev 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ea626d3bdf40a1c5aee3bcd4f40826970cae8d80a8fec934c82a63840094dcfe"
"checksum libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)" = "2eb5e43362e38e2bca2fd5f5134c4d4564a23a5c28e9b95411652021a8675ebe"
diff --git a/dom/ipc/ContentChild.cpp b/dom/ipc/ContentChild.cpp
index eacf615c39..531b950c31 100644
--- a/dom/ipc/ContentChild.cpp
+++ b/dom/ipc/ContentChild.cpp
@@ -111,9 +111,7 @@
#include "GMPServiceChild.h"
#include "nsIStringBundle.h"
#include "Geolocation.h"
-#include "audio_thread_priority.h"
#include "nsIConsoleService.h"
-#include "audio_thread_priority.h"
#include "nsIURIMutator.h"
#if !defined(XP_WIN)
@@ -1817,9 +1815,6 @@ mozilla::ipc::IPCResult ContentChild::RecvSetProcessSandbox(
} else {
// Pre-start audio before sandboxing; see bug 1443612.
if (StaticPrefs::media_cubeb_sandbox()) {
- if (atp_set_real_time_limit(0, 48000)) {
- NS_WARNING("could not set real-time limit at process startup");
- }
InstallSoftRealTimeLimitHandler();
} else {
Unused << CubebUtils::GetCubebContext();
diff --git a/dom/media/GraphRunner.cpp b/dom/media/GraphRunner.cpp
index e4462ad099..2f0d8841f6 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 {
@@ -95,8 +94,6 @@ auto GraphRunner::OneIteration(GraphTime aStateEnd, GraphTime aIterationEnd,
}
NS_IMETHODIMP GraphRunner::Run() {
- atp_handle* handle =
- atp_promote_current_thread_to_real_time(0, mGraph->GraphRate());
MonitorAutoLock lock(mMonitor);
while (true) {
@@ -116,9 +113,6 @@ NS_IMETHODIMP GraphRunner::Run() {
mMonitor.Notify();
}
- if (handle) {
- atp_demote_current_thread_from_real_time(handle);
- }
dom::WorkletThread::DeleteCycleCollectedJSContext();
diff --git a/dom/media/UnderrunHandlerLinux.cpp b/dom/media/UnderrunHandlerLinux.cpp
index af5c84538e..23bf97a31f 100644
--- a/dom/media/UnderrunHandlerLinux.cpp
+++ b/dom/media/UnderrunHandlerLinux.cpp
@@ -9,7 +9,6 @@
#include <mozilla/Sprintf.h>
#include <mozilla/Atomics.h>
-#include "audio_thread_priority.h"
namespace mozilla {
@@ -57,20 +56,6 @@ void InstallSoftRealTimeLimitHandler() {
}
void DemoteThreadFromRealTime() {
- atp_thread_info* info = atp_get_current_thread_info();
- if (!info) {
- NS_WARNING("Could not get current thread info when demoting thread.");
- return;
- }
- int rv = atp_demote_thread_from_real_time(info);
- if (rv) {
- NS_WARNING("Could not demote thread from real-time.");
- return;
- }
- rv = atp_free_thread_info(info);
- if (rv) {
- NS_WARNING("Could not free atp_thread_info struct");
- }
gRealtimeLimitReached = false;
}
diff --git a/dom/media/moz.build b/dom/media/moz.build
index 1184bbf113..541d7f7c56 100644
--- a/dom/media/moz.build
+++ b/dom/media/moz.build
@@ -101,7 +101,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/audioipc/Cargo.toml b/media/audioipc/audioipc/Cargo.toml
index 286e16789b..c34775cea1 100644
--- a/media/audioipc/audioipc/Cargo.toml
+++ b/media/audioipc/audioipc/Cargo.toml
@@ -19,7 +19,6 @@ serde = "1.*.*"
serde_derive = "1.*.*"
tokio = "0.1"
tokio-io = "0.1"
-audio_thread_priority = "0.20.2"
[target.'cfg(unix)'.dependencies]
iovec = "0.1"
diff --git a/media/audioipc/audioipc/src/messages.rs b/media/audioipc/audioipc/src/messages.rs
index 793e5f7a00..1f72f968ce 100644
--- a/media/audioipc/audioipc/src/messages.rs
+++ b/media/audioipc/audioipc/src/messages.rs
@@ -5,8 +5,6 @@
use crate::PlatformHandle;
use crate::PlatformHandleType;
-#[cfg(target_os = "linux")]
-use audio_thread_priority::RtPriorityThreadInfo;
use cubeb::{self, ffi};
use std::ffi::{CStr, CString};
use std::os::raw::{c_char, c_int, c_uint};
@@ -210,8 +208,6 @@ pub enum ServerMessage {
StreamGetCurrentDevice(usize),
StreamRegisterDeviceChangeCallback(usize, bool),
- #[cfg(target_os = "linux")]
- PromoteThreadToRealTime([u8; std::mem::size_of::<RtPriorityThreadInfo>()]),
}
// Server -> Client messages.
@@ -241,8 +237,6 @@ pub enum ClientMessage {
StreamCurrentDevice(Device),
StreamRegisterDeviceChangeCallback,
- #[cfg(target_os = "linux")]
- ThreadPromoted,
Error(c_int),
}
diff --git a/media/audioipc/client/Cargo.toml b/media/audioipc/client/Cargo.toml
index 866cde7e98..eaf9a62cc7 100644
--- a/media/audioipc/client/Cargo.toml
+++ b/media/audioipc/client/Cargo.toml
@@ -9,7 +9,6 @@ description = "Cubeb Backend for talking to remote cubeb server."
edition = "2018"
[dependencies]
-audio_thread_priority = "0.20.2"
audioipc = { path="../audioipc" }
cubeb-backend = "0.6.0"
futures = { version="0.1.18", default-features=false, features=["use_std"] }
diff --git a/media/audioipc/client/src/context.rs b/media/audioipc/client/src/context.rs
index 7e912ea65d..b6dddc76aa 100644
--- a/media/audioipc/client/src/context.rs
+++ b/media/audioipc/client/src/context.rs
@@ -6,10 +6,6 @@
use crate::stream;
use crate::{assert_not_in_callback, run_in_callback};
use crate::{ClientStream, AUDIOIPC_INIT_PARAMS};
-#[cfg(target_os = "linux")]
-use audio_thread_priority::get_current_thread_info;
-#[cfg(not(target_os = "linux"))]
-use audio_thread_priority::promote_current_thread_to_real_time;
use audioipc::codec::LengthDelimitedCodec;
use audioipc::frame::{framed, Framed};
use audioipc::platformhandle_passing::{framed_with_platformhandles, FramedWithPlatformHandles};
@@ -77,31 +73,6 @@ impl ClientContext {
}
}
-#[cfg(target_os = "linux")]
-fn promote_thread(rpc: &rpc::ClientProxy<ServerMessage, ClientMessage>) {
- match get_current_thread_info() {
- Ok(info) => {
- let bytes = info.serialize();
- // Don't wait for the response, this is on the callback thread, which must not block.
- rpc.call(ServerMessage::PromoteThreadToRealTime(bytes));
- }
- Err(_) => {
- warn!("Could not remotely promote thread to RT.");
- }
- }
-}
-
-#[cfg(not(target_os = "linux"))]
-fn promote_thread(_rpc: &rpc::ClientProxy<ServerMessage, ClientMessage>) {
- match promote_current_thread_to_real_time(0, 48000) {
- Ok(_) => {
- info!("Audio thread promoted to real-time.");
- }
- Err(_) => {
- warn!("Could not promote thread to real-time.");
- }
- }
-}
fn register_thread(callback: Option<extern "C" fn(*const ::std::os::raw::c_char)>) {
if let Some(func) = callback {
@@ -111,13 +82,6 @@ fn register_thread(callback: Option<extern "C" fn(*const ::std::os::raw::c_char)
}
}
-fn promote_and_register_thread(
- rpc: &rpc::ClientProxy<ServerMessage, ClientMessage>,
- callback: Option<extern "C" fn(*const ::std::os::raw::c_char)>,
-) {
- promote_thread(rpc);
- register_thread(callback);
-}
#[derive(Default)]
struct DeviceCollectionCallback {
@@ -226,7 +190,6 @@ impl ContextOps for ClientContext {
let thread_create_callback = params.thread_create_callback;
let cpu_pool = futures_cpupool::Builder::new()
.name_prefix("AudioIPC")
- .after_start(move || promote_and_register_thread(&rpc2, thread_create_callback))
.pool_size(params.pool_size)
.stack_size(params.stack_size)
.create();
diff --git a/media/audioipc/server/Cargo.toml b/media/audioipc/server/Cargo.toml
index 341b041e65..3363f143c7 100644
--- a/media/audioipc/server/Cargo.toml
+++ b/media/audioipc/server/Cargo.toml
@@ -9,7 +9,6 @@ description = "Remote cubeb server"
edition = "2018"
[dependencies]
-audio_thread_priority = "0.20.2"
audioipc = { path = "../audioipc" }
cubeb-core = "0.6.0"
futures = "0.1.18"
diff --git a/media/audioipc/server/src/lib.rs b/media/audioipc/server/src/lib.rs
index 9463c102ac..18b09e5433 100644
--- a/media/audioipc/server/src/lib.rs
+++ b/media/audioipc/server/src/lib.rs
@@ -9,7 +9,6 @@ extern crate error_chain;
#[macro_use]
extern crate log;
-use audio_thread_priority::promote_current_thread_to_real_time;
use audioipc::core;
use audioipc::platformhandle_passing::framed_with_platformhandles;
use audioipc::rpc;
@@ -63,12 +62,6 @@ fn run() -> Result<ServerWrapper> {
trace!("Starting up cubeb audio server event loop thread...");
let callback_thread = core::spawn_thread("AudioIPC Callback RPC", || {
- match promote_current_thread_to_real_time(0, 48000) {
- Ok(_) => {}
- Err(_) => {
- debug!("Failed to promote audio callback thread to real-time.");
- }
- }
trace!("Starting up cubeb audio callback event loop thread...");
Ok(())
})
diff --git a/media/audioipc/server/src/server.rs b/media/audioipc/server/src/server.rs
index a458fb1953..d7fc4b6036 100644
--- a/media/audioipc/server/src/server.rs
+++ b/media/audioipc/server/src/server.rs
@@ -3,8 +3,6 @@
// This program is made available under an ISC-style license. See the
// accompanying file LICENSE for details
-#[cfg(target_os = "linux")]
-use audio_thread_priority::{promote_thread_to_real_time, RtPriorityThreadInfo};
use audioipc;
use audioipc::codec::LengthDelimitedCodec;
use audioipc::frame::{framed, Framed};
@@ -523,19 +521,6 @@ impl CubebServer {
)
.unwrap_or_else(error),
- #[cfg(target_os = "linux")]
- ServerMessage::PromoteThreadToRealTime(thread_info) => {
- let info = RtPriorityThreadInfo::deserialize(thread_info);
- match promote_thread_to_real_time(info, 0, 48000) {
- Ok(_) => {
- info!("Promotion of content process thread to real-time OK");
- }
- Err(_) => {
- warn!("Promotion of content process thread to real-time error");
- }
- }
- ClientMessage::ThreadPromoted
- }
};
trace!("process_msg: req={:?}, resp={:?}", msg, resp);
diff --git a/toolkit/library/rust/shared/Cargo.toml b/toolkit/library/rust/shared/Cargo.toml
index d391b0b29c..6c7cb4b9ae 100644
--- a/toolkit/library/rust/shared/Cargo.toml
+++ b/toolkit/library/rust/shared/Cargo.toml
@@ -40,7 +40,6 @@ storage = { path = "../../../../storage/rust" }
bookmark_sync = { path = "../../../components/places/bookmark_sync", optional = true }
shift_or_euc_c = "0.1.0"
chardetng_c = "0.1.1"
-audio_thread_priority = "0.20.2"
mdns_service = { path="../../../../media/mtransport/mdns_service", optional = true }
neqo_glue = { path = "../../../../netwerk/socket/neqo_glue" }
rlbox_lucet_sandbox = { version = "0.1.0", optional = true }
diff --git a/toolkit/library/rust/shared/lib.rs b/toolkit/library/rust/shared/lib.rs
index f7d766069a..0b0f6a39a0 100644
--- a/toolkit/library/rust/shared/lib.rs
+++ b/toolkit/library/rust/shared/lib.rs
@@ -50,7 +50,6 @@ extern crate chardetng_c;
#[cfg(feature = "fogotype")]
extern crate fog;
-extern crate audio_thread_priority;
#[cfg(feature = "webrtc")]
extern crate mdns_service;

View File

@ -0,0 +1,13 @@
The wrapper features.h gets pulled in by system headers causing thigns to
break. We work around it by simply not wrap features.h
--- ./config/system-headers.mozbuild.orig
+++ ./config/system-headers.mozbuild
@@ -229,7 +229,6 @@
'execinfo.h',
'extras.h',
'fcntl.h',
- 'features.h',
'fenv.h',
'ffi.h',
'fibdef.h',

View File

@ -0,0 +1,14 @@
--- a/security/sandbox/chromium/sandbox/linux/seccomp-bpf/trap.cc
+++ b/security/sandbox/chromium/sandbox/linux/seccomp-bpf/trap.cc
@@ -25,6 +25,11 @@
#include "sandbox/linux/system_headers/linux_seccomp.h"
#include "sandbox/linux/system_headers/linux_signal.h"
+// musl libc defines siginfo_t __si_fields instead of _sifields
+#if defined(OS_LINUX) && !defined(__GLIBC__)
+#define _sifields __si_fields
+#endif
+
namespace {
struct arch_sigsys {

View File

@ -0,0 +1,90 @@
diff --git a/toolkit/crashreporter/google-breakpad/src/common/linux/dump_symbols.cc b/toolkit/crashreporter/google-breakpad/src/common/linux/dump_symbols.cc
index 4222ce3..4d40c6a 100644
--- a/toolkit/crashreporter/google-breakpad/src/common/linux/dump_symbols.cc
+++ b/toolkit/crashreporter/google-breakpad/src/common/linux/dump_symbols.cc
@@ -46,6 +46,7 @@
#include <sys/mman.h>
#include <sys/stat.h>
#include <unistd.h>
+#include <libgen.h>
#include <iostream>
#include <set>
diff --git a/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.cc b/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.cc
index 6019fc7..5953e32 100644
--- a/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.cc
+++ b/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.cc
@@ -41,6 +41,10 @@
#include "common/using_std_string.h"
+#ifndef N_UNDF
+#define N_UNDF 0
+#endif
+
using std::vector;
namespace google_breakpad {
diff --git a/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.h b/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.h
index 98ee2dd..d57aa68 100644
--- a/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.h
+++ b/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.h
@@ -55,7 +55,7 @@
#ifdef HAVE_MACH_O_NLIST_H
#include <mach-o/nlist.h>
-#elif defined(HAVE_A_OUT_H)
+#elif 0
#include <a.out.h>
#endif
diff --git a/toolkit/crashreporter/google-breakpad/src/third_party/lss/linux_syscall_support.h b/toolkit/crashreporter/google-breakpad/src/third_party/lss/linux_syscall_support.h
index 93fdad7..f34e5e0 100644
--- a/toolkit/crashreporter/google-breakpad/src/third_party/lss/linux_syscall_support.h
+++ b/toolkit/crashreporter/google-breakpad/src/third_party/lss/linux_syscall_support.h
@@ -1239,6 +1239,12 @@ struct kernel_statfs {
#ifndef __NR_fallocate
#define __NR_fallocate 285
#endif
+
+#undef __NR_pread
+#define __NR_pread __NR_pread64
+#undef __NR_pwrite
+#define __NR_pwrite __NR_pwrite64
+
/* End of x86-64 definitions */
#elif defined(__mips__)
#if _MIPS_SIM == _MIPS_SIM_ABI32
diff --git a/toolkit/mozapps/update/common/updatedefines.h b/toolkit/mozapps/update/common/updatedefines.h
index 79276f7..4c67976 100644
--- a/toolkit/mozapps/update/common/updatedefines.h
+++ b/toolkit/mozapps/update/common/updatedefines.h
@@ -87,7 +87,7 @@ static inline int mywcsprintf(WCHAR* dest, size_t count, const WCHAR* fmt,
# ifdef SOLARIS
# include <sys/stat.h>
-# else
+# elif !defined(__linux__) || defined(__GLIBC__)
# include <fts.h>
# endif
# include <dirent.h>
diff --git a/toolkit/mozapps/update/updater/updater.cpp b/toolkit/mozapps/update/updater/updater.cpp
index 257ccb4..01314e4 100644
--- a/toolkit/mozapps/update/updater/updater.cpp
+++ b/toolkit/mozapps/update/updater/updater.cpp
@@ -3978,6 +3978,7 @@
int add_dir_entries(const NS_tchar* dirpath, ActionList* list) {
int rv = OK;
+#if !defined(__linux__) || defined(__GLIBC__)
FTS* ftsdir;
FTSENT* ftsdirEntry;
mozilla::UniquePtr<NS_tchar[]> searchpath(get_full_path(dirpath));
@@ -4085,6 +4086,7 @@
}
fts_close(ftsdir);
+#endif
return rv;
}

View File

@ -0,0 +1,37 @@
diff --git a/tools/profiler/core/platform-linux-android.cpp b/tools/profiler/core/platform-linux-android.cpp
index 19d0a5c56d..b64b543066 100644
--- a/tools/profiler/core/platform-linux-android.cpp
+++ b/tools/profiler/core/platform-linux-android.cpp
@@ -506,8 +506,10 @@ static void PlatformInit(PSLockRef aLock) {}
ucontext_t sSyncUContext;
void Registers::SyncPopulate() {
- if (!getcontext(&sSyncUContext)) {
- PopulateRegsFromContext(*this, &sSyncUContext);
- }
+ #if defined(__GLIBC__)
+ if (!getcontext(&sSyncUContext)) {
+ PopulateRegsFromContext(*this, &sSyncUContext);
+ }
+ #endif
}
#endif
diff --git a/tools/profiler/lul/LulElf.cpp b/tools/profiler/lul/LulElf.cpp
index 9998d04d0d..348a7086fc 100644
--- a/tools/profiler/lul/LulElf.cpp
+++ b/tools/profiler/lul/LulElf.cpp
@@ -469,10 +469,10 @@ string FormatIdentifier(unsigned char identifier[16]) {
// Return the non-directory portion of FILENAME: the portion after the
// last slash, or the whole filename if there are no slashes.
string BaseFileName(const string& filename) {
- // Lots of copies! basename's behavior is less than ideal.
- char* c_filename = strdup(filename.c_str());
- string base = basename(c_filename);
- free(c_filename);
+ // basename's behavior is less than ideal so avoid it
+ const char *c_filename = filename.c_str();
+ const char *p = strrchr(c_filename, '/');
+ string base = p ? p+1 : c_filename;
return base;
}

View File

@ -0,0 +1,20 @@
--- ./media/webrtc/trunk/webrtc/system_wrappers/source/cpu_features_linux.c.orig 2018-05-09 23:48:44.677389171 +0200
+++ ./media/webrtc/trunk/webrtc/system_wrappers/source/cpu_features_linux.c 2018-05-09 23:48:56.254373557 +0200
@@ -14,7 +14,7 @@
#ifndef __GLIBC_PREREQ
#define __GLIBC_PREREQ(a, b) 0
#endif
-#if __GLIBC_PREREQ(2, 16)
+#if !__GLIBC__ || __GLIBC_PREREQ(2, 16)
#include <sys/auxv.h>
#else
#include <fcntl.h>
@@ -32,7 +32,7 @@
int architecture = 0;
unsigned long hwcap = 0;
const char* platform = NULL;
-#if __GLIBC_PREREQ(2, 16)
+#if !__GLIBC__ || __GLIBC_PREREQ(2, 16)
hwcap = getauxval(AT_HWCAP);
platform = (const char*)getauxval(AT_PLATFORM);
#else

View File

@ -0,0 +1,34 @@
--- a/xpcom/base/nsMemoryReporterManager.cpp.orig 2019-03-19 17:12:20.844810044 +0100
+++ b/xpcom/base/nsMemoryReporterManager.cpp 2019-03-19 17:13:32.505133615 +0100
@@ -123,6 +123,7 @@
return GetProcSelfSmapsPrivate(aN);
}
+#ifdef __GLIBC__
# ifdef HAVE_MALLINFO
# define HAVE_SYSTEM_HEAP_REPORTER 1
static MOZ_MUST_USE nsresult SystemHeapSize(int64_t* aSizeOut) {
@@ -142,6 +143,7 @@
return NS_OK;
}
# endif
+#endif // __GLIBC__
#elif defined(__DragonFly__) || defined(__FreeBSD__) || defined(__NetBSD__) || \
defined(__OpenBSD__) || defined(__FreeBSD_kernel__)
@@ -642,6 +644,7 @@
return NS_OK;
}
+#ifdef __GLIBC__
# define HAVE_SYSTEM_HEAP_REPORTER 1
// Windows can have multiple separate heaps. During testing there were multiple
// heaps present but the non-default ones had sizes no more than a few 10s of
@@ -698,6 +701,7 @@
*aSizeOut = heapsSize;
return NS_OK;
}
+#endif // __GLIBC__
struct SegmentKind {
DWORD mState;

14
testing/firefox/post-install Executable file
View File

@ -0,0 +1,14 @@
#!/bin/sh
cat <<EOF
NOTE: Install the 'firefox-privacy' package to
enable extra privacy restrictions.
NOTE: This includes more telemetry removals,
hardened settings, no phoning-home etc.
-> kiss b firefox-privacy
-> kiss i firefox-privacy
EOF

11
testing/firefox/sources Normal file
View File

@ -0,0 +1,11 @@
https://archive.mozilla.org/pub/firefox/releases/73.0b1/source/firefox-73.0b1.source.tar.xz
https://ftp.gnu.org/gnu/autoconf/autoconf-2.13.tar.gz autoconf2.13/
files/mozconfig
files/stab.h toolkit/crashreporter/google-breakpad/src/
patches/fix-fortify-system-wrappers.patch
patches/fix-seccomp-bpf.patch
patches/fix-toolkit.patch
patches/fix-tools.patch
patches/fix-webrtc-glibcisms.patch
patches/mallinfo.patch
patches/firefox-73-no-dbus.patch

1
testing/firefox/version Normal file
View File

@ -0,0 +1 @@
73.0b1 1