diff options
Diffstat (limited to 'experimental')
-rw-r--r-- | experimental/firefox-esr/APKBUILD | 33 | ||||
-rw-r--r-- | experimental/firefox-esr/cmsghdr.patch | 9 | ||||
-rw-r--r-- | experimental/firefox-esr/disable-gecko-profiler.patch | 13 | ||||
-rw-r--r-- | experimental/firefox-esr/fix-sandbox-membarrier.patch | 52 | ||||
-rw-r--r-- | experimental/firefox-esr/rust-1.33.0.patch | 26 | ||||
-rw-r--r-- | experimental/firefox/APKBUILD | 135 | ||||
-rw-r--r-- | experimental/firefox/mozconfig | 23 | ||||
-rw-r--r-- | experimental/firefox/rust-config.patch | 20 |
8 files changed, 294 insertions, 17 deletions
diff --git a/experimental/firefox-esr/APKBUILD b/experimental/firefox-esr/APKBUILD index 2a2e54066..ae94ce6e7 100644 --- a/experimental/firefox-esr/APKBUILD +++ b/experimental/firefox-esr/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=firefox-esr -pkgver=60.5.0 +pkgver=60.7.0 pkgrel=0 pkgdesc="Firefox web browser" url="https://www.mozilla.org/en-US/firefox/organizations/faq/" @@ -15,8 +15,9 @@ depends_dev="alsa-lib-dev bzip2-dev dbus-glib-dev gconf-dev gtk+2.0-dev pulseaudio-dev sqlite-dev startup-notification-dev wireless-tools-dev" makedepends="$depends_dev autoconf2.13 automake libtool bsd-compat-headers cmd:which nss-static openssl-dev sed yasm zip - cargo clang llvm6-dev rust" + cargo clang llvm8-dev rust" subpackages="" +_py2ver=2.7.15 source="https://ftp.mozilla.org/pub/firefox/releases/${pkgver}esr/source/firefox-${pkgver}esr.source.tar.xz mozconfig stab.h @@ -32,35 +33,37 @@ source="https://ftp.mozilla.org/pub/firefox/releases/${pkgver}esr/source/firefox bad-google-code.patch cmsghdr.patch + disable-gecko-profiler.patch endian-gfx.patch endianness-js.patch fix-bug-1261392.patch fix-mutex-build.patch + fix-sandbox-membarrier.patch proper-system-hunspell.patch rust-config.patch + rust-1.33.0.patch shut-up-warning.patch skia.patch stackwalk-x86-ppc.patch webrtc-broken.patch firefox.desktop - firefox-safe.desktop" + firefox-safe.desktop + + https://www.python.org/ftp/python/$_py2ver/Python-$_py2ver.tar.xz" builddir="$srcdir"/firefox-$pkgver +_mozappdir=/usr/lib/firefox ldpath="$_mozappdir" unpack() { default_unpack [ -z $SKIP_PYTHON ] || return 0 + msg "Killing all remaining hope for humanity and building Python 2..." - cd "$srcdir" - [ -d python ] && rm -r python - mkdir python - cd python + cd "$srcdir/Python-$_py2ver" + [ -d ../python ] && rm -r ../python # 19:39 <+solar> just make the firefox build process build its own py2 copy - curl -O https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tar.xz - tar xJf Python-2.7.15.tar.xz - cd Python-2.7.15 # 20:03 <calvin> TheWilfox: there's always violence ./configure --prefix="$srcdir/python" make -j $JOBS @@ -143,7 +146,7 @@ package() { EOF } -sha512sums="dd47e38a87a1339b733c06ea3f235576bf8dce414194ab308d0dda07bf15290afbbad92b8484732daa53cf6a48b57412f7f41e30ae0ac21144c8657b86047aec firefox-60.5.0esr.source.tar.xz +sha512sums="c2152857f5f1c816a12fcf5c450268025ee47ee9299ae3355650d86c7c97191b731123a4964154222ca5ba1edc44fee0d1d5f803ae9515841283ecaff6dc9a55 firefox-60.7.0esr.source.tar.xz 76e3e6f64f4dd1206106b2b73cca3ccd312a8d907010c382ab9e2f0a497fed297abf0654d4dd90c563e6dde6403e3f9084ce927bb275fec95be87bed8adf9257 mozconfig 0b3f1e4b9fdc868e4738b5c81fd6c6128ce8885b260affcb9a65ff9d164d7232626ce1291aaea70132b3e3124f5e13fef4d39326b8e7173e362a823722a85127 stab.h 09bc32cf9ee81b9cc6bb58ddbc66e6cc5c344badff8de3435cde5848e5a451e0172153231db85c2385ff05b5d9c20760cb18e4138dfc99060a9e960de2befbd5 fix-fortify-inline.patch @@ -154,16 +157,20 @@ bdcd1b402d2ec94957ba5d08cbad7b1a7f59c251c311be9095208491a05abb05a956c79f27908e1f e61664bc93eadce5016a06a4d0684b34a05074f1815e88ef2613380d7b369c6fd305fb34f83b5eb18b9e3138273ea8ddcfdcb1084fdcaa922a1e5b30146a3b18 mozilla-build-arm.patch 6beba471b6a7fc229a9c105d58137f80cec07219e52bb9a666c787b37ca88635d6ec2eba651eccb5096429c2965709c9475c89839c255c3545f8c96c5d40f403 missing-header-s390x.patch ace7492f4fb0523c7340fdc09c831906f74fddad93822aff367135538dacd3f56288b907f5a04f53f94c76e722ba0bab73e28d83ec12d3e672554712e6b08613 bad-google-code.patch -61c7117345b4bcb045ce0287aa368d90dffd7331347021ff345d5a7c46097ffd2575f38711309ce7bdbbbec15561e03fdabcb16235ed8a325ccc8c9d5bba35a6 cmsghdr.patch +a8f3589dade59f05a78fb92c5a50785ad2eb3f2a49a88dba0198bf74d3dc9a35e5adc554a5a4235b3653602ef58371ab7afc5a0459b6e9d82c351862e1a2db85 cmsghdr.patch +03597515a38f54aa973d2209ca7fbf7348f9843c4dd0481fae747ac06b35fc7e5c61b2e17ab6e3677e479901e8e12c58e961eb1cc861af7cfd2a8488d4dcde72 disable-gecko-profiler.patch 11361b009d708e80afcf2eca8b02381be0c8314421eb439200c674cfa4e4bca15127f2d0dd11bf36f48d0e309d4424f949caf588f08458f8e9ba6812b83023ab endian-gfx.patch 363f1df1a78799783b4e9f887dc85d83ec83c6ec392aeacbd98dc89e543d0cd3b9d1964ce274142b44847a03c47f845cbf6fa7fa17a04b25bbaa37fc5d714730 endianness-js.patch a50b412edf9573a0bd04a43578b1c927967a616b73a5995eefb15bfa78fd2bd14e36ec05315a0703f6370ecd524e6bcb012e7285beb1245e9add9b8553acb79e fix-bug-1261392.patch d5d3ec190b1916d5c06f466a72124a3d438d90ea40d54e894105a9faf2aa2a6ce9cc21a0a80bd4408f7be867e5a660ee3d8aed40c8d1fb511cfb947739f45240 fix-mutex-build.patch +48d2af2b5e5c2a6e7038f2710d09142da5ae97a54e07b80823c1aba7fc07f367a84d131a1c513c4d9a8be0a56e362a2c86b8547ae138ba71ee218a30ed34d3cc fix-sandbox-membarrier.patch 1a88c21c39d5878e2018463fe08dd3a960cdf10e650e06ef3e4f089a431800b50267d8749a7acde196bb47c45aa66058a6ed4fb4d60de2ab69e8a48cd5a109bc proper-system-hunspell.patch fd3b165e26ab931dd7eaf220d578c30b8772eab0a870710d59403c9823c2233ef941cd7eb25d1625d705de9e8a7138d0e8c4e227a185e9b687553132da96d81a rust-config.patch +7450eeb7ca48ce632fb7379aec6018012a0db5efd8afaee2708501e6c72273ba238922696da584a73b7fa82dc202470aba9ef5df20c230c9e21087436e68e4b8 rust-1.33.0.patch 21100340ff03f4257fa6a4b59e206d4d1b71c074ebae392ba616f9e6e6d4988a22eec69b40534221f9453ec3a58397fa4ab99b87abdcb7d22fabb13f9cc577d2 shut-up-warning.patch 8ef2bc4404601f66c7505f3e0a2f6d1d11e8f11e5a888dce4942cf27c86fbdbcdd66cb3d98738b7d9e25538793986140e75d51a893d22c70714ed98ef50a9894 skia.patch e196c998a4029e4fc134fbe4b7455abb4b93644f7f07b88faef4eda900de225e72b124b5a9ab3492cbe398e17f8390d29b769a2544744a106bba6a5def540973 stackwalk-x86-ppc.patch 76409619464259e3ba52e38d640c5b6210a7fecdc75cf124c185ef356507d4d266a845e9fcdeb7766dcd547f70748123c4fa1670f6e52aadd001a3c866dc2d51 webrtc-broken.patch f3b7c3e804ce04731012a46cb9e9a6b0769e3772aef9c0a4a8c7520b030fdf6cd703d5e9ff49275f14b7d738fe82a0a4fde3bc3219dff7225d5db0e274987454 firefox.desktop -5dcb6288d0444a8a471d669bbaf61cdb1433663eff38b72ee5e980843f5fc07d0d60c91627a2c1159215d0ad77ae3f115dcc5fdfe87e64ca704b641aceaa44ed firefox-safe.desktop" +5dcb6288d0444a8a471d669bbaf61cdb1433663eff38b72ee5e980843f5fc07d0d60c91627a2c1159215d0ad77ae3f115dcc5fdfe87e64ca704b641aceaa44ed firefox-safe.desktop +27ea43eb45fc68f3d2469d5f07636e10801dee11635a430ec8ec922ed790bb426b072da94df885e4dfa1ea8b7a24f2f56dd92f9b0f51e162330f161216bd6de6 Python-2.7.15.tar.xz" diff --git a/experimental/firefox-esr/cmsghdr.patch b/experimental/firefox-esr/cmsghdr.patch index 5fdc38353..2cf6821a4 100644 --- a/experimental/firefox-esr/cmsghdr.patch +++ b/experimental/firefox-esr/cmsghdr.patch @@ -1,10 +1,11 @@ -diff -Naur firefox-60.0.orig/media/audioipc/audioipc/src/cmsg.rs firefox-60.0/media/audioipc/audioipc/src/cmsg.rs ---- firefox-60.0.orig/media/audioipc/audioipc/src/cmsg.rs 2018-05-13 18:05:51.713781232 -0700 -+++ firefox-60.0/media/audioipc/audioipc/src/cmsg.rs 2018-05-13 17:33:39.536856530 -0700 -@@ -108,6 +108,7 @@ +diff -urw firefox-60.7.0-old/media/audioipc/audioipc/src/cmsg.rs firefox-60.7.0/media/audioipc/audioipc/src/cmsg.rs +--- firefox-60.7.0-old/media/audioipc/audioipc/src/cmsg.rs 2019-05-24 13:35:24.210002353 +0000 ++++ firefox-60.7.0/media/audioipc/audioipc/src/cmsg.rs 2019-05-24 13:36:34.400002547 +0000 +@@ -108,6 +108,8 @@ let cmsghdr = cmsghdr { cmsg_len: cmsg_len as _, ++ #[cfg(all(target_env = "musl", target_pointer_width = "64"))] + __pad1: 0, cmsg_level: level, cmsg_type: kind, diff --git a/experimental/firefox-esr/disable-gecko-profiler.patch b/experimental/firefox-esr/disable-gecko-profiler.patch new file mode 100644 index 000000000..42bb22633 --- /dev/null +++ b/experimental/firefox-esr/disable-gecko-profiler.patch @@ -0,0 +1,13 @@ +--- a/toolkit/moz.configure ++++ b/toolkit/moz.configure +@@ -35,10 +35,6 @@ + if value: + return True + +-set_config('MOZ_GECKO_PROFILER', gecko_profiler_define) +-set_define('MOZ_GECKO_PROFILER', gecko_profiler_define) +- +- + option('--enable-dmd', env='MOZ_DMD', + help='Enable Dark Matter Detector (heap profiler). ' + 'Also enables jemalloc, replace-malloc and profiling') diff --git a/experimental/firefox-esr/fix-sandbox-membarrier.patch b/experimental/firefox-esr/fix-sandbox-membarrier.patch new file mode 100644 index 000000000..841b17a91 --- /dev/null +++ b/experimental/firefox-esr/fix-sandbox-membarrier.patch @@ -0,0 +1,52 @@ +allow usage of SYS_membarrier, needed since musl-1.1.22 + +--- a/security/sandbox/linux/SandboxFilter.cpp ++++ b/security/sandbox/linux/SandboxFilter.cpp +@@ -283,6 +283,8 @@ + case __NR_set_tid_address: + return Allow(); + #endif ++ case __NR_membarrier: ++ return Allow(); + + // prctl + case __NR_prctl: { + +--- a/security/sandbox/chromium/sandbox/linux/system_headers/arm_linux_syscalls.h ++++ b/security/sandbox/chromium/sandbox/linux/system_headers/arm_linux_syscalls.h +@@ -1385,6 +1385,10 @@ + #define __NR_memfd_create (__NR_SYSCALL_BASE+385) + #endif + ++#if !defined(__NR_membarrier) ++#define __NR_membarrier (__NR_SYSCALL_BASE+389) ++#endif ++ + // ARM private syscalls. + #if !defined(__ARM_NR_BASE) + #define __ARM_NR_BASE (__NR_SYSCALL_BASE + 0xF0000) + +--- a/security/sandbox/chromium/sandbox/linux/system_headers/x86_64_linux_syscalls.h ++++ b/security/sandbox/chromium/sandbox/linux/system_headers/x86_64_linux_syscalls.h +@@ -1290,5 +1290,9 @@ + #define __NR_memfd_create 319 + #endif + ++#if !defined(__NR_membarrier) ++#define __NR_membarrier 324 ++#endif ++ + #endif // SANDBOX_LINUX_SYSTEM_HEADERS_X86_64_LINUX_SYSCALLS_H_ + +--- a/security/sandbox/chromium/sandbox/linux/system_headers/x86_32_linux_syscalls.h ++++ b/security/sandbox/chromium/sandbox/linux/system_headers/x86_32_linux_syscalls.h +@@ -1490,5 +1490,9 @@ + #define __NR_shutdown 373 + #endif + ++#if !defined(__NR_membarrier) ++#define __NR_membarrier 375 ++#endif ++ + #endif // SANDBOX_LINUX_SYSTEM_HEADERS_X86_32_LINUX_SYSCALLS_H_ + diff --git a/experimental/firefox-esr/rust-1.33.0.patch b/experimental/firefox-esr/rust-1.33.0.patch new file mode 100644 index 000000000..d74ade170 --- /dev/null +++ b/experimental/firefox-esr/rust-1.33.0.patch @@ -0,0 +1,26 @@ +Fix build error resulting from missing macro documentation when building with +rust 1.33.0. + +diff -urw firefox-60.6.1-old/servo/components/style/lib.rs firefox-60.6.1/servo/components/style/lib.rs +--- firefox-60.6.1-old/servo/components/style/lib.rs 2019-03-22 05:01:07.000000000 +0000 ++++ firefox-60.6.1/servo/components/style/lib.rs 2019-04-18 18:17:26.229986934 +0000 +@@ -23,7 +23,6 @@ + //! [cssparser]: ../cssparser/index.html + //! [selectors]: ../selectors/index.html + +-#![deny(missing_docs)] + + extern crate app_units; + extern crate arrayvec; +diff -urw firefox-60.6.1-old/servo/components/style_traits/lib.rs firefox-60.6.1/servo/components/style_traits/lib.rs +--- firefox-60.6.1-old/servo/components/style_traits/lib.rs 2019-03-22 05:01:07.000000000 +0000 ++++ firefox-60.6.1/servo/components/style_traits/lib.rs 2019-04-18 18:17:18.439987016 +0000 +@@ -9,7 +9,7 @@ + #![crate_name = "style_traits"] + #![crate_type = "rlib"] + +-#![deny(unsafe_code, missing_docs)] ++#![deny(unsafe_code)] + + extern crate app_units; + #[macro_use] extern crate bitflags; diff --git a/experimental/firefox/APKBUILD b/experimental/firefox/APKBUILD new file mode 100644 index 000000000..828754077 --- /dev/null +++ b/experimental/firefox/APKBUILD @@ -0,0 +1,135 @@ +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=firefox +pkgver=66.0.2 +pkgrel=0 +pkgdesc="Firefox Web browser (unstable)" +url="https://www.mozilla.org/firefox/" +arch="all" +options="!check" # Tests disabled +license="MPL-2.0" +depends="" +# moz build system stuff +# python deps +# system-libs +# actual deps +makedepends=" + autoconf2.13 cargo clang llvm7-dev node ncurses-dev perl rust + rust-stdlib cmd:which + + ncurses-dev openssl-dev + + alsa-lib-dev bzip2-dev icu-dev libevent-dev libffi-dev libpng-dev + libjpeg-turbo-dev nspr-dev nss-dev pulseaudio-dev zlib-dev + + dbus-glib-dev gconf-dev gtk+3.0-dev hunspell-dev libnotify-dev + libsm-dev libxcomposite-dev libxdamage-dev libxrender-dev libxt-dev + nss-static sqlite-dev startup-notification-dev unzip yasm zip + gtk+2.0-dev + " +_py2ver="2.7.15" +source="https://ftp.mozilla.org/pub/firefox/releases/$pkgver/source/firefox-$pkgver.source.tar.xz + https://www.python.org/ftp/python/$_py2ver/Python-$_py2ver.tar.xz + mozconfig + + rust-config.patch + " + +unpack() { + default_unpack + [ -z $SKIP_PYTHON ] || return 0 + + msg "Killing all remaining hope for humanity and building Python 2..." + cd "$srcdir/Python-$_py2ver" + [ -d ../python ] && rm -r ../python + # 19:39 <+solar> just make the firefox build process build its own py2 copy + # 20:03 <calvin> TheWilfox: there's always violence + ./configure --prefix="$srcdir/python" + make -j $JOBS + # 6 tests failed: + # test__locale test_os test_posix test_re test_strptime test_time + # make test + make -j $JOBS install +} + +prepare() { + cd "$builddir" + default_prepare + cp "$srcdir"/mozconfig "$builddir"/mozconfig + echo "ac_add_options --enable-optimize=\"$CFLAGS\"" >> "$builddir"/mozconfig + echo "ac_add_options --host=\"$CHOST\"" >> "$builddir"/mozconfig + echo "ac_add_options --target=\"$CTARGET\"" >> "$builddir"/mozconfig + # too much memory + if [ -z "$JOBS" -o $JOBS -gt 16 ]; then + echo "mk_add_options MOZ_MAKE_FLAGS=\"-j16\"" >> "$builddir"/mozconfig + fi +} + +build() { + cd "$builddir" + + 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}" + + local extra_flags="" + [ "$CARCH" = "s390x" ] && extra_flags="--disable-startupcache" + + export PATH="$srcdir/python/bin:$PATH" + ./mach build +} + +run() { + cd "$builddir"/obj-$CHOST/dist/bin + export LD_LIBRARY_PATH=. + ./firefox -no-remote -profile "$builddir"/obj-$CHOST/tmp/profile-default +} + +package() { + cd "$builddir" + export PATH="$srcdir/python/bin:$PATH" + DESTDIR="$pkgdir" ./mach install + + install -m755 -d ${pkgdir}/usr/share/applications + install -m755 -d ${pkgdir}/usr/share/pixmaps + + local png + for png in browser/branding/official/default*.png; do + local i=${_png%.png} + i=${i##*/default} + install -D -m644 "$png" \ + "$pkgdir"/usr/share/icons/hicolor/${i}x${i}/apps/firefox.png + done + + install -m644 "$builddir"/browser/branding/official/default48.png \ + ${pkgdir}/usr/share/pixmaps/firefox.png + install -m644 ${startdir}/firefox.desktop \ + ${pkgdir}/usr/share/applications/firefox.desktop + install -m644 ${startdir}/firefox-safe.desktop \ + ${pkgdir}/usr/share/applications/firefox-safe.desktop + + # install our vendor prefs + install -d "$pkgdir"/$_mozappdir/browser/defaults/preferences + + cat >> "$pkgdir"/$_mozappdir/browser/defaults/preferences/firefox-branding.js <<- EOF + // Use LANG environment variable to choose locale + pref("intl.locale.matchOS", true); + + // Disable default browser checking. + pref("browser.shell.checkDefaultBrowser", false); + + // Don't disable our bundled extensions in the application directory + pref("extensions.autoDisableScopes", 11); + pref("extensions.shownSelectionUI", true); + EOF +} + +sha512sums="2246f3aed4e8a1d557a2383204e926c45d63d7977032512982b3698da4d6260b67fa91507f1a103af0af77198b7ffb34d6609159729aa7bf1c7c16cf2f7efc5b firefox-66.0.2.source.tar.xz +27ea43eb45fc68f3d2469d5f07636e10801dee11635a430ec8ec922ed790bb426b072da94df885e4dfa1ea8b7a24f2f56dd92f9b0f51e162330f161216bd6de6 Python-2.7.15.tar.xz +dde70694cd3b3abfcac8d0737bf6031a96918a1b0a1846e5aa7b246511621417e2710acc2f783f77edc3f0043e67b0822ef9bdd4d6034729c432f9752d8f1f6d mozconfig +fd3b165e26ab931dd7eaf220d578c30b8772eab0a870710d59403c9823c2233ef941cd7eb25d1625d705de9e8a7138d0e8c4e227a185e9b687553132da96d81a rust-config.patch" diff --git a/experimental/firefox/mozconfig b/experimental/firefox/mozconfig new file mode 100644 index 000000000..3c44c7c1e --- /dev/null +++ b/experimental/firefox/mozconfig @@ -0,0 +1,23 @@ +ac_add_options --prefix=/usr +ac_add_options --libdir=/usr/lib +ac_add_options --disable-crashreporter +ac_add_options --disable-install-strip +ac_add_options --disable-jemalloc +ac_add_options --disable-profiling +ac_add_options --disable-strip +ac_add_options --disable-tests +ac_add_options --disable-updater +ac_add_options --enable-application=browser +ac_add_options --enable-alsa +ac_add_options --enable-dbus +ac_add_options --enable-default-toolkit=cairo-gtk3 +ac_add_options --enable-official-branding +ac_add_options --enable-pulseaudio +ac_add_options --enable-startup-notification +ac_add_options --enable-system-ffi +ac_add_options --with-system-bz2 +ac_add_options --with-system-icu +ac_add_options --with-system-libevent +ac_add_options --with-system-nspr +#ac_add_options --with-system-png +ac_add_options --with-system-zlib diff --git a/experimental/firefox/rust-config.patch b/experimental/firefox/rust-config.patch new file mode 100644 index 000000000..4dbddc2a9 --- /dev/null +++ b/experimental/firefox/rust-config.patch @@ -0,0 +1,20 @@ +look, another reason to hate google: fuchsia's triplets confuse the hell out of poor mozconfig + +meanwhile, make -foxkit- more important than -unknown- + +--- thunderbird-60.2.1/build/moz.configure/rust.configure.old 2018-10-01 14:51:04.000000000 +0000 ++++ thunderbird-60.2.1/build/moz.configure/rust.configure 2018-10-11 23:13:15.370000000 +0000 +@@ -119,9 +119,13 @@ + ambiguous = set() + per_raw_os = {} + for t in out: ++ if 'fuchsia' in t: continue + t = split_triplet(t, allow_unknown=True) + key = (t.cpu, t.endianness, t.os) + if key in per_os: ++ # hax to allow Adélie toolchains to work ++ if 'foxkit' in per_os[key].alias: ++ continue + previous = per_os[key] + per_raw_os[(previous.cpu, previous.endianness, + previous.raw_os)] = previous |