From 6e68eef1ec2aa740af0232f24363f4617d839570 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mar 27 2015 13:08:01 +0000 Subject: Fix build failures on s390 Fix build failures with gcc 5 Decrease the debuginfo verbosity on ppc and others --- diff --git a/webkitgtk-2.5.2-commit_align.patch b/webkitgtk-2.5.2-commit_align.patch deleted file mode 100644 index fa75294..0000000 --- a/webkitgtk-2.5.2-commit_align.patch +++ /dev/null @@ -1,35 +0,0 @@ -diff -up webkitgtk-2.5.2/Source/JavaScriptCore/heap/CopiedBlock.h.ppc64_align webkitgtk-2.5.2/Source/JavaScriptCore/heap/CopiedBlock.h ---- webkitgtk-2.5.2/Source/JavaScriptCore/heap/CopiedBlock.h.ppc64_align 2014-07-08 06:17:14.000000000 -0600 -+++ webkitgtk-2.5.2/Source/JavaScriptCore/heap/CopiedBlock.h 2014-08-12 05:38:47.752283561 -0600 -@@ -81,7 +81,7 @@ public: - size_t size(); - size_t capacity(); - -- static const size_t blockSize = 32 * KB; -+ static const size_t blockSize = 64 * KB; - - bool hasWorkList(); - CopyWorkList& workList(); -diff -up webkitgtk-2.5.2/Source/JavaScriptCore/interpreter/JSStack.cpp.ppc64_align webkitgtk-2.5.2/Source/JavaScriptCore/interpreter/JSStack.cpp ---- webkitgtk-2.5.2/Source/JavaScriptCore/interpreter/JSStack.cpp.ppc64_align 2014-08-12 06:27:12.101177790 -0600 -+++ webkitgtk-2.5.2/Source/JavaScriptCore/interpreter/JSStack.cpp 2014-08-12 06:32:01.252063281 -0600 -@@ -58,7 +58,8 @@ JSStack::JSStack(VM& vm) - size_t capacity = Options::maxPerThreadStackUsage(); - ASSERT(capacity && isPageAligned(capacity)); - -- m_reservation = PageReservation::reserve(WTF::roundUpToMultipleOf(commitSize, capacity), OSAllocator::JSVMStackPages); -+ size_t commitsize = pageSize(); -+ m_reservation = PageReservation::reserve(WTF::roundUpToMultipleOf(commitsize, capacity), OSAllocator::JSVMStackPages); - setStackLimit(highAddress()); - m_commitTop = highAddress(); - -@@ -92,7 +93,8 @@ bool JSStack::growSlowCase(Register* new - // have it is still within our budget. If not, we'll fail to grow and - // return false. - ptrdiff_t delta = reinterpret_cast(m_commitTop) - reinterpret_cast(newTopOfStackWithReservedZone); -- delta = WTF::roundUpToMultipleOf(commitSize, delta); -+ size_t commitsize = pageSize(); -+ delta = WTF::roundUpToMultipleOf(commitsize, delta); - Register* newCommitTop = m_commitTop - (delta / sizeof(Register)); - if (newCommitTop < reservationTop()) - return false; diff --git a/webkitgtk-2.8.0-gcc5_fix.patch b/webkitgtk-2.8.0-gcc5_fix.patch new file mode 100644 index 0000000..fe50e2f --- /dev/null +++ b/webkitgtk-2.8.0-gcc5_fix.patch @@ -0,0 +1,14 @@ +diff -up webkitgtk-2.8.0/Source/JavaScriptCore/runtime/JSObject.cpp.s390_fixes webkitgtk-2.8.0/Source/JavaScriptCore/runtime/JSObject.cpp +--- webkitgtk-2.8.0/Source/JavaScriptCore/runtime/JSObject.cpp.s390_fixes 2015-03-23 09:08:04.000000000 +0100 ++++ webkitgtk-2.8.0/Source/JavaScriptCore/runtime/JSObject.cpp 2015-03-27 10:59:40.245010499 +0100 +@@ -1965,6 +1965,10 @@ void JSObject::putByIndexBeyondVectorLen + } + } + ++template void JSObject::putByIndexBeyondVectorLengthWithoutAttributes(ExecState* exec, unsigned i, JSValue value); ++template void JSObject::putByIndexBeyondVectorLengthWithoutAttributes(ExecState* exec, unsigned i, JSValue value); ++template void JSObject::putByIndexBeyondVectorLengthWithoutAttributes(ExecState* exec, unsigned i, JSValue value); ++ + void JSObject::putByIndexBeyondVectorLengthWithArrayStorage(ExecState* exec, unsigned i, JSValue value, bool shouldThrow, ArrayStorage* storage) + { + VM& vm = exec->vm(); diff --git a/webkitgtk-2.8.0-s390_fixes.patch b/webkitgtk-2.8.0-s390_fixes.patch new file mode 100644 index 0000000..a73290b --- /dev/null +++ b/webkitgtk-2.8.0-s390_fixes.patch @@ -0,0 +1,24 @@ +diff -up webkitgtk-2.8.0/Source/bmalloc/bmalloc/Algorithm.h.s390_fixes webkitgtk-2.8.0/Source/bmalloc/bmalloc/Algorithm.h +--- webkitgtk-2.8.0/Source/bmalloc/bmalloc/Algorithm.h.s390_fixes 2015-03-04 15:25:17.000000000 +0100 ++++ webkitgtk-2.8.0/Source/bmalloc/bmalloc/Algorithm.h 2015-03-27 10:59:40.245010499 +0100 +@@ -66,7 +66,7 @@ inline constexpr bool isPowerOfTwo(size_ + template inline T roundUpToMultipleOf(size_t divisor, T x) + { + BASSERT(isPowerOfTwo(divisor)); +- return reinterpret_cast((reinterpret_cast(x) + (divisor - 1)) & ~(divisor - 1)); ++ return reinterpret_cast((reinterpret_cast(x) + (divisor - 1)) & ~(divisor - 1)); + } + + template inline constexpr T roundUpToMultipleOf(T x) +diff -up webkitgtk-2.8.0/Source/bmalloc/bmalloc/Sizes.h.s390_fixes webkitgtk-2.8.0/Source/bmalloc/bmalloc/Sizes.h +--- webkitgtk-2.8.0/Source/bmalloc/bmalloc/Sizes.h.s390_fixes 2015-03-04 15:25:17.000000000 +0100 ++++ webkitgtk-2.8.0/Source/bmalloc/bmalloc/Sizes.h 2015-03-27 10:59:40.245010499 +0100 +@@ -99,7 +99,7 @@ namespace Sizes { + inline size_t sizeClass(size_t size) + { + static const size_t sizeClassMask = (mediumMax / alignment) - 1; +- return mask((size - 1) / alignment, sizeClassMask); ++ return mask(static_cast((size - 1) / alignment), sizeClassMask); + } + + inline size_t objectSize(size_t sizeClass) diff --git a/webkitgtk4.spec b/webkitgtk4.spec index e350f5d..ff37b7a 100644 --- a/webkitgtk4.spec +++ b/webkitgtk4.spec @@ -9,7 +9,7 @@ Name: webkitgtk4 Version: 2.8.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: GTK+ Web content engine library License: LGPLv2 @@ -20,9 +20,12 @@ Patch0: webkitgtk-2.7.4-nspluginwrapper.patch # https://bugs.webkit.org/show_bug.cgi?id=142074 Patch1: webkitgtk-2.7.90-user-agent-branding.patch Patch2: webkitgtk-2.5.90-cloop_fix.patch -Patch3: webkitgtk-2.5.2-commit_align.patch # https://bugs.webkit.org/show_bug.cgi?id=142333 -Patch4: webkitgtk-2.7.91-matrix-multiplication.patch +Patch3: webkitgtk-2.7.91-matrix-multiplication.patch +# https://bugzilla.redhat.com/show_bug.cgi?id=1206161 +Patch4: webkitgtk-2.8.0-s390_fixes.patch +# https://bugzilla.redhat.com/show_bug.cgi?id=1206577 +Patch5: webkitgtk-2.8.0-gcc5_fix.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -96,10 +99,11 @@ This package contains developer documentation for %{name}. %patch1 -p1 -b .user_agent # FIXME Temporarily disabled due to https://bugzilla.redhat.com/show_bug.cgi?id=1167004 #%patch2 -p1 -b .cloop_fix -%ifarch %{power64} aarch64 ppc -%patch3 -p1 -b .commit_align +%patch3 -p1 -b .matrix_multiplication +%ifarch s390 +%patch4 -p1 -b .s390_fixes %endif -%patch4 -p1 -b .matrix_multiplication +%patch5 -p1 -b .gcc5_fix # Remove bundled libraries rm -rf Source/ThirdParty/leveldb/ @@ -115,7 +119,7 @@ rm -rf Source/ThirdParty/qunit/ # Decrease debuginfo even on ix86 because of: # https://bugs.webkit.org/show_bug.cgi?id=140176 -%ifarch s390 s390x %{arm} %{ix86} +%ifarch s390 s390x %{arm} %{ix86} ppc %{power64} # Decrease debuginfo verbosity to reduce memory consumption even more %global optflags %(echo %{optflags} | sed 's/-g /-g1 /') %endif @@ -204,6 +208,11 @@ make %{?_smp_mflags} -C %{_target_platform} %{_datadir}/gtk-doc/html/webkitdomgtk-4.0/ %changelog +* Fri Mar 27 2015 Than Ngo - 2.8.0-2 +- Fix build failures on s390 +- Fix build failures with gcc 5 +- Decrease the debuginfo verbosity on ppc and others + * Mon Mar 23 2015 Tomas Popela - 2.8.0-1 - Update to 2.8.0