| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent f278d87 commit 0a7e412
8 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,3 +1,16 @@ | |||
| 1 | + 2020-02-05 Don Olmstead <don.olmstead@sony.com> | ||
| 2 | + | ||
| 3 | + [PlayStation] Build a shared JavaScriptCore | ||
| 4 | + https://bugs.webkit.org/show_bug.cgi?id=198446 | ||
| 5 | + | ||
| 6 | + Reviewed by Fujii Hironori. | ||
| 7 | + | ||
| 8 | + Compile bmalloc and WTF as OBJECT libraries that are then linked into a shared | ||
| 9 | + JavaScriptCore. Using OBJECT libraries is a modern CMake way to have the behavior | ||
| 10 | + of --whole-archive. | ||
| 11 | + | ||
| 12 | + * Source/cmake/OptionsPlayStation.cmake: | ||
| 13 | + | ||
| 1 | 14 | 2020-02-04 Don Olmstead <don.olmstead@sony.com> | |
| 2 | 15 | ||
| 3 | 16 | [PlayStation] Enable TestWebKit | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,3 +1,15 @@ | |||
| 1 | + 2020-02-05 Don Olmstead <don.olmstead@sony.com> | ||
| 2 | + | ||
| 3 | + [PlayStation] Build a shared JavaScriptCore | ||
| 4 | + https://bugs.webkit.org/show_bug.cgi?id=198446 | ||
| 5 | + | ||
| 6 | + Reviewed by Fujii Hironori. | ||
| 7 | + | ||
| 8 | + Add TARGET_OBJECTS for bmalloc and WTF so JavaScriptCore links. Add bmalloc and | ||
| 9 | + WTF compile definitions so exports are exposed. | ||
| 10 | + | ||
| 11 | + * PlatformPlayStation.cmake: | ||
| 12 | + | ||
| 1 | 13 | 2020-02-05 Justin Michaud <justin_michaud@apple.com> | |
| 2 | 14 | ||
| 3 | 15 | Deleting a property should not turn structures into uncacheable dictionaries | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -45,9 +45,18 @@ set_source_files_properties( | |||
| 45 | 45 | PROPERTIES LANGUAGE CXX | |
| 46 | 46 | ) | |
| 47 | 47 | ||
| 48 | - if (${WTF_LIBRARY_TYPE} STREQUAL "STATIC") | ||
| 49 | - add_definitions(-DSTATICALLY_LINKED_WITH_WTF) | ||
| 50 | - endif () | ||
| 51 | - | ||
| 52 | 48 | # This overrides the default x64 value of 1GB for the memory pool size | |
| 53 | 49 | add_definitions(-DFIXED_EXECUTABLE_MEMORY_POOL_SIZE_IN_MB=64) | |
| 50 | + | ||
| 51 | + # Both bmalloc and WTF are built as object libraries. The WebKit:: interface | ||
| 52 | + # targets are used. A limitation of that is the object files are not propagated | ||
| 53 | + # so they are added here. | ||
| 54 | + list(APPEND JavaScriptCore_PRIVATE_LIBRARIES | ||
| 55 | + $<TARGET_OBJECTS:WTF> | ||
| 56 | + $<TARGET_OBJECTS:bmalloc> | ||
| 57 | + ) | ||
| 58 | + | ||
| 59 | + list(APPEND JavaScriptCore_PRIVATE_DEFINITIONS | ||
| 60 | + STATICALLY_LINKED_WITH_WTF | ||
| 61 | + STATICALLY_LINKED_WITH_bmalloc | ||
| 62 | + ) | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,3 +1,15 @@ | |||
| 1 | + 2020-02-05 Don Olmstead <don.olmstead@sony.com> | ||
| 2 | + | ||
| 3 | + [PlayStation] Build a shared JavaScriptCore | ||
| 4 | + https://bugs.webkit.org/show_bug.cgi?id=198446 | ||
| 5 | + | ||
| 6 | + Reviewed by Fujii Hironori. | ||
| 7 | + | ||
| 8 | + Add bmalloc definition when compiling WTF. Remove LanguageUnix.cpp since | ||
| 9 | + LanguagePlayStation.cpp is present which results in duplicate symbol definitions. | ||
| 10 | + | ||
| 11 | + * wtf/PlatformPlayStation.cmake: | ||
| 12 | + | ||
| 1 | 13 | 2020-02-05 Yusuke Suzuki <ysuzuki@apple.com> | |
| 2 | 14 | ||
| 3 | 15 | [WTF] Try using 75% load factor for HashTable | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -15,7 +15,6 @@ list(APPEND WTF_SOURCES | |||
| 15 | 15 | text/unix/TextBreakIteratorInternalICUUnix.cpp | |
| 16 | 16 | ||
| 17 | 17 | unix/CPUTimeUnix.cpp | |
| 18 | - unix/LanguageUnix.cpp | ||
| 19 | 18 | ) | |
| 20 | 19 | ||
| 21 | 20 | list(APPEND WTF_LIBRARIES | |
@@ -24,3 +23,6 @@ list(APPEND WTF_LIBRARIES | |||
| 24 | 23 | ${C_STD_LIBRARY} | |
| 25 | 24 | ${KERNEL_LIBRARY} | |
| 26 | 25 | ) | |
| 26 | + | ||
| 27 | + # bmalloc is compiled as an OBJECT library so it is statically linked | ||
| 28 | + list(APPEND WTF_PRIVATE_DEFINITIONS STATICALLY_LINKED_WITH_bmalloc) | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -164,10 +164,20 @@ set(WebKit_DERIVED_SOURCES_DIR ${CMAKE_BINARY_DIR}/WebKit/DerivedSources) | |||
| 164 | 164 | set(WTF_SCRIPTS_DIR ${CMAKE_BINARY_DIR}/WTF/Scripts) | |
| 165 | 165 | set(JavaScriptCore_SCRIPTS_DIR ${CMAKE_BINARY_DIR}/JavaScriptCore/Scripts) | |
| 166 | 166 | ||
| 167 | - # Override library types | ||
| 168 | - set(WTF_LIBRARY_TYPE STATIC) | ||
| 169 | - set(JavaScriptCore_LIBRARY_TYPE STATIC) | ||
| 167 | + # Create a shared JavaScriptCore with WTF and bmalloc exposed through it. | ||
| 168 | + # | ||
| 169 | + # Use OBJECT libraries for bmalloc and WTF. This is the modern CMake way to emulate | ||
| 170 | + # the behavior of --whole-archive. If this is not done then all the exports will | ||
| 171 | + # not be exposed. | ||
| 172 | + set(bmalloc_LIBRARY_TYPE OBJECT) | ||
| 173 | + set(WTF_LIBRARY_TYPE OBJECT) | ||
| 174 | + set(JavaScriptCore_LIBRARY_TYPE SHARED) | ||
| 175 | + | ||
| 176 | + # For the shared WebKit just link a STATIC WebCore since the exports from WebCore | ||
| 177 | + # and PAL are not needed. | ||
| 178 | + set(PAL_LIBRARY_TYPE STATIC) | ||
| 170 | 179 | set(WebCore_LIBRARY_TYPE STATIC) | |
| 180 | + set(WebKit_LIBRARY_TYPE SHARED) | ||
| 171 | 181 | ||
| 172 | 182 | # Enable multi process builds for Visual Studio | |
| 173 | 183 | if (NOT ${CMAKE_GENERATOR} MATCHES "Ninja") | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,3 +1,14 @@ | |||
| 1 | + 2020-02-05 Don Olmstead <don.olmstead@sony.com> | ||
| 2 | + | ||
| 3 | + [PlayStation] Build a shared JavaScriptCore | ||
| 4 | + https://bugs.webkit.org/show_bug.cgi?id=198446 | ||
| 5 | + | ||
| 6 | + Reviewed by Fujii Hironori. | ||
| 7 | + | ||
| 8 | + Add TARGET_OBJECTS for bmalloc and WTF so TestWTF links. | ||
| 9 | + | ||
| 10 | + * TestWebKitAPI/PlatformPlayStation.cmake: | ||
| 11 | + | ||
| 1 | 12 | 2020-02-05 Stephan Szabo <stephan.szabo@sony.com> | |
| 2 | 13 | ||
| 3 | 14 | [WinCairo] Set up fonts for layout tests for test bot image | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -10,6 +10,14 @@ list(APPEND TestWTF_SOURCES | |||
| 10 | 10 | generic/UtilitiesGeneric.cpp | |
| 11 | 11 | ) | |
| 12 | 12 | ||
| 13 | + # Both bmalloc and WTF are built as object libraries. The WebKit:: interface | ||
| 14 | + # targets are used. A limitation of that is the object files are not propagated | ||
| 15 | + # so they are added here. | ||
| 16 | + list(APPEND TestWTF_PRIVATE_LIBRARIES | ||
| 17 | + $<TARGET_OBJECTS:WTF> | ||
| 18 | + $<TARGET_OBJECTS:bmalloc> | ||
| 19 | + ) | ||
| 20 | + | ||
| 13 | 21 | list(APPEND TestWebCore_SOURCES | |
| 14 | 22 | ${test_main_SOURCES} | |
| 15 | 23 | ) | |
| Back | FazBrowse Home | New Git URL |
0 commit comments