summaryrefslogtreecommitdiff
path: root/libre/iceweasel
diff options
context:
space:
mode:
authorAndré Fabian Silva Delgado <emulatorman@parabola.nu>2016-09-22 08:16:14 -0300
committerAndré Fabian Silva Delgado <emulatorman@parabola.nu>2016-09-22 08:16:14 -0300
commit40d1fce9a768dbe5d2a6655c8b894e1896a55b93 (patch)
tree578cb7ebefb985385fe428907ae5dfa9741d4a0d /libre/iceweasel
parent96d52ca8793b8687c8551212a809eb82017eb648 (diff)
downloadabslibre-40d1fce9a768dbe5d2a6655c8b894e1896a55b93.tar.gz
abslibre-40d1fce9a768dbe5d2a6655c8b894e1896a55b93.tar.bz2
abslibre-40d1fce9a768dbe5d2a6655c8b894e1896a55b93.zip
iceweasel: add armv7h support
Diffstat (limited to 'libre/iceweasel')
-rw-r--r--libre/iceweasel/PKGBUILD36
-rw-r--r--libre/iceweasel/mozilla-1253216.patch12
-rw-r--r--libre/iceweasel/mozilla-build-arm.patch24
3 files changed, 66 insertions, 6 deletions
diff --git a/libre/iceweasel/PKGBUILD b/libre/iceweasel/PKGBUILD
index 06c088d58..5b3d9de31 100644
--- a/libre/iceweasel/PKGBUILD
+++ b/libre/iceweasel/PKGBUILD
@@ -9,9 +9,10 @@
# Contributor: taro-k <taro-k@movasense_com>
# Contributor: Michał Masłowski <mtjm@mtjm.eu>
# Contributor: Luke R. <g4jc@openmailbox.org>
+# Contributor: Isaac David <isacdaavid@isacdaavid.info>
# Thank you very much to the older contributors:
# Contributor: evr <evanroman at gmail>
-# Contributor: Muhammad 'MJ' Jassim <UnbreakableMJ@gmail.com>
+# Contributor: Muhammad 'MJ' Jassim <UnbreakableMJ@gmail.com>
_pgo=false
@@ -32,10 +33,12 @@ pkgver=$_debver.$_debrel
pkgrel=1
pkgdesc="A libre version of Debian Iceweasel, the standalone web browser based on Mozilla Firefox."
-arch=(i686 x86_64)
+arch=(i686 x86_64 armv7h)
license=(MPL GPL LGPL)
depends=(alsa-lib dbus-glib ffmpeg gtk2 gtk3 hunspell icu=57.1 libevent libvpx=1.6.0 libxt mime-types mozilla-common nss sqlite startup-notification ttf-font)
-makedepends=(autoconf2.13 diffutils gconf imagemagick imake inetutils libidl2 libpulse librsvg-stable libxslt mesa mozilla-searchplugins pkg-config python2 quilt rust unzip yasm zip)
+makedepends=(autoconf2.13 diffutils gconf imagemagick imake inetutils libidl2 libpulse librsvg-stable libxslt mesa mozilla-searchplugins pkg-config python2 quilt unzip yasm zip)
+makedepends_i686=(rust)
+makedepends_x86_64=("${makedepends_i686[@]}")
options=(!emptydirs !makeflags debug)
if $_pgo; then
makedepends+=(xorg-server-xvfb)
@@ -59,7 +62,9 @@ source=("$_debrepo/`debfile $_debname`_$_debver.orig.tar.xz"
$pkgname.desktop
$pkgname-install-dir.patch
vendor.js
- enable-object-directory-paths.patch)
+ enable-object-directory-paths.patch
+ mozilla-1253216.patch
+ mozilla-build-arm.patch)
sha256sums=('2f463afd3c74eb9477f58525214f06498357ff90f01b45fb2675fc77c57bcffe'
'ad6e1da709e0f7e86da83fee84067968acd1678576c4cf1757214b2954780ce5'
'c0fd88e37187298a7658919cf2e4b6d024425b781d6aff5bdba49dc991f379d3'
@@ -72,7 +77,9 @@ sha256sums=('2f463afd3c74eb9477f58525214f06498357ff90f01b45fb2675fc77c57bcffe'
'87034dbb640f70454b27d1695a6f03b6fd1ab81c82eb4d8c771db925ae03d408'
'3aea6676f1e53a09673b6ae219d281fc28054beb6002b09973611c02f827651d'
'e1c82f5f683258e17f7b3dba62a938e4efe4d232f45a4b82e74cd2793fd5f7fe'
- 'e260e555b261aabab1e48786dd514eeea056e4402af7cfd4dfd1d32858441484')
+ 'e260e555b261aabab1e48786dd514eeea056e4402af7cfd4dfd1d32858441484'
+ 'fbb6011501a74a8ea6d01c041870fcefb7ef2859c134aedc676e5f6452833f65'
+ '56eecee8162c138c442773d66483886f1242c8dd2b16eed5711ae5e63d9b0e3a')
validpgpkeys=(
'C92BAA713B8D53D3CAE63FC9E6974752F9704456' # André Silva
'684D54A189305A9CC95446D36B888913DDB59515' # Márcio Silva
@@ -124,6 +131,23 @@ prepare() {
# Load our searchplugins
rm -rv browser/locales/en-US/searchplugins
cp -av /usr/lib/mozilla/searchplugins browser/locales/en-US
+
+ # ARM-specific changes:
+ if [[ "$CARCH" == arm* ]]; then
+ sed -i '/ac_add_options --enable-rust/d' .mozconfig
+ echo "ac_add_options --disable-ion" >> .mozconfig
+ echo "ac_add_options --disable-elf-hack" >> .mozconfig
+ echo "ac_add_options --disable-webrtc" >> .mozconfig
+
+ # Disable gold linker, reduce memory consumption at link time
+ sed -i '/ac_add_options --enable-gold/d' .mozconfig
+ LDFLAGS+=" -Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
+ echo "ac_add_options --disable-tests" >> .mozconfig
+ echo "ac_add_options --disable-debug" >> .mozconfig
+
+ patch -p1 -i ../mozilla-1253216.patch
+ patch -p1 -i ../mozilla-build-arm.patch
+ fi
}
build() {
@@ -167,7 +191,7 @@ package() {
install -Dm644 "$_brandingdir/${pkgname}_icon.svg" \
"$icondir/scalable/apps/$pkgname.svg"
-
+
install -d "$pkgdir/usr/share/applications"
install -m644 "$srcdir/$pkgname.desktop" \
"$pkgdir/usr/share/applications"
diff --git a/libre/iceweasel/mozilla-1253216.patch b/libre/iceweasel/mozilla-1253216.patch
new file mode 100644
index 000000000..c9252da5f
--- /dev/null
+++ b/libre/iceweasel/mozilla-1253216.patch
@@ -0,0 +1,12 @@
+diff -up firefox-48.0/js/src/jit/AtomicOperations.h.old firefox-48.0/js/src/jit/AtomicOperations.h
+--- firefox-48.0/js/src/jit/AtomicOperations.h.old 2016-07-27 09:42:43.148175449 +0200
++++ firefox-48.0/js/src/jit/AtomicOperations.h 2016-07-27 09:41:13.000000000 +0200
+@@ -340,7 +340,7 @@ AtomicOperations::isLockfree(int32_t siz
+ # elif defined(__aarch64__)
+ # include "jit/arm64/AtomicOperations-arm64.h"
+ # else
+-# include "jit/none/AtomicOperations-none.h" // These MOZ_CRASH() always
++# include "jit/none/AtomicOperations-ppc.h"
+ # endif
+ #elif defined(JS_CODEGEN_X86) || defined(JS_CODEGEN_X64)
+ # include "jit/x86-shared/AtomicOperations-x86-shared.h"
diff --git a/libre/iceweasel/mozilla-build-arm.patch b/libre/iceweasel/mozilla-build-arm.patch
new file mode 100644
index 000000000..774147bbb
--- /dev/null
+++ b/libre/iceweasel/mozilla-build-arm.patch
@@ -0,0 +1,24 @@
+diff -up firefox-46.0/media/webrtc/trunk/webrtc/build/common.gypi.arm firefox-46.0/media/webrtc/trunk/webrtc/build/common.gypi
+--- firefox-46.0/media/webrtc/trunk/webrtc/build/common.gypi.arm 2016-04-25 12:03:12.486027089 +0200
++++ firefox-46.0/media/webrtc/trunk/webrtc/build/common.gypi 2016-04-25 12:05:55.714644873 +0200
+@@ -312,20 +312,6 @@
+ 'defines': [
+ 'WEBRTC_ARCH_ARM',
+ ],
+- 'conditions': [
+- ['arm_version>=7', {
+- 'defines': ['WEBRTC_ARCH_ARM_V7',
+- 'WEBRTC_BUILD_NEON_LIBS'],
+- 'conditions': [
+- ['arm_neon==1', {
+- 'defines': ['WEBRTC_ARCH_ARM_NEON',],
+- }],
+- ['arm_neon==0 and arm_neon_optional==1', {
+- 'defines': ['WEBRTC_DETECT_ARM_NEON',],
+- }],
+- ],
+- }],
+- ],
+ }],
+ ['os_bsd==1', {
+ 'defines': [