summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorMuflone2024-01-07 23:51:22 +0100
committerMuflone2024-01-07 23:51:22 +0100
commitedff5d4d7efa6e5b5e8f226dce5b0edca15cc9e6 (patch)
tree4a4031cd3532f584e6b2cbc13f7c85df4fb969fe
parent36009f6cd1d2fa1d87a587b437062e4efa03f0b7 (diff)
downloadaur-firefox-esr52.tar.gz
Updated package firefox-esr52 52.9.0-9
-rw-r--r--.SRCINFO14
-rw-r--r--PKGBUILD38
-rw-r--r--RemoteSpellCheckEngineChild.patch12
-rw-r--r--arc4random.patch45
-rw-r--r--gcc_lto-partitions.patch36
-rw-r--r--icu74_nsJISx4051LineBreaker.patch17
-rw-r--r--mach_install_ignore_errors.patch31
-rw-r--r--mathops_operand_type_mismatch_for_shr.patch76
8 files changed, 257 insertions, 12 deletions
diff --git a/.SRCINFO b/.SRCINFO
index ecc9461208cc..37a94edf2c36 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = firefox-esr52
pkgdesc = Standalone web browser from mozilla.org, Extended Support Release 52.x with NPAPI support
pkgver = 52.9.0
- pkgrel = 8
+ pkgrel = 9
url = https://www.mozilla.org/en-US/firefox/organizations/
arch = x86_64
license = MPL
@@ -63,6 +63,11 @@ pkgbase = firefox-esr52
source = gcc11_limits.patch
source = mach_install_ignore_errors.patch
source = seamonkey-use-scoped-enums-in-IDBTransaction.patch::https://bugs.archlinux.org/task/71113?getfile=20366
+ source = RemoteSpellCheckEngineChild.patch
+ source = icu74_nsJISx4051LineBreaker.patch
+ source = gcc_lto-partitions.patch::https://bug1258215.bmoattachments.org/attachment.cgi?id=8766692
+ source = arc4random.patch
+ source = mathops_operand_type_mismatch_for_shr.patch::https://git.videolan.org/?p=ffmpeg.git;a=patch;h=effadce6c756247ea8bae32dc13bb3e6f464f0eb
validpgpkeys = 2B90598A745E992F315E22C58AB132963A06537A
sha256sums = c01d09658c53c1b3a496e353a24dad03b26b81d3b1d099abc26a06f81c199dd6
sha256sums = 9efd02ff78c31f8690a12401faac2605dffcac12eaf11e1791ec4221570c2746
@@ -82,7 +87,12 @@ pkgbase = firefox-esr52
sha256sums = ba7858a8cb852388c870bb9acd20bedc5e9cb0b2cf7bdfa5c334e61350279232
sha256sums = 1f324e9a5bf195a58416f622c025a9dd0aac7d802f838e44d9b55b34a0e56585
sha256sums = f88b950d72d5edae01289fddb29dad75de075ed61735782da6687bf56af225d8
- sha256sums = 56d70daae3a867d3c026970a6b8589678f84a1e58cf14772a3d0ef1c717f6c19
+ sha256sums = cc1cbddc8f984dc6e626eda530e67592ac1982f5644318b7873e989392926612
sha256sums = 6227a54ef4519c19ab8e39412bca71711fabab393491db691f7ef90dbe99f225
+ sha256sums = 979ddabbd475eee2664a63667cd4c7867ce781d5b8fc14a3de3fe51577b75bf0
+ sha256sums = 0aedf9faa0be244be6fefbe25bf5f85df0ce757f7b0d45720b1baa2f6ee1f990
+ sha256sums = 64118a811ecf34762c433bad92e9e895c69b8a3060e7261246519a2b6d25ff1b
+ sha256sums = 0a8a8119c3b10d09f7caf3ebe9b25ae7f51001ce835cab8baafc507fb3fd6772
+ sha256sums = a50d7da9870a3fd801ad3a4d13d5c9b260acb094cf8bfa4afd95a54741173a7f
pkgname = firefox-esr52
diff --git a/PKGBUILD b/PKGBUILD
index 863bc2dc9fe8..7a5c727ba950 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -5,7 +5,7 @@
pkgname=firefox-esr52
pkgver=52.9.0
-pkgrel=8
+pkgrel=9
pkgdesc='Standalone web browser from mozilla.org, Extended Support Release 52.x with NPAPI support'
arch=('x86_64')
license=('MPL' 'GPL' 'LGPL')
@@ -40,7 +40,12 @@ source=("https://ftp.mozilla.org/pub/firefox/releases/${pkgver}esr/source/firefo
"linux_remove_sysctl.patch"
"gcc11_limits.patch"
"mach_install_ignore_errors.patch"
- "seamonkey-use-scoped-enums-in-IDBTransaction.patch"::"https://bugs.archlinux.org/task/71113?getfile=20366")
+ "seamonkey-use-scoped-enums-in-IDBTransaction.patch"::"https://bugs.archlinux.org/task/71113?getfile=20366"
+ "RemoteSpellCheckEngineChild.patch"
+ "icu74_nsJISx4051LineBreaker.patch"
+ "gcc_lto-partitions.patch"::"https://bug1258215.bmoattachments.org/attachment.cgi?id=8766692"
+ "arc4random.patch"
+ "mathops_operand_type_mismatch_for_shr.patch"::"https://git.videolan.org/?p=ffmpeg.git;a=patch;h=effadce6c756247ea8bae32dc13bb3e6f464f0eb")
sha256sums=('c01d09658c53c1b3a496e353a24dad03b26b81d3b1d099abc26a06f81c199dd6'
'9efd02ff78c31f8690a12401faac2605dffcac12eaf11e1791ec4221570c2746'
'a2474b32b9b2d7e0fb53a4c89715507ad1c194bef77713d798fa39d507def9e9'
@@ -59,8 +64,13 @@ sha256sums=('c01d09658c53c1b3a496e353a24dad03b26b81d3b1d099abc26a06f81c199dd6'
'ba7858a8cb852388c870bb9acd20bedc5e9cb0b2cf7bdfa5c334e61350279232'
'1f324e9a5bf195a58416f622c025a9dd0aac7d802f838e44d9b55b34a0e56585'
'f88b950d72d5edae01289fddb29dad75de075ed61735782da6687bf56af225d8'
- '56d70daae3a867d3c026970a6b8589678f84a1e58cf14772a3d0ef1c717f6c19'
- '6227a54ef4519c19ab8e39412bca71711fabab393491db691f7ef90dbe99f225')
+ 'cc1cbddc8f984dc6e626eda530e67592ac1982f5644318b7873e989392926612'
+ '6227a54ef4519c19ab8e39412bca71711fabab393491db691f7ef90dbe99f225'
+ '979ddabbd475eee2664a63667cd4c7867ce781d5b8fc14a3de3fe51577b75bf0'
+ '0aedf9faa0be244be6fefbe25bf5f85df0ce757f7b0d45720b1baa2f6ee1f990'
+ '64118a811ecf34762c433bad92e9e895c69b8a3060e7261246519a2b6d25ff1b'
+ '0a8a8119c3b10d09f7caf3ebe9b25ae7f51001ce835cab8baafc507fb3fd6772'
+ 'a50d7da9870a3fd801ad3a4d13d5c9b260acb094cf8bfa4afd95a54741173a7f')
validpgpkeys=('2B90598A745E992F315E22C58AB132963A06537A')
# Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
@@ -134,6 +144,26 @@ prepare() {
# Fix for nss 3.66
patch -Np1 -i "${srcdir}/seamonkey-use-scoped-enums-in-IDBTransaction.patch"
+
+ # Fix for RemoteSpellCheckEngineChild
+ patch -Np1 -i "${srcdir}/RemoteSpellCheckEngineChild.patch"
+
+ # Fix for icu 74
+ patch -Np1 -i "${srcdir}/icu74_nsJISx4051LineBreaker.patch"
+ # https://bugzilla.mozilla.org/show_bug.cgi?id=1862601
+
+ # Fix for G++ lto-partitions=1
+ # https://bugzilla.mozilla.org/show_bug.cgi?id=1258215
+ patch -Np1 -i "${srcdir}/gcc_lto-partitions.patch"
+
+ # Fix for arc4random
+ # https://bugzilla.mozilla.org/show_bug.cgi?id=1782988
+ patch -Np1 -i "${srcdir}/arc4random.patch"
+
+ # Fix for ffmpeg mathops
+ # https://hg.mozilla.org/releases/mozilla-esr115/rev/e024fe4fd62c
+ cd "media/ffvpx"
+ patch -Np1 -i "${srcdir}/mathops_operand_type_mismatch_for_shr.patch"
}
build() {
diff --git a/RemoteSpellCheckEngineChild.patch b/RemoteSpellCheckEngineChild.patch
new file mode 100644
index 000000000000..46d4a3fae357
--- /dev/null
+++ b/RemoteSpellCheckEngineChild.patch
@@ -0,0 +1,12 @@
+diff -Naur firefox-52.9.0esr.orig/extensions/spellcheck/src/mozSpellChecker.h firefox-52.9.0esr/extensions/spellcheck/src/mozSpellChecker.h
+--- firefox-52.9.0esr.orig/extensions/spellcheck/src/mozSpellChecker.h 2024-01-07 15:58:46.604431217 +0100
++++ firefox-52.9.0esr/extensions/spellcheck/src/mozSpellChecker.h 2024-01-07 16:00:47.739420245 +0100
+@@ -17,7 +17,7 @@
+ #include "nsTArray.h"
+ #include "mozISpellI18NUtil.h"
+ #include "nsCycleCollectionParticipant.h"
+-#include "RemoteSpellCheckEngineChild.h"
++#include "mozilla/RemoteSpellCheckEngineChild.h"
+
+ namespace mozilla {
+ class PRemoteSpellcheckEngineChild;
diff --git a/arc4random.patch b/arc4random.patch
new file mode 100644
index 000000000000..cb5834820b76
--- /dev/null
+++ b/arc4random.patch
@@ -0,0 +1,45 @@
+diff -Naur firefox-52.9.0esr.orig/ipc/chromium/src/third_party/libevent/arc4random.c firefox-52.9.0esr/ipc/chromium/src/third_party/libevent/arc4random.c
+--- firefox-52.9.0esr.orig/ipc/chromium/src/third_party/libevent/arc4random.c 2024-01-07 16:54:39.331683004 +0100
++++ firefox-52.9.0esr/ipc/chromium/src/third_party/libevent/arc4random.c 2024-01-07 19:46:19.624639689 +0100
+@@ -477,20 +477,6 @@
+ }
+ #endif
+
+-ARC4RANDOM_EXPORT void
+-arc4random_buf(void *_buf, size_t n)
+-{
+- unsigned char *buf = _buf;
+- _ARC4_LOCK();
+- arc4_stir_if_needed();
+- while (n--) {
+- if (--arc4_count <= 0)
+- arc4_stir();
+- buf[n] = arc4_getbyte();
+- }
+- _ARC4_UNLOCK();
+-}
+-
+ #ifndef ARC4RANDOM_NOUNIFORM
+ /*
+ * Calculate a uniformly distributed random number less than upper_bound
+diff -Naur firefox-52.9.0esr.orig/ipc/chromium/src/third_party/libevent/linux/event2/event-config.h firefox-52.9.0esr/ipc/chromium/src/third_party/libevent/linux/event2/event-config.h
+--- firefox-52.9.0esr.orig/ipc/chromium/src/third_party/libevent/linux/event2/event-config.h 2024-01-07 16:54:39.341683019 +0100
++++ firefox-52.9.0esr/ipc/chromium/src/third_party/libevent/linux/event2/event-config.h 2024-01-07 18:37:36.641265170 +0100
+@@ -23,11 +23,15 @@
+ /* Define if libevent should not be compiled with thread support */
+ /* #undef _EVENT_DISABLE_THREAD_SUPPORT */
+
++#ifdef HAVE_ARC4RANDOM
+ /* Define to 1 if you have the `arc4random' function. */
+-/* #undef _EVENT_HAVE_ARC4RANDOM */
++#define EVENT__HAVE_ARC4RANDOM 1
++#endif
+
++#ifdef HAVE_ARC4RANDOM_BUF
+ /* Define to 1 if you have the `arc4random_buf' function. */
+-/* #undef _EVENT_HAVE_ARC4RANDOM_BUF */
++#define EVENT__HAVE_ARC4RANDOM_BUF 1
++#endif
+
+ /* Define to 1 if you have the <arpa/inet.h> header file. */
+ #define _EVENT_HAVE_ARPA_INET_H 1
diff --git a/gcc_lto-partitions.patch b/gcc_lto-partitions.patch
new file mode 100644
index 000000000000..d6e502eb8dd0
--- /dev/null
+++ b/gcc_lto-partitions.patch
@@ -0,0 +1,36 @@
+diff -Naur a/ipc/app/moz.build b/ipc/app/moz.build
+--- a/ipc/app/moz.build 2016-06-01 12:11:45.000000000 +0800
++++ b/ipc/app/moz.build 2016-06-30 13:38:44.418231590 +0800
+@@ -85,7 +85,7 @@
+ # from the function using it which breaks the build. Work around that by
+ # forcing there to be only one partition.
+ if '-flto' in CONFIG['OS_CXXFLAGS'] and not CONFIG['CLANG_CXX']:
+- LDFLAGS += ['--param lto-partitions=1']
++ LDFLAGS += ['--lto-partition=one']
+
+ if CONFIG['MOZ_SANDBOX'] and CONFIG['OS_TARGET'] == 'Darwin':
+ # For sandbox includes and the include dependencies those have
+diff -Naur a/ipc/app/pie/moz.build b/ipc/app/pie/moz.build
+--- a/ipc/app/pie/moz.build 2016-05-13 01:13:13.000000000 +0800
++++ b/ipc/app/pie/moz.build 2016-06-30 13:38:31.791619842 +0800
+@@ -25,7 +25,7 @@
+ # from the function using it which breaks the build. Work around that by
+ # forcing there to be only one partition.
+ if '-flto' in CONFIG['OS_CXXFLAGS'] and not CONFIG['CLANG_CXX']:
+- LDFLAGS += ['--param lto-partitions=1']
++ LDFLAGS += ['--lto-partition=one']
+
+ LDFLAGS += ['-pie']
+
+diff -Naur a/security/sandbox/linux/moz.build b/security/sandbox/linux/moz.build
+--- a/security/sandbox/linux/moz.build 2016-06-01 12:11:46.000000000 +0800
++++ b/security/sandbox/linux/moz.build 2016-06-30 13:38:52.561530457 +0800
+@@ -79,7 +79,7 @@
+ # from the function using it which breaks the build. Work around that by
+ # forcing there to be only one partition.
+ if '-flto' in CONFIG['OS_CXXFLAGS'] and not CONFIG['CLANG_CXX']:
+- LDFLAGS += ['--param lto-partitions=1']
++ LDFLAGS += ['--lto-partition=one']
+
+ DEFINES['NS_NO_XPCOM'] = True
+ DISABLE_STL_WRAPPING = True
diff --git a/icu74_nsJISx4051LineBreaker.patch b/icu74_nsJISx4051LineBreaker.patch
new file mode 100644
index 000000000000..915cd694dea6
--- /dev/null
+++ b/icu74_nsJISx4051LineBreaker.patch
@@ -0,0 +1,17 @@
+diff -Naur firefox-52.9.0esr.orig/intl/lwbrk/nsJISx4051LineBreaker.cpp firefox-52.9.0esr/intl/lwbrk/nsJISx4051LineBreaker.cpp
+--- firefox-52.9.0esr.orig/intl/lwbrk/nsJISx4051LineBreaker.cpp 2024-01-07 16:54:44.911690681 +0100
++++ firefox-52.9.0esr/intl/lwbrk/nsJISx4051LineBreaker.cpp 2024-01-07 17:18:28.544628736 +0100
+@@ -550,7 +550,12 @@
+ /* REGIONAL_INDICATOR = 39, [RI] */ CLASS_CHARACTER,
+ /* E_BASE = 40, [EB] */ CLASS_BREAKABLE,
+ /* E_MODIFIER = 41, [EM] */ CLASS_CHARACTER,
+- /* ZWJ = 42, [ZWJ]*/ CLASS_CHARACTER
++ /* ZWJ = 42, [ZWJ]*/ CLASS_CHARACTER,
++ /* AKSARA = 43, [AK] */ CLASS_CHARACTER,
++ /* AKSARA_PREBASE = 44, [AP] */ CLASS_CHARACTER,
++ /* AKSARA_START = 45, [AS] */ CLASS_CHARACTER,
++ /* VIRAMA_FINAL = 46, [VF] */ CLASS_CHARACTER,
++ /* VIRAMA = 47, [VI] */ CLASS_CHARACTER
+ };
+
+ #if ENABLE_INTL_API
diff --git a/mach_install_ignore_errors.patch b/mach_install_ignore_errors.patch
index a6b13f54f3b2..8f664c3f21c2 100644
--- a/mach_install_ignore_errors.patch
+++ b/mach_install_ignore_errors.patch
@@ -1,16 +1,35 @@
diff -Naur firefox-52.9.0esr.orig/toolkit/mozapps/installer/packager.py firefox-52.9.0esr/toolkit/mozapps/installer/packager.py
---- firefox-52.9.0esr.orig/toolkit/mozapps/installer/packager.py 2017-04-11 04:13:24.000000000 +0200
-+++ firefox-52.9.0esr/toolkit/mozapps/installer/packager.py 2021-11-07 17:31:56.920859058 +0100
-@@ -163,8 +163,10 @@
+--- firefox-52.9.0esr.orig/toolkit/mozapps/installer/packager.py 2024-01-07 16:54:43.185021639 +0100
++++ firefox-52.9.0esr/toolkit/mozapps/installer/packager.py 2024-01-07 21:33:32.564305725 +0100
+@@ -163,17 +163,20 @@
% resource],
extra_linker_path=gre_path,
extra_env=extra_env):
- errors.fatal('Error while running startup cache precompilation')
- return
+- from mozpack.mozjar import JarReader
+- jar = JarReader(cache)
+- resource = '/resource/%s/' % resource
+- for f in jar:
+- if resource in f.filename:
+- path = f.filename[f.filename.index(resource) + len(resource):]
+- if registry.contains(path):
+- registry.add(f.filename, GeneratedFile(f.read()))
+- jar.close()
+ # errors.fatal('Error while running startup cache precompilation')
+ # return
+ # Ignore the xpcshell errors as it's buggy ATM
+ pass
- from mozpack.mozjar import JarReader
- jar = JarReader(cache)
- resource = '/resource/%s/' % resource
++ if os.path.exists(cache):
++ from mozpack.mozjar import JarReader
++ jar = JarReader(cache)
++ resource = '/resource/%s/' % resource
++ for f in jar:
++ if resource in f.filename:
++ path = f.filename[f.filename.index(resource) + len(resource):]
++ if registry.contains(path):
++ registry.add(f.filename, GeneratedFile(f.read()))
++ jar.close()
+ finally:
+ if os.path.exists(cache):
+ os.remove(cache)
diff --git a/mathops_operand_type_mismatch_for_shr.patch b/mathops_operand_type_mismatch_for_shr.patch
new file mode 100644
index 000000000000..33fd3d484fb6
--- /dev/null
+++ b/mathops_operand_type_mismatch_for_shr.patch
@@ -0,0 +1,76 @@
+From effadce6c756247ea8bae32dc13bb3e6f464f0eb Mon Sep 17 00:00:00 2001
+From: =?utf8?q?R=C3=A9mi=20Denis-Courmont?= <remi@remlab.net>
+Date: Sun, 16 Jul 2023 18:18:02 +0300
+Subject: [PATCH] avcodec/x86/mathops: clip constants used with shift
+ instructions within inline assembly
+
+Fixes assembling with binutil as >= 2.41
+
+Signed-off-by: James Almer <jamrial@gmail.com>
+---
+ libavcodec/x86/mathops.h | 26 +++++++++++++++++++++++---
+ 1 file changed, 23 insertions(+), 3 deletions(-)
+
+diff --git a/libavcodec/x86/mathops.h b/libavcodec/x86/mathops.h
+index 6298f5ed19..ca7e2dffc1 100644
+--- a/libavcodec/x86/mathops.h
++++ b/libavcodec/x86/mathops.h
+@@ -35,12 +35,20 @@
+ static av_always_inline av_const int MULL(int a, int b, unsigned shift)
+ {
+ int rt, dummy;
++ if (__builtin_constant_p(shift))
+ __asm__ (
+ "imull %3 \n\t"
+ "shrdl %4, %%edx, %%eax \n\t"
+ :"=a"(rt), "=d"(dummy)
+- :"a"(a), "rm"(b), "ci"((uint8_t)shift)
++ :"a"(a), "rm"(b), "i"(shift & 0x1F)
+ );
++ else
++ __asm__ (
++ "imull %3 \n\t"
++ "shrdl %4, %%edx, %%eax \n\t"
++ :"=a"(rt), "=d"(dummy)
++ :"a"(a), "rm"(b), "c"((uint8_t)shift)
++ );
+ return rt;
+ }
+
+@@ -113,19 +121,31 @@ __asm__ volatile(\
+ // avoid +32 for shift optimization (gcc should do that ...)
+ #define NEG_SSR32 NEG_SSR32
+ static inline int32_t NEG_SSR32( int32_t a, int8_t s){
++ if (__builtin_constant_p(s))
+ __asm__ ("sarl %1, %0\n\t"
+ : "+r" (a)
+- : "ic" ((uint8_t)(-s))
++ : "i" (-s & 0x1F)
+ );
++ else
++ __asm__ ("sarl %1, %0\n\t"
++ : "+r" (a)
++ : "c" ((uint8_t)(-s))
++ );
+ return a;
+ }
+
+ #define NEG_USR32 NEG_USR32
+ static inline uint32_t NEG_USR32(uint32_t a, int8_t s){
++ if (__builtin_constant_p(s))
+ __asm__ ("shrl %1, %0\n\t"
+ : "+r" (a)
+- : "ic" ((uint8_t)(-s))
++ : "i" (-s & 0x1F)
+ );
++ else
++ __asm__ ("shrl %1, %0\n\t"
++ : "+r" (a)
++ : "c" ((uint8_t)(-s))
++ );
+ return a;
+ }
+
+--
+2.30.2
+