firefox: 112.0

This commit is contained in:
Owen Rafferty 2023-04-10 20:16:20 -05:00
parent 67eb9fb9ad
commit db55fe0f01
No known key found for this signature in database
19 changed files with 3 additions and 19514 deletions

View File

@ -1,37 +1,5 @@
#!/bin/sh -e #!/bin/sh -e
mkdir -p dom/media/platforms/ffmpeg/ffmpeg60/include/libavcodec
mkdir -p dom/media/platforms/ffmpeg/ffmpeg60/include/libavutil
cp dom/media/platforms/ffmpeg/ffmpeg57/include/COPYING.LGPLv2.1 \
dom/media/platforms/ffmpeg/ffmpeg60/include/COPYING.LGPLv2.1
cp dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/avconfig.h \
dom/media/platforms/ffmpeg/ffmpeg60/include/libavutil/avconfig.h
for f in \
include/libavcodec/avfft.h \
include/libavcodec/codec_desc.h \
include/libavutil/buffer.h \
include/libavutil/error.h \
include/libavutil/hwcontext_vaapi.h \
include/libavutil/intfloat.h \
include/libavutil/macros.h \
moz.build
do
cp "dom/media/platforms/ffmpeg/ffmpeg59/$f" \
"dom/media/platforms/ffmpeg/ffmpeg60/$f"
done
for f in \
libavcodec/codec.h \
libavcodec/version.h \
libavcodec/version_major.h \
libavutil/mem.h \
libavutil/version.h
do
cp "media/ffvpx/$f" "dom/media/platforms/ffmpeg/ffmpeg60/include/$f"
done
for p in *.patch; do for p in *.patch; do
patch -p1 < "$p" patch -p1 < "$p"
done done

View File

@ -1,6 +1,4 @@
6aab55cdd1b13a9346faaa5073a2a5664eb09f8d31a6faa9ef2e7488c79fc6de04 ee153127ca3d9ac580084d9aaa88958feee7daebde29d83b6f2958b0d0c878c3ee
7ec529317ef480cc07f99a93c05ea8ff48e232c3cf11ed17f7a85d823fa401a5d2
206b47222dc1bf293ae78bd51d851163145852a2f2c90779abe6411de5594c7656
be44c4a1e76704bd9e0fa713f00b88e9897150eda359c3bf58c30461d9cf56e3c8 be44c4a1e76704bd9e0fa713f00b88e9897150eda359c3bf58c30461d9cf56e3c8
ee279241e461011e2265086328d9d0a913ab938bb81aa97fa22b8b9b7edf5e33bc ee279241e461011e2265086328d9d0a913ab938bb81aa97fa22b8b9b7edf5e33bc
8c0f419eb138061e67dbe2ac73e9c8332649fb90aacb57ac4f00d5de94c0cf23a8 8c0f419eb138061e67dbe2ac73e9c8332649fb90aacb57ac4f00d5de94c0cf23a8

View File

@ -1,24 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: stransky <stransky@redhat.com>
Date: Thu, 9 Mar 2023 13:16:19 +0000
Subject: [PATCH] Bug 1820416 Use correct FFVPX headers from ffmpeg 6.0
r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D172116
---
dom/media/platforms/ffmpeg/ffvpx/moz.build | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dom/media/platforms/ffmpeg/ffvpx/moz.build b/dom/media/platforms/ffmpeg/ffvpx/moz.build
index 188b866fc9de..cda0960787a5 100644
--- a/dom/media/platforms/ffmpeg/ffvpx/moz.build
+++ b/dom/media/platforms/ffmpeg/ffvpx/moz.build
@@ -20,7 +20,7 @@ SOURCES += [
]
LOCAL_INCLUDES += [
"..",
- "../ffmpeg59/include",
+ "../ffmpeg60/include",
"/media/mozva",
]

View File

@ -1,6 +1,4 @@
https://ftp.mozilla.org/pub/firefox/releases/111.0/source/firefox-111.0.source.tar.xz https://ftp.mozilla.org/pub/firefox/releases/112.0/source/firefox-112.0.source.tar.xz
patches/0001-Bug-1819374-Squashed-ffmpeg-6.0-update.patch
patches/0002-Bug-1820416-Use-correct-FFVPX-headers-from-ffmpeg-6..patch
patches/fix-linux-header.patch patches/fix-linux-header.patch
patches/musl-sandbox.patch patches/musl-sandbox.patch
patches/no-atk.patch patches/no-atk.patch

View File

@ -1 +1 @@
111.0 2 112.0 1

View File

@ -1,123 +0,0 @@
firefox
________________________________________________________________________________
Mozilla Firefox or simply Firefox, is a free and open-source web browser
developed by the Mozilla Foundation and its subsidiary, the Mozilla Corporation.
Firefox uses the Gecko rendering engine to display web pages. [0]
Upstream: https://www.mozilla.org/firefox
[000] Index
________________________________________________________________________________
* Installation ........................................................... [001]
* Runtime Dependencies ................................................. [002]
* Privacy Package ...................................................... [003]
* Setup .................................................................. [004]
* Enable VAAPI Acceleration ............................................ [005]
* Usage .................................................................. [006]
* References ............................................................. [007]
[001] Installation
________________________________________________________________________________
+------------------------------------------------------------------------------+
| |
| $ kiss b firefox |
| |
+------------------------------------------------------------------------------+
--[002] Runtime Dependencies ---------------------------------------------------
Firefox needs a few additional things to be fully functional. One is an icon
theme and the other is a font. If you have already installed the fonts and
icon theme of your choosing, this step can be skipped.
+----------------------------------------------------------------------------+
| |
| $ kiss b [hicolor-icon-theme|adwaita-icon-theme] |
| $ kiss b ttf-croscore |
| |
+----------------------------------------------------------------------------+
--[003] Privacy Package --------------------------------------------------------
Provided is also an optional privacy package which makes Firefox perform zero
unsolicited network requests. More information can be found in the
documentation (@/firefox-privacy) Expect some website breakage when using this
privacy package YMMV.
+----------------------------------------------------------------------------+
| |
| $ kiss b firefox-privacy |
| |
+----------------------------------------------------------------------------+
[004] Setup
________________________________________________________________________________
As of Firefox 91. There is no need to set special environment variables to
enable Wayland support (in a Wayland only environment like ours). The browser
should start with no further configuration.
--[005] Enable VAAPI Acceleration ----------------------------------------------
As of Firefox 102, only the following modification to about:config should be
required, with no need to disable any sandbox features.
+------------------------------------------------------------------------------+
| |
| about:config |
| |
| media.ffmpeg.vaapi.enabled=true |
| |
+------------------------------------------------------------------------------+
If using AMDGPU, the following kernel option must be enabled. [1]
+------------------------------------------------------------------------------+
| |
| .config |
| |
| CONFIG_CHECKPOINT_RESTORE=y |
| |
+------------------------------------------------------------------------------+
You may also need to set the following environment variable.
+------------------------------------------------------------------------------+
| |
| .profile |
| |
| export MOZ_WAYLAND_DRM_DEVICE=/dev/dri/renderD128 |
| |
+------------------------------------------------------------------------------+
To verify that VAAPI is working, launch Firefox with the following argument and
attempt to watch a video. Pay attention for errors in the output.
+------------------------------------------------------------------------------+
| |
| $ firefox --MOZ_LOG=PlatformDecoderModule:4 |
| |
+------------------------------------------------------------------------------+
[006] Usage
________________________________________________________________________________
Refer to the browser's help output and online documentation for further
information.
[007] References
________________________________________________________________________________
[0] https://en.wikipedia.org/wiki/Firefox

View File

@ -1,81 +0,0 @@
#!/bin/sh -e
for p in *.patch; do
patch -p1 < "$p"
done
sed '/UNZIP/d' toolkit/moz.configure > _
mv -f _ toolkit/moz.configure
# Remove upper limit on psutil for those encountering build errors when using
# python-psutil from community.
sed 's/psutil>=5\.4\.2,<=5\.8\.0/psutil>=5\.4\.2/g' python/sites/mach.txt > _
mv -f _ python/sites/mach.txt
# If using libc++, CXXSTDLIB needs to be set manually.
case $("$CC" -print-file-name=libc++.so) in */*)
export CXXSTDLIB=c++
esac
export CFLAGS="$CFLAGS -w"
export CXXFLAGS="$CXXFLAGS -w"
# Instruct the compiler to trim absolute paths in resulting binaries and instead
# change them to relative paths ($PWD/... ./...).
export RUSTFLAGS="$RUSTFLAGS --remap-path-prefix=$PWD=."
export LDFLAGS="$LDFLAGS -Wl,-rpath=/usr/lib/firefox,--enable-new-dtags"
export RUSTFLAGS="$RUSTFLAGS -Cdebuginfo=0"
export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=system
export MOZ_DEBUG_FLAGS=-g0
export MOZBUILD_STATE_PATH="$PWD/state"
export MOZ_NOSPAM=1
cat > .mozconfig << EOF
ac_add_options --prefix=/usr
ac_add_options --libdir=/usr/lib
ac_add_options --enable-default-toolkit=cairo-gtk3-wayland-only
ac_add_options --enable-strip
ac_add_options --enable-release
ac_add_options --enable-rust-simd
ac_add_options --enable-audio-backends=alsa
ac_add_options --enable-install-strip
ac_add_options --enable-official-branding
ac_add_options --enable-application=browser
ac_add_options --enable-optimize
ac_add_options --with-system-ffi
ac_add_options --with-system-jpeg
ac_add_options --with-system-libvpx
ac_add_options --with-system-nspr
ac_add_options --with-system-nss
ac_add_options --with-system-pixman
ac_add_options --with-system-png
ac_add_options --with-system-webp
ac_add_options --with-system-zlib
ac_add_options --without-wasm-sandboxed-libraries
ac_add_options --disable-eme
ac_add_options --disable-dbus
ac_add_options --disable-tests
ac_add_options --disable-vtune
ac_add_options --disable-updater
ac_add_options --disable-jemalloc
ac_add_options --disable-elf-hack
ac_add_options --disable-callgrind
ac_add_options --disable-profiling
ac_add_options --disable-necko-wifi
ac_add_options --disable-crashreporter
ac_add_options --disable-accessibility
ac_add_options --disable-debug
ac_add_options --disable-debug-symbols
ac_add_options --disable-parental-controls
ac_add_options --disable-system-extension-dirs
EOF
./mach build
DESTDIR="$1" ./mach install
# Remove a lot of uneeded "stuff".
rm -rf \
"$1/usr/include" \
"$1/usr/lib/firefox-devel" \
"$1/usr/share/idl"

View File

@ -1,7 +0,0 @@
84df090b1b4eced24b6160b5363bc62cde50545b45a2355e2e6382a25829c9d432
be44c4a1e76704bd9e0fa713f00b88e9897150eda359c3bf58c30461d9cf56e3c8
ee279241e461011e2265086328d9d0a913ab938bb81aa97fa22b8b9b7edf5e33bc
8c0f419eb138061e67dbe2ac73e9c8332649fb90aacb57ac4f00d5de94c0cf23a8
3bfec8b5e7cb94481d94e1039a602e14564c8a6da5a28f089ce4a69d23f9e42bbb
2914dbf6d620c3403fbe99fcd04618eaab4257b706470dec3bacc5952f79a0fa31
2a1a5e3e928687cca972b6d7ee53f35420fec364ffeda0131f38a42bec309b1c23

View File

@ -1,33 +0,0 @@
alsa-lib
bzip2
cairo
cbindgen make
clang make
expat
ffmpeg
fontconfig
freetype-harfbuzz
gdk-pixbuf
glib
gtk+3
libdrm
libffi
libjpeg-turbo
libpng
libvpx
libwebp
llvm make
m4 make
mesa
nasm make
nodejs make
nspr
nss
pango
pixman
pkgconf make
python make
rust make
wayland
wayland-protocols make
zlib

View File

@ -1,12 +0,0 @@
diff --git a/dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs-netlink.c b/dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs-netlink.c
index 73e85c6ccc..9eca548638 100644
--- a/dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs-netlink.c
+++ b/dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs-netlink.c
@@ -31,6 +31,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#if defined(LINUX)
+#include <net/if.h>
#include "addrs-netlink.h"
#include <csi_platform.h>
#include <assert.h>

View File

@ -1,29 +0,0 @@
diff --git a/security/sandbox/linux/SandboxFilter.cpp b/security/sandbox/linux/SandboxFilter.cpp
index dffefac..19cc432 100644
--- a/security/sandbox/linux/SandboxFilter.cpp
+++ b/security/sandbox/linux/SandboxFilter.cpp
@@ -1595,6 +1595,11 @@ class ContentSandboxPolicy : public SandboxPolicyCommon {
case __NR_clone3:
return Error(ENOSYS);
+# ifdef __NR_fork
+ case __NR_fork:
+ return Error(ENOSYS);
+# endif
+
# ifdef __NR_fadvise64
case __NR_fadvise64:
return Allow();
@@ -1736,10 +1741,10 @@ class GMPSandboxPolicy : public SandboxPolicyCommon {
return Allow();
case __NR_sched_get_priority_min:
case __NR_sched_get_priority_max:
+ case __NR_sched_setscheduler:
return Allow();
case __NR_sched_getparam:
- case __NR_sched_getscheduler:
- case __NR_sched_setscheduler: {
+ case __NR_sched_getscheduler: {
Arg<pid_t> pid(0);
return If(pid == 0, Allow()).Else(Trap(SchedTrap, nullptr));
}

View File

@ -1,16 +0,0 @@
diff --git a/widget/gtk/nsWindow.cpp b/widget/gtk/nsWindow.cpp
index b77fadc..520305a 100644
--- a/widget/gtk/nsWindow.cpp
+++ b/widget/gtk/nsWindow.cpp
@@ -659,9 +659,11 @@ void nsWindow::Destroy() {
// We need to detach accessible object here because mContainer is a custom
// widget and doesn't call gtk_widget_real_destroy() from destroy handler
// as regular widgets.
+#ifdef ACCESSIBILITY
if (AtkObject* ac = gtk_widget_get_accessible(GTK_WIDGET(mContainer))) {
gtk_accessible_set_widget(GTK_ACCESSIBLE(ac), nullptr);
}
+#endif
gtk_widget_destroy(mShell);
mShell = nullptr;

View File

@ -1,56 +0,0 @@
diff -r fc5ee47dac3e toolkit/components/remote/moz.build
--- a/toolkit/components/remote/moz.build Tue Jun 28 12:00:27 2022 -0500
+++ b/toolkit/components/remote/moz.build Thu Jun 30 00:35:24 2022 -0500
@@ -26,7 +26,7 @@
"nsUnixRemoteServer.h",
"RemoteUtils.h",
]
- else:
+ elif CONFIG["MOZ_X11"]:
SOURCES += [
"nsGTKRemoteServer.cpp",
"nsXRemoteClient.cpp",
diff -r fc5ee47dac3e toolkit/components/remote/nsRemoteService.cpp
--- a/toolkit/components/remote/nsRemoteService.cpp Tue Jun 28 12:00:27 2022 -0500
+++ b/toolkit/components/remote/nsRemoteService.cpp Thu Jun 30 00:35:24 2022 -0500
@@ -6,12 +6,14 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifdef MOZ_WIDGET_GTK
-# ifdef MOZ_ENABLE_DBUS
+# if defined(MOZ_ENABLE_DBUS)
# include "nsDBusRemoteServer.h"
# include "nsDBusRemoteClient.h"
-# else
+# elif defined(MOZ_X11)
# include "nsGTKRemoteServer.h"
# include "nsXRemoteClient.h"
+# else
+# include "nsRemoteClient.h"
# endif
#elif defined(XP_WIN)
# include "nsWinRemoteServer.h"
@@ -94,8 +96,10 @@
#ifdef MOZ_WIDGET_GTK
# if defined(MOZ_ENABLE_DBUS)
client = MakeUnique<nsDBusRemoteClient>();
+# elif defined(MOZ_X11)
+ client = MakeUnique<nsXRemoteClient>();
# else
- client = MakeUnique<nsXRemoteClient>();
+ return REMOTE_NOT_FOUND;
# endif
#elif defined(XP_WIN)
client = MakeUnique<nsWinRemoteClient>();
@@ -138,8 +142,10 @@
#ifdef MOZ_WIDGET_GTK
# if defined(MOZ_ENABLE_DBUS)
mRemoteServer = MakeUnique<nsDBusRemoteServer>();
+# elif defined(MOZ_X11)
+ mRemoteServer = MakeUnique<nsGTKRemoteServer>();
# else
- mRemoteServer = MakeUnique<nsGTKRemoteServer>();
+ return;
# endif
#elif defined(XP_WIN)
mRemoteServer = MakeUnique<nsWinRemoteServer>();

View File

@ -1,12 +0,0 @@
diff --git a/config/system-headers.mozbuild b/config/system-headers.mozbuild
index a1b58eb59b..d35da57db3 100644
--- a/config/system-headers.mozbuild
+++ b/config/system-headers.mozbuild
@@ -267,7 +267,6 @@ system_headers = [
'freetype/t1tables.h',
'freetype/ttnameid.h',
'freetype/tttables.h',
- 'fribidi/fribidi.h',
'FSp_fopen.h',
'fstream',
'fstream.h',

View File

@ -1,65 +0,0 @@
diff --git a/moz.configure b/moz.configure
index 95763e2..dc0ed30 100755
--- a/moz.configure
+++ b/moz.configure
@@ -527,60 +527,6 @@ def awk_for_old_configure(value):
add_old_configure_assignment("AWK", awk_for_old_configure)
-
-# Perl detection
-# ==============================================================
-perl = check_prog("PERL", ("perl5", "perl"))
-
-# Until the PERL variable is not necessary in old-configure
-
-
-@depends(perl)
-def perl_for_old_configure(value):
- return value
-
-
-add_old_configure_assignment("PERL", perl_for_old_configure)
-
-
-@template
-def perl_version_check(min_version):
- @depends(perl)
- @checking("for minimum required perl version >= %s" % min_version)
- def get_perl_version(perl):
- return Version(
- check_cmd_output(
- perl,
- "-e",
- "print $]",
- onerror=lambda: die("Failed to get perl version."),
- )
- )
-
- @depends(get_perl_version)
- def check_perl_version(version):
- if version < min_version:
- die("Perl %s or higher is required.", min_version)
-
- @depends(perl)
- @checking("for full perl installation")
- @imports("subprocess")
- def has_full_perl_installation(perl):
- ret = subprocess.call([perl, "-e", "use Config; exit(!-d $Config{archlib})"])
- return ret == 0
-
- @depends(has_full_perl_installation)
- def require_full_perl_installation(has_full_perl_installation):
- if not has_full_perl_installation:
- die(
- "Cannot find Config.pm or $Config{archlib}. "
- "A full perl installation is required."
- )
-
-
-perl_version_check("5.006")
-
-
# GNU make detection
# ==============================================================
option(env="MAKE", nargs=1, help="Path to GNU make")

View File

@ -1,12 +0,0 @@
#!/bin/sh
cat <<EOF
Run 'kiss help firefox' for setup
information and general troubleshooting.
Also available here:
https://kisslinux.org/wiki/pkg/firefox
EOF

View File

@ -1,7 +0,0 @@
https://ftp.mozilla.org/pub/firefox/releases/112.0b9/source/firefox-112.0b9.source.tar.xz
patches/fix-linux-header.patch
patches/musl-sandbox.patch
patches/no-atk.patch
patches/no-dbus.patch
patches/no-fribidi.patch
patches/no-perl.patch

View File

@ -1 +0,0 @@
112.0b9 1