diff --git a/community/seamonkey/PKGBUILD b/community/seamonkey/PKGBUILD index ea2d58a0a..970bac3e9 100644 --- a/community/seamonkey/PKGBUILD +++ b/community/seamonkey/PKGBUILD @@ -6,7 +6,7 @@ pkgname=seamonkey pkgver=2.40 -pkgrel=1 +pkgrel=2 pkgdesc="SeaMonkey internet suite" arch=('i686' 'x86_64') license=('MPL') @@ -21,11 +21,15 @@ url="http://www.seamonkey-project.org/" source=(https://archive.mozilla.org/pub/mozilla.org/seamonkey/releases/$pkgver/source/seamonkey-$pkgver.source.tar.xz mozconfig seamonkey-2.0-lang.patch - rhbz-966424.patch) + rhbz-966424.patch + mozilla-1245076.patch + mozilla-1245076-1.patch) md5sums=('5789df8f96e14577c275f10fdf8462f3' '806cb42b072a8e749685ae6eafefb4ec' '25b6fe16ac24cd5c852213e5c1adb272' - '8c1578232b7a60fa1caa9a0b322d1e2b') + '8c1578232b7a60fa1caa9a0b322d1e2b' + '43550e772f110a338d5a42914ee2c3a6' + '772aac58e3a7e8a32bedd898bc35dc90') prepare() { cd "$pkgname-$pkgver" @@ -47,6 +51,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() { diff --git a/community/seamonkey/mozilla-1245076-1.patch b/community/seamonkey/mozilla-1245076-1.patch new file mode 100644 index 000000000..dfc52c2cf --- /dev/null +++ b/community/seamonkey/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 ; break the cycle by always explicitly + // including here. NB: this is a tad sneaky. Sez the gcc docs: + // + // `#include_next' does not distinguish between 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 ++# include_next + + // 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/community/seamonkey/mozilla-1245076.patch b/community/seamonkey/mozilla-1245076.patch new file mode 100644 index 000000000..c3f06f19a --- /dev/null +++ b/community/seamonkey/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 + #include +-#include ++#include + #include + #include + #include "inc/Collider.h" + #include "inc/Segment.h" + #include "inc/Slot.h" + #include "inc/GlyphCache.h" + #include "inc/Sparse.h" + +