Compare commits
16 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
703f9dfa3e | ||
|
|
a776858044 | ||
|
|
d270419321 | ||
|
|
e83281d5cd | ||
|
|
fcab65587b | ||
|
|
f44d0f68f5 | ||
|
|
d4816d06b7 | ||
|
|
8bd2290864 | ||
|
|
5d789c17d4 | ||
|
|
8acc6e2a75 | ||
|
|
de65fc3157 | ||
|
|
6f6f3c3b59 | ||
|
|
ebcd466fd1 | ||
|
|
11fb1f0df2 | ||
|
|
efa190af33 | ||
|
|
1f735db3e3 |
10 changed files with 403 additions and 22 deletions
8
.gitignore
vendored
8
.gitignore
vendored
|
|
@ -45,3 +45,11 @@ webkit-1.3.3.tar.gz
|
|||
/webkitgtk-2.1.91.tar.xz
|
||||
/webkitgtk-2.1.92.tar.xz
|
||||
/webkitgtk-2.2.0.tar.xz
|
||||
/webkitgtk-2.2.1.tar.xz
|
||||
/webkitgtk-2.2.2.tar.xz
|
||||
/webkitgtk-2.2.3.tar.xz
|
||||
/webkitgtk-2.2.4.tar.xz
|
||||
/webkitgtk-2.2.5.tar.xz
|
||||
/webkitgtk-2.2.6.tar.xz
|
||||
/webkitgtk-2.2.7.tar.xz
|
||||
/webkitgtk-2.2.8.tar.xz
|
||||
|
|
|
|||
2
sources
2
sources
|
|
@ -1 +1 @@
|
|||
9c337812667c4885ebe29a54084dcd4c webkitgtk-2.2.0.tar.xz
|
||||
047f13fabc67003c9019e75a494c3faf webkitgtk-2.2.8.tar.xz
|
||||
|
|
|
|||
|
|
@ -1,12 +0,0 @@
|
|||
diff -up webkitgtk-2.1.1/Source/WTF/wtf/Platform.h.yarr webkitgtk-2.1.1/Source/WTF/wtf/Platform.h
|
||||
--- webkitgtk-2.1.1/Source/WTF/wtf/Platform.h.yarr 2013-05-29 15:41:14.572995439 +0200
|
||||
+++ webkitgtk-2.1.1/Source/WTF/wtf/Platform.h 2013-05-29 15:42:04.434993292 +0200
|
||||
@@ -823,7 +823,7 @@
|
||||
#define ENABLE_REGEXP_TRACING 0
|
||||
|
||||
/* Yet Another Regex Runtime - turned on by default for JIT enabled ports. */
|
||||
-#if !defined(ENABLE_YARR_JIT) && (ENABLE(JIT) || ENABLE(LLINT_C_LOOP)) && !(OS(QNX) && PLATFORM(QT))
|
||||
+#if !defined(ENABLE_YARR_JIT) && ENABLE(JIT) && ENABLE(LLINT_C_LOOP) && !(OS(QNX) && PLATFORM(QT))
|
||||
#define ENABLE_YARR_JIT 1
|
||||
|
||||
/* Setting this flag compares JIT results with interpreter results. */
|
||||
114
webkitgtk-2.2.7-cloop_fix.patch
Normal file
114
webkitgtk-2.2.7-cloop_fix.patch
Normal file
|
|
@ -0,0 +1,114 @@
|
|||
diff -up webkitgtk-2.2.7/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp.cloop_fix webkitgtk-2.2.7/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp
|
||||
--- webkitgtk-2.2.7/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp.cloop_fix 2014-07-23 14:39:17.415362841 +0200
|
||||
+++ webkitgtk-2.2.7/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp 2014-07-23 14:39:25.223470839 +0200
|
||||
@@ -1303,7 +1303,7 @@ LLINT_SLOW_PATH_DECL(slow_path_get_from_
|
||||
CodeBlock* codeBlock = exec->codeBlock();
|
||||
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());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1330,7 +1330,7 @@ LLINT_SLOW_PATH_DECL(slow_path_put_to_sc
|
||||
if (slot.isCacheable() && slot.base() == scope && scope->structure()->propertyAccessesAreCacheable()) {
|
||||
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());
|
||||
}
|
||||
}
|
||||
|
||||
diff -up webkitgtk-2.2.7/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix webkitgtk-2.2.7/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm
|
||||
--- webkitgtk-2.2.7/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix 2014-07-23 14:38:36.285793957 +0200
|
||||
+++ webkitgtk-2.2.7/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm 2014-07-23 14:40:48.134614849 +0200
|
||||
@@ -1889,7 +1889,7 @@ macro resolveScope()
|
||||
addi 1, t2
|
||||
|
||||
.resolveScopeAfterActivationCheck:
|
||||
- loadp ScopeChain[cfr], t0
|
||||
+ loadp ScopeChain + PayloadOffset[cfr], t0
|
||||
btiz t2, .resolveScopeLoopEnd
|
||||
|
||||
.resolveScopeLoop:
|
||||
@@ -1948,13 +1948,13 @@ _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_structure[t0], t1, slowPath
|
||||
end
|
||||
|
||||
macro getProperty()
|
||||
- loadisFromInstruction(6, t3)
|
||||
+ loadpFromInstruction(6, t3)
|
||||
loadPropertyAtVariableOffset(t3, t0, t1, t2)
|
||||
valueProfile(t1, t2, 28, t0)
|
||||
loadisFromInstruction(1, t0)
|
||||
@@ -1974,7 +1974,7 @@ end
|
||||
|
||||
macro getClosureVar()
|
||||
loadp JSVariableObject::m_registers[t0], t0
|
||||
- loadisFromInstruction(6, t3)
|
||||
+ loadpFromInstruction(6, t3)
|
||||
loadp TagOffset[t0, t3, 8], t1
|
||||
loadp PayloadOffset[t0, t3, 8], t2
|
||||
valueProfile(t1, t2, 28, t0)
|
||||
@@ -2033,7 +2033,7 @@ _llint_op_get_from_scope:
|
||||
macro putProperty()
|
||||
loadisFromInstruction(3, t1)
|
||||
loadConstantOrVariable(t1, t2, t3)
|
||||
- loadisFromInstruction(6, t1)
|
||||
+ loadpFromInstruction(6, t1)
|
||||
storePropertyAtVariableOffset(t1, t0, t2, t3)
|
||||
end
|
||||
|
||||
@@ -2049,7 +2049,7 @@ macro putClosureVar()
|
||||
loadisFromInstruction(3, t1)
|
||||
loadConstantOrVariable(t1, t2, t3)
|
||||
loadp JSVariableObject::m_registers[t0], t0
|
||||
- loadisFromInstruction(6, t1)
|
||||
+ loadpFromInstruction(6, t1)
|
||||
storei t2, TagOffset[t0, t1, 8]
|
||||
storei t3, PayloadOffset[t0, t1, 8]
|
||||
end
|
||||
diff -up webkitgtk-2.2.7/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm.cloop_fix webkitgtk-2.2.7/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm
|
||||
--- webkitgtk-2.2.7/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm.cloop_fix 2014-07-23 14:38:20.610577145 +0200
|
||||
+++ webkitgtk-2.2.7/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm 2014-07-23 14:39:25.224470853 +0200
|
||||
@@ -1750,7 +1750,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)
|
||||
@@ -1767,7 +1767,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)
|
||||
@@ -1824,7 +1824,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
|
||||
|
||||
@@ -1839,7 +1839,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
|
||||
45
webkitgtk-2.2.7-ppc64_align.patch
Normal file
45
webkitgtk-2.2.7-ppc64_align.patch
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
diff -up webkitgtk-2.2.7/Source/JavaScriptCore/heap/CopiedBlock.h.ppc64_align webkitgtk-2.2.7/Source/JavaScriptCore/heap/CopiedBlock.h
|
||||
--- webkitgtk-2.2.7/Source/JavaScriptCore/heap/CopiedBlock.h.ppc64_align 2014-05-07 10:37:02.784916768 +0200
|
||||
+++ webkitgtk-2.2.7/Source/JavaScriptCore/heap/CopiedBlock.h 2014-05-07 10:37:12.989046714 +0200
|
||||
@@ -77,7 +77,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.2.7/Source/JavaScriptCore/interpreter/JSStack.cpp.ppc64_align webkitgtk-2.2.7/Source/JavaScriptCore/interpreter/JSStack.cpp
|
||||
--- webkitgtk-2.2.7/Source/JavaScriptCore/interpreter/JSStack.cpp.ppc64_align 2014-05-07 10:41:27.450289748 +0200
|
||||
+++ webkitgtk-2.2.7/Source/JavaScriptCore/interpreter/JSStack.cpp 2014-05-07 10:44:15.672468824 +0200
|
||||
@@ -49,7 +49,8 @@ JSStack::JSStack(VM& vm, size_t capacity
|
||||
{
|
||||
ASSERT(capacity && isPageAligned(capacity));
|
||||
|
||||
- m_reservation = PageReservation::reserve(roundUpAllocationSize(capacity * sizeof(Register), commitSize), OSAllocator::JSVMStackPages);
|
||||
+ size_t commitsize = pageSize();
|
||||
+ m_reservation = PageReservation::reserve(roundUpAllocationSize(capacity * sizeof(Register), commitsize), OSAllocator::JSVMStackPages);
|
||||
m_end = static_cast<Register*>(m_reservation.base());
|
||||
m_commitEnd = static_cast<Register*>(m_reservation.base());
|
||||
|
||||
@@ -78,7 +79,8 @@ bool JSStack::growSlowCase(Register* new
|
||||
// Compute the chunk size of additional memory to commit, and see if we
|
||||
// have it is still within our budget. If not, we'll fail to grow and
|
||||
// return false.
|
||||
- long delta = roundUpAllocationSize(reinterpret_cast<char*>(newEnd) - reinterpret_cast<char*>(m_commitEnd), commitSize);
|
||||
+ size_t commitsize = pageSize();
|
||||
+ long delta = roundUpAllocationSize(reinterpret_cast<char*>(newEnd) - reinterpret_cast<char*>(m_commitEnd), commitsize);
|
||||
if (reinterpret_cast<char*>(m_commitEnd) + delta > reinterpret_cast<char*>(m_useableEnd))
|
||||
return false;
|
||||
|
||||
@@ -134,7 +136,8 @@ void JSStack::enableErrorStackReserve()
|
||||
|
||||
void JSStack::disableErrorStackReserve()
|
||||
{
|
||||
- char* useableEnd = reinterpret_cast<char*>(reservationEnd()) - commitSize;
|
||||
+ size_t commitsize = pageSize();
|
||||
+ char* useableEnd = reinterpret_cast<char*>(reservationEnd()) - commitsize;
|
||||
m_useableEnd = reinterpret_cast_ptr<Register*>(useableEnd);
|
||||
|
||||
// By the time we get here, we are guaranteed to be destructing the last
|
||||
|
|
@ -0,0 +1,78 @@
|
|||
--- a/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp
|
||||
+++ b/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp
|
||||
@@ -307,4 +307,29 @@
|
||||
}
|
||||
|
||||
+static bool handleUnignoredTLSErrors(ResourceHandle* handle, SoupMessage* message)
|
||||
+{
|
||||
+ if (gIgnoreSSLErrors)
|
||||
+ return false;
|
||||
+
|
||||
+ GTlsCertificate* certificate = nullptr;
|
||||
+ GTlsCertificateFlags tlsErrors = static_cast<GTlsCertificateFlags>(0);
|
||||
+ soup_message_get_https_status(message, &certificate, &tlsErrors);
|
||||
+ if (!tlsErrors)
|
||||
+ return false;
|
||||
+
|
||||
+ String lowercaseHostURL = handle->firstRequest().url().host().lower();
|
||||
+ if (allowsAnyHTTPSCertificateHosts().contains(lowercaseHostURL))
|
||||
+ return false;
|
||||
+
|
||||
+ // We aren't ignoring errors globally, but the user may have already decided to accept this certificate.
|
||||
+ auto it = clientCertificates().find(lowercaseHostURL);
|
||||
+ if (it != clientCertificates().end() && it->value.contains(certificate))
|
||||
+ return false;
|
||||
+
|
||||
+ ResourceHandleInternal* d = handle->getInternal();
|
||||
+ handle->client()->didFail(handle, ResourceError::tlsError(d->m_soupRequest.get(), tlsErrors, certificate));
|
||||
+ return true;
|
||||
+}
|
||||
+
|
||||
static void gotHeadersCallback(SoupMessage* message, gpointer data)
|
||||
{
|
||||
@@ -312,4 +337,9 @@
|
||||
if (!handle || handle->cancelledOrClientless())
|
||||
return;
|
||||
+
|
||||
+ if (handleUnignoredTLSErrors(handle, message)) {
|
||||
+ handle->cancel();
|
||||
+ return;
|
||||
+ }
|
||||
|
||||
ResourceHandleInternal* d = handle->getInternal();
|
||||
@@ -570,25 +600,4 @@
|
||||
}
|
||||
|
||||
-static bool handleUnignoredTLSErrors(ResourceHandle* handle)
|
||||
-{
|
||||
- ResourceHandleInternal* d = handle->getInternal();
|
||||
- const ResourceResponse& response = d->m_response;
|
||||
-
|
||||
- if (!response.soupMessageTLSErrors() || gIgnoreSSLErrors)
|
||||
- return false;
|
||||
-
|
||||
- String lowercaseHostURL = handle->firstRequest().url().host().lower();
|
||||
- if (allowsAnyHTTPSCertificateHosts().contains(lowercaseHostURL))
|
||||
- return false;
|
||||
-
|
||||
- // We aren't ignoring errors globally, but the user may have already decided to accept this certificate.
|
||||
- CertificatesMap::iterator i = clientCertificates().find(lowercaseHostURL);
|
||||
- if (i != clientCertificates().end() && i->value.contains(response.soupMessageCertificate()))
|
||||
- return false;
|
||||
-
|
||||
- handle->client()->didFail(handle, ResourceError::tlsError(d->m_soupRequest.get(), response.soupMessageTLSErrors(), response.soupMessageCertificate()));
|
||||
- return true;
|
||||
-}
|
||||
-
|
||||
static void nextMultipartResponsePartCallback(GObject* /*source*/, GAsyncResult* result, gpointer data)
|
||||
{
|
||||
@@ -676,9 +685,4 @@
|
||||
}
|
||||
d->m_response.updateFromSoupMessage(soupMessage);
|
||||
-
|
||||
- if (handleUnignoredTLSErrors(handle.get())) {
|
||||
- cleanupSoupRequestOperation(handle.get());
|
||||
- return;
|
||||
- }
|
||||
|
||||
if (SOUP_STATUS_IS_REDIRECTION(soupMessage->status_code) && shouldRedirect(handle.get())) {
|
||||
32
webkitgtk-2.2.8-late-certificate-verification.patch
Normal file
32
webkitgtk-2.2.8-late-certificate-verification.patch
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
--- a/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp
|
||||
+++ b/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp
|
||||
@@ -331,5 +331,5 @@
|
||||
}
|
||||
|
||||
-static void gotHeadersCallback(SoupMessage* message, gpointer data)
|
||||
+static void tlsErrorsChangedCallback(SoupMessage* message, GParamSpec*, gpointer data)
|
||||
{
|
||||
ResourceHandle* handle = static_cast<ResourceHandle*>(data);
|
||||
@@ -337,8 +337,13 @@
|
||||
return;
|
||||
|
||||
- if (handleUnignoredTLSErrors(handle, message)) {
|
||||
+ if (handleUnignoredTLSErrors(handle, message))
|
||||
handle->cancel();
|
||||
- return;
|
||||
- }
|
||||
+}
|
||||
+
|
||||
+static void gotHeadersCallback(SoupMessage* message, gpointer data)
|
||||
+{
|
||||
+ ResourceHandle* handle = static_cast<ResourceHandle*>(data);
|
||||
+ if (!handle || handle->cancelledOrClientless())
|
||||
+ return;
|
||||
|
||||
ResourceHandleInternal* d = handle->getInternal();
|
||||
@@ -935,4 +940,5 @@
|
||||
soup_message_headers_set_content_length(soupMessage->request_headers, 0);
|
||||
|
||||
+ g_signal_connect(d->m_soupMessage.get(), "notify::tls-errors", G_CALLBACK(tlsErrorsChangedCallback), handle);
|
||||
g_signal_connect(d->m_soupMessage.get(), "got-headers", G_CALLBACK(gotHeadersCallback), handle);
|
||||
g_signal_connect(d->m_soupMessage.get(), "wrote-body-data", G_CALLBACK(wroteBodyDataCallback), handle);
|
||||
23
webkitgtk-2.2.8-poodle.patch
Normal file
23
webkitgtk-2.2.8-poodle.patch
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
diff -up webkitgtk-2.2.8/Source/WebKit2/gtk/MainGtk.cpp.poodle webkitgtk-2.2.8/Source/WebKit2/gtk/MainGtk.cpp
|
||||
--- webkitgtk-2.2.8/Source/WebKit2/gtk/MainGtk.cpp.poodle 2014-10-21 10:08:32.851222903 +0200
|
||||
+++ webkitgtk-2.2.8/Source/WebKit2/gtk/MainGtk.cpp 2014-10-21 10:08:31.234199110 +0200
|
||||
@@ -26,7 +26,19 @@
|
||||
|
||||
#include "WebProcessMainGtk.h"
|
||||
|
||||
+#include <cstdlib>
|
||||
+
|
||||
int main(int argc, char** argv)
|
||||
{
|
||||
+ // Disable SSLv3 very early because it is practically impossible to safely
|
||||
+ // use setenv() when multiple threads are running, as another thread calling
|
||||
+ // getenv() could cause a crash, and many functions use getenv() internally.
|
||||
+ // This workaround will stop working if glib-networking switches away from
|
||||
+ // GnuTLS or simply stops parsing this variable. We intentionally do not
|
||||
+ // overwrite this priority string if it's already set by the user.
|
||||
+ // Keep this in sync with NetworkMainUnix.cpp.
|
||||
+ // https://bugzilla.gnome.org/show_bug.cgi?id=738633
|
||||
+ setenv("G_TLS_GNUTLS_PRIORITY", "NORMAL:%COMPAT:!VERS-SSL3.0", 0);
|
||||
+
|
||||
return WebKit::WebProcessMainGtk(argc, argv);
|
||||
}
|
||||
35
webkitgtk-2.2.8-tls-errors-always-ignored.patch
Normal file
35
webkitgtk-2.2.8-tls-errors-always-ignored.patch
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
--- a/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp
|
||||
+++ b/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp
|
||||
@@ -681,4 +681,15 @@
|
||||
|
||||
if (soupMessage) {
|
||||
+ if (handle->shouldContentSniff() && soupMessage->status_code != SOUP_STATUS_NOT_MODIFIED) {
|
||||
+ const char* sniffedType = soup_request_get_content_type(d->m_soupRequest.get());
|
||||
+ d->m_response.setSniffedContentType(sniffedType);
|
||||
+ }
|
||||
+ d->m_response.updateFromSoupMessage(soupMessage);
|
||||
+
|
||||
+ if (handleUnignoredTLSErrors(handle.get())) {
|
||||
+ cleanupSoupRequestOperation(handle.get());
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
if (SOUP_STATUS_IS_REDIRECTION(soupMessage->status_code) && shouldRedirect(handle.get())) {
|
||||
d->m_inputStream = inputStream;
|
||||
@@ -687,16 +698,4 @@
|
||||
return;
|
||||
}
|
||||
-
|
||||
- if (handle->shouldContentSniff() && soupMessage->status_code != SOUP_STATUS_NOT_MODIFIED) {
|
||||
- const char* sniffedType = soup_request_get_content_type(d->m_soupRequest.get());
|
||||
- d->m_response.setSniffedContentType(sniffedType);
|
||||
- }
|
||||
- d->m_response.updateFromSoupMessage(soupMessage);
|
||||
-
|
||||
- if (handleUnignoredTLSErrors(handle.get())) {
|
||||
- cleanupSoupRequestOperation(handle.get());
|
||||
- return;
|
||||
- }
|
||||
-
|
||||
} else {
|
||||
d->m_response.setURL(handle->firstRequest().url());
|
||||
|
|
@ -6,8 +6,8 @@
|
|||
cp -p %1 %{buildroot}%{_pkgdocdir}/$(echo '%1' | sed -e 's!/!.!g')
|
||||
|
||||
Name: webkitgtk3
|
||||
Version: 2.2.0
|
||||
Release: 1%{?dist}
|
||||
Version: 2.2.8
|
||||
Release: 3%{?dist}
|
||||
Summary: GTK+ Web content engine library
|
||||
|
||||
Group: Development/Libraries
|
||||
|
|
@ -17,11 +17,18 @@ URL: http://www.webkitgtk.org/
|
|||
Source0: http://webkitgtk.org/releases/webkitgtk-%{version}.tar.xz
|
||||
|
||||
Patch0: webkit-1.1.14-nspluginwrapper.patch
|
||||
# workarounds for non-JIT arches
|
||||
# https://bugs.webkit.org/show_bug.cgi?id=104270
|
||||
Patch1: webkitgtk-2.1.1-yarr.patch
|
||||
# https://bugs.webkit.org/show_bug.cgi?id=103128
|
||||
Patch4: webkit-2.1.90-double2intsPPC32.patch
|
||||
Patch5: webkitgtk-2.2.7-cloop_fix.patch
|
||||
Patch6: webkitgtk-2.2.7-ppc64_align.patch
|
||||
# https://bugs.webkit.org/show_bug.cgi?id=137859
|
||||
Patch7: webkitgtk-2.2.8-poodle.patch
|
||||
# https://bugs.webkit.org/show_bug.cgi?id=121548
|
||||
Patch8: webkitgtk-2.2.8-tls-errors-always-ignored.patch
|
||||
# https://bugs.webkit.org/show_bug.cgi?id=137300
|
||||
Patch9: webkitgtk-2.2.8-http-auth-before-certificate-verification.patch
|
||||
# http://seclists.org/oss-sec/2015/q1/871
|
||||
Patch10: webkitgtk-2.2.8-late-certificate-verification.patch
|
||||
|
||||
BuildRequires: at-spi2-core-devel
|
||||
BuildRequires: bison
|
||||
|
|
@ -65,7 +72,7 @@ This package contains WebKitGTK+ for GTK+ 3.
|
|||
%package -n libwebkit2gtk
|
||||
Summary: The libwebkit2gtk library
|
||||
Group: Development/Libraries
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
|
||||
%description -n libwebkit2gtk
|
||||
The libwebkit2gtk package contains the libwebkit2gtk library
|
||||
|
|
@ -74,7 +81,7 @@ that is part of %{name}.
|
|||
%package devel
|
||||
Summary: Development files for %{name}
|
||||
Group: Development/Libraries
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
|
||||
%description devel
|
||||
The %{name}-devel package contains libraries, build data, and header
|
||||
|
|
@ -92,20 +99,31 @@ This package contains developer documentation for %{name}.
|
|||
%prep
|
||||
%setup -qn "webkitgtk-%{version}"
|
||||
%patch0 -p1 -b .nspluginwrapper
|
||||
%patch1 -p1 -b .yarr
|
||||
%patch5 -p1 -b .cloop_fix
|
||||
%patch7 -p1 -b .poodle
|
||||
%patch8 -p1 -b .no_certificate_failures
|
||||
%patch9 -p1 -b .late_certificate_verification1
|
||||
%patch10 -p1 -b .late_certificate_verification2
|
||||
%ifarch ppc s390
|
||||
%patch4 -p1 -b .double2intsPPC32
|
||||
%endif
|
||||
%ifarch ppc64 ppc
|
||||
%patch6 -p1 -b .ppc64_align
|
||||
%endif
|
||||
|
||||
%build
|
||||
# Use linker flags to reduce memory consumption
|
||||
%global optflags %{optflags} -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
|
||||
|
||||
%ifarch s390 s390x %{arm}
|
||||
%ifarch s390 %{arm}
|
||||
# Decrease debuginfo verbosity to reduce memory consumption even more
|
||||
%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
|
||||
%endif
|
||||
|
||||
%ifarch s390 s390x ppc ppc64 aarch64
|
||||
%global optflags %{optflags} -DENABLE_YARR_JIT=0
|
||||
%endif
|
||||
|
||||
%ifarch ppc
|
||||
# Use linker flag -relax to get WebKit2 build under ppc(32) with JIT disabled
|
||||
%global optflags %{optflags} -Wl,-relax
|
||||
|
|
@ -211,6 +229,46 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete
|
|||
|
||||
|
||||
%changelog
|
||||
* Tue Mar 17 2015 Michael Catanzaro <mcatanzaro@gnome.org> - 2.2.8-3
|
||||
- Add certificate verification patches
|
||||
|
||||
* Tue Oct 21 2014 Tomas Popela <tpopela@redhat.com> - 2.2.8-2
|
||||
- Disable the SSLv3 to address the POODLE vulnerability
|
||||
|
||||
* Wed Oct 01 2014 Tomas Popela <tpopela@redhat.com> - 2.2.8-1
|
||||
- Update to 2.2.8
|
||||
|
||||
* Wed Jul 23 2014 Tomas Popela <tpopela@redhat.com> - 2.2.7-3
|
||||
- Fix CLoop on s390 and ppc
|
||||
|
||||
* Wed May 7 2014 Tomas Popela <tpopela@redhat.com> - 2.2.7-2
|
||||
- Fix CLoop on s390x and ppc64
|
||||
- Disable yarr jit through flag and don't use patch for it
|
||||
|
||||
* Mon May 5 2014 Tomas Popela <tpopela@redhat.com> - 2.2.7-1
|
||||
- Update to 2.2.7
|
||||
|
||||
* Wed Mar 19 2014 Tomas Popela <tpopela@redhat.com> - 2.2.6-1
|
||||
- Update to 2.2.6
|
||||
|
||||
* Tue Feb 18 2014 Tomas Popela <tpopela@redhat.com> - 2.2.4-2
|
||||
- Enable full debuginfo on s390x
|
||||
|
||||
* Tue Jan 21 2014 Tomas Popela <tpopela@redhat.com> - 2.2.4-1
|
||||
- Update to 2.2.4
|
||||
|
||||
* Wed Dec 4 2013 Tomas Popela <tpopela@redhat.com> - 2.2.3-1
|
||||
- Update to 2.2.3
|
||||
|
||||
* Thu Nov 28 2013 Tomas Popela <tpopela@redhat.com> - 2.2.2-2
|
||||
- Fix for RH bug #1035764 - Crashes with certain Google Drive documents
|
||||
|
||||
* Mon Nov 11 2013 Tomas Popela <tpopela@redhat.com> - 2.2.2-1
|
||||
- Update to 2.2.2
|
||||
|
||||
* Fri Oct 18 2013 Tomas Popela <tpopela@redhat.com> - 2.2.1-1
|
||||
- Update to 2.2.1
|
||||
|
||||
* Fri Sep 27 2013 Kalev Lember <kalevlember@gmail.com> - 2.2.0-1
|
||||
- Update to 2.2.0
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue