mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-08 22:45:43 +00:00
72 lines
3.5 KiB
Diff
72 lines
3.5 KiB
Diff
|
From 7916fda00b347ff263fbfe72c065032d1d9b523c Mon Sep 17 00:00:00 2001
|
||
|
From: Fujii Hironori <Hironori.Fujii@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@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
|