Mail archive
alpine-aports

[alpine-aports] [PATCH] testing/firefox: upgrade to 65.0

From: Bradley Saulteaux <bradsoto_at_gmail.com>
Date: Tue, 19 Feb 2019 10:01:06 -0700

https://www.firefox.com/
Firefox web browser
---
 community/ffmpeg/APKBUILD                    |   8 +-
 community/libaom/APKBUILD                    |  26 +++++
 main/icu/10-firefox-65.0.1-fix.patch         |  23 ++++
 main/icu/APKBUILD                            |  10 +-
 main/libvpx/10-find-diff.patch               |  11 ++
 main/libvpx/APKBUILD                         |  17 ++-
 testing/cbindgen/APKBUILD                    |  26 +++++
 testing/firefox/10-debug-fixes.patch         |  25 +++++
 testing/firefox/APKBUILD                     | 106 ++++++++-----------
 testing/firefox/disable-moz-stackwalk.patch  |  10 +-
 testing/firefox/fix-arm-atomics-grsec.patch  |  74 ++++++-------
 testing/firefox/fix-seccomp-bpf.patch        |  26 +++--
 testing/firefox/fix-toolkit.patch            |  26 ++---
 testing/firefox/fix-tools.patch              |  18 ++--
 testing/firefox/fix-webrtc-glibcisms.patch   |  18 ++--
 testing/firefox/rust-unitialized-field.patch |  11 +-
 16 files changed, 251 insertions(+), 184 deletions(-)
 create mode 100644 community/libaom/APKBUILD
 create mode 100644 main/icu/10-firefox-65.0.1-fix.patch
 create mode 100644 main/libvpx/10-find-diff.patch
 create mode 100644 testing/cbindgen/APKBUILD
 create mode 100644 testing/firefox/10-debug-fixes.patch
diff --git a/community/ffmpeg/APKBUILD b/community/ffmpeg/APKBUILD
index 4d2ac5757e..85cb74408a 100644
--- a/community/ffmpeg/APKBUILD
+++ b/community/ffmpeg/APKBUILD
_at_@ -4,7 +4,7 @@
 # Maintainer: Natanael Copa <ncopa_at_alpinelinux.org>
 pkgname=ffmpeg
 pkgver=4.1.1
-pkgrel=0
+pkgrel=1
 pkgdesc="Complete and free Internet live audio and video broadcasting solution for Linux/Unix"
 url="http://ffmpeg.org/"
 arch="all"
_at_@ -12,7 +12,7 @@ license="GPL"
 options="!check" # tests/data/hls-lists.append.m3u8 fails
 subpackages="$pkgname-dev $pkgname-doc $pkgname-libs"
 makedepends="gnutls-dev lame-dev libvorbis-dev xvidcore-dev zlib-dev libvdpau-dev
-	imlib2-dev x264-dev libtheora-dev coreutils bzip2-dev perl-dev libvpx-dev
+	imlib2-dev x264-dev libtheora-dev coreutils bzip2-dev perl-dev libaom-dev
 	libvpx-dev sdl2-dev libxfixes-dev libva-dev alsa-lib-dev
 	v4l-utils-dev yasm opus-dev x265-dev libass-dev"
 checkdepends="rsync"
_at_@ -71,13 +71,13 @@ build() {
 	x86 | arm*) _asm="--disable-asm" ;;
 	esac
 
-	cd "$builddir"
 	./configure \
 		--prefix=/usr \
 		--enable-avresample \
 		--enable-avfilter \
 		--enable-gnutls \
 		--enable-gpl \
+		--enable-libaom \
 		--enable-libass \
 		--enable-libmp3lame \
 		--enable-libvorbis \
_at_@ -106,7 +106,6 @@ build() {
 
 # https://ffmpeg.org/fate.html
 check() {
-	cd "$builddir"
 	./configure \
 		--samples=fate-suite/
 	make fate-rsync
_at_@ -115,7 +114,6 @@ check() {
 }
 
 package() {
-	cd "$builddir"
 	make DESTDIR="$pkgdir" install install-man
 	install -D -m755 tools/qt-faststart "$pkgdir/usr/bin/qt-faststart"
 #	strip --strip-debug "$pkgdir"/usr/lib/*.a
diff --git a/community/libaom/APKBUILD b/community/libaom/APKBUILD
new file mode 100644
index 0000000000..a2948a4e4c
--- /dev/null
+++ b/community/libaom/APKBUILD
_at_@ -0,0 +1,26 @@
+# Maintainer: Bradley Saulteaux <~_at_bradso.to>
+pkgname=libaom
+pkgver=1.0.0
+pkgrel=0
+pkgdesc="Alliance for Open Media"
+url="https://aomedia.googlesource.com/aom/"
+arch="all"
+license="BSD-2-Clause"
+depends=""
+makedepends="cmake python yasm"
+install=""
+options="!check" #tests fail at AV1/AV1DecodeMultiThreadedTest.MD5Match
+subpackages="$pkgname-dev"
+source="$pkgname-$pkgver.tar.gz::https://aomedia.googlesource.com/aom/+archive/v$pkgver.tar.gz"
+builddir="$srcdir/build"
+build() {
+	cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr -DBUILD_SHARED_LIBS=1 ..
+	sed -i 's/0.1.0/1.0.0/g' aom.pc
+}
+check() {
+	make runtests
+}
+package() {
+	make DESTDIR="$pkgdir" install
+}
+sha512sums="f506a9399cfcf2aa3473639210511270c5a44b789eb51ce5616bd61f18a18e64080240a7b1ea2502d27df40ddf290b8f4686282f1eda3ffc57c45c803474f768  libaom-1.0.0.tar.gz"
diff --git a/main/icu/10-firefox-65.0.1-fix.patch b/main/icu/10-firefox-65.0.1-fix.patch
new file mode 100644
index 0000000000..6c47bdde2a
--- /dev/null
+++ b/main/icu/10-firefox-65.0.1-fix.patch
_at_@ -0,0 +1,23 @@
+https://github.com/unicode-org/icu/commit/8baff8f03e07d8e02304d0c888d0bb21ad2eeb01
+fixed in 63.2
+--- ./common/unicode/urename.h
++++ ./common/unicode/urename.h.
+_at_@ -110,7 +110,6 @@
+ #define _UTF7Data U_ICU_ENTRY_POINT_RENAME(_UTF7Data)
+ #define _UTF8Data U_ICU_ENTRY_POINT_RENAME(_UTF8Data)
+ #define allowedHourFormatsCleanup U_ICU_ENTRY_POINT_RENAME(allowedHourFormatsCleanup)
+-#define checkImpl U_ICU_ENTRY_POINT_RENAME(checkImpl)
+ #define cmemory_cleanup U_ICU_ENTRY_POINT_RENAME(cmemory_cleanup)
+ #define dayPeriodRulesCleanup U_ICU_ENTRY_POINT_RENAME(dayPeriodRulesCleanup)
+ #define deleteAllowedHourFormats U_ICU_ENTRY_POINT_RENAME(deleteAllowedHourFormats)
+--- ./i18n/uspoof.cpp
++++ ./i18n/uspoof.cpp.
+_at_@ -547,7 +547,7 @@
+     return uspoof_check2UnicodeString(sc, id, NULL, status);
+ }
+ 
+-int32_t checkImpl(const SpoofImpl* This, const UnicodeString& id, CheckResult* checkResult, UErrorCode* status) {
++static int32_t checkImpl(const SpoofImpl* This, const UnicodeString& id, CheckResult* checkResult, UErrorCode* status) {
+     U_ASSERT(This != NULL);
+     U_ASSERT(checkResult != NULL);
+     checkResult->clear();
diff --git a/main/icu/APKBUILD b/main/icu/APKBUILD
index 14b6b66a4c..9bc7bc65e3 100644
--- a/main/icu/APKBUILD
+++ b/main/icu/APKBUILD
_at_@ -6,7 +6,7 @@ pkgver=63.1
 # convert x.y.z to x_y_z
 _ver=${pkgver//./_}
 
-pkgrel=0
+pkgrel=1
 pkgdesc="International Components for Unicode library"
 url="http://www.icu-project.org/"
 arch="all"
_at_@ -17,6 +17,7 @@ depends_dev="$pkgname=$pkgver-r$pkgrel"
 checkdepends="diffutils"
 makedepends=
 source="http://download.icu-project.org/files/icu4c/${pkgver}/${pkgname}4c-$_ver-src.tgz
+	10-firefox-65.0.1-fix.patch
 	"
 
 # secfixes:
_at_@ -30,7 +31,6 @@ source="http://download.icu-project.org/files/icu4c/${pkgver}/${pkgname}4c-$_ver
 builddir="$srcdir"/icu/source
 
 prepare() {
-	cd "$builddir"
 	default_prepare
 	update_config_sub
 
_at_@ -49,7 +49,6 @@ prepare() {
 }
 
 build() {
-	cd "$builddir"
 	./configure \
 		--build=$CBUILD \
 		--host=$CHOST \
_at_@ -67,12 +66,10 @@ check() {
 	case "$CARCH" in
 		arm*|x86) return 0;;
 	esac
-	cd "$builddir"
 	make check
 }
 
 package() {
-	cd "$builddir"
 	make -j1 DESTDIR="$pkgdir" install
 	chmod +x "$pkgdir"/usr/bin/icu-config
 	install -Dm644 "$srcdir"/icu/license.html \
_at_@ -90,4 +87,5 @@ libs() {
 	replaces="icu"
 }
 
-sha512sums="9ab407ed840a00cdda7470dcc4c40299a125ad246ae4d019c4b1ede54781157fd63af015a8228cd95dbc47e4d15a0932b2c657489046a19788e5e8266eac079c  icu4c-63_1-src.tgz"
+sha512sums="9ab407ed840a00cdda7470dcc4c40299a125ad246ae4d019c4b1ede54781157fd63af015a8228cd95dbc47e4d15a0932b2c657489046a19788e5e8266eac079c  icu4c-63_1-src.tgz
+76fc0b69ef5dd78d31ed88e6b2976b3ff8b7715f03a94faef79dc2210fe75b9db1de47f1ccc8a5f783760e41de7da3a32628abc9e1ec44edcca98207c91d952d  10-firefox-65.0.1-fix.patch"
diff --git a/main/libvpx/10-find-diff.patch b/main/libvpx/10-find-diff.patch
new file mode 100644
index 0000000000..c0d9f9955b
--- /dev/null
+++ b/main/libvpx/10-find-diff.patch
_at_@ -0,0 +1,11 @@
+--- ./configure
++++ ./configure.
+_at_@ -166,7 +166,7 @@
+     [ -f "${source_path}/${t}.mk" ] && enable_feature ${t}
+ done
+ 
+-if ! diff --version >/dev/null; then
++if ! which diff &> /dev/null; then
+   die "diff missing: Try installing diffutils via your package manager."
+ fi
+ 
diff --git a/main/libvpx/APKBUILD b/main/libvpx/APKBUILD
index 767b2b21fa..a6a4a4a490 100644
--- a/main/libvpx/APKBUILD
+++ b/main/libvpx/APKBUILD
_at_@ -1,7 +1,7 @@
 # Maintainer: Natanael Copa <ncopa_at_alpinelinux.org>
 pkgname=libvpx
-pkgver=1.6.1
-pkgrel=1
+pkgver=1.7.0
+pkgrel=0
 pkgdesc="Library for the vp8 codec"
 url="https://www.webmproject.org/"
 arch="all"
_at_@ -9,13 +9,12 @@ license="GPL"
 depends=""
 makedepends="coreutils yasm bash perl"
 subpackages="$pkgname-dev $pkgname-utils"
-source="https://storage.googleapis.com/downloads.webmproject.org/releases/webm/$pkgname-$pkgver.tar.bz2
+source="$pkgname-$pkgver.tar.gz::https://chromium.googlesource.com/webm/$pkgname/+archive/v$pkgver.tar.gz
 	fix-arm-float-abi.patch
+	10-find-diff.patch
 	"
-
-builddir="$srcdir"/$pkgname-$pkgver
+builddir="$srcdir"
 build() {
-	cd "$builddir"
 	# build fix for arm
 	export CROSS=" "
 	bash ./configure \
_at_@ -31,7 +30,6 @@ build() {
 }
 
 package() {
-	cd "$builddir"
 	make DIST_DIR="$pkgdir"/usr install
 	chmod 644 "$pkgdir"/usr/include/vpx/*.h \
 		"$pkgdir"/usr/lib/pkgconfig/*
_at_@ -45,5 +43,6 @@ utils() {
 	mv "$pkgdir"/usr/bin "$subpkgdir"/usr/
 }
 
-sha512sums="1a4b009fe1737715c6563a79848126a5859394a5074b1e9cca9bc2e213df90890c15e708040d5f2c96c7c21e268f51e1352ac6911514bf891a4bf3eea154159d  libvpx-1.6.1.tar.bz2
-4eadbc2f4eb68eaff35cf85515aef271d6fd47293a53cba7b7a6e9e0fb71106dfb5ded45b9e9ba83264a91846e4a5fa4db42e39fc3eaff6ac37769e622f90f6c  fix-arm-float-abi.patch"
+sha512sums="6e114a6e8470b05153a8c41b7f30adb37d8cf99dc1c3d016867e5578b4f69905d7a1fcd902b6855f3f6b3e63ae305eb3fadd53359f2c8f344f3d701c3d4882b5  libvpx-1.7.0.tar.gz
+4eadbc2f4eb68eaff35cf85515aef271d6fd47293a53cba7b7a6e9e0fb71106dfb5ded45b9e9ba83264a91846e4a5fa4db42e39fc3eaff6ac37769e622f90f6c  fix-arm-float-abi.patch
+c14015273a2f081ef722f752a7ac17204e7fd5c42fb7a4bb457afdff1fcd2cc276bd34ca80a6e318968e0fa2e6ba49ceee026dd1bd7ee1b2806dbde70fd0a7fb  10-find-diff.patch"
diff --git a/testing/cbindgen/APKBUILD b/testing/cbindgen/APKBUILD
new file mode 100644
index 0000000000..6a58bcb45d
--- /dev/null
+++ b/testing/cbindgen/APKBUILD
_at_@ -0,0 +1,26 @@
+# Maintainer: Bradley Saulteaux <~_at_bradso.to>
+pkgname=cbindgen
+pkgver=0.8.0
+pkgrel=0
+pkgdesc="A tool for generating C bindings to Rust code"
+url="https://github.com/eqrion/cbindgen"
+# limited by rust and cargo
+arch="x86_64"
+license="MPL2"
+depends=""
+subpackages="$pkgname-doc"
+makedepends="cargo"
+install=""
+source="$pkgname-$pkgver.tar.gz::https://github.com/eqrion/$pkgname/archive/v$pkgver.tar.gz"
+builddir="${srcdir}/$pkgname-$pkgver"
+build() {
+	cargo build --release
+}
+check() {
+	cargo test --release
+}
+package() {
+	install -Dt "$pkgdir/usr/bin" target/release/cbindgen
+	install -Dt "$pkgdir/usr/share/doc/$pkgname" -m644 README.md
+}
+sha512sums="634a61556b3ae20bb246d1c34c2869852af1e1003cbf0481a346191eb48f812d19755ae8e895628d53a3ab7792b977255bfb25a50a2dbb9baf18b4f3fc783b18  cbindgen-0.8.0.tar.gz"
diff --git a/testing/firefox/10-debug-fixes.patch b/testing/firefox/10-debug-fixes.patch
new file mode 100644
index 0000000000..968091935e
--- /dev/null
+++ b/testing/firefox/10-debug-fixes.patch
_at_@ -0,0 +1,25 @@
+--- ./intl/locale/LocaleService.cpp
++++ ./intl/locale/LocaleService.cpp.
+_at_@ -526,7 +526,6 @@
+     GetGREFileContents("update.locale", &locale);
+     locale.Trim(" \t\n\r");
+     // This should never be empty.
+-    MOZ_ASSERT(!locale.IsEmpty());
+     if (SanitizeForBCP47(locale, true)) {
+       mDefaultLocale.Assign(locale);
+     }
+--- ./browser/installer/package-manifest.in
++++ ./browser/installer/package-manifest.in.
+_at_@ -499,12 +499,6 @@
+ ; svg
+ _at_RESPATH@/res/svg.css
+ 
+-; [Layout Debugger]
+-#ifdef MOZ_DEBUG
+-_at_RESPATH@/chrome/layoutdebug_at_JAREXT@
+-_at_RESPATH@/chrome/layoutdebug.manifest
+-#endif
+-
+ ; [Personal Security Manager]
+ ;
+ ; NSS libraries are signed in the staging directory,
diff --git a/testing/firefox/APKBUILD b/testing/firefox/APKBUILD
index b31c1997b7..30ca2dc8fc 100644
--- a/testing/firefox/APKBUILD
+++ b/testing/firefox/APKBUILD
_at_@ -1,23 +1,26 @@
 # Contributor: William Pitcock <nenolod_at_dereferenced.org>
 # Maintainer: Natanael Copa <ncopa_at_alpinelinux.org>
 pkgname=firefox
-pkgver=62.0.3
+pkgver=65.0.1
 _pkgver=$pkgver
 _xulver=$pkgver
-pkgrel=2
+pkgrel=0
 pkgdesc="Firefox web browser"
 url="https://www.firefox.com/"
 # limited by rust and cargo
 arch="x86_64"
 license="GPL LGPL MPL"
 depends=""
+options="!check"
 makedepends="
 	alsa-lib-dev
 	autoconf2.13
+	autoconf
 	automake
 	bsd-compat-headers
 	bzip2-dev
 	cargo
+	cbindgen
 	clang-dev
 	dbus-glib-dev
 	ffmpeg-dev
_at_@ -27,6 +30,7 @@ makedepends="
 	hunspell-dev
 	icu-dev
 	libevent-dev
+	libffi-dev
 	libidl-dev
 	libjpeg-turbo-dev
 	libnotify-dev
_at_@ -39,9 +43,11 @@ makedepends="
 	libxcomposite-dev
 	llvm5-dev
 	mesa-dev
+	nasm
 	nspr-dev
 	nss-dev
 	nss-static
+	nodejs
 	paxmark
 	python3-dev
 	sqlite-dev
_at_@ -64,7 +70,6 @@ source="https://ftp.mozilla.org/pub/firefox/releases/$pkgver/source/firefox-$pkg
 	mallinfo.patch
 
 	fix-arm-atomics-grsec.patch
-	fix-arm-version-detect.patch
 	mozilla-build-arm.patch
 	disable-moz-stackwalk.patch
 	fix-rust-target.patch
_at_@ -73,7 +78,9 @@ source="https://ftp.mozilla.org/pub/firefox/releases/$pkgver/source/firefox-$pkg
 	fix-webrtc-glibcisms.patch
 
 	firefox.desktop
-	firefox-safe.desktop"
+	firefox-safe.desktop
+	
+	10-debug-fixes.patch"
 
 builddir="${srcdir}/firefox-$pkgver"
 _mozappdir=/usr/lib/firefox
_at_@ -83,71 +90,44 @@ ldpath="$_mozappdir"
 
 prepare() {
 	default_prepare
-
 	cp "$srcdir"/stab.h toolkit/crashreporter/google-breakpad/src/
 	# https://bugzilla.mozilla.org/show_bug.cgi?id=1341234
-	mkdir -p "$builddir"/objdir
-	echo "ac_add_options BINDGEN_CFLAGS='-I/usr/include/nspr -I/usr/include/pixman-1'" >>objdir/.mozconfig
+	autoreconf old-configure.in
+	cd js/src; autoreconf old-configure.in
 }
 
 build() {
-	cd "$builddir"/objdir
-
 	export SHELL=/bin/sh
 	export BUILD_OFFICIAL=1
 	export MOZILLA_OFFICIAL=1
 	export USE_SHORT_LIBNAME=1
 	# gcc 6
 	export CXXFLAGS="-fno-delete-null-pointer-checks -fno-schedule-insns2"
-
 	# set rpath so linker finds the libs
 	export LDFLAGS="$LDFLAGS -Wl,-rpath,${_mozappdir}"
-
-	../configure \
-		--prefix=/usr \
-		\
-		--disable-crashreporter \
-		--disable-elf-hack \
-		--disable-gold \
-		--disable-install-strip \
-		--disable-jemalloc \
-		--disable-profiling \
-		--disable-pulseaudio \
-		--disable-strip \
-		--disable-tests \
-		--disable-updater \
-		\
-		--enable-alsa \
-		--enable-default-toolkit=cairo-gtk3 \
-		--enable-official-branding \
-		--enable-optimize="$CFLAGS" \
-		--enable-pie \
-		--enable-startup-notification \
-		--enable-system-ffi \
-		--enable-system-sqlite \
-		--enable-ffmpeg \
-		\
-		--with-system-bz2 \
-		--with-system-icu \
-		--with-system-jpeg \
-		--with-system-libevent \
-		--with-system-libvpx \
-		--with-system-nspr \
-		--with-system-nss \
-		--with-system-pixman \
-		--with-system-png \
-		--with-system-zlib \
-		--with-clang-path=/usr/bin/clang \
-		--with-libclang-path=/usr/lib
-	make
-
-	# paxmark outside fakeroot
-	paxmark -msp dist/bin/xpcshell
-
+	ac_add_options() {
+		echo "ac_add_options $1" >>"$builddir"/.mozconfig
+	}
+	mk_add_options() {
+		echo "mk_add_options $1" >>"$builddir"/.mozconfig
+	}
+	ac_add_options "BINDGEN_CFLAGS='-I/usr/include/nspr -I/usr/include/pixman-1'"
+	ac_add_options "--prefix=/usr --disable-jemalloc --disable-updater"
+	ac_add_options "--disable-pulseaudio --enable-alsa --disable-elf-hack"
+	ac_add_options "--enable-default-toolkit=cairo-gtk3 --enable-official-branding"
+	ac_add_options "--enable-optimize=\"$CFLAGS\" --enable-startup-notification"
+	ac_add_options "--enable-system-ffi --enable-system-pixman --enable-system-sqlite"
+	ac_add_options "--enable-av1 --with-system-bz2 --with-system-icu"
+	ac_add_options "--with-system-libevent --with-system-libvpx --with-system-nspr"
+	ac_add_options "--with-system-nss --with-system-png  --with-system-zlib"
+	ac_add_options "--with-clang-path=/usr/bin/clang --with-libclang-path=/usr/lib"
+	ac_add_options "--disable-tests --disable-crashreporter"
+	
+	./mach configure; ./mach build
 }
 
 package() {
-	cd "$builddir"/objdir
+	cd "$builddir"/obj-x86_64-pc-linux-gnu
 
 	# only used for startupcache creation.
 	local paxflags="-msp"
_at_@ -214,21 +194,21 @@ __EOF__
 	rm -f "$pkgdir"/${_mozappdirdev}/sdk/lib/libxul.so
 }
 
-sha512sums="487bb7791284367158c79cf7918fecf3d598627a6416e679aeb5d22626089aeffe07762fa2389819ba881c90ece1c5a83cf2d85b2def15b8d5ba0ed1c498b527  firefox-62.0.3.source.tar.xz
+sha512sums="cc76a83f6430f501c2260c6b35b5e48f045f5b180daf03375e9ab114a9afd67dfc0146ddb81cd29be4617aadb66a332ed5ebc625cb500df9579e412ed4909599  firefox-65.0.1.source.tar.xz
 0b3f1e4b9fdc868e4738b5c81fd6c6128ce8885b260affcb9a65ff9d164d7232626ce1291aaea70132b3e3124f5e13fef4d39326b8e7173e362a823722a85127  stab.h
 2f4f15974d52de4bb273b62a332d13620945d284bbc6fe6bd0a1f58ff7388443bc1d3bf9c82cc31a8527aad92b0cd3a1bc41d0af5e1800e0dcbd7033e58ffd71  fix-fortify-system-wrappers.patch
 09bc32cf9ee81b9cc6bb58ddbc66e6cc5c344badff8de3435cde5848e5a451e0172153231db85c2385ff05b5d9c20760cb18e4138dfc99060a9e960de2befbd5  fix-fortify-inline.patch
-2f713a270f7d1588ec4a0b9c21e5a0d20823954e6a64293ee1a391f80d38af6c0a80b3d35c3ada59b605f6032fb2af3040cd8ca7f424b0e620cc53fd12674fd9  fix-seccomp-bpf.patch
-a2925045154f4fd34e5fc056656f4f9da100341529e5d4104d249154db0c7863384083f421ce6e47e0f20566a8b20787fa35444c7933c03cd03f96f06dcd4532  fix-toolkit.patch
-b46cb90d4fdd1a925a61e2c6c545489cd542f5d82980c529361c02042eed31d5c26972b5e237c1a020f87ffcfd12736d1f4f6e33eaa83ae156d523c808c718cb  fix-tools.patch
+6764e7af43f5a066ac0faf4f8d0747c03739f4f14b51f58c524eb0519dfd28540bdd25569b201a8e20919d0096479cf0e7a8e306fb223aba4c0f177c4df55200  fix-seccomp-bpf.patch
+e680a23490908e8be256a8dadee3952f29c4069558548c2b79252640471fa29c221abb0634fc9260a8c9ba755f50f417a77ef66ede87eca8e02d69f74f8b0075  fix-toolkit.patch
+a9e44759a584d148360405bf75981a6cb8b3ea0c2a553c13da7c559dc0193b35b2dca32571044cdca7ebd6ecc8c475da126d48a0c6ed19316857e2e88d28b49f  fix-tools.patch
 bdcd1b402d2ec94957ba5d08cbad7b1a7f59c251c311be9095208491a05abb05a956c79f27908e1f26b54a3679387b2f33a51e945b650671ad85c0a2d59a5a29  mallinfo.patch
-ed0d344c66fc8e1cc83a11e9858b32c42e841cbeedd9eb9438811e9fcc3593dc824a8336d00058d55836cedc970aeadd6a82c6dcd7bc0fb746e564d8b478cc6c  fix-arm-atomics-grsec.patch
-015e1ff6dbf920033982b5df95d869a0b7bf56c6964e45e50649ddf46d1ce09563458e45240c3ecb92808662b1300b67507f7af272ba184835d91068a9e7d5b0  fix-arm-version-detect.patch
+9a07f214877c8e4f919311b35ceb8b8ea990fb5811c89d060c0dc5f87a864ac678649fa2c0f1c1459e949e5abb81a894996e2f82b0f94d44e21cc94273fc6d5b  fix-arm-atomics-grsec.patch
 e61664bc93eadce5016a06a4d0684b34a05074f1815e88ef2613380d7b369c6fd305fb34f83b5eb18b9e3138273ea8ddcfdcb1084fdcaa922a1e5b30146a3b18  mozilla-build-arm.patch
-4797d2d89ac63a57abb826b8ea9f751314ce66946194033deb9d78c2ff377b88106fd2c7bc5034dc13ad03dd5085b1893c3ccae1a9e63fde35655bb0921f7188  disable-moz-stackwalk.patch
+61b3c2ab34f43ada0b8c1c9c26fc70f82719b7f344a503325a350749fd6921255134d414c1eba3919e5c3bc133f7e0a164400d3c8af5ec6298afb8c7a146a4da  disable-moz-stackwalk.patch
 42cc44fda4b05259b38f055d6f51461746aa89a474cedc5e92fb9d20879da0d12b1b515b273a549e7302cda9c7eddde20d5fdba09853e5c658784ad6d0b20078  fix-rust-target.patch
 a50b412edf9573a0bd04a43578b1c927967a616b73a5995eefb15bfa78fd2bd14e36ec05315a0703f6370ecd524e6bcb012e7285beb1245e9add9b8553acb79e  fix-bug-1261392.patch
-01b48a708cc6bc6e3cd7cc7b16f5137ec344566ac891d699b65e322bc992726072fa14a54cef1a7775799fcbbcf90a6c170107c8524caba3bc311b42d93b7581  rust-unitialized-field.patch
-75b97d59e81e5f1debe6a459b535da704d5a2ac4a57c446d16058fd18db81e22317fcc3ec11b89f569f4de87e8e80ced027c0e72e7f1dd16f6fd0feb6b263919  fix-webrtc-glibcisms.patch
+7bc98f6370e2ca170b7bbfbddd8bd684df6c11530f38152f37031809f2b6b0bffde70a998939d97ed460d807fa7decc94b85a1bb6bf6464a63733e0f9d0f7ac6  rust-unitialized-field.patch
+44c95a862b04747658b666ab6e2efb77e57e63e78b1a81e489410bec4ef4c81956548131b922a50f9c069a3340c2b6f60a055cebf3f889f4d7d8a6e94eead11f  fix-webrtc-glibcisms.patch
 f3b7c3e804ce04731012a46cb9e9a6b0769e3772aef9c0a4a8c7520b030fdf6cd703d5e9ff49275f14b7d738fe82a0a4fde3bc3219dff7225d5db0e274987454  firefox.desktop
-5dcb6288d0444a8a471d669bbaf61cdb1433663eff38b72ee5e980843f5fc07d0d60c91627a2c1159215d0ad77ae3f115dcc5fdfe87e64ca704b641aceaa44ed  firefox-safe.desktop"
+5dcb6288d0444a8a471d669bbaf61cdb1433663eff38b72ee5e980843f5fc07d0d60c91627a2c1159215d0ad77ae3f115dcc5fdfe87e64ca704b641aceaa44ed  firefox-safe.desktop
+8ade2c0c767b5097f25b06bf5f5543141131e302390ea86a89becec598f039a72cbda6722bedfd773ff946b592a2f92a5c442d024de47d220c41dcb2af80219f  10-debug-fixes.patch"
diff --git a/testing/firefox/disable-moz-stackwalk.patch b/testing/firefox/disable-moz-stackwalk.patch
index c83ae7eae9..8f4924bac1 100644
--- a/testing/firefox/disable-moz-stackwalk.patch
+++ b/testing/firefox/disable-moz-stackwalk.patch
_at_@ -1,12 +1,10 @@
-diff --git a/mozglue/misc/StackWalk.cpp b/mozglue/misc/StackWalk.cpp
-index a208bad..14e1f0d 100644
---- a/mozglue/misc/StackWalk.cpp
-+++ b/mozglue/misc/StackWalk.cpp
-_at_@ -41,13 +41,7 @@ static CriticalAddress gCriticalAddress;
+--- /mozglue/misc/StackWalk.cpp
++++ /mozglue/misc/StackWalk.cpp.
+_at_@ -32,13 +32,7 @@
  #define MOZ_STACKWALK_SUPPORTS_MACOSX 0
  #endif
  
--#if (defined(linux) && \
+-#if (defined(linux) &&                                            \
 -     ((defined(__GNUC__) && (defined(__i386) || defined(PPC))) || \
 -      defined(HAVE__UNWIND_BACKTRACE)))
 -#define MOZ_STACKWALK_SUPPORTS_LINUX 1
diff --git a/testing/firefox/fix-arm-atomics-grsec.patch b/testing/firefox/fix-arm-atomics-grsec.patch
index 0eb58f093f..c7e12ca0f0 100644
--- a/testing/firefox/fix-arm-atomics-grsec.patch
+++ b/testing/firefox/fix-arm-atomics-grsec.patch
_at_@ -1,8 +1,8 @@
---- mozilla-release/ipc/chromium/src/base/atomicops_internals_arm_gcc.h.orig
-+++ mozilla-release/ipc/chromium/src/base/atomicops_internals_arm_gcc.h
-_at_@ -12,43 +35,194 @@
- namespace base {
- namespace subtle {
+--- ./toolkit/components/protobuf/src/google/protobuf/stubs/atomicops_internals_arm_gcc.h
++++ ./toolkit/components/protobuf/src/google/protobuf/stubs/atomicops_internals_arm_gcc.h.
+_at_@ -39,43 +39,194 @@
+ namespace protobuf {
+ namespace internal {
  
 -// 0xffff0fc0 is the hard coded address of a function provided by
 -// the kernel which implements an atomic compare-exchange. On older
_at_@ -217,7 +217,7 @@
    return old_value;
  }
  
-_at_@ -63,36 +237,57 @@
+_at_@ -90,8 +241,7 @@
      // Atomic exchange the old value with an incremented one.
      Atomic32 old_value = *ptr;
      Atomic32 new_value = old_value + increment;
_at_@ -227,23 +227,19 @@
        // The exchange took place as expected.
        return new_value;
      }
-     // Otherwise, *ptr changed mid-loop and we need to retry.
-   }
--
- }
- 
+_at_@ -102,23 +252,45 @@
  inline Atomic32 Acquire_CompareAndSwap(volatile Atomic32* ptr,
                                         Atomic32 old_value,
                                         Atomic32 new_value) {
 -  return NoBarrier_CompareAndSwap(ptr, old_value, new_value);
-+  Atomic32 prev_value;
-+  for (;;) {
-+    prev_value = *ptr;
++Atomic32 prev_value;                                     
++  for (;;) {                  
++    prev_value = *ptr;                                               
 +    if (prev_value != old_value) {
-+      // Always ensure acquire semantics.
++      // Always ensure acquire semantics.                          
 +      MemoryBarrier();
-+      return prev_value;
-+    }
++      return prev_value;     
++    }                         
 +    if (!LinuxKernelCmpxchg(old_value, new_value, ptr))
 +      return old_value;
 +  }
_at_@ -253,38 +249,37 @@
                                         Atomic32 old_value,
                                         Atomic32 new_value) {
 -  return NoBarrier_CompareAndSwap(ptr, old_value, new_value);
-+  // This could be implemented as:
-+  //    MemoryBarrier();
-+  //    return NoBarrier_CompareAndSwap();
-+  //
++  // This could be implemented as:                            
++  //    MemoryBarrier();                                             
++  //    return NoBarrier_CompareAndSwap();                    
++  //                                                               
 +  // But would use 3 barriers per succesful CAS. To save performance,
 +  // use Acquire_CompareAndSwap(). Its implementation guarantees that:
-+  // - A succesful swap uses only 2 barriers (in the kernel helper).
-+  // - An early return due to (prev_value != old_value) performs
-+  //   a memory barrier with no store, which is equivalent to the
-+  //   generic implementation above.
++  // - A succesful swap uses only 2 barriers (in the kernel helper).  
++  // - An early return due to (prev_value != old_value) performs      
++  //   a memory barrier with no store, which is equivalent to the     
++  //   generic implementation above.                                  
 +  return Acquire_CompareAndSwap(ptr, old_value, new_value);
  }
- 
-+#else
-+#  error "Your CPU's ARM architecture is not supported yet"
-+#endif
-+
-+// NOTE: Atomicity of the following load and store operations is only
++#else                                                                 
++#  error "Your CPU's ARM architecture is not supported yet"           
++#endif                                                                
++                                                                      
++// NOTE: Atomicity of the following load and store operations is only 
 +// guaranteed in case of 32-bit alignement of |ptr| values.
-+
+ 
  inline void NoBarrier_Store(volatile Atomic32* ptr, Atomic32 value) {
    *ptr = value;
  }
  
--inline void MemoryBarrier() {
+-inline void MemoryBarrierInternal() {
 -  pLinuxKernelMemoryBarrier();
 -}
 -
  inline void Acquire_Store(volatile Atomic32* ptr, Atomic32 value) {
    *ptr = value;
-   MemoryBarrier();
-_at_@ -103,9 +298,7 @@
+   MemoryBarrierInternal();
+_at_@ -129,9 +301,7 @@
    *ptr = value;
  }
  
_at_@ -295,12 +290,3 @@
  
  inline Atomic32 Acquire_Load(volatile const Atomic32* ptr) {
    Atomic32 value = *ptr;
-_at_@ -118,7 +311,6 @@
-   return *ptr;
- }
- 
--} // namespace base::subtle
--} // namespace base
-+} }  // namespace base::subtle
- 
- #endif  // BASE_ATOMICOPS_INTERNALS_ARM_GCC_H_
diff --git a/testing/firefox/fix-seccomp-bpf.patch b/testing/firefox/fix-seccomp-bpf.patch
index ee6d666400..7f9fbae3a7 100644
--- a/testing/firefox/fix-seccomp-bpf.patch
+++ b/testing/firefox/fix-seccomp-bpf.patch
_at_@ -1,6 +1,5 @@
-diff -ru firefox-62.0.3.orig/security/sandbox/chromium/sandbox/linux/seccomp-bpf/trap.cc firefox-62.0.3/security/sandbox/chromium/sandbox/linux/seccomp-bpf/trap.cc
---- firefox-62.0.3.orig/security/sandbox/chromium/sandbox/linux/seccomp-bpf/trap.cc	2018-12-14 08:53:46.083976137 +0000
-+++ firefox-62.0.3/security/sandbox/chromium/sandbox/linux/seccomp-bpf/trap.cc	2018-12-14 08:51:22.084596411 +0000
+--- ./security/sandbox/chromium/sandbox/linux/seccomp-bpf/trap.cc	2018-12-14 08:53:46.083976137 +0000
++++ ./security/sandbox/chromium/sandbox/linux/seccomp-bpf/trap.cc	2018-12-14 08:51:22.084596411 +0000
 _at_@ -25,6 +25,11 @@
  #include "sandbox/linux/system_headers/linux_seccomp.h"
  #include "sandbox/linux/system_headers/linux_signal.h"
_at_@ -13,14 +12,13 @@ diff -ru firefox-62.0.3.orig/security/sandbox/chromium/sandbox/linux/seccomp-bpf
  namespace {
  
  struct arch_sigsys {
-diff -ru firefox-62.0.3.orig/security/sandbox/linux/SandboxFilter.cpp firefox-62.0.3/security/sandbox/linux/SandboxFilter.cpp
---- firefox-62.0.3.orig/security/sandbox/linux/SandboxFilter.cpp	2018-10-01 18:35:28.000000000 +0000
-+++ firefox-62.0.3/security/sandbox/linux/SandboxFilter.cpp	2018-12-14 08:57:50.645264590 +0000
-_at_@ -1005,6 +1005,7 @@
-         // ffmpeg, and anything else that calls isatty(), will be told
-         // that nothing is a typewriter:
-         .ElseIf(request == TCGETS, Error(ENOTTY))
-+        .ElseIf(request == TIOCGWINSZ, Error(ENOTTY))
-         // Allow anything that isn't a tty ioctl, for now; bug 1302711
-         // will cover changing this to a default-deny policy.
-         .ElseIf(shifted_type != kTtyIoctls, Allow())
+--- ./security/sandbox/linux/SandboxFilter.cpp	2018-10-01 18:35:28.000000000 +0000
++++ ./security/sandbox/linux/SandboxFilter.cpp	2018-12-14 08:57:50.645264590 +0000
+_at_@ -997,6 +997,7 @@
+             // ffmpeg, and anything else that calls isatty(), will be told
+             // that nothing is a typewriter:
+             .ElseIf(request == TCGETS, Error(ENOTTY))
++            .ElseIf(request == TIOCGWINSZ, Error(ENOTTY))
+             // Allow anything that isn't a tty ioctl, for now; bug 1302711
+             // will cover changing this to a default-deny policy.
+             .ElseIf(shifted_type != kTtyIoctls, Allow())
diff --git a/testing/firefox/fix-toolkit.patch b/testing/firefox/fix-toolkit.patch
index 58fe5a3a9a..c79b9a15d4 100644
--- a/testing/firefox/fix-toolkit.patch
+++ b/testing/firefox/fix-toolkit.patch
_at_@ -55,21 +55,6 @@ index 93fdad7..f34e5e0 100644
  /* 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 026e7ed..0801f14 100644
---- a/toolkit/mozapps/update/common/updatedefines.h
-+++ b/toolkit/mozapps/update/common/updatedefines.h
-_at_@ -117,7 +117,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
 _at_@ -3737,6 +3737,7 @@ int add_dir_entries(const NS_tchar *dirpath, ActionList *list)
_at_@ -88,3 +73,14 @@ index 257ccb4..01314e4 100644
  
    return rv;
  }
+--- ./toolkit/mozapps/update/common/updatedefines.h
++++ ./toolkit/mozapps/update/common/updatedefines.h.
+_at_@ -102,7 +102,7 @@
+ 
+ #ifdef SOLARIS
+ #include <sys/stat.h>
+-#else
++#elif !defined(__linux__) || defined(__GLIBC__)
+ #include <fts.h>
+ #endif
+ #include <dirent.h>
diff --git a/testing/firefox/fix-tools.patch b/testing/firefox/fix-tools.patch
index 84f7fa9cb8..ed2c7f2bca 100644
--- a/testing/firefox/fix-tools.patch
+++ b/testing/firefox/fix-tools.patch
_at_@ -11,12 +11,12 @@
  #include "MainThreadUtils.h"
 --- a/tools/profiler/lul/LulElf.cpp
 +++ b/tools/profiler/lul/LulElf.cpp
-_at_@ -579,10 +579,10 @@
+_at_@ -469,10 +469,10 @@
  // 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) {
+ string BaseFileName(const string& filename) {
 -  // Lots of copies!  basename's behavior is less than ideal.
--  char *c_filename = strdup(filename.c_str());
+-  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
_at_@ -25,13 +25,13 @@
 +  string base = p ? p+1 : c_filename;
    return base;
  }
-
+ 
 --- a/tools/profiler/core/platform-linux-android.cpp.orig
 +++ b/tools/profiler/core/platform-linux-android.cpp
-_at_@ -534,9 +534,11 @@
- void
- Registers::SyncPopulate()
- {
+_at_@ -497,8 +497,10 @@
+ ucontext_t sSyncUContext;
+ 
+ void Registers::SyncPopulate() {
 +#if defined(__GLIBC__)
    if (!getcontext(&sSyncUContext)) {
      PopulateRegsFromContext(*this, &sSyncUContext);
_at_@ -39,4 +39,4 @@
 +#endif
  }
  #endif
- 
+
diff --git a/testing/firefox/fix-webrtc-glibcisms.patch b/testing/firefox/fix-webrtc-glibcisms.patch
index dc9206b50e..95b3a55eeb 100644
--- a/testing/firefox/fix-webrtc-glibcisms.patch
+++ b/testing/firefox/fix-webrtc-glibcisms.patch
_at_@ -1,13 +1,13 @@
---- ./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
-_at_@ -11,7 +11,9 @@
- #include <stdlib.h>
- #include <string.h>
- #include <features.h>
+--- ./media/webrtc/trunk/webrtc/system_wrappers/source/cpu_features_linux.c
++++ ./media/webrtc/trunk/webrtc/system_wrappers/source/cpu_features_linux.c.
+_at_@ -14,7 +14,9 @@
+ #ifndef __GLIBC_PREREQ
+ #define __GLIBC_PREREQ(a, b) 0
+ #endif
 -#if __GLIBC_PREREQ(2, 16)
-+#if !defined(__GLIBC__)
-+#include <sys/auxv.h>
-+#elif __GLIBC_PREREQ(2, 16)
++#if !defined(__GLIBC__)                                                                                                                                       
++#include <sys/auxv.h>                                                                                                                                         
++#elif __GLIBC_PREREQ(2, 16) 
  #include <sys/auxv.h>
  #else
  #include <fcntl.h>
diff --git a/testing/firefox/rust-unitialized-field.patch b/testing/firefox/rust-unitialized-field.patch
index 67ef3a02ab..3ef7f055ca 100644
--- a/testing/firefox/rust-unitialized-field.patch
+++ b/testing/firefox/rust-unitialized-field.patch
_at_@ -1,11 +1,14 @@
---- ./media/audioipc/audioipc/src/cmsg.rs.orig	2018-05-09 22:19:14.748631939 +0200
-+++ ./media/audioipc/audioipc/src/cmsg.rs	2018-05-09 22:19:22.961620862 +0200
-_at_@ -106,11 +106,11 @@ impl ControlMsgBuilder {
+--- ./media/audioipc/audioipc/src/cmsg.rs
++++ ./media/audioipc/audioipc/src/cmsg.rs.
+_at_@ -105,14 +105,12 @@
+             if cmsg.remaining_mut() < cmsg_len {
                  return Err(Error::NoSpace);
              }
- 
+
 -            let cmsghdr = cmsghdr {
 -                cmsg_len: cmsg_len as _,
+-                #[cfg(target_env = "musl")]
+-                __pad1: 0,
 -                cmsg_level: level,
 -                cmsg_type: kind,
 -            };
-- 
2.20.1
---
Unsubscribe:  alpine-aports+unsubscribe_at_lists.alpinelinux.org
Help:         alpine-aports+help_at_lists.alpinelinux.org
---
Received on Tue Feb 19 2019 - 10:01:06 UTC