[arch-commits] Commit in webkit2gtk-4.1/trunk (2 files)

Jan Steffens heftig at gemini.archlinux.org
Tue Jul 5 22:53:25 UTC 2022


    Date: Tuesday, July 5, 2022 @ 22:53:25
  Author: heftig
Revision: 449927

2.36.4-2

Added:
  webkit2gtk-4.1/trunk/7916fda00b347ff263fbfe72c065032d1d9b523c.patch
Modified:
  webkit2gtk-4.1/trunk/PKGBUILD

------------------------------------------------+
 7916fda00b347ff263fbfe72c065032d1d9b523c.patch |   71 +++++++++++++++++++++++
 PKGBUILD                                       |   13 ++--
 2 files changed, 80 insertions(+), 4 deletions(-)

Added: 7916fda00b347ff263fbfe72c065032d1d9b523c.patch
===================================================================
--- 7916fda00b347ff263fbfe72c065032d1d9b523c.patch	                        (rev 0)
+++ 7916fda00b347ff263fbfe72c065032d1d9b523c.patch	2022-07-05 22:53:25 UTC (rev 449927)
@@ -0,0 +1,71 @@
+From 7916fda00b347ff263fbfe72c065032d1d9b523c Mon Sep 17 00:00:00 2001
+From: Fujii Hironori <Hironori.Fujii at sony.com>
+Date: Tue, 7 Jun 2022 11:42:55 +0000
+Subject: [PATCH] Merge r295034 - WebKitTestRunner shouldn't link object files
+ of JavaScriptCore and WebCore https://bugs.webkit.org/show_bug.cgi?id=241002
+
+Reviewed by Don Olmstead.
+
+243269 at main removed `WebKit` from `WebKitTestRunner_FRAMEWORKS` for
+WPE. But, it should be there not to link object files of
+JavaScriptCore and WebCore to WebKitTestRunner. In WPE builds,
+JavaScriptCore and WebCore API are exported from WebKit shared
+library. WebKit consumers shouldn't link with object files of
+JavaScriptCore and WebCore.
+
+However, adding `WebKit` to `WebKitTestRunner_FRAMEWORKS` introduced a
+new problem that the object file of LowLevelInterpreter.cpp was linked
+into WebKitTestRunner. This problem was fixed by changing
+LowLevelInterpreterLib to a STATIC library.
+
+* Source/JavaScriptCore/CMakeLists.txt:
+* Tools/WebKitTestRunner/CMakeLists.txt:
+* Tools/WebKitTestRunner/PlatformGTK.cmake:
+* Tools/WebKitTestRunner/PlatformWin.cmake:
+
+Canonical link: https://commits.webkit.org/247617.88@webkitgtk/2.36
+git-svn-id: https://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.36@295340 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+---
+ Source/JavaScriptCore/CMakeLists.txt     | 12 +++---------
+ Tools/WebKitTestRunner/CMakeLists.txt    |  1 +
+ Tools/WebKitTestRunner/PlatformGTK.cmake |  4 ----
+ Tools/WebKitTestRunner/PlatformWin.cmake |  4 ----
+ 4 files changed, 4 insertions(+), 17 deletions(-)
+
+diff --git a/Source/JavaScriptCore/CMakeLists.txt b/Source/JavaScriptCore/CMakeLists.txt
+index 238208eb1137..95a1300ce1b3 100644
+--- a/Source/JavaScriptCore/CMakeLists.txt
++++ b/Source/JavaScriptCore/CMakeLists.txt
+@@ -456,7 +456,7 @@ if (MSVC AND NOT ENABLE_C_LOOP)
+         COMMAND ${MASM_EXECUTABLE} ${LLINT_MASM_FLAGS} ${JavaScriptCore_DERIVED_SOURCES_DIR}/LowLevelInterpreterWin.obj ${JavaScriptCore_DERIVED_SOURCES_DIR}/LowLevelInterpreterWin.asm
+         VERBATIM)
+     list(APPEND JavaScriptCore_SOURCES ${JavaScriptCore_DERIVED_SOURCES_DIR}/LowLevelInterpreterWin.obj)
+-    add_library(LowLevelInterpreterLib OBJECT llint/LowLevelInterpreter.cpp)
++    add_library(LowLevelInterpreterLib STATIC llint/LowLevelInterpreter.cpp)
+ else ()
+     # As there's poor toolchain support for using `.file` directives in
+     # inline asm (i.e. there's no way to avoid clashes with the `.file`
+@@ -465,7 +465,7 @@ else ()
+     # an object file. We only need to do this for LowLevelInterpreter.cpp
+     # and cmake doesn't allow us to introduce a compiler wrapper for a
+     # single source file, so we need to create a separate target for it.
+-    add_library(LowLevelInterpreterLib OBJECT llint/LowLevelInterpreter.cpp
++    add_library(LowLevelInterpreterLib STATIC llint/LowLevelInterpreter.cpp
+         ${JavaScriptCore_DERIVED_SOURCES_DIR}/${LLIntOutput})
+ endif ()
+ 
+@@ -1496,13 +1496,7 @@ if (CMAKE_COMPILER_IS_GNUCXX AND GCC_OFFLINEASM_SOURCE_MAP)
+         COMPILE_OPTIONS "-fno-lto")
+ endif ()
+ 
+-# When building JavaScriptCore as an object library, we need to make sure the
+-# lowlevelinterpreter lib objects get propogated.
+-if (${JavaScriptCore_LIBRARY_TYPE} STREQUAL "OBJECT")
+-    list(APPEND JavaScriptCore_PRIVATE_LIBRARIES $<TARGET_OBJECTS:LowLevelInterpreterLib>)
+-else ()
+-    list(APPEND JavaScriptCore_SOURCES $<TARGET_OBJECTS:LowLevelInterpreterLib>)
+-endif ()
++list(APPEND JavaScriptCore_PRIVATE_LIBRARIES LowLevelInterpreterLib)
+ 
+ WEBKIT_COMPUTE_SOURCES(JavaScriptCore)
+ list(APPEND JavaScriptCore_SOURCES

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2022-07-05 22:53:24 UTC (rev 449926)
+++ PKGBUILD	2022-07-05 22:53:25 UTC (rev 449927)
@@ -3,7 +3,7 @@
 
 pkgname=webkit2gtk-4.1
 pkgver=2.36.4
-pkgrel=1
+pkgrel=2
 pkgdesc="Web content engine for GTK"
 url="https://webkitgtk.org"
 arch=(x86_64)
@@ -20,15 +20,20 @@
             'gst-plugins-good: media decoding'
             'gst-plugins-bad: media decoding'
             'gst-libav: nonfree media decoding')
-options=(debug !lto)
-source=($url/releases/webkitgtk-$pkgver.tar.xz{,.asc})
+options=(debug)
+source=($url/releases/webkitgtk-$pkgver.tar.xz{,.asc}
+        7916fda00b347ff263fbfe72c065032d1d9b523c.patch)
 sha256sums=('b6bebe1f85a479d968c19e44a4704622ef8cef61636ad1b2406b77d16ae2e2a8'
-            'SKIP')
+            'SKIP'
+            '9b1bcb54553274701f7574b1449a29f3a2d569bfbbaaa5d81526270d1c512f3e')
 validpgpkeys=('D7FCF61CF9A2DEAB31D81BD3F3D322D0EC4582C3'  # Carlos Garcia Campos <cgarcia at igalia.com>
               '5AA3BC334FD7E3369E7C77B291C559DBE4C9123B') # Adrián Pérez de Castro <aperez at igalia.com>
 
 prepare() {
   cd webkitgtk-$pkgver
+
+  # Unbreak LTO
+  patch -Rp1 -i ../7916fda00b347ff263fbfe72c065032d1d9b523c.patch
 }
 
 build() {



More information about the arch-commits mailing list