Title: [262558] trunk/Tools
Revision
262558
Author
[email protected]
Date
2020-06-04 12:42:08 -0700 (Thu, 04 Jun 2020)

Log Message

Add watchOS and tvOS to build-webkit
https://bugs.webkit.org/show_bug.cgi?id=212719
<rdar://problem/63951600>

Reviewed by Tim Horton.

* Scripts/build-webkit: Add tvOS and watchOS flags, generalize embedded if statements.
* Scripts/webkitdirs.pm:
(determineArchitecture): Add tvOS and watchOS architectures.
(argumentsForConfiguration): Add tvOS and watchOS flags.
(extractNonMacOSHostConfiguration): Ditto.

Modified Paths

Diff

Modified: trunk/Tools/ChangeLog (262557 => 262558)


--- trunk/Tools/ChangeLog	2020-06-04 19:23:53 UTC (rev 262557)
+++ trunk/Tools/ChangeLog	2020-06-04 19:42:08 UTC (rev 262558)
@@ -1,3 +1,17 @@
+2020-06-04  Jonathan Bedard  <[email protected]>
+
+        Add watchOS and tvOS to build-webkit
+        https://bugs.webkit.org/show_bug.cgi?id=212719
+        <rdar://problem/63951600>
+
+        Reviewed by Tim Horton.
+
+        * Scripts/build-webkit: Add tvOS and watchOS flags, generalize embedded if statements.
+        * Scripts/webkitdirs.pm:
+        (determineArchitecture): Add tvOS and watchOS architectures.
+        (argumentsForConfiguration): Add tvOS and watchOS flags.
+        (extractNonMacOSHostConfiguration): Ditto.
+
 2020-06-04  Tim Horton  <[email protected]>
 
         Work around broken system version macro

Modified: trunk/Tools/Scripts/build-webkit (262557 => 262558)


--- trunk/Tools/Scripts/build-webkit	2020-06-04 19:23:53 UTC (rev 262557)
+++ trunk/Tools/Scripts/build-webkit	2020-06-04 19:42:08 UTC (rev 262558)
@@ -114,6 +114,10 @@
   --device                          DEPRECATED alias of --ios-device
   --ios-simulator                   Use "iphonesimulator.internal" SDK if installed, else "iphonesimulator" SDK (iOS only)
   --simulator                       DEPRECATED alias of --ios-simulator
+  --tvos-device                     Use "appletvos.internal" SDK if installed, else "appletvos" SDK (tvOS only)
+  --tvos-simulator                  Use "appletvsimulator" (tvOS only)
+  --watchos-device                  Use "watchos.internal" SDK if installed, else "watchos" SDK (watchOS only)
+  --watchos-simulator               Use "watchsimulator" (watchOS only)
   --coverage                        Enable code coverage support (Mac only)
   --analyze                         Enable static anaylsis (iOS and Mac only)
   --lto-mode=<mode>                 Set Link Time Optimization mode (full, thin, or none) (LLVM only)
@@ -237,14 +241,14 @@
 
     # ANGLE and libwebrtc must come before WebCore
     splice @projects, 0, 0, ("Source/ThirdParty/ANGLE");
-    if (not $archs32bit and ((portName() eq Mac and not architecture() eq "i386") or 
-        (portName() eq iOS and (architecture() eq "arm64" or architecture() eq "x86_64")))) {
+    # if (not $archs32bit and (portName() eq Mac or portName() eq iOS or portName() eq watchOS)) {
+    if (portName() eq Mac or portName() eq iOS) {
         splice @projects, 0, 0, ("Source/ThirdParty/libwebrtc");
     }
 
     push @projects, ("Source/WebKit");
 
-    if (!isIOSWebKit()) {
+    if (!isEmbeddedWebKit()) {
         push @projects, ("Tools/MiniBrowser");
 
         # WebInspectorUI must come after _javascript_Core and WebCore but before WebKit and WebKit2
@@ -266,7 +270,7 @@
         push @projects, ("Tools/lldb/lldbWebKitTester");
     }
 
-    # Build Tools needed for Apple ports
+    # Build Tools needed for Apple ports (except for tvOS)
     push @projects, ("Tools/DumpRenderTree", "Tools/WebKitTestRunner", "Source/ThirdParty/gtest", "Tools/TestWebKitAPI");
 
 } elsif (isWinCairo() && !$skipLibraryUpdate) {

Modified: trunk/Tools/Scripts/webkitdirs.pm (262557 => 262558)


--- trunk/Tools/Scripts/webkitdirs.pm	2020-06-04 19:23:53 UTC (rev 262557)
+++ trunk/Tools/Scripts/webkitdirs.pm	2020-06-04 19:42:08 UTC (rev 262558)
@@ -375,6 +375,14 @@
                 $architecture = 'x86_64';
             } elsif ($xcodeSDK =~ /^iphoneos/) {
                 $architecture = 'arm64';
+            } elsif ($xcodeSDK =~ /^watchsimulator/) {
+                $architecture = 'i386';
+            } elsif ($xcodeSDK =~ /^watchos/) {
+                $architecture = 'arm64_32 arm64e armv7k';
+            } elsif ($xcodeSDK =~ /^appletvsimulator/) {
+                $architecture = 'x86_64';
+            } elsif ($xcodeSDK =~ /^appletvos/) {
+                $architecture = 'arm64';
             }
         }
     } elsif (isCMakeBuild()) {
@@ -517,6 +525,10 @@
     push(@args, '--ios-device') if (defined $xcodeSDK && $xcodeSDK =~ /^iphoneos/);
     push(@args, '--ios-simulator') if (defined $xcodeSDK && $xcodeSDK =~ /^iphonesimulator/ && $simulatorIdiom eq "iPhone");
     push(@args, '--ipad-simulator') if (defined $xcodeSDK && $xcodeSDK =~ /^iphonesimulator/ && $simulatorIdiom eq "iPad");
+    push(@args, '--tvos-device') if (defined $xcodeSDK && $xcodeSDK =~ /^appletvos/);
+    push(@args, '--tvos-simulator') if (defined $xcodeSDK && $xcodeSDK =~ /^appletvsimulator/);
+    push(@args, '--watchos-device') if (defined $xcodeSDK && $xcodeSDK =~ /^watchos/);
+    push(@args, '--watchos-simulator') if (defined $xcodeSDK && $xcodeSDK =~ /^watchsimulator/);
     push(@args, '--maccatalyst') if (defined $xcodeSDK && $xcodeSDK =~ /^maccatalyst/);
     push(@args, '--32-bit') if ($architecture eq "x86" and !isWin64());
     push(@args, '--64-bit') if (isWin64());
@@ -532,7 +544,7 @@
 sub extractNonMacOSHostConfiguration
 {
     my @args = ();
-    my @extract = ('--device', '--gtk', '--ios', '--platform', '--sdk', '--simulator', '--wincairo', '--ftw', 'SDKROOT', 'ARCHS');
+    my @extract = ('--device', '--gtk', '--ios', '--platform', '--sdk', '--simulator', '--wincairo', '--ftw', '--tvos', '--watchos', 'SDKROOT', 'ARCHS');
     foreach (@{$_[0]}) {
         my $line = $_;
         my $flag = 0;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to