X-Original-To: alpine-aports@lists.alpinelinux.org Received: from mx1.tetrasec.net (mx1.tetrasec.net [74.117.190.25]) by lists.alpinelinux.org (Postfix) with ESMTP id 35472F81628 for ; Tue, 19 Feb 2019 17:44:41 +0000 (UTC) Received: from mx1.tetrasec.net (mail.local [127.0.0.1]) by mx1.tetrasec.net (Postfix) with ESMTP id 91B1F9E1E31; Tue, 19 Feb 2019 17:44:40 +0000 (UTC) Received: from ncopa-desktop.copa.dup.pw (67.63.200.37.customer.cdi.no [37.200.63.67]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: alpine@tanael.org) by mx1.tetrasec.net (Postfix) with ESMTPSA id 2E5479E1DE0; Tue, 19 Feb 2019 17:44:38 +0000 (UTC) Date: Tue, 19 Feb 2019 18:44:31 +0100 From: Natanael Copa To: Bradley Saulteaux Cc: alpine-aports@lists.alpinelinux.org, Bradley Saulteaux <~@bradso.to> Subject: Re: [alpine-aports] [PATCH] testing/firefox: upgrade to 65.0 Message-ID: <20190219184431.4064f6e0@ncopa-desktop.copa.dup.pw> In-Reply-To: <20190219170104.32697-1-~@bradso.to> References: <20190219170104.32697-1-~@bradso.to> X-Mailer: Claws Mail 3.17.3 (GTK+ 2.24.32; x86_64-alpine-linux-musl) X-Mailinglist: alpine-aports Precedence: list List-Id: Alpine Development List-Unsubscribe: List-Post: List-Help: List-Subscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Hi! Thank you for submitting this. I have a few questions/wishes. Please see below: On Tue, 19 Feb 2019 10:01:06 -0700 Bradley Saulteaux wrote: > 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 > @@ -4,7 +4,7 @@ > # Maintainer: Natanael Copa > 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" > @@ -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" > @@ -71,13 +71,13 @@ build() { > x86 | arm*) _asm="--disable-asm" ;; > esac > > - cd "$builddir" Is the removal of cd "$builddir" documented? I mean, yes, the cd "$builddir" is not needed anymore, but is this documented any place? I think we need update documentation before we can remove them. That said, I would prefer keep the "$builddir" for a while unless there is a good reason to remove them. Removing it makes it harder to backport things to stable branches. This makes backporting security fixes a more time consuming. > ./configure \ > --prefix=/usr \ > --enable-avresample \ > --enable-avfilter \ > --enable-gnutls \ > --enable-gpl \ > + --enable-libaom \ > --enable-libass \ > --enable-libmp3lame \ > --enable-libvorbis \ > @@ -106,7 +106,6 @@ build() { > > # https://ffmpeg.org/fate.html > check() { > - cd "$builddir" > ./configure \ > --samples=fate-suite/ > make fate-rsync > @@ -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 > @@ -0,0 +1,26 @@ > +# Maintainer: Bradley Saulteaux <~@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 is this change reported or fixed upstream? I would prefer use a patch from upstream over running sed from APKBUILD. The reason is that if we use a patch , we will discover when they fix this upstream. Otherwise the sed line may say long after its no longer needed. > +} > +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 > @@ -0,0 +1,23 @@ > +https://github.com/unicode-org/icu/commit/8baff8f03e07d8e02304d0c888d0bb21ad2eeb01 > +fixed in 63.2 > +--- ./common/unicode/urename.h > ++++ ./common/unicode/urename.h. > +@@ -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. > +@@ -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 > @@ -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" > @@ -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: > @@ -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 > > @@ -49,7 +49,6 @@ prepare() { > } > > build() { > - cd "$builddir" > ./configure \ > --build=$CBUILD \ > --host=$CHOST \ > @@ -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 \ > @@ -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 > @@ -0,0 +1,11 @@ > +--- ./configure > ++++ ./configure. > +@@ -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 > @@ -1,7 +1,7 @@ > # Maintainer: Natanael Copa > 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" > @@ -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 \ > @@ -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/* > @@ -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 > @@ -0,0 +1,26 @@ > +# Maintainer: Bradley Saulteaux <~@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 > @@ -0,0 +1,25 @@ > +--- ./intl/locale/LocaleService.cpp > ++++ ./intl/locale/LocaleService.cpp. > +@@ -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. > +@@ -499,12 +499,6 @@ > + ; svg > + @RESPATH@/res/svg.css > + > +-; [Layout Debugger] > +-#ifdef MOZ_DEBUG > +-@RESPATH@/chrome/layoutdebug@JAREXT@ > +-@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 > @@ -1,23 +1,26 @@ > # Contributor: William Pitcock > # Maintainer: Natanael Copa > 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 > @@ -27,6 +30,7 @@ makedepends=" > hunspell-dev > icu-dev > libevent-dev > + libffi-dev > libidl-dev > libjpeg-turbo-dev > libnotify-dev > @@ -39,9 +43,11 @@ makedepends=" > libxcomposite-dev > llvm5-dev > mesa-dev > + nasm > nspr-dev > nss-dev > nss-static > + nodejs > paxmark > python3-dev > sqlite-dev > @@ -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 > @@ -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 > @@ -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 Will this work on all architectures? I belive it will not. > > # only used for startupcache creation. > local paxflags="-msp" > @@ -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 > @@ -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 > -@@ -41,13 +41,7 @@ static CriticalAddress gCriticalAddress; > +--- /mozglue/misc/StackWalk.cpp > ++++ /mozglue/misc/StackWalk.cpp. > +@@ -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 > @@ -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 > -@@ -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. > +@@ -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 > @@ -217,7 +217,7 @@ > return old_value; > } > > -@@ -63,36 +237,57 @@ > +@@ -90,8 +241,7 @@ > // Atomic exchange the old value with an incremented one. > Atomic32 old_value = *ptr; > Atomic32 new_value = old_value + increment; > @@ -227,23 +227,19 @@ > // The exchange took place as expected. > return new_value; > } > - // Otherwise, *ptr changed mid-loop and we need to retry. > - } > -- > - } > - > +@@ -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; > + } > @@ -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(); > -@@ -103,9 +298,7 @@ > + MemoryBarrierInternal(); > +@@ -129,9 +301,7 @@ > *ptr = value; > } > > @@ -295,12 +290,3 @@ > > inline Atomic32 Acquire_Load(volatile const Atomic32* ptr) { > Atomic32 value = *ptr; > -@@ -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 > @@ -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 > @@ -25,6 +25,11 @@ > #include "sandbox/linux/system_headers/linux_seccomp.h" > #include "sandbox/linux/system_headers/linux_signal.h" > @@ -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 > -@@ -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 > +@@ -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 > @@ -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 > -@@ -117,7 +117,7 @@ static inline int mywcsprintf(WCHAR* dest, size_t count, const WCHAR* fmt, ...) > - > - #ifdef SOLARIS > - # include > --#else > -+#elif !defined(__linux__) || defined(__GLIBC__) > - # include > - #endif > - # include > -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 > @@ -3737,6 +3737,7 @@ int add_dir_entries(const NS_tchar *dirpath, ActionList *list) > @@ -88,3 +73,14 @@ index 257ccb4..01314e4 100644 > > return rv; > } > +--- ./toolkit/mozapps/update/common/updatedefines.h > ++++ ./toolkit/mozapps/update/common/updatedefines.h. > +@@ -102,7 +102,7 @@ > + > + #ifdef SOLARIS > + #include > +-#else > ++#elif !defined(__linux__) || defined(__GLIBC__) > + #include > + #endif > + #include > 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 > @@ -11,12 +11,12 @@ > #include "MainThreadUtils.h" > --- a/tools/profiler/lul/LulElf.cpp > +++ b/tools/profiler/lul/LulElf.cpp > -@@ -579,10 +579,10 @@ > +@@ -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 > @@ -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 > -@@ -534,9 +534,11 @@ > - void > - Registers::SyncPopulate() > - { > +@@ -497,8 +497,10 @@ > + ucontext_t sSyncUContext; > + > + void Registers::SyncPopulate() { > +#if defined(__GLIBC__) > if (!getcontext(&sSyncUContext)) { > PopulateRegsFromContext(*this, &sSyncUContext); > @@ -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 > @@ -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 > -@@ -11,7 +11,9 @@ > - #include > - #include > - #include > +--- ./media/webrtc/trunk/webrtc/system_wrappers/source/cpu_features_linux.c > ++++ ./media/webrtc/trunk/webrtc/system_wrappers/source/cpu_features_linux.c. > +@@ -14,7 +14,9 @@ > + #ifndef __GLIBC_PREREQ > + #define __GLIBC_PREREQ(a, b) 0 > + #endif > -#if __GLIBC_PREREQ(2, 16) > -+#if !defined(__GLIBC__) > -+#include > -+#elif __GLIBC_PREREQ(2, 16) > ++#if !defined(__GLIBC__) > ++#include > ++#elif __GLIBC_PREREQ(2, 16) > #include > #else > #include > 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 > @@ -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 > -@@ -106,11 +106,11 @@ impl ControlMsgBuilder { > +--- ./media/audioipc/audioipc/src/cmsg.rs > ++++ ./media/audioipc/audioipc/src/cmsg.rs. > +@@ -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, > - }; --- Unsubscribe: alpine-aports+unsubscribe@lists.alpinelinux.org Help: alpine-aports+help@lists.alpinelinux.org ---