[webkitgtk4/f21] Add support for secondary arches
Tomas Popela
tpopela at fedoraproject.org
Mon Aug 25 09:38:31 UTC 2014
commit 40af07adc49e37988ef7b6dfa2aa266393fafc02
Author: Tomas Popela <tpopela at redhat.com>
Date: Mon Aug 25 11:38:14 2014 +0200
Add support for secondary arches
webkit-1.1.14-nspluginwrapper.patch | 12 +++
webkitgtk-2.4.2-ppc64le.patch | 69 +++++++++++++++++
webkitgtk-2.5.2-cloop_fix.patch | 142 +++++++++++++++++++++++++++++++++++
webkitgtk-2.5.2-cloop_fix_32.patch | 19 +++++
webkitgtk-2.5.2-commit_align.patch | 35 +++++++++
webkitgtk-aarch64.patch | 38 +++++++++
webkitgtk4.spec | 46 +++++++++++-
7 files changed, 358 insertions(+), 3 deletions(-)
---
diff --git a/webkit-1.1.14-nspluginwrapper.patch b/webkit-1.1.14-nspluginwrapper.patch
new file mode 100644
index 0000000..0d3aa27
--- /dev/null
+++ b/webkit-1.1.14-nspluginwrapper.patch
@@ -0,0 +1,12 @@
+--- webkit-1.1.17/Source/WebCore/plugins/PluginDatabase.cpp.old 2009-12-01 15:22:10.000000000 +0000
++++ webkit-1.1.17/Source/WebCore/plugins/PluginDatabase.cpp 2009-12-01 15:22:21.000000000 +0000
+@@ -357,6 +357,9 @@ Vector<String> PluginDatabase::defaultPl
+ paths.append("/usr/lib64/mozilla/plugins");
+ paths.append("/usr/lib/nsbrowser/plugins");
+ paths.append("/usr/lib64/nsbrowser/plugins");
++ /* And for nspluginwrapper */
++ paths.append("/usr/lib64/mozilla/plugins-wrapped");
++ paths.append("/usr/lib/mozilla/plugins-wrapped");
+
+ String mozHome(getenv("MOZILLA_HOME"));
+ mozHome.append("/plugins");
diff --git a/webkitgtk-2.4.2-ppc64le.patch b/webkitgtk-2.4.2-ppc64le.patch
new file mode 100644
index 0000000..3618d98
--- /dev/null
+++ b/webkitgtk-2.4.2-ppc64le.patch
@@ -0,0 +1,69 @@
+diff -up webkitgtk-2.4.2/Source/WTF/wtf/dtoa/utils.h.ppc64le webkitgtk-2.4.2/Source/WTF/wtf/dtoa/utils.h
+--- webkitgtk-2.4.2/Source/WTF/wtf/dtoa/utils.h.ppc64le 2014-05-14 15:37:26.360159487 +0200
++++ webkitgtk-2.4.2/Source/WTF/wtf/dtoa/utils.h 2014-05-14 15:38:46.938315499 +0200
+@@ -49,7 +49,7 @@
+ defined(__ARMEL__) || \
+ defined(_MIPS_ARCH_MIPS32R2)
+ #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1
+-#elif CPU(MIPS) || CPU(PPC) || CPU(PPC64) || OS(WINCE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(ARM64) || CPU(HPPA)
++#elif CPU(MIPS) || CPU(PPC) || CPU(PPC64) || CPU(PPC64LE) || OS(WINCE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(ARM64) || CPU(HPPA)
+ #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1
+ #elif defined(_M_IX86) || defined(__i386__)
+ #if defined(_WIN32)
+diff -up webkitgtk-2.4.2/Source/WTF/wtf/Platform.h.ppc64le webkitgtk-2.4.2/Source/WTF/wtf/Platform.h
+--- webkitgtk-2.4.2/Source/WTF/wtf/Platform.h.ppc64le 2014-05-12 08:03:53.000000000 +0200
++++ webkitgtk-2.4.2/Source/WTF/wtf/Platform.h 2014-05-14 15:39:08.402622454 +0200
+@@ -101,24 +101,38 @@
+ #endif /* MIPS */
+
+ /* CPU(PPC) - PowerPC 32-bit */
+-#if defined(__ppc__) \
++#if ( defined(__ppc__) \
+ || defined(__PPC__) \
+ || defined(__powerpc__) \
+ || defined(__powerpc) \
+ || defined(__POWERPC__) \
+ || defined(_M_PPC) \
+- || defined(__PPC)
++ || defined(__PPC)) \
++ && defined(__BYTE_ORDER__) \
++ && (__BYTE_ORDER__==__ORDER_BIG_ENDIAN__)
+ #define WTF_CPU_PPC 1
+ #define WTF_CPU_BIG_ENDIAN 1
+ #endif
+
+-/* CPU(PPC64) - PowerPC 64-bit */
+-#if defined(__ppc64__) \
+- || defined(__PPC64__)
++/* CPU(PPC64) - PowerPC 64-bit Big Endian */
++#if ( defined(__ppc64__) \
++ || defined(__PPC64__)) \
++ && defined(__BYTE_ORDER__) \
++ && (__BYTE_ORDER__==__ORDER_BIG_ENDIAN__)
+ #define WTF_CPU_PPC64 1
+ #define WTF_CPU_BIG_ENDIAN 1
+ #endif
+
++/* CPU(PPC64) - PowerPC 64-bit Little Endian */
++#if ( defined(__ppc64__) \
++ || defined(__PPC64__) \
++ || defined(__ppc64le__) \
++ || defined(__PPC64LE__)) \
++ && defined(__BYTE_ORDER__) \
++ && (__BYTE_ORDER__==__ORDER_LITTLE_ENDIAN__)
++#define WTF_CPU_PPC64LE 1
++#endif
++
+ /* CPU(SH4) - SuperH SH-4 */
+ #if defined(__SH4__)
+ #define WTF_CPU_SH4 1
+@@ -641,7 +655,8 @@
+ || CPU(ALPHA) \
+ || CPU(ARM64) \
+ || CPU(S390X) \
+- || CPU(PPC64)
++ || CPU(PPC64) \
++ || CPU(PPC64LE)
+ #define WTF_USE_JSVALUE64 1
+ #else
+ #define WTF_USE_JSVALUE32_64 1
diff --git a/webkitgtk-2.5.2-cloop_fix.patch b/webkitgtk-2.5.2-cloop_fix.patch
new file mode 100644
index 0000000..cac0270
--- /dev/null
+++ b/webkitgtk-2.5.2-cloop_fix.patch
@@ -0,0 +1,142 @@
+diff -up webkitgtk-2.5.2/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix webkitgtk-2.5.2/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm
+--- webkitgtk-2.5.2/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix 2014-08-14 09:21:48.792442811 -0600
++++ webkitgtk-2.5.2/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm 2014-08-14 09:21:48.792442811 -0600
+@@ -225,7 +225,7 @@ macro doCallToJavaScript(makeCall)
+ storep 0, ArgumentCount[cfr]
+ storep vm, Callee[cfr]
+ loadp VM::topCallFrame[vm], temp2
+- storep temp2, ScopeChain[cfr]
++ storep temp2, ScopeChain + PayloadOffset[cfr]
+ storep 1, CodeBlock[cfr]
+ if X86
+ loadp 28[sp], previousPC
+@@ -324,7 +324,7 @@ macro doCallToJavaScript(makeCall)
+
+ .calleeFramePopped:
+ loadp Callee[cfr], temp3 # VM
+- loadp ScopeChain[cfr], temp4 # previous topCallFrame
++ loadp ScopeChain + PayloadOffset[cfr], temp4 # previous topCallFrame
+ storep temp4, VM::topCallFrame[temp3]
+
+ callToJavaScriptEpilogue()
+@@ -383,10 +383,10 @@ _handleUncaughtException:
+ # Check if we need to pop to the sentinel frame and do the necessary clean up for
+ # returning to the caller C frame.
+ bpeq CodeBlock[cfr], 1, .handleUncaughtExceptionAlreadyIsSentinel
+- loadp CallerFrame + PayloadOffset[cfr], cfr
++ loadp CallerFrame[cfr], cfr
+ .handleUncaughtExceptionAlreadyIsSentinel:
+
+- loadp Callee + PayloadOffset[cfr], t3 # VM
++ loadp Callee[cfr], t3 # VM
+ loadp ScopeChain + PayloadOffset[cfr], t5 # previous topCallFrame
+ storep t5, VM::topCallFrame[t3]
+
+@@ -664,7 +664,7 @@ macro functionArityCheck(doneLabel, slow
+ end
+
+ macro branchIfException(label)
+- loadp ScopeChain[cfr], t3
++ loadp ScopeChain + PayloadOffset[cfr], t3
+ andp MarkedBlockMask, t3
+ loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3
+ bieq VM::m_exception + TagOffset[t3], EmptyValueTag, .noException
+@@ -2110,7 +2110,7 @@ macro nativeCallTrampoline(executableOff
+ loadp JSFunction::m_executable[t1], t1
+ checkStackPointerAlignment(t3, 0xdead0001)
+ call executableOffsetToFunction[t1]
+- loadp ScopeChain[cfr], t3
++ loadp ScopeChain + PayloadOffset[cfr], t3
+ andp MarkedBlockMask, t3
+ loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3
+ addp 8, sp
+@@ -2133,7 +2133,7 @@ macro nativeCallTrampoline(executableOff
+ else
+ call executableOffsetToFunction[t1]
+ end
+- loadp ScopeChain[cfr], t3
++ loadp ScopeChain + PayloadOffset[cfr], t3
+ andp MarkedBlockMask, t3
+ loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3
+ addp 8, sp
+@@ -2176,7 +2176,7 @@ macro resolveScope()
+ addi 1, t2
+
+ .resolveScopeAfterActivationCheck:
+- loadp ScopeChain[cfr], t0
++ loadp ScopeChain + PayloadOffset[cfr], t0
+ btiz t2, .resolveScopeLoopEnd
+
+ .resolveScopeLoop:
+@@ -2235,7 +2235,7 @@ _llint_op_resolve_scope:
+
+ macro loadWithStructureCheck(operand, slowPath)
+ loadisFromInstruction(operand, t0)
+- loadp [cfr, t0, 8], t0
++ loadp PayloadOffset[cfr, t0, 8], t0
+ loadpFromInstruction(5, t1)
+ bpneq JSCell::m_structureID[t0], t1, slowPath
+ end
+diff -up webkitgtk-2.5.2/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm.cloop_fix webkitgtk-2.5.2/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm
+--- webkitgtk-2.5.2/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm.cloop_fix 2014-08-14 23:57:06.193271648 -0600
++++ webkitgtk-2.5.2/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm 2014-08-15 00:00:45.613943623 -0600
+@@ -2114,7 +2114,7 @@ macro loadWithStructureCheck(operand, sl
+ end
+
+ macro getProperty()
+- loadisFromInstruction(6, t1)
++ loadpFromInstruction(6, t1)
+ loadPropertyAtVariableOffset(t1, t0, t2)
+ valueProfile(t2, 7, t0)
+ loadisFromInstruction(1, t0)
+@@ -2131,7 +2131,7 @@ end
+
+ macro getClosureVar()
+ loadp JSVariableObject::m_registers[t0], t0
+- loadisFromInstruction(6, t1)
++ loadpFromInstruction(6, t1)
+ loadq [t0, t1, 8], t0
+ valueProfile(t0, 7, t1)
+ loadisFromInstruction(1, t1)
+@@ -2188,7 +2188,7 @@ _llint_op_get_from_scope:
+ macro putProperty()
+ loadisFromInstruction(3, t1)
+ loadConstantOrVariable(t1, t2)
+- loadisFromInstruction(6, t1)
++ loadpFromInstruction(6, t1)
+ storePropertyAtVariableOffset(t1, t0, t2)
+ end
+
+@@ -2205,7 +2205,7 @@ macro putClosureVar()
+ loadisFromInstruction(3, t1)
+ loadConstantOrVariable(t1, t2)
+ loadp JSVariableObject::m_registers[t0], t0
+- loadisFromInstruction(6, t1)
++ loadpFromInstruction(6, t1)
+ storeq t2, [t0, t1, 8]
+ end
+
+diff -up webkitgtk-2.5.2/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp.cloop_fix webkitgtk-2.5.2/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp
+--- webkitgtk-2.5.2/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp.cloop_fix 2014-08-06 23:57:04.000000000 -0600
++++ webkitgtk-2.5.2/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp 2014-08-14 05:33:05.980418193 -0600
+@@ -1396,7 +1396,7 @@ static JSValue getFromScopeCommon(ExecSt
+ {
+ ConcurrentJITLocker locker(codeBlock->m_lock);
+ pc[5].u.structure.set(exec->vm(), codeBlock->ownerExecutable(), structure);
+- pc[6].u.operand = slot.cachedOffset();
++ pc[6].u.pointer = reinterpret_cast<void*>(slot.cachedOffset());
+ }
+ structure->startWatchingPropertyForReplacements(vm, slot.cachedOffset());
+ }
+diff -up webkitgtk-2.5.2/Source/JavaScriptCore/runtime/CommonSlowPaths.h.cloop_fix webkitgtk-2.5.2/Source/JavaScriptCore/runtime/CommonSlowPaths.h
+--- webkitgtk-2.5.2/Source/JavaScriptCore/runtime/CommonSlowPaths.h.cloop_fix 2014-08-14 09:28:19.073638043 -0600
++++ webkitgtk-2.5.2/Source/JavaScriptCore/runtime/CommonSlowPaths.h 2014-08-14 09:27:17.033448046 -0600
+@@ -115,7 +115,7 @@ inline void tryCachePutToScopeGlobal(
+
+ ConcurrentJITLocker locker(codeBlock->m_lock);
+ pc[5].u.structure.set(exec->vm(), codeBlock->ownerExecutable(), scope->structure());
+- pc[6].u.operand = slot.cachedOffset();
++ pc[6].u.pointer = reinterpret_cast<void*>(slot.cachedOffset());
+ }
+
+ } // namespace CommonSlowPaths
diff --git a/webkitgtk-2.5.2-cloop_fix_32.patch b/webkitgtk-2.5.2-cloop_fix_32.patch
new file mode 100644
index 0000000..889245f
--- /dev/null
+++ b/webkitgtk-2.5.2-cloop_fix_32.patch
@@ -0,0 +1,19 @@
+diff -up webkitgtk-2.1.90.1/Source/JavaScriptCore/llint/LowLevelInterpreter.asm.double2intsPPC32 webkitgtk-2.1.90.1/Source/JavaScriptCore/llint/LowLevelInterpreter.asm
+--- webkitgtk-2.1.90.1/Source/JavaScriptCore/llint/LowLevelInterpreter.asm.double2intsPPC32 2013-08-28 21:06:29.000000000 +0200
++++ webkitgtk-2.1.90.1/Source/JavaScriptCore/llint/LowLevelInterpreter.asm 2013-09-12 15:32:34.000000000 +0200
+@@ -276,13 +276,13 @@ macro assertNotConstant(index)
+ end
+
+ macro functionForCallCodeBlockGetter(targetRegister)
+- loadp Callee[cfr], targetRegister
++ loadp Callee + PayloadOffset[cfr], targetRegister
+ loadp JSFunction::m_executable[targetRegister], targetRegister
+ loadp FunctionExecutable::m_codeBlockForCall[targetRegister], targetRegister
+ end
+
+ macro functionForConstructCodeBlockGetter(targetRegister)
+- loadp Callee[cfr], targetRegister
++ loadp Callee + PayloadOffset[cfr], targetRegister
+ loadp JSFunction::m_executable[targetRegister], targetRegister
+ loadp FunctionExecutable::m_codeBlockForConstruct[targetRegister], targetRegister
+ end
diff --git a/webkitgtk-2.5.2-commit_align.patch b/webkitgtk-2.5.2-commit_align.patch
new file mode 100644
index 0000000..fa75294
--- /dev/null
+++ b/webkitgtk-2.5.2-commit_align.patch
@@ -0,0 +1,35 @@
+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<char*>(m_commitTop) - reinterpret_cast<char*>(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-aarch64.patch b/webkitgtk-aarch64.patch
new file mode 100644
index 0000000..fe54daa
--- /dev/null
+++ b/webkitgtk-aarch64.patch
@@ -0,0 +1,38 @@
+--- webkitgtk-2.3.5/Source/WTF/wtf/Platform.h.orig 2014-02-04 16:38:03.000000000 +0000
++++ webkitgtk-2.3.5/Source/WTF/wtf/Platform.h 2014-02-07 10:50:32.639441614 +0000
+@@ -317,6 +317,14 @@
+ #define WTF_CPU_NEEDS_ALIGNED_ACCESS 1
+ #endif
+
++/* CPU(AARCH64) - AArch64 */
++#if defined(__aarch64__)
++#define WTF_CPU_AARCH64 1
++#if defined(__AARCH64BE__)
++#define WTF_CPU_BIG_ENDIAN 1
++#endif
++#endif
++
+ /* ==== OS() - underlying operating system; only to be used for mandated low-level services like
+ virtual memory, not to choose a GUI toolkit ==== */
+
+@@ -641,7 +649,8 @@
+ || CPU(ALPHA) \
+ || CPU(ARM64) \
+ || CPU(S390X) \
+- || CPU(PPC64)
++ || CPU(PPC64) \
++ || CPU(AARCH64)
+ #define WTF_USE_JSVALUE64 1
+ #else
+ #define WTF_USE_JSVALUE32_64 1
+--- webkitgtk-2.3.5/Source/WTF/wtf/dtoa/utils.h.orig 2014-02-07 10:50:15.238174894 +0000
++++ webkitgtk-2.3.5/Source/WTF/wtf/dtoa/utils.h 2014-02-07 10:50:32.640441629 +0000
+@@ -49,7 +49,7 @@
+ defined(__ARMEL__) || \
+ defined(_MIPS_ARCH_MIPS32R2)
+ #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1
+-#elif CPU(MIPS) || CPU(PPC) || CPU(PPC64) || OS(WINCE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(ARM64) || CPU(HPPA)
++#elif CPU(MIPS) || CPU(PPC) || CPU(PPC64) || OS(WINCE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(AARCH64) || CPU(HPPA)
+ #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1
+ #elif defined(_M_IX86) || defined(__i386__)
+ #if defined(_WIN32)
diff --git a/webkitgtk4.spec b/webkitgtk4.spec
index b2cad2c..352a06b 100644
--- a/webkitgtk4.spec
+++ b/webkitgtk4.spec
@@ -7,15 +7,22 @@
Name: webkitgtk4
Version: 2.5.3
-Release: 4%{?dist}
+Release: 5%{?dist}
Summary: GTK+ Web content engine library
License: LGPLv2
URL: http://www.webkitgtk.org/
Source0: http://webkitgtk.org/releases/webkitgtk-%{version}.tar.xz
+Patch0: webkit-1.1.14-nspluginwrapper.patch
+Patch1: webkitgtk-aarch64.patch
+Patch2: webkitgtk-2.5.2-cloop_fix.patch
+Patch3: webkitgtk-2.5.2-cloop_fix_32.patch
+Patch4: webkitgtk-2.5.2-commit_align.patch
+# https://bugs.webkit.org/show_bug.cgi?id=135647
+Patch5: webkitgtk-2.4.2-ppc64le.patch
# https://bugs.webkit.org/show_bug.cgi?id=136130
-Patch0: webkitgtk-2.5.3-toggle-buttons.patch
+Patch6: webkitgtk-2.5.3-toggle-buttons.patch
BuildRequires: at-spi2-core-devel
BuildRequires: bison
@@ -48,6 +55,9 @@ BuildRequires: pcre-devel
BuildRequires: perl-Switch
BuildRequires: ruby
BuildRequires: sqlite-devel
+%ifarch ppc
+BuildRequires: libatomic
+%endif
Requires: geoclue2
# Filter out provides for private libraries
@@ -69,7 +79,21 @@ files for developing applications that use %{name}.
%prep
%setup -q -n webkitgtk-%{version}
-%patch0 -p1 -b .toggle-buttons
+%patch0 -p1 -b .nspluginwrapper
+%patch2 -p1 -b .cloop_fix
+%ifarch s390 ppc
+%patch3 -p1 -b .cloop_fix_32
+%endif
+%ifarch aarch64
+%patch1 -p1 -b .aarch64
+%endif
+%ifarch %{power64} aarch64 ppc
+%patch4 -p1 -b .commit_align
+%endif
+%ifarch %{power64}
+%patch5 -p1 -b .ppc64le
+%endif
+%patch6 -p1 -b .toggle-buttons
# Remove bundled libraries
rm -rf Source/ThirdParty/leveldb/
@@ -85,11 +109,24 @@ rm -rf Source/ThirdParty/qunit/
%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
%endif
+%ifarch ppc
+# Use linker flag -relax to get WebKit build under ppc(32) with JIT disabled
+%global optflags %{optflags} -Wl,-relax -latomic
+%endif
+
+%ifarch s390 s390x ppc %{power64} aarch64
+%global optflags %{optflags} -DENABLE_YARR_JIT=0
+%endif
+
mkdir -p %{_target_platform}
pushd %{_target_platform}
%cmake \
-DPORT=GTK \
-DCMAKE_BUILD_TYPE=Release \
+%ifarch s390 s390x ppc %{power64} aarch64
+ -DENABLE_JIT=OFF \
+ -DENABLE_LLINT_C_LOOP=ON \
+%endif
..
popd
@@ -143,6 +180,9 @@ make %{?_smp_mflags} -C %{_target_platform}
%{_datadir}/gir-1.0/WebKit2WebExtension-4.0.gir
%changelog
+* Mon Aug 25 2014 Tomas Popela <tpopela at redhat.com> - 2.5.3-5
+- Add support for secondary arches
+
* Fri Aug 22 2014 Michael Catanzaro <mcatanzaro at gnome.org> - 2.5.3-4
- Add webkitgtk-2.5.3-toggle-buttons.patch
More information about the scm-commits
mailing list