summaryrefslogtreecommitdiff
path: root/libre/iceape
diff options
context:
space:
mode:
Diffstat (limited to 'libre/iceape')
-rw-r--r--libre/iceape/PKGBUILD20
-rw-r--r--libre/iceape/mozilla-1245076-1.patch49
-rw-r--r--libre/iceape/mozilla-1245076.patch23
3 files changed, 88 insertions, 4 deletions
diff --git a/libre/iceape/PKGBUILD b/libre/iceape/PKGBUILD
index aa6c452ef..f1b0f150d 100644
--- a/libre/iceape/PKGBUILD
+++ b/libre/iceape/PKGBUILD
@@ -8,11 +8,11 @@ epoch=1
_brandingver=2.39
_brandingrel=3
pkgver=2.40
-pkgrel=1
+pkgrel=2
pkgdesc="A libre version of Debian Iceape, the internet suite based on SeaMonkey."
arch=(i686 x86_64 armv7h)
license=(MPL GPL LGPL)
-depends=(alsa-lib dbus-glib desktop-file-utils gtk2 hunspell libevent libnotify libvpx libxt mime-types mozilla-common mozilla-searchplugins nss sqlite startup-notification libpulse icu gconf)
+depends=(alsa-lib dbus-glib desktop-file-utils gtk2 hunspell libevent libnotify libvpx=1.6.0 libxt mime-types mozilla-common mozilla-searchplugins nss sqlite startup-notification libpulse icu=57.1 gconf)
makedepends=(unzip zip pkg-config python2 librsvg-stable wireless_tools yasm mesa autoconf2.13 quilt imake python3 gst-plugins-base)
optdepends=('gst-plugins-base: vorbis decoding, ogg demuxing'
'gst-plugins-bad: aac, vp8 and opus decoding'
@@ -30,7 +30,9 @@ source=("https://archive.mozilla.org/pub/mozilla.org/$_pkgname/releases/$pkgver/
$pkgname.desktop
$pkgname-2.0-lang.patch
libre.patch
- rhbz-966424.patch)
+ rhbz-966424.patch
+ mozilla-1245076.patch
+ mozilla-1245076-1.patch)
sha256sums=('7ecccc039d03f38d197b123b59ea42eac4c0c10e4bdec779b3665d79b435fa01'
'ed6f0aab804235a8ea32631b8d8d664329e9507f7aa6fb016c87042bace51a44'
'SKIP'
@@ -38,7 +40,9 @@ sha256sums=('7ecccc039d03f38d197b123b59ea42eac4c0c10e4bdec779b3665d79b435fa01'
'46ac418fe26937460a36a593d71c8f5cef1288c9e747cac4ec4ca92db56da45d'
'ab19d10fbd6258aec37ab5e5efb12429814b2c24a1193284a48dd654311b4e2e'
'bc5150486aea78f58216597257500f14a83a2500eb96f41a2090f13785fb92bb'
- '746cb474c5a2c26fc474256e430e035e604b71b27df1003d4af85018fa263f4a')
+ '746cb474c5a2c26fc474256e430e035e604b71b27df1003d4af85018fa263f4a'
+ '05574c7d0f259da161bcd0e2e8bc9a19401e620ff29439da935d349eebb60efa'
+ '6e7cba25c52b246da183b8309e7b56208bd991d1a7adb40063c5702a6f3722ea')
validpgpkeys=(
'C92BAA713B8D53D3CAE63FC9E6974752F9704456' # André Silva
'684D54A189305A9CC95446D36B888913DDB59515' # Márcio Silva
@@ -128,6 +132,10 @@ prepare() {
# 2.26 build fix from wgnie (blfs ch 37)
sed -i 's/$(MOZ_ZLIB_CFLAGS)/& $(MOZ_PIXMAN_CFLAGS)/' config/config.mk
+
+ # GCC 6
+ patch -Np1 -d mozilla -i ../../mozilla-1245076.patch
+ patch -Np1 -d mozilla -i ../../mozilla-1245076-1.patch
}
build() {
@@ -138,6 +146,10 @@ build() {
unset MAKEFLAGS
unset CPPFLAGS
+ # GCC 6
+ CFLAGS+=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2"
+ CXXFLAGS+=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2"
+
make -j1 -f client.mk build
}
diff --git a/libre/iceape/mozilla-1245076-1.patch b/libre/iceape/mozilla-1245076-1.patch
new file mode 100644
index 000000000..dfc52c2cf
--- /dev/null
+++ b/libre/iceape/mozilla-1245076-1.patch
@@ -0,0 +1,49 @@
+diff --git a/config/gcc-stl-wrapper.template.h b/config/gcc-stl-wrapper.template.h
+--- a/config/gcc-stl-wrapper.template.h
++++ b/config/gcc-stl-wrapper.template.h
+@@ -12,33 +12,39 @@
+ // compiling ObjC.
+ #if defined(__EXCEPTIONS) && __EXCEPTIONS && !(__OBJC__ && __GNUC__ && XP_IOS)
+ # error "STL code can only be used with -fno-exceptions"
+ #endif
+
+ // Silence "warning: #include_next is a GCC extension"
+ #pragma GCC system_header
+
++#ifndef moz_dont_include_mozalloc_for_cstdlib
++# define moz_dont_include_mozalloc_for_cstdlib
++#endif
++#ifndef moz_dont_include_mozalloc_for_${HEADER}
+ // mozalloc.h wants <new>; break the cycle by always explicitly
+ // including <new> here. NB: this is a tad sneaky. Sez the gcc docs:
+ //
+ // `#include_next' does not distinguish between <file> and "file"
+ // inclusion, nor does it check that the file you specify has the
+ // same name as the current file. It simply looks for the file
+ // named, starting with the directory in the search path after the
+ // one where the current file was found.
+-#include_next <new>
++# include_next <new>
+
+ // See if we're in code that can use mozalloc. NB: this duplicates
+ // code in nscore.h because nscore.h pulls in prtypes.h, and chromium
+ // can't build with that being included before base/basictypes.h.
+-#if !defined(XPCOM_GLUE) && !defined(NS_NO_XPCOM) && !defined(MOZ_NO_MOZALLOC)
+-# include "mozilla/mozalloc.h"
+-#else
+-# error "STL code can only be used with infallible ::operator new()"
++# if !defined(XPCOM_GLUE) && !defined(NS_NO_XPCOM) && !defined(MOZ_NO_MOZALLOC)
++# include "mozilla/mozalloc.h"
++# else
++# error "STL code can only be used with infallible ::operator new()"
++# endif
++
+ #endif
+
+ #if defined(DEBUG) && !defined(_GLIBCXX_DEBUG)
+ // Enable checked iterators and other goodies
+ //
+ // FIXME/bug 551254: gcc's debug STL implementation requires -frtti.
+ // Figure out how to resolve this with -fno-rtti. Maybe build with
+ // -frtti in DEBUG builds?
+
diff --git a/libre/iceape/mozilla-1245076.patch b/libre/iceape/mozilla-1245076.patch
new file mode 100644
index 000000000..c3f06f19a
--- /dev/null
+++ b/libre/iceape/mozilla-1245076.patch
@@ -0,0 +1,23 @@
+diff --git a/gfx/graphite2/src/Collider.cpp b/gfx/graphite2/src/Collider.cpp
+--- a/gfx/graphite2/src/Collider.cpp
++++ b/gfx/graphite2/src/Collider.cpp
+@@ -21,17 +21,17 @@
+
+ Alternatively, the contents of this file may be used under the terms of the
+ Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public
+ License, as published by the Free Software Foundation, either version 2
+ of the License or (at your option) any later version.
+ */
+ #include <algorithm>
+ #include <limits>
+-#include <math.h>
++#include <cmath>
+ #include <string>
+ #include <functional>
+ #include "inc/Collider.h"
+ #include "inc/Segment.h"
+ #include "inc/Slot.h"
+ #include "inc/GlyphCache.h"
+ #include "inc/Sparse.h"
+
+