Switch OS(FUCHSIA) to using JSCOnly
authorabarth@webkit.org <abarth@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 28 Jun 2018 08:02:29 +0000 (08:02 +0000)
committerabarth@webkit.org <abarth@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 28 Jun 2018 08:02:29 +0000 (08:02 +0000)
https://bugs.webkit.org/show_bug.cgi?id=187133

Reviewed by Yusuke Suzuki.

.:

Rather than creating a Fuchsia port, OS(FUCHSIA) now uses the JSCOnly
port.

* CMakeLists.txt: Set the WTF_OS_FUCHSIA flag
* Source/cmake/OptionsFuchsia.cmake: Removed.
* Source/cmake/OptionsJSCOnly.cmake: Temporarily disable ICU for
OS(FUCHSIA). We'll get ICU wired in, but I'd like to work through the
other compile errors first.

Tools:

Switch Fuchsia from being a port to just being an OS. We now use a
CMAKE_TOOLCHAIN_FILE to configure the toolchain and the target triple.

* Scripts/webkitdirs.pm: Remove isFuchsia() and clients. Turns out we
can do everything we need using a CMAKE_TOOLCHAIN_FILE via the
--cmakeargs flag.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@233303 268f45cc-cd09-0410-ab3c-d52691b4dbfc

CMakeLists.txt
ChangeLog
Source/cmake/OptionsFuchsia.cmake [deleted file]
Source/cmake/OptionsJSCOnly.cmake
Tools/ChangeLog
Tools/Scripts/webkitdirs.pm

index 69fd5b3..8f5321c 100644 (file)
@@ -37,7 +37,6 @@ endif ()
 set(ALL_PORTS
     AppleWin
     Efl
-    Fuchsia
     GTK
     JSCOnly
     Mac
@@ -115,6 +114,8 @@ if (UNIX)
     endif ()
 elseif (CMAKE_SYSTEM_NAME MATCHES "Windows")
     set(WTF_OS_WINDOWS 1)
+elseif (CMAKE_SYSTEM_NAME MATCHES "Fuchsia")
+    set(WTF_OS_FUCHSIA 1)
 else ()
     message(FATAL_ERROR "Unknown OS '${CMAKE_SYSTEM_NAME}'")
 endif ()
index 7cfeea2..a3fc58d 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,19 @@
+2018-06-28  Adam Barth  <abarth@webkit.org>
+
+        Switch OS(FUCHSIA) to using JSCOnly
+        https://bugs.webkit.org/show_bug.cgi?id=187133
+
+        Reviewed by Yusuke Suzuki.
+
+        Rather than creating a Fuchsia port, OS(FUCHSIA) now uses the JSCOnly
+        port.
+
+        * CMakeLists.txt: Set the WTF_OS_FUCHSIA flag
+        * Source/cmake/OptionsFuchsia.cmake: Removed.
+        * Source/cmake/OptionsJSCOnly.cmake: Temporarily disable ICU for
+        OS(FUCHSIA). We'll get ICU wired in, but I'd like to work through the
+        other compile errors first.
+
 2018-06-27  Adam Barth  <abarth@webkit.org>
 
         Add Fuchsia support to build-jsc
diff --git a/Source/cmake/OptionsFuchsia.cmake b/Source/cmake/OptionsFuchsia.cmake
deleted file mode 100644 (file)
index c4afac4..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-set(PROJECT_VERSION_MAJOR 1)
-set(PROJECT_VERSION_MINOR 0)
-set(PROJECT_VERSION_MICRO 0)
-set(PROJECT_VERSION ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_MICRO})
-
-set(CMAKE_SYSTEM_NAME Fuchsia)
-
-if (WTF_CPU_ARM64)
-    set(triple aarch64-unknown-fuchsia)
-elseif (WTF_CPU_X86_64)
-    set(triple x86_64-unknown-fuchsia)
-else ()
-    message(FATAL_ERROR "Unknown ARCH '${CMAKE_SYSTEM_PROCESSOR}'")
-endif ()
-
-set(CMAKE_C_COMPILER_TARGET ${triple})
-set(CMAKE_CXX_COMPILER_TARGET ${triple})
-
-WEBKIT_OPTION_BEGIN()
-WEBKIT_OPTION_DEFINE(ENABLE_STATIC_JSC "Whether to build JavaScriptCore as a static library." PUBLIC OFF)
-WEBKIT_OPTION_END()
-
-set(ENABLE_WEBCORE OFF)
-set(ENABLE_WEBKIT_LEGACY OFF)
-set(ENABLE_WEBKIT OFF)
-set(ENABLE_API_TESTS OFF)
-
-SET_AND_EXPOSE_TO_BUILD(USE_GENERIC_EVENT_LOOP 1)
-SET_AND_EXPOSE_TO_BUILD(WTF_DEFAULT_EVENT_LOOP 0)
index 3719d51..aa307cd 100644 (file)
@@ -97,7 +97,10 @@ else ()
 endif ()
 
 if (NOT APPLE)
-    find_package(ICU REQUIRED)
+    if (NOT WTF_OS_FUCHSIA)
+        # TODO: Add ICU on Fuchsia.
+        find_package(ICU REQUIRED)
+    endif ()
 else ()
     add_definitions(-DU_DISABLE_RENAMING=1 -DU_SHOW_CPLUSPLUS_API=0)
     set(ICU_LIBRARIES libicucore.dylib)
index ef438ff..6fca265 100644 (file)
@@ -1,3 +1,17 @@
+2018-06-28  Adam Barth  <abarth@webkit.org>
+
+        Switch OS(FUCHSIA) to using JSCOnly
+        https://bugs.webkit.org/show_bug.cgi?id=187133
+
+        Reviewed by Yusuke Suzuki.
+
+        Switch Fuchsia from being a port to just being an OS. We now use a
+        CMAKE_TOOLCHAIN_FILE to configure the toolchain and the target triple.
+
+        * Scripts/webkitdirs.pm: Remove isFuchsia() and clients. Turns out we
+        can do everything we need using a CMAKE_TOOLCHAIN_FILE via the
+        --cmakeargs flag.
+
 2018-06-27  Ryosuke Niwa  <rniwa@webkit.org>
 
         Make MotionMark's plan file more robust against code changes
index ccd8022..909218a 100755 (executable)
@@ -104,7 +104,6 @@ BEGIN {
 # Ports
 use constant {
     AppleWin => "AppleWin",
-    Fuchsia  => "Fuchsia",
     GTK      => "GTK",
     iOS      => "iOS",
     tvOS     => "tvOS",
@@ -477,7 +476,6 @@ sub argumentsForConfiguration()
     push(@args, '--ios-simulator') if (defined $xcodeSDK && $xcodeSDK =~ /^iphonesimulator/);
     push(@args, '--32-bit') if ($architecture ne "x86_64" and !isWin64());
     push(@args, '--64-bit') if (isWin64());
-    push(@args, '--fuchsia') if isFuchsia();
     push(@args, '--gtk') if isGtk();
     push(@args, '--wpe') if isWPE();
     push(@args, '--jsc-only') if isJSCOnly();
@@ -1191,7 +1189,6 @@ sub determinePortName()
     return if defined $portName;
 
     my %argToPortName = (
-        fuchsia => Fuchsia,
         gtk => GTK,
         'jsc-only' => JSCOnly,
         wincairo => WinCairo,
@@ -1247,11 +1244,6 @@ sub portName()
     return $portName;
 }
 
-sub isFuchsia()
-{
-    return portName() eq Fuchsia;
-}
-
 sub isGtk()
 {
     return portName() eq GTK;
@@ -2031,7 +2023,7 @@ sub isCachedArgumentfileOutOfDate($@)
 
 sub wrapperPrefixIfNeeded()
 {
-    if (isAnyWindows() || isJSCOnly() || isFuchsia()) {
+    if (isAnyWindows() || isJSCOnly()) {
         return ();
     }
     if (isAppleCocoaWebKit()) {