summaryrefslogtreecommitdiff
path: root/user/firefox-esr
diff options
context:
space:
mode:
Diffstat (limited to 'user/firefox-esr')
-rw-r--r--user/firefox-esr/APKBUILD40
-rw-r--r--user/firefox-esr/ppc32-fix.patch43
-rw-r--r--user/firefox-esr/rust-32bit.patch20
3 files changed, 97 insertions, 6 deletions
diff --git a/user/firefox-esr/APKBUILD b/user/firefox-esr/APKBUILD
index 30d2994dd..aca2f0801 100644
--- a/user/firefox-esr/APKBUILD
+++ b/user/firefox-esr/APKBUILD
@@ -1,8 +1,9 @@
+# Contributor: Molly Miller <adelie@m-squa.red>
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=firefox-esr
-pkgver=68.0.2
+pkgver=68.1.0
pkgrel=0
-pkgdesc="Firefox Web browser (unstable)"
+pkgdesc="Firefox web browser (extended support release)"
url="https://www.mozilla.org/firefox/"
arch="all"
options="!check" # Tests disabled
@@ -27,7 +28,8 @@ makedepends="
startup-notification-dev unzip yasm zip gtk+2.0-dev
"
_py2ver="2.7.16"
-source="https://ftp.mozilla.org/pub/firefox/releases/$pkgver/source/firefox-$pkgver.source.tar.xz
+_ffxver="$pkgver"'esr'
+source="https://ftp.mozilla.org/pub/firefox/releases/$_ffxver/source/firefox-$_ffxver.source.tar.xz
https://www.python.org/ftp/python/$_py2ver/Python-$_py2ver.tar.xz
mozconfig
@@ -36,6 +38,8 @@ source="https://ftp.mozilla.org/pub/firefox/releases/$pkgver/source/firefox-$pkg
fix-mutex-build.patch
fix-seccomp-bpf.patch
mozilla-build-arm.patch
+ ppc32-fix.patch
+ rust-32bit.patch
rust-config.patch
shut-up-warning.patch
stackwalk-x86-ppc.patch
@@ -52,6 +56,24 @@ ldpath="$_mozappdir"
# secfixes: firefox
# 68.0.2-r0:
# - CVE-2019-11733
+# 68.1.0-r0:
+# - CVE-2019-9812
+# - CVE-2019-11735
+# - CVE-2019-11736
+# - CVE-2019-11738
+# - CVE-2019-11740
+# - CVE-2019-11742
+# - CVE-2019-11743
+# - CVE-2019-11744
+# - CVE-2019-11746
+# - CVE-2019-11747
+# - CVE-2019-11748
+# - CVE-2019-11749
+# - CVE-2019-11750
+# - CVE-2019-11751
+# - CVE-2019-11752
+# - CVE-2019-11753
+
unpack() {
default_unpack
@@ -88,8 +110,8 @@ prepare() {
echo "ac_add_options --host=\"$CHOST\"" >> "$builddir"/mozconfig
echo "ac_add_options --target=\"$CTARGET\"" >> "$builddir"/mozconfig
# too much memory
- if [ -z "$JOBS" ] || [ $JOBS -ge 16 ]; then
- JOBS=16
+ if [ -z "$JOBS" ] || [ $JOBS -ge 32 ]; then
+ JOBS=32
fi
echo "mk_add_options MOZ_MAKE_FLAGS=\"-j$JOBS\"" >> "$builddir"/mozconfig
@@ -97,6 +119,10 @@ prepare() {
pmmx|x86*)
echo "ac_add_options --disable-elf-hack" >> "$builddir"/mozconfig
;;
+ ppc)
+ echo "ac_add_options --disable-webrtc" >> "$builddir"/mozconfig;
+ export LDFLAGS="$LDFLAGS -latomic"
+ ;;
esac
rm "$builddir"/third_party/python/virtualenv/virtualenv_support/pip*.whl
@@ -172,7 +198,7 @@ package() {
EOF
}
-sha512sums="5c289825fd0de062b9943eabcc16e09c1821c04717e689aa8df03162e722b72ea698195f3ea93e1e746c481dacd77d125301dba951468d134b986e35eb4ef5bb firefox-68.0.2.source.tar.xz
+sha512sums="a53b04b6a4fc98065596117b6bc0aee40c36f74bca02dc7486fda7e9556ad6f221f5ead94db1dc5db572f277556a21b22a0395dae107b67336ca91e33df9882c firefox-68.1.0esr.source.tar.xz
16e814e8dcffc707b595ca2919bd2fa3db0d15794c63d977364652c4a5b92e90e72b8c9e1cc83b5020398bd90a1b397dbdd7cb931c49f1aa4af6ef95414b43e0 Python-2.7.16.tar.xz
1b84e737ce9931872e0eba11d2dd1c9e66ee28f03a4d881ab8df2f7c41b6bcfc74d3dfc7dd03c0b000718ecd71492392538b8615a773e9aca62d52ceff756cbc mozconfig
ace7492f4fb0523c7340fdc09c831906f74fddad93822aff367135538dacd3f56288b907f5a04f53f94c76e722ba0bab73e28d83ec12d3e672554712e6b08613 bad-google-code.patch
@@ -180,6 +206,8 @@ ace7492f4fb0523c7340fdc09c831906f74fddad93822aff367135538dacd3f56288b907f5a04f53
c0b2bf43206c2a5154e560ef30189a1062ae856861b39f52ce69002390ff9972d43e387bfd2bf8d2ab3cac621987bc042c8c0a8b4cf90ae05717ca7705271880 fix-mutex-build.patch
70863b985427b9653ce5e28d6064f078fb6d4ccf43dd1b68e72f97f44868fc0ce063161c39a4e77a0a1a207b7365d5dc7a7ca5e68c726825eba814f2b93e2f5d fix-seccomp-bpf.patch
e61664bc93eadce5016a06a4d0684b34a05074f1815e88ef2613380d7b369c6fd305fb34f83b5eb18b9e3138273ea8ddcfdcb1084fdcaa922a1e5b30146a3b18 mozilla-build-arm.patch
+06a3f4ee6d3726adf3460952fcbaaf24bb15ef8d15b3357fdd1766c7a62b00bd53a1e943b5df7f4e1a69f4fae0d44b64fae1e027d7812499c77894975969ea10 ppc32-fix.patch
+7c615703dc9b8427eeadd13bc9beda02e1c3d986cac1167feaf48fdfdcc15b7456460d4d58f301054cf459242ee75bbcd76bf67e26c2a443bc5655975d24ca1b rust-32bit.patch
45613d476e85fe333ef8091acce4806803953c1a99de4f03ff577cf20c5a1a3d635d0589e1490da104ef80721f4f1b1d35045af3c6892c1a468fa84095f27ad8 rust-config.patch
39ddb15d1453a8412275c36fc8db3befc69dffd4a362e932d280fb7fd1190db595a2af9b468ee49e0714f5e9df6e48eb5794122a64fa9f30d689de8693acbb15 shut-up-warning.patch
452b47b825294779f98ed46bc1065dad76b79ff453521ef049934a120f349c84a1c863b16af1828fe053059823da9690ec917c055ae02dcc5c80c54cad732448 stackwalk-x86-ppc.patch
diff --git a/user/firefox-esr/ppc32-fix.patch b/user/firefox-esr/ppc32-fix.patch
new file mode 100644
index 000000000..b4103c65f
--- /dev/null
+++ b/user/firefox-esr/ppc32-fix.patch
@@ -0,0 +1,43 @@
+--- firefox-68.1.0/xpcom/reflect/xptcall/md/unix/xptcinvoke_ppc_linux.cpp
++++ firefox-68.1.0/xpcom/reflect/xptcall/md/unix/xptcinvoke_ppc_linux.cpp
+@@ -45,11 +45,8 @@ invoke_copy_to_stack(uint32_t* d,
+ uint64_t tempu64;
+
+ for(uint32_t i = 0; i < paramCount; i++, s++) {
+- if(s->IsPtrData()) {
+- if(s->type == nsXPTType::T_JSVAL)
+- tempu32 = (uint32_t) &s->ptr;
+- else
+- tempu32 = (uint32_t) s->ptr;
++ if(s->IsIndirect()) {
++ tempu32 = (uint32_t) &s->val;
+ }
+ else {
+ switch(s->type) {
+@@ -70,7 +67,7 @@ invoke_copy_to_stack(uint32_t* d,
+ }
+ }
+
+- if (!s->IsPtrData() && s->type == nsXPTType::T_DOUBLE) {
++ if (!s->IsIndirect() && s->type == nsXPTType::T_DOUBLE) {
+ #ifndef __NO_FPRS__
+ if (fpr < FPR_COUNT)
+ fpregs[fpr++] = s->val.d;
+@@ -88,7 +85,7 @@ invoke_copy_to_stack(uint32_t* d,
+ d += 2;
+ }
+ }
+- else if (!s->IsPtrData() && s->type == nsXPTType::T_FLOAT) {
++ else if (!s->IsIndirect() && s->type == nsXPTType::T_FLOAT) {
+ #ifndef __NO_FPRS__
+ if (fpr < FPR_COUNT)
+ fpregs[fpr++] = s->val.f; // if passed in registers, floats are promoted to doubles
+@@ -99,7 +96,7 @@ invoke_copy_to_stack(uint32_t* d,
+ else
+ *((float*) d++) = s->val.f;
+ }
+- else if (!s->IsPtrData() && (s->type == nsXPTType::T_I64
++ else if (!s->IsIndirect() && (s->type == nsXPTType::T_I64
+ || s->type == nsXPTType::T_U64)) {
+ if (gpr & 1) gpr++; // longlongs are aligned in odd/even register pairs, eg. r5/r6
+ if ((gpr + 1) < GPR_COUNT) {
diff --git a/user/firefox-esr/rust-32bit.patch b/user/firefox-esr/rust-32bit.patch
new file mode 100644
index 000000000..f9281cb7a
--- /dev/null
+++ b/user/firefox-esr/rust-32bit.patch
@@ -0,0 +1,20 @@
+--- firefox-68.1.0/config/makefiles/rust.mk.old 2019-08-26 16:52:20.000000000 +0000
++++ firefox-68.1.0/config/makefiles/rust.mk 2019-10-03 21:17:55.062373830 +0000
+@@ -47,7 +47,7 @@
+ ifndef DEVELOPER_OPTIONS
+ ifndef MOZ_DEBUG_RUST
+ # Enable link-time optimization for release builds.
+-cargo_rustc_flags += -C lto
++# OOMs on 32-bit machines: cargo_rustc_flags += -C lto
+ endif
+ endif
+
+@@ -246,7 +246,7 @@
+ ifndef DEVELOPER_OPTIONS
+ ifndef MOZ_DEBUG_RUST
+ ifeq ($(OS_ARCH), Linux)
+- $(call py_action,check_binary,--target --networking $@)
++# Fails because we disable LTO: $(call py_action,check_binary,--target --networking $@)
+ endif
+ endif
+ endif