From 5f37724f174875f0461f96e5170bbe2042883cbf Mon Sep 17 00:00:00 2001 From: Isaac David Date: Sun, 3 Jan 2016 16:00:10 -0600 Subject: libre-testing/iceweasel: arm port --- libre-testing/iceweasel/PKGBUILD | 21 ++++-- libre-testing/iceweasel/no-neon.patch | 123 ++++++++++++++++++++++++++++++++++ 2 files changed, 139 insertions(+), 5 deletions(-) create mode 100644 libre-testing/iceweasel/no-neon.patch (limited to 'libre-testing/iceweasel') diff --git a/libre-testing/iceweasel/PKGBUILD b/libre-testing/iceweasel/PKGBUILD index e670b2cb0..0d19d5153 100644 --- a/libre-testing/iceweasel/PKGBUILD +++ b/libre-testing/iceweasel/PKGBUILD @@ -10,7 +10,8 @@ # Contributor: Michał Masłowski # Thank you very much to the older contributors: # Contributor: evr -# Contributor: Muhammad 'MJ' Jassim +# Contributor: Muhammad 'MJ' Jassim +# Contributor: Isaac David _pgo=true @@ -25,10 +26,10 @@ _pkgname=firefox pkgname=iceweasel epoch=1 pkgver=$_debver.$_debrel -pkgrel=1 +pkgrel=2 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 desktop-file-utils gtk2 gtk3 hicolor-icon-theme hunspell icu=56.1 libevent libvpx=1.5.0 libxt mime-types mozilla-common nss sqlite startup-notification ttf-font) makedepends=(autoconf2.13 diffutils gconf gst-plugins-base-libs imagemagick imake inetutils libidl2 libpulse librsvg libxslt mesa mozilla-searchplugins pkg-config python2 quilt unzip yasm zip) @@ -55,7 +56,8 @@ source=("$_debrepo/`debfile $_debname`_$_debver.orig.tar.xz" $pkgname.desktop $pkgname-install-dir.patch vendor.js - $pkgname-fixed-loading-icon.png) + $pkgname-fixed-loading-icon.png + no-neon.patch) sha256sums=('7b42a06bfd8c99d1eb9bc49bb095228518e56641c7d7f7b0ba2fb234ba1af66a' 'db9678c4490432d2666dd5ab1c4016d8dd68c33fb32c03e1ea0386a939857cdd' '351ff30a3709ea5c2336e8c5ea93d6fa24c1f34a136594ee5eae729590d18b2a' @@ -65,7 +67,8 @@ sha256sums=('7b42a06bfd8c99d1eb9bc49bb095228518e56641c7d7f7b0ba2fb234ba1af66a' '2257dc69886bd0b72c48675a27c3a88b9cf6b598252c9e9f1c99763180684fc3' '3aea6676f1e53a09673b6ae219d281fc28054beb6002b09973611c02f827651d' '815a764744eaf4efae30d61a2886cd0e2fb09146fc9e06b61e1fa3ad3c749690' - '68e3a5b47c6d175cc95b98b069a15205f027cab83af9e075818d38610feb6213') + '68e3a5b47c6d175cc95b98b069a15205f027cab83af9e075818d38610feb6213' + '6d0c1c9ca28b20d206ce24ca84f4d4e3f5d062a2e9cb7445fcb6c2cfea959b4a') prepare() { cd "$srcdir/$_pkgname-$_debver" @@ -97,6 +100,11 @@ prepare() { # Load our build config, disable SafeSearch cp "$srcdir/mozconfig" .mozconfig + # Disable gold linker and SIMD for ARM build + if [ "$CARCH" = "armv7h" ]; then + sed -i '/ac_add_options --enable-gold/d' .mozconfig + echo 'ac_add_options --disable-neon' >> .mozconfig + fi mkdir "$srcdir/path" @@ -112,6 +120,9 @@ prepare() { cp "$srcdir/$pkgname-fixed-loading-icon.png" \ browser/themes/linux/tabbrowser/loading.png + # Fix SIMD options in configure script during ARM build + [ "$CARCH" = "armv7h" ] && patch -Np0 -i ../no-neon.patch + # Load our searchplugins rm -rv browser/locales/en-US/searchplugins cp -av /usr/lib/mozilla/searchplugins browser/locales/en-US diff --git a/libre-testing/iceweasel/no-neon.patch b/libre-testing/iceweasel/no-neon.patch new file mode 100644 index 000000000..12b0e64c1 --- /dev/null +++ b/libre-testing/iceweasel/no-neon.patch @@ -0,0 +1,123 @@ +--- configure.orig 2015-08-07 06:32:41.988366320 -0600 ++++ configure 2015-08-08 18:23:31.316475879 -0600 +@@ -7137,14 +7137,7 @@ + rm -f conftest* + echo "$ac_t"""$result"" 1>&6 + if test "$result" = "yes"; then +- cat >> confdefs.pytmp <<\EOF +- (''' HAVE_ARM_SIMD ''', ' 1 ') +-EOF +-cat >> confdefs.h <<\EOF +-#define HAVE_ARM_SIMD 1 +-EOF +- +- HAVE_ARM_SIMD=1 ++ HAVE_ARM_SIMD= + fi + + echo $ac_n "checking ARM version support in compiler""... $ac_c" 1>&6 +@@ -7176,27 +7169,13 @@ + rm -f conftest* + echo "$ac_t"""$result"" 1>&6 + if test "$result" = "yes"; then +- cat >> confdefs.pytmp <<\EOF +- (''' HAVE_ARM_NEON ''', ' 1 ') +-EOF +-cat >> confdefs.h <<\EOF +-#define HAVE_ARM_NEON 1 +-EOF ++ HAVE_ARM_NEON= + +- HAVE_ARM_NEON=1 +- +- if test -n "$ARM_ARCH"; then ++ if test -n "$ARM_ARCH"; then + if test "$ARM_ARCH" -lt 7; then + BUILD_ARM_NEON= + else +- cat >> confdefs.pytmp <<\EOF +- (''' BUILD_ARM_NEON ''', ' 1 ') +-EOF +-cat >> confdefs.h <<\EOF +-#define BUILD_ARM_NEON 1 +-EOF +- +- BUILD_ARM_NEON=1 ++ BUILD_ARM_NEON= + fi + fi + fi +--- js/src/configure.orig 2015-08-07 06:33:02.108365042 -0600 ++++ js/src/configure 2015-08-08 18:24:00.676479200 -0600 +@@ -6267,14 +6267,7 @@ + rm -f conftest* + echo "$ac_t"""$result"" 1>&6 + if test "$result" = "yes"; then +- cat >> confdefs.pytmp <<\EOF +- (''' HAVE_ARM_SIMD ''', ' 1 ') +-EOF +-cat >> confdefs.h <<\EOF +-#define HAVE_ARM_SIMD 1 +-EOF +- +- HAVE_ARM_SIMD=1 ++ HAVE_ARM_SIMD= + fi + + echo $ac_n "checking ARM version support in compiler""... $ac_c" 1>&6 +@@ -6306,27 +6299,13 @@ + rm -f conftest* + echo "$ac_t"""$result"" 1>&6 + if test "$result" = "yes"; then +- cat >> confdefs.pytmp <<\EOF +- (''' HAVE_ARM_NEON ''', ' 1 ') +-EOF +-cat >> confdefs.h <<\EOF +-#define HAVE_ARM_NEON 1 +-EOF +- +- HAVE_ARM_NEON=1 ++ HAVE_ARM_NEON= + + if test -n "$ARM_ARCH"; then + if test "$ARM_ARCH" -lt 7; then + BUILD_ARM_NEON= + else +- cat >> confdefs.pytmp <<\EOF +- (''' BUILD_ARM_NEON ''', ' 1 ') +-EOF +-cat >> confdefs.h <<\EOF +-#define BUILD_ARM_NEON 1 +-EOF +- +- BUILD_ARM_NEON=1 ++ BUILD_ARM_NEON= + fi + fi + fi +--- mozglue/build/arm.h.orig 2015-08-08 18:21:03.686458059 -0600 ++++ mozglue/build/arm.h 2015-08-08 18:21:16.781459724 -0600 +@@ -69,12 +69,6 @@ + # endif + # endif + +- // When using -mfpu=neon, gcc generates neon instructions. +- +-# if defined(__ARM_NEON__) +-# define MOZILLA_PRESUME_NEON 1 +-# endif +- + // Currently we only have CPU detection for Linux via /proc/cpuinfo + # if defined(__linux__) || defined(ANDROID) + # define MOZILLA_ARM_HAVE_CPUID_DETECTION 1 +--- build/gyp.mozbuild.orig 2015-08-08 20:00:38.026946903 -0600 ++++ build/gyp.mozbuild 2015-08-08 20:00:45.321915167 -0600 +@@ -40,7 +40,7 @@ + + # turn off mandatory use of NEON and instead use NEON detection + 'arm_neon': 0, +- 'arm_neon_optional': 1, ++ 'arm_neon_optional': 0, + + 'moz_widget_toolkit_gonk': 0, + 'moz_webrtc_omx': 0, -- cgit v1.2.2