Diff
Modified: trunk/ChangeLog (259357 => 259358)
--- trunk/ChangeLog 2020-04-01 19:10:20 UTC (rev 259357)
+++ trunk/ChangeLog 2020-04-01 19:15:17 UTC (rev 259358)
@@ -1,3 +1,17 @@
+2020-04-01 Don Olmstead <don.olmst...@sony.com>
+
+ [PlayStation] Use OBJECT libraries for WebCore and PAL
+ https://bugs.webkit.org/show_bug.cgi?id=209835
+
+ Reviewed by Ross Kirsling.
+
+ When compiling WebCore in debug mode ranlib was having issues with the size of
+ libWebCore.a. This is similar to what happened with Visual Studio and WinCairo.
+
+ Additionally hidden visibility defaults are added for the port.
+
+ * Source/cmake/OptionsPlayStation.cmake:
+
2020-03-30 Zan Dobersek <zdober...@igalia.com>
[WPE] Can't create WebGL context after r259139
Modified: trunk/Source/WebCore/ChangeLog (259357 => 259358)
--- trunk/Source/WebCore/ChangeLog 2020-04-01 19:10:20 UTC (rev 259357)
+++ trunk/Source/WebCore/ChangeLog 2020-04-01 19:15:17 UTC (rev 259358)
@@ -1,3 +1,19 @@
+2020-04-01 Don Olmstead <don.olmst...@sony.com>
+
+ [PlayStation] Use OBJECT libraries for WebCore and PAL
+ https://bugs.webkit.org/show_bug.cgi?id=209835
+
+ Reviewed by Ross Kirsling.
+
+ After moving to object libraries MediaStrategy's constructor and destructor were
+ being reported as linker errors despite being set to default. Moving the definitions
+ to a source file stopped these issues.
+
+ * Sources.txt:
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/MediaStrategy.cpp: Copied from Source/WebCore/platform/MediaStrategy.h.
+ * platform/MediaStrategy.h:
+
2020-04-01 Keith Miller <keith_mil...@apple.com>
Bindings that override getOwnPropertySlotByIndex need to say they MayHaveIndexedAccessors
Modified: trunk/Source/WebCore/Sources.txt (259357 => 259358)
--- trunk/Source/WebCore/Sources.txt 2020-04-01 19:10:20 UTC (rev 259357)
+++ trunk/Source/WebCore/Sources.txt 2020-04-01 19:15:17 UTC (rev 259358)
@@ -1769,6 +1769,7 @@
platform/LowPowerModeNotifier.cpp
platform/MIMETypeRegistry.cpp
platform/MainThreadSharedTimer.cpp
+platform/MediaStrategy.cpp
platform/NotImplemented.cpp
platform/NowPlayingManager.cpp
platform/Pasteboard.cpp
Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (259357 => 259358)
--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2020-04-01 19:10:20 UTC (rev 259357)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2020-04-01 19:15:17 UTC (rev 259358)
@@ -11684,6 +11684,7 @@
A1F78D0B1C25422C00245446 /* ResourceResponseCocoa.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ResourceResponseCocoa.mm; sourceTree = "<group>"; };
A208E222A56A0C7575F2A72E /* RenderMathMLMenclose.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderMathMLMenclose.h; sourceTree = "<group>"; };
A2B9217216C5CC420041DCD9 /* IntRectExtent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IntRectExtent.h; sourceTree = "<group>"; };
+ A31AC70A24340984007F00A2 /* MediaStrategy.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MediaStrategy.cpp; sourceTree = "<group>"; };
A31C4E4C16E02AA6002F7957 /* OESTextureHalfFloat.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = OESTextureHalfFloat.cpp; sourceTree = "<group>"; };
A31C4E4E16E02AB4002F7957 /* OESTextureHalfFloat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OESTextureHalfFloat.h; sourceTree = "<group>"; };
A31C4E5016E02AC5002F7957 /* OESTextureHalfFloat.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = OESTextureHalfFloat.idl; sourceTree = "<group>"; };
@@ -26182,6 +26183,7 @@
CD641EC7181ED60100EE4C41 /* MediaSample.h */,
A17D275D1EAC579800BF01E7 /* MediaSelectionOption.h */,
414460A02412994100814BE7 /* MediaSessionIdentifier.h */,
+ A31AC70A24340984007F00A2 /* MediaStrategy.cpp */,
9B1229C623FE4D5F008CA751 /* MediaStrategy.h */,
BC772C4C0C4EB3040083285F /* MIMETypeRegistry.cpp */,
BC772C4D0C4EB3040083285F /* MIMETypeRegistry.h */,
Copied: trunk/Source/WebCore/platform/MediaStrategy.cpp (from rev 259357, trunk/Source/WebCore/platform/MediaStrategy.h) (0 => 259358)
--- trunk/Source/WebCore/platform/MediaStrategy.cpp (rev 0)
+++ trunk/Source/WebCore/platform/MediaStrategy.cpp 2020-04-01 19:15:17 UTC (rev 259358)
@@ -0,0 +1,35 @@
+/*
+ * Copyright (C) 2020 Sony Interactive Entertainment Inc.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "MediaStrategy.h"
+
+namespace WebCore {
+
+MediaStrategy::MediaStrategy() = default;
+
+MediaStrategy::~MediaStrategy() = default;
+
+}
Modified: trunk/Source/WebCore/platform/MediaStrategy.h (259357 => 259358)
--- trunk/Source/WebCore/platform/MediaStrategy.h 2020-04-01 19:10:20 UTC (rev 259357)
+++ trunk/Source/WebCore/platform/MediaStrategy.h 2020-04-01 19:15:17 UTC (rev 259358)
@@ -46,7 +46,8 @@
#endif
protected:
- virtual ~MediaStrategy() = default;
+ MediaStrategy();
+ virtual ~MediaStrategy();
};
} // namespace WebCore
Modified: trunk/Source/WebKit/ChangeLog (259357 => 259358)
--- trunk/Source/WebKit/ChangeLog 2020-04-01 19:10:20 UTC (rev 259357)
+++ trunk/Source/WebKit/ChangeLog 2020-04-01 19:15:17 UTC (rev 259358)
@@ -1,3 +1,14 @@
+2020-04-01 Don Olmstead <don.olmst...@sony.com>
+
+ [PlayStation] Use OBJECT libraries for WebCore and PAL
+ https://bugs.webkit.org/show_bug.cgi?id=209835
+
+ Reviewed by Ross Kirsling.
+
+ Use the object libraries when building WebKit.
+
+ * PlatformPlayStation.cmake:
+
2020-04-01 Commit Queue <commit-qu...@webkit.org>
Unreviewed, reverting r259328.
Modified: trunk/Source/WebKit/PlatformPlayStation.cmake (259357 => 259358)
--- trunk/Source/WebKit/PlatformPlayStation.cmake 2020-04-01 19:10:20 UTC (rev 259357)
+++ trunk/Source/WebKit/PlatformPlayStation.cmake 2020-04-01 19:15:17 UTC (rev 259358)
@@ -298,6 +298,13 @@
UIProcess/API/C/playstation/WKView.h
)
+# Both PAL and WebCore are built as object libraries. The WebKit:: interface
+# targets are used. A limitation of that is the object files are not propagated
+# so they are added here.
+list(APPEND WebKit_PRIVATE_LIBRARIES
+ $<TARGET_OBJECTS:PAL>
+)
+
WEBKIT_MAKE_FORWARDING_HEADERS(WebKit
TARGET_NAME WebKitFrameworkHeaders
DESTINATION ${WebKit_FRAMEWORK_HEADERS_DIR}/WebKit
Modified: trunk/Source/cmake/OptionsPlayStation.cmake (259357 => 259358)
--- trunk/Source/cmake/OptionsPlayStation.cmake 2020-04-01 19:10:20 UTC (rev 259357)
+++ trunk/Source/cmake/OptionsPlayStation.cmake 2020-04-01 19:15:17 UTC (rev 259358)
@@ -79,6 +79,10 @@
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}")
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}")
+# Default to hidden visibility
+set(CMAKE_CXX_VISIBILITY_PRESET hidden)
+set(CMAKE_VISIBILITY_INLINES_HIDDEN ON)
+
# Specify third party library directory
if (NOT WEBKIT_LIBRARIES_DIR)
if (DEFINED ENV{WEBKIT_LIBRARIES})
@@ -170,10 +174,12 @@
set(WTF_LIBRARY_TYPE OBJECT)
set(_javascript_Core_LIBRARY_TYPE SHARED)
-# For the shared WebKit just link a STATIC WebCore since the exports from WebCore
-# and PAL are not needed.
-set(PAL_LIBRARY_TYPE STATIC)
-set(WebCore_LIBRARY_TYPE STATIC)
+# Create a shared WebKit
+#
+# Use OBJECT libraries for PAL and WebCore. The size of a libWebCore.a is too much
+# for ranlib.
+set(PAL_LIBRARY_TYPE OBJECT)
+set(WebCore_LIBRARY_TYPE OBJECT)
set(WebKit_LIBRARY_TYPE SHARED)
# Enable multi process builds for Visual Studio
Modified: trunk/Tools/ChangeLog (259357 => 259358)
--- trunk/Tools/ChangeLog 2020-04-01 19:10:20 UTC (rev 259357)
+++ trunk/Tools/ChangeLog 2020-04-01 19:15:17 UTC (rev 259358)
@@ -1,3 +1,14 @@
+2020-04-01 Don Olmstead <don.olmst...@sony.com>
+
+ [PlayStation] Use OBJECT libraries for WebCore and PAL
+ https://bugs.webkit.org/show_bug.cgi?id=209835
+
+ Reviewed by Ross Kirsling.
+
+ Use the object libraries when compiling TestWebCore.
+
+ * TestWebKitAPI/PlatformPlayStation.cmake:
+
2020-04-01 Jack Lee <shihchieh_...@apple.com>
Unreviewed, add new committer to contributors.json
Modified: trunk/Tools/TestWebKitAPI/PlatformPlayStation.cmake (259357 => 259358)
--- trunk/Tools/TestWebKitAPI/PlatformPlayStation.cmake 2020-04-01 19:10:20 UTC (rev 259357)
+++ trunk/Tools/TestWebKitAPI/PlatformPlayStation.cmake 2020-04-01 19:15:17 UTC (rev 259358)
@@ -22,6 +22,13 @@
${test_main_SOURCES}
)
+# Both PAL and WebCore are built as object libraries. The WebKit:: interface
+# targets are used. A limitation of that is the object files are not propagated
+# so they are added here.
+list(APPEND TestWebCore_PRIVATE_LIBRARIES
+ $<TARGET_OBJECTS:PAL>
+)
+
# TestWebKit
if (ENABLE_WEBKIT)
add_dependencies(TestWebKitAPIBase WebKitFrameworkHeaders)