Title: [260738] trunk
Revision
260738
Author
[email protected]
Date
2020-04-26 22:07:40 -0700 (Sun, 26 Apr 2020)

Log Message

[PlayStation] Enable TestWTF and TestWebCore
https://bugs.webkit.org/show_bug.cgi?id=208849

Reviewed by Don Olmstead.

.:

* Source/cmake/OptionsPlayStation.cmake:
- Add PLAYSTATION_COPY_SHARED_LIBRARIES() to install dependencies.
- Add -g option for "Release" configuration.
- Drop "RelWithDebInfo" and "MinSizeRel" configuration.

Source/WebCore:

* PlatformPlayStation.cmake:
Add WebCore_CopySharedLibs to install dependencies.

Source/WTF:

* wtf/PlatformPlayStation.cmake:
Add WTF_CopySharedLibs() to install dependencies.

Tools:

* TestWebKitAPI/PlatformPlayStation.cmake:
* TestWebKitAPI/playstation/main.cpp: Added.
(main): Load runtime libraries.

Modified Paths

Added Paths

Diff

Modified: trunk/ChangeLog (260737 => 260738)


--- trunk/ChangeLog	2020-04-27 04:05:20 UTC (rev 260737)
+++ trunk/ChangeLog	2020-04-27 05:07:40 UTC (rev 260738)
@@ -1,3 +1,15 @@
+2020-04-26  Yoshiaki Jitsukawa  <[email protected]>
+
+        [PlayStation] Enable TestWTF and TestWebCore
+        https://bugs.webkit.org/show_bug.cgi?id=208849
+
+        Reviewed by Don Olmstead.
+
+        * Source/cmake/OptionsPlayStation.cmake:
+        - Add PLAYSTATION_COPY_SHARED_LIBRARIES() to install dependencies.
+        - Add -g option for "Release" configuration.
+        - Drop "RelWithDebInfo" and "MinSizeRel" configuration.
+
 2020-04-24  Michael Catanzaro  <[email protected]>
 
         [GTK][WPE][JSCOnly] compile error when -DWTF_CPU_ARM64_CORTEXA53=ON set for arm64

Modified: trunk/Source/WTF/ChangeLog (260737 => 260738)


--- trunk/Source/WTF/ChangeLog	2020-04-27 04:05:20 UTC (rev 260737)
+++ trunk/Source/WTF/ChangeLog	2020-04-27 05:07:40 UTC (rev 260738)
@@ -1,3 +1,13 @@
+2020-04-26  Yoshiaki Jitsukawa  <[email protected]>
+
+        [PlayStation] Enable TestWTF and TestWebCore
+        https://bugs.webkit.org/show_bug.cgi?id=208849
+
+        Reviewed by Don Olmstead.
+
+        * wtf/PlatformPlayStation.cmake:
+        Add WTF_CopySharedLibs() to install dependencies.
+
 2020-04-26  Yusuke Suzuki  <[email protected]>
 
         Use `static Lock` instead of `static NeverDestroyed<Lock>`

Modified: trunk/Source/WTF/wtf/PlatformPlayStation.cmake (260737 => 260738)


--- trunk/Source/WTF/wtf/PlatformPlayStation.cmake	2020-04-27 04:05:20 UTC (rev 260737)
+++ trunk/Source/WTF/wtf/PlatformPlayStation.cmake	2020-04-27 05:07:40 UTC (rev 260738)
@@ -23,5 +23,10 @@
     Threads::Threads
 )
 
+PLAYSTATION_COPY_SHARED_LIBRARIES(WTF_CopySharedLibs
+    FILES
+        ${ICU_LIBRARIES}
+)
+
 # bmalloc is compiled as an OBJECT library so it is statically linked
 list(APPEND WTF_PRIVATE_DEFINITIONS STATICALLY_LINKED_WITH_bmalloc)

Modified: trunk/Source/WebCore/ChangeLog (260737 => 260738)


--- trunk/Source/WebCore/ChangeLog	2020-04-27 04:05:20 UTC (rev 260737)
+++ trunk/Source/WebCore/ChangeLog	2020-04-27 05:07:40 UTC (rev 260738)
@@ -1,3 +1,13 @@
+2020-04-26  Yoshiaki Jitsukawa  <[email protected]>
+
+        [PlayStation] Enable TestWTF and TestWebCore
+        https://bugs.webkit.org/show_bug.cgi?id=208849
+
+        Reviewed by Don Olmstead.
+
+        * PlatformPlayStation.cmake:
+        Add WebCore_CopySharedLibs to install dependencies.
+
 2020-04-26  Said Abou-Hallawa  <[email protected]>
 
         Rendering update steps should use Seconds for the timestamps

Modified: trunk/Source/WebCore/PlatformPlayStation.cmake (260737 => 260738)


--- trunk/Source/WebCore/PlatformPlayStation.cmake	2020-04-27 04:05:20 UTC (rev 260737)
+++ trunk/Source/WebCore/PlatformPlayStation.cmake	2020-04-27 05:07:40 UTC (rev 260738)
@@ -86,3 +86,17 @@
 list(APPEND WebCore_LIBRARIES
     WPE::libwpe
 )
+
+PLAYSTATION_COPY_SHARED_LIBRARIES(WebCore_CopySharedLibs
+    FILES
+        ${CURL_LIBRARIES}
+        ${Cairo_LIBRARIES}
+        ${EGL_LIBRARIES}
+        ${FREETYPE_LIBRARIES}
+        ${Fontconfig_LIBRARIES}
+        ${HarfBuzz_LIBRARIES}
+        ${JPEG_LIBRARIES}
+        ${OPENSSL_LIBRARIES}
+        ${PNG_LIBRARIES}
+        ${WebP_LIBRARIES}
+)

Modified: trunk/Source/cmake/OptionsPlayStation.cmake (260737 => 260738)


--- trunk/Source/cmake/OptionsPlayStation.cmake	2020-04-27 04:05:20 UTC (rev 260737)
+++ trunk/Source/cmake/OptionsPlayStation.cmake	2020-04-27 05:07:40 UTC (rev 260738)
@@ -1,5 +1,9 @@
 set(PORT PlayStation)
 
+string(APPEND CMAKE_C_FLAGS_RELEASE " -g")
+string(APPEND CMAKE_CXX_FLAGS_RELEASE " -g")
+set(CMAKE_CONFIGURATION_TYPES "Debug" "Release")
+
 include(Sign)
 
 add_definitions(-DWTF_PLATFORM_PLAYSTATION=1)
@@ -215,3 +219,49 @@
         endforeach ()
     endif ()
 endmacro()
+
+function(PLAYSTATION_COPY_SHARED_LIBRARIES target_name)
+    set(oneValueArgs PREFIX DESTINATION)
+    set(multiValueArgs FILES)
+    cmake_parse_arguments(opt "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
+    if (opt_PREFIX)
+        set(prefix ${opt_PREFIX})
+    else ()
+        set(prefix ${WEBKIT_LIBRARIES_DIR})
+    endif ()
+    if (opt_DESTINATION)
+        set(destination ${opt_DESTINATION})
+    else ()
+        set(destination ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
+    endif ()
+
+    set(stub_libs)
+    list(REMOVE_DUPLICATES opt_FILES)
+    foreach (file IN LISTS opt_FILES)
+        if (NOT ${file} MATCHES ".*_stub_weak.a")
+            continue()
+        endif ()
+        file(RELATIVE_PATH _relative ${prefix} ${file})
+        if (NOT ${_relative} MATCHES "^\.\./.*")
+            get_filename_component(lib ${file} NAME)
+            list(APPEND stub_libs ${lib})
+        endif ()
+    endforeach ()
+
+    set(dst_shared_libs)
+    foreach (lib IN LISTS stub_libs)
+        string(REPLACE "_stub_weak.a" ".sprx" shared_lib ${lib})
+        set(src_file "${prefix}/bin/${shared_lib}")
+        if (NOT EXISTS ${src_file})
+            continue()
+        endif ()
+        set(dst_file "${destination}/${shared_lib}")
+        add_custom_command(OUTPUT ${dst_file}
+            COMMAND ${CMAKE_COMMAND} -E copy ${src_file} ${dst_file}
+            MAIN_DEPENDENCY ${file}
+            VERBATIM
+        )
+        list(APPEND dst_shared_libs ${dst_file})
+    endforeach ()
+    add_custom_target(${target_name} ALL DEPENDS ${dst_shared_libs})
+endfunction()

Modified: trunk/Tools/ChangeLog (260737 => 260738)


--- trunk/Tools/ChangeLog	2020-04-27 04:05:20 UTC (rev 260737)
+++ trunk/Tools/ChangeLog	2020-04-27 05:07:40 UTC (rev 260738)
@@ -1,3 +1,14 @@
+2020-04-26  Yoshiaki Jitsukawa  <[email protected]>
+
+        [PlayStation] Enable TestWTF and TestWebCore
+        https://bugs.webkit.org/show_bug.cgi?id=208849
+
+        Reviewed by Don Olmstead.
+
+        * TestWebKitAPI/PlatformPlayStation.cmake:
+        * TestWebKitAPI/playstation/main.cpp: Added.
+        (main): Load runtime libraries.
+
 2020-04-26  Yusuke Suzuki  <[email protected]>
 
         Warn when NeverDestroyed<Lock> is used

Modified: trunk/Tools/TestWebKitAPI/PlatformPlayStation.cmake (260737 => 260738)


--- trunk/Tools/TestWebKitAPI/PlatformPlayStation.cmake	2020-04-27 04:05:20 UTC (rev 260737)
+++ trunk/Tools/TestWebKitAPI/PlatformPlayStation.cmake	2020-04-27 05:07:40 UTC (rev 260738)
@@ -1,7 +1,7 @@
 set(TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/TestWebKitAPI")
 
 set(test_main_SOURCES
-    generic/main.cpp
+    playstation/main.cpp
 )
 
 list(APPEND TestWTF_SOURCES
@@ -49,3 +49,9 @@
         playstation/PlatformWebViewPlayStation.cpp
     )
 endif ()
+
+
+# Set the debugger working directory for Visual Studio
+if (${CMAKE_GENERATOR} MATCHES "Visual Studio")
+    set_target_properties(TestWTF TestWebCore TestWebKit PROPERTIES VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}")
+endif ()

Added: trunk/Tools/TestWebKitAPI/playstation/main.cpp (0 => 260738)


--- trunk/Tools/TestWebKitAPI/playstation/main.cpp	                        (rev 0)
+++ trunk/Tools/TestWebKitAPI/playstation/main.cpp	2020-04-27 05:07:40 UTC (rev 260738)
@@ -0,0 +1,49 @@
+/*
+ * 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 "TestsController.h"
+#include "process-initialization/nk-testwebkitapi.h"
+#include <dlfcn.h>
+
+int main(int argc, char** argv)
+{
+    dlopen("libicu", RTLD_NOW);
+#if defined(BUILDING_TestWebCore) || defined(BUILDING_TestWebKit)
+    dlopen("libpng16", RTLD_NOW);
+    dlopen("libfontconfig", RTLD_NOW);
+    dlopen("libfreetype", RTLD_NOW);
+    dlopen("libharfbuzz", RTLD_NOW);
+    dlopen("libcairo", RTLD_NOW);
+    dlopen("libSceNKWebKitRequirements", RTLD_NOW);
+    dlopen("libJavaScriptCore", RTLD_NOW);
+#endif
+#if defined(BUILDING_TestWebKit)
+    (dlopen("libcrypto", RTLD_NOW) && dlopen("libssl", RTLD_NOW)) || dlopen("LibreSSL", RTLD_NOW);
+    dlopen("libcurl", RTLD_NOW);
+    dlopen("libWebKit", RTLD_NOW);
+#endif
+    return TestWebKitAPI::TestsController::singleton().run(argc, argv) ? EXIT_SUCCESS : EXIT_FAILURE;
+}
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to