diff options
-rw-r--r-- | testing/firefox/APKBUILD | 21 | ||||
-rw-r--r-- | testing/firefox/fix-rust-target.patch | 41 | ||||
-rw-r--r-- | testing/firefox/fix-third_party.patch | 36 |
3 files changed, 57 insertions, 41 deletions
diff --git a/testing/firefox/APKBUILD b/testing/firefox/APKBUILD index 6ca5fc9199..d707ddf3df 100644 --- a/testing/firefox/APKBUILD +++ b/testing/firefox/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net> # Maintainer: Natanael Copa <ncopa@alpinelinux.org> pkgname=firefox -pkgver=69.0.3 +pkgver=70.0 pkgrel=0 pkgdesc="Firefox web browser" url="https://www.firefox.com/" @@ -77,9 +77,18 @@ ldpath="$_mozappdir" # 68.0.2-r0: # - CVE-2019-11733 +# we need this because cargo verifies checksums of all files in vendor +# crates when it builds and gives us no way to override or update the +# file sanely... so just clear out the file list +_clear_vendor_checksums() { + sed -i 's/\("files":{\)[^}]*/\1/' third_party/rust/$1/.cargo-checksum.json +} + prepare() { default_prepare cp "$srcdir"/stab.h toolkit/crashreporter/google-breakpad/src/ + + _clear_vendor_checksums audio_thread_priority } build() { @@ -100,6 +109,10 @@ build() { x86_64) # disable-elf-hack: exists only on arm, x86, x86_64 _arch_config="--disable-elf-hack" + export RUST_TARGET="$CTARGET" + ;; + aarch64) + export RUST_TARGET="aarch64-unknown-linux-musl" ;; esac @@ -193,7 +206,7 @@ __EOF__ rm -f "$pkgdir"/${_mozappdirdev}/sdk/lib/libxul.so } -sha512sums="bc4020c5f1a1eac82944f6402aa374c830231a0f168c6cdab8924a1c7a1b296381b45bce0a0567811ad86c2688972a35fda3f6c15e562b03a47d48617fe7611a firefox-69.0.3.source.tar.xz +sha512sums="c2643d88d59012dfd762357d66005c8892dec066b0ae9d8d33a29ea4427d1e5ae4a0376725c7d960c0025d5c9567eca816eb612b4ea987069e455c06fc442973 firefox-70.0.source.tar.xz 0b3f1e4b9fdc868e4738b5c81fd6c6128ce8885b260affcb9a65ff9d164d7232626ce1291aaea70132b3e3124f5e13fef4d39326b8e7173e362a823722a85127 stab.h 2f4f15974d52de4bb273b62a332d13620945d284bbc6fe6bd0a1f58ff7388443bc1d3bf9c82cc31a8527aad92b0cd3a1bc41d0af5e1800e0dcbd7033e58ffd71 fix-fortify-system-wrappers.patch 84b84d2d7dbc16002510bf856796ad345ac38ef6d3254670230189bba7c2d4781714d231236d5a3d70129a4597b430c3171644b01ad0f5a5bb13b55d407337a4 fix-seccomp-bpf.patch @@ -201,9 +214,9 @@ sha512sums="bc4020c5f1a1eac82944f6402aa374c830231a0f168c6cdab8924a1c7a1b296381b4 4d55f41d15be7457ad630f8f07e4fc0314c2f75720010b4bbe6a2a7f3228210a1e069949e11795efbe2e784b0762e79fdfe5b8ec38e8a64cb8d9cf3b57dd5af1 fix-tools.patch a4a3e062661bda64d502d426c480ac9645345860118de9df9ffe6e0597738c70c11e5cdef2d4fd12c5e2ee30a09310159230524655a419a4f7e4eeeb0f3c06b0 mallinfo.patch 454ea3263cabce099accbdc47aaf83be26a19f8b5a4568c01a7ef0384601cf8315efd86cd917f9c8bf419c2c845db89a905f3ff9a8eb0c8e41042e93aa96a85c disable-moz-stackwalk.patch -7903987b4b661286de03c6940bf67aaed6d78c9adc57680413407a84a1f1f26aaded35e6d53ea6ad527b474968b343d844e81e16d777c0e29b830b51aa2ca8c3 fix-rust-target.patch +089c97e6011e86a9b9d9e7b0c8ba3af0519d1ce4e2b1e9ab7719762d6968388bfa47dad3bf23a6d41c3d66fdcc6c15e2c926e3ff9500bfd4fbf1b53e6d19dc57 fix-rust-target.patch d35cacb9ede80e6bfbef0709823e536dddfb1c02d776275b0b7adb5969e9927d8c6117df96873569c3f3db0a18ee5db24f8086a9311a05077892be43a3dd8d79 fix-webrtc-glibcisms.patch f85f2c19c3dafab915bcb40e580fc442fd9eab5916696849edf0b105c758dd807dfe23a6479935613c81496711eb377c73227c03eb8582204c3442a4d0e397a2 fix-sandbox-membarrier.patch -a2491548937f42331217cb8b6ef0bcc5fca320081e5523b2d3d3e1799b1930fae65dfc669499c190d92d82bf9ed29894daced13325e25e4a8e66757af8d37699 fix-third_party.patch +eef94b3dd4cd04ea2ffab71764f15cc7cbb3cfe68175aef37805ffd660f6dff3de97d736cf3c76d19633406b84efdac7bfe8d68cce6da2528e74f313bef05943 fix-third_party.patch f3b7c3e804ce04731012a46cb9e9a6b0769e3772aef9c0a4a8c7520b030fdf6cd703d5e9ff49275f14b7d738fe82a0a4fde3bc3219dff7225d5db0e274987454 firefox.desktop 5dcb6288d0444a8a471d669bbaf61cdb1433663eff38b72ee5e980843f5fc07d0d60c91627a2c1159215d0ad77ae3f115dcc5fdfe87e64ca704b641aceaa44ed firefox-safe.desktop" diff --git a/testing/firefox/fix-rust-target.patch b/testing/firefox/fix-rust-target.patch index f81418efd2..14f39691cf 100644 --- a/testing/firefox/fix-rust-target.patch +++ b/testing/firefox/fix-rust-target.patch @@ -1,26 +1,31 @@ +Allow us to just set RUST_TARGEt ourselves instead of hacking around in mozilla's +weird custom build system... + --- a/build/moz.configure/rust.configure +++ b/build/moz.configure/rust.configure -@@ -280,9 +280,13 @@ - die("Don't know how to translate {} for rustc".format( - host_or_target.alias)) +@@ -224,6 +224,8 @@ + rust_supported_targets, arm_target, when=rust_compiler) + @checking('for rust %s triplet' % host_or_target_str) + @imports('os') ++ @imports(_from='mozbuild.util', _import='ensure_unicode') ++ @imports(_from='mozbuild.util', _import='system_encoding') + @imports(_from='mozbuild.configure.util', _import='LineIO') + @imports(_from='mozbuild.shellutil', _import='quote') + @imports(_from='tempfile', _import='mkstemp') +@@ -328,7 +330,7 @@ + + return None + +- rustc_target = find_candidate(candidates) ++ rustc_target = os.environ['RUST_TARGET'] -+ fixed_alias = rustc_target.alias.replace("-gnu", "-musl") -+ if host_or_target.cpu != 'aarch64': -+ fixed_alias = fixed_alias.replace("-unknown-", "-alpine-") -+ - # Check to see whether our rustc has a reasonably functional stdlib - # for our chosen target. -- target_arg = '--target=' + rustc_target.alias -+ target_arg = '--target=' + fixed_alias - in_fd, in_path = mkstemp(prefix='conftest', suffix='.rs') - out_fd, out_path = mkstemp(prefix='conftest', suffix='.rlib') - os.close(out_fd) -@@ -319,7 +323,7 @@ + if rustc_target is None: + die("Don't know how to translate {} for rustc".format( +@@ -373,7 +375,7 @@ os.remove(out_path) # This target is usable. -- return rustc_target.alias -+ return fixed_alias +- return rustc_target ++ return ensure_unicode(rustc_target, system_encoding) return rust_target - diff --git a/testing/firefox/fix-third_party.patch b/testing/firefox/fix-third_party.patch index 0255e729b1..7cba6e0c90 100644 --- a/testing/firefox/fix-third_party.patch +++ b/testing/firefox/fix-third_party.patch @@ -1,22 +1,20 @@ ---- a/third_party/rust/audio_thread_priority/src/rt_linux.rs -+++ b/third_party/rust/audio_thread_priority/src/rt_linux.rs -@@ -94,7 +94,12 @@ - let thread_id = unsafe { libc::syscall(libc::SYS_gettid) }; - let pthread_id = unsafe { libc::pthread_self() }; +--- a/third_party/rust/audio_thread_priority/src/rt_linux.rs.orig 2019-10-24 07:52:22.690223829 +0200 ++++ b/third_party/rust/audio_thread_priority/src/rt_linux.rs 2019-10-24 07:53:24.586418407 +0200 +@@ -100,7 +100,7 @@ let mut policy = 0; -- let mut param = libc::sched_param { sched_priority: 0 }; -+ let mut param = libc::sched_param { sched_priority: 0, -+ sched_ss_init_budget: libc::timespec { tv_nsec: 0, tv_sec: 0 }, -+ sched_ss_low_priority: 0, -+ sched_ss_max_repl: 0, -+ sched_ss_repl_period: libc::timespec { tv_nsec: 0, tv_sec: 0 }, -+ }; if unsafe { libc::pthread_getschedparam(pthread_id, &mut policy, &mut param) } < 0 { - error!("pthread_getschedparam error {}", pthread_id); ---- a/third_party/rust/audio_thread_priority/.cargo-checksum.json -+++ b/third_party/rust/audio_thread_priority/.cargo-checksum.json -@@ -1 +1 @@ --{"files":{"Cargo.toml":"4c85ca3ce6ee93571667a430f548a1c9e73cfa621b2dac9fffa35bf280a90d9e","Makefile":"8c6b9e8afffb14ae03f9cd95bc7d6011c8b4fe01c474aef17360e3f0c4d202ad","README.md":"bcfa4948edf52fdacd485200a0c1c886a92232cc1931eeb4e1044050f46ec253","audio_thread_priority.h":"880889a154283a87cf84218cc4d6b2b9dd2c8fd09adc6d38f527b08ccd0c6168","generate_osx_bindings.sh":"06e4e03450f788ced18d31fff5660919e6f6ec1119ddace363ffeb82f0518a71","src/lib.rs":"d1e04bc2901472ce98be1a79b6844b49e38598eda3e4f8c0e7b08c5b33247375","src/mach_sys.rs":"352560fcb9b41d877cff92e5b3b04d6dc68b1f30508ce4b9aed78940120a883e","src/rt_linux.rs":"238264f4a3e010743ea2f44b3b13cb912f2b57786cd97e583575415d7e84b6b2","src/rt_mach.rs":"381f709a59d21031caf70e1bf4e9c26cd25fd3d2618ae0d91c1fbc236ce519ca","src/rt_win.rs":"f8f5b7af21cadd686cf7d8099d1972d3265c3889574020bd4ea088b832fbfa51"},"package":"047460864ea9f62fbdfb80fc04a2e5d844aef9e50727e6e9730ca58d9f1a9267"} -\ No newline at end of file -+{"files":{"Cargo.toml":"4c85ca3ce6ee93571667a430f548a1c9e73cfa621b2dac9fffa35bf280a90d9e","Makefile":"8c6b9e8afffb14ae03f9cd95bc7d6011c8b4fe01c474aef17360e3f0c4d202ad","README.md":"bcfa4948edf52fdacd485200a0c1c886a92232cc1931eeb4e1044050f46ec253","audio_thread_priority.h":"880889a154283a87cf84218cc4d6b2b9dd2c8fd09adc6d38f527b08ccd0c6168","generate_osx_bindings.sh":"06e4e03450f788ced18d31fff5660919e6f6ec1119ddace363ffeb82f0518a71","src/lib.rs":"d1e04bc2901472ce98be1a79b6844b49e38598eda3e4f8c0e7b08c5b33247375","src/mach_sys.rs":"352560fcb9b41d877cff92e5b3b04d6dc68b1f30508ce4b9aed78940120a883e","src/rt_linux.rs":"e907a8ab6c5d16d7ac37c26ab55f7a0226d3a8989060cf8a3fceef4285280fc4","src/rt_mach.rs":"381f709a59d21031caf70e1bf4e9c26cd25fd3d2618ae0d91c1fbc236ce519ca","src/rt_win.rs":"f8f5b7af21cadd686cf7d8099d1972d3265c3889574020bd4ea088b832fbfa51"},"package":"047460864ea9f62fbdfb80fc04a2e5d844aef9e50727e6e9730ca58d9f1a9267"} +- error!("pthread_getschedparam error {}", pthread_id); ++ error!("pthread_getschedparam error"); + return Err(()); + } + +@@ -127,7 +127,7 @@ + if unsafe { libc::pthread_setschedparam(rt_priority_handle.pthread_id, + rt_priority_handle.policy, + &rt_priority_handle.param) } < 0 { +- warn!("could not demote thread {}", rt_priority_handle.pthread_id); ++ warn!("could not demote thread"); + return Err(()); + } + return Ok(()); |