Enable XSLT when building WebKit for iOS using the public iOS SDK
authordbates@webkit.org <dbates@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 6 Oct 2015 16:33:21 +0000 (16:33 +0000)
committerdbates@webkit.org <dbates@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 6 Oct 2015 16:33:21 +0000 (16:33 +0000)
https://bugs.webkit.org/show_bug.cgi?id=149827

Patch by Daniel Bates <dbates@webkit.org> on 2015-10-06
Reviewed by Alexey Proskuryakov.

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:

Source/WTF:

* wtf/FeatureDefines.h:

Tools:

Teach script configure-xcode-for-ios-development to copy the OS X XSLT headers to the iPhoneOS
and iPhoneSimulator SDKs so as to support building WebKit for iOS with XSLT. A person must
run this script before building WebKit for iOS or the build will fail because one or more XSLT
headers cannot be found.

* Scripts/configure-xcode-for-ios-development:
(copyMissingXSLTHeadersToSDKIfNeeded): Added.

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

12 files changed:
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig
Source/WTF/ChangeLog
Source/WTF/wtf/FeatureDefines.h
Source/WebCore/ChangeLog
Source/WebCore/Configurations/FeatureDefines.xcconfig
Source/WebKit/mac/ChangeLog
Source/WebKit/mac/Configurations/FeatureDefines.xcconfig
Source/WebKit2/ChangeLog
Source/WebKit2/Configurations/FeatureDefines.xcconfig
Tools/ChangeLog
Tools/Scripts/configure-xcode-for-ios-development

index 86ae688..9328c8c 100644 (file)
@@ -1,3 +1,12 @@
+2015-10-06  Daniel Bates  <dbates@webkit.org>
+
+        Enable XSLT when building WebKit for iOS using the public iOS SDK
+        https://bugs.webkit.org/show_bug.cgi?id=149827
+
+        Reviewed by Alexey Proskuryakov.
+
+        * Configurations/FeatureDefines.xcconfig:
+
 2015-10-05  Commit Queue  <commit-queue@webkit.org>
 
         Unreviewed, rolling out r190599.
index 59e255a..6dbd82d 100644 (file)
@@ -215,11 +215,7 @@ ENABLE_WEB_TIMING_macosx_101000 = ENABLE_WEB_TIMING;
 ENABLE_WEB_TIMING_macosx_101100 = ENABLE_WEB_TIMING;
 ENABLE_WEB_TIMING_macosx_101200 = ENABLE_WEB_TIMING;
 
-// FIXME: Remove the USE_INTERNAL_SDK condition once we support XSLT when building for iOS with the
-// public SDK. We will also need to update FeatureDefines.h.
-ENABLE_XSLT[sdk=macosx*] = ENABLE_XSLT;
-ENABLE_XSLT[sdk=iphone*] = $(ENABLE_XSLT_ios_WITH_INTERNAL_SDK_$(USE_INTERNAL_SDK));
-ENABLE_XSLT_ios_WITH_INTERNAL_SDK_YES = ENABLE_XSLT;
+ENABLE_XSLT = ENABLE_XSLT;
 
 ENABLE_FTL_JIT[sdk=macosx*] = ENABLE_FTL_JIT;
 ENABLE_FTL_JIT[sdk=iphoneos*] = ENABLE_FTL_JIT;
index 2eab8d1..1f0c26e 100644 (file)
@@ -1,3 +1,12 @@
+2015-10-06  Daniel Bates  <dbates@webkit.org>
+
+        Enable XSLT when building WebKit for iOS using the public iOS SDK
+        https://bugs.webkit.org/show_bug.cgi?id=149827
+
+        Reviewed by Alexey Proskuryakov.
+
+        * wtf/FeatureDefines.h:
+
 2015-10-04  Filip Pizlo  <fpizlo@apple.com>
 
         Inline cache repatching should be throttled if it happens a lot
index f67d398..b2eb0e8 100644 (file)
@@ -168,12 +168,6 @@ the public iOS SDK. We will also need to update the FeatureDefines.xcconfig file
 #define ENABLE_WEBGL 1
 #endif
 
-/* FIXME: Remove this logic and always enable XSLT once we support XSLT when building against
-the public iOS SDK. We will also need to update the FeatureDefines.xcconfig files. */
-#if !defined(ENABLE_XSLT) && !USE(APPLE_INTERNAL_SDK)
-#define ENABLE_XSLT 0
-#endif
-
 #if !defined(ENABLE_PRIMARY_SNAPSHOTTED_PLUGIN_HEURISTIC)
 #define ENABLE_PRIMARY_SNAPSHOTTED_PLUGIN_HEURISTIC 1
 #endif
index f242fee..2b73388 100644 (file)
@@ -1,3 +1,12 @@
+2015-10-06  Daniel Bates  <dbates@webkit.org>
+
+        Enable XSLT when building WebKit for iOS using the public iOS SDK
+        https://bugs.webkit.org/show_bug.cgi?id=149827
+
+        Reviewed by Alexey Proskuryakov.
+
+        * Configurations/FeatureDefines.xcconfig:
+
 2015-10-06  Brent Fulgham  <bfulgham@apple.com>
 
         [Win] Correct positioning error introduced in r190235
index 59e255a..6dbd82d 100644 (file)
@@ -215,11 +215,7 @@ ENABLE_WEB_TIMING_macosx_101000 = ENABLE_WEB_TIMING;
 ENABLE_WEB_TIMING_macosx_101100 = ENABLE_WEB_TIMING;
 ENABLE_WEB_TIMING_macosx_101200 = ENABLE_WEB_TIMING;
 
-// FIXME: Remove the USE_INTERNAL_SDK condition once we support XSLT when building for iOS with the
-// public SDK. We will also need to update FeatureDefines.h.
-ENABLE_XSLT[sdk=macosx*] = ENABLE_XSLT;
-ENABLE_XSLT[sdk=iphone*] = $(ENABLE_XSLT_ios_WITH_INTERNAL_SDK_$(USE_INTERNAL_SDK));
-ENABLE_XSLT_ios_WITH_INTERNAL_SDK_YES = ENABLE_XSLT;
+ENABLE_XSLT = ENABLE_XSLT;
 
 ENABLE_FTL_JIT[sdk=macosx*] = ENABLE_FTL_JIT;
 ENABLE_FTL_JIT[sdk=iphoneos*] = ENABLE_FTL_JIT;
index f96bf7c..4d1dc79 100644 (file)
@@ -1,3 +1,12 @@
+2015-10-06  Daniel Bates  <dbates@webkit.org>
+
+        Enable XSLT when building WebKit for iOS using the public iOS SDK
+        https://bugs.webkit.org/show_bug.cgi?id=149827
+
+        Reviewed by Alexey Proskuryakov.
+
+        * Configurations/FeatureDefines.xcconfig:
+
 2015-10-06  Alex Christensen  <achristensen@webkit.org>
 
         Report error when main resource is blocked by content blocker
index 59e255a..6dbd82d 100644 (file)
@@ -215,11 +215,7 @@ ENABLE_WEB_TIMING_macosx_101000 = ENABLE_WEB_TIMING;
 ENABLE_WEB_TIMING_macosx_101100 = ENABLE_WEB_TIMING;
 ENABLE_WEB_TIMING_macosx_101200 = ENABLE_WEB_TIMING;
 
-// FIXME: Remove the USE_INTERNAL_SDK condition once we support XSLT when building for iOS with the
-// public SDK. We will also need to update FeatureDefines.h.
-ENABLE_XSLT[sdk=macosx*] = ENABLE_XSLT;
-ENABLE_XSLT[sdk=iphone*] = $(ENABLE_XSLT_ios_WITH_INTERNAL_SDK_$(USE_INTERNAL_SDK));
-ENABLE_XSLT_ios_WITH_INTERNAL_SDK_YES = ENABLE_XSLT;
+ENABLE_XSLT = ENABLE_XSLT;
 
 ENABLE_FTL_JIT[sdk=macosx*] = ENABLE_FTL_JIT;
 ENABLE_FTL_JIT[sdk=iphoneos*] = ENABLE_FTL_JIT;
index 23fdb35..d04394b 100644 (file)
@@ -1,3 +1,12 @@
+2015-10-06  Daniel Bates  <dbates@webkit.org>
+
+        Enable XSLT when building WebKit for iOS using the public iOS SDK
+        https://bugs.webkit.org/show_bug.cgi?id=149827
+
+        Reviewed by Alexey Proskuryakov.
+
+        * Configurations/FeatureDefines.xcconfig:
+
 2015-10-06  Emanuele Aina  <emanuele.aina@collabora.com>
 
         Fix ENABLE_OPENGL=OFF builds
index 59e255a..6dbd82d 100644 (file)
@@ -215,11 +215,7 @@ ENABLE_WEB_TIMING_macosx_101000 = ENABLE_WEB_TIMING;
 ENABLE_WEB_TIMING_macosx_101100 = ENABLE_WEB_TIMING;
 ENABLE_WEB_TIMING_macosx_101200 = ENABLE_WEB_TIMING;
 
-// FIXME: Remove the USE_INTERNAL_SDK condition once we support XSLT when building for iOS with the
-// public SDK. We will also need to update FeatureDefines.h.
-ENABLE_XSLT[sdk=macosx*] = ENABLE_XSLT;
-ENABLE_XSLT[sdk=iphone*] = $(ENABLE_XSLT_ios_WITH_INTERNAL_SDK_$(USE_INTERNAL_SDK));
-ENABLE_XSLT_ios_WITH_INTERNAL_SDK_YES = ENABLE_XSLT;
+ENABLE_XSLT = ENABLE_XSLT;
 
 ENABLE_FTL_JIT[sdk=macosx*] = ENABLE_FTL_JIT;
 ENABLE_FTL_JIT[sdk=iphoneos*] = ENABLE_FTL_JIT;
index 2002a7b..3632d23 100644 (file)
@@ -1,3 +1,18 @@
+2015-10-06  Daniel Bates  <dbates@webkit.org>
+
+        Enable XSLT when building WebKit for iOS using the public iOS SDK
+        https://bugs.webkit.org/show_bug.cgi?id=149827
+
+        Reviewed by Alexey Proskuryakov.
+
+        Teach script configure-xcode-for-ios-development to copy the OS X XSLT headers to the iPhoneOS
+        and iPhoneSimulator SDKs so as to support building WebKit for iOS with XSLT. A person must
+        run this script before building WebKit for iOS or the build will fail because one or more XSLT
+        headers cannot be found.
+
+        * Scripts/configure-xcode-for-ios-development:
+        (copyMissingXSLTHeadersToSDKIfNeeded): Added.
+
 2015-10-05  Myles C. Maxfield  <mmaxfield@apple.com>
 
         REGRESSION(189668?): http/tests/notifications/events.html flakily asserts or times out
index 487cf22..0d4819f 100755 (executable)
@@ -41,6 +41,7 @@ use lib $FindBin::Bin;
 use webkitdirs;
 
 sub copyMissingHeadersToIPhoneOSSDKIfNeeded();
+sub copyMissingXSLTHeadersToSDKIfNeeded($);
 sub createLegacyXcodeSpecificationFilesForSDKIfNeeded($);
 sub mergeXcodeSpecificationWithSpecificationAndId($$$);
 sub readXcodeSpecificationById($$);
@@ -64,6 +65,7 @@ if ($EFFECTIVE_USER_ID) {
 
 for my $sdk (qw(iphoneos iphonesimulator)) {
     updateXcodeSpecificationFilesForSDKIfNeeded($sdk);
+    copyMissingXSLTHeadersToSDKIfNeeded($sdk);
 }
 
 copyMissingHeadersToIPhoneOSSDKIfNeeded();
@@ -100,6 +102,18 @@ sub copyMissingHeadersToIPhoneOSSDKIfNeeded()
     }
 }
 
+sub copyMissingXSLTHeadersToSDKIfNeeded($)
+{
+    my ($sdkName) = @_;
+    my $sdkXSLTHeaderDirectory = File::Spec->canonpath(File::Spec->catdir(sdkDirectory($sdkName), "usr", "include", "libxslt"));
+    return if -d $sdkXSLTHeaderDirectory;
+
+    my $macosxXSLTHeaderDirectory = File::Spec->canonpath(File::Spec->catdir(sdkDirectory("macosx"), "usr", "include", "libxslt"));
+    system("/usr/bin/ditto", $macosxXSLTHeaderDirectory, $sdkXSLTHeaderDirectory);
+    die "Could not copy $macosxXSLTHeaderDirectory to $sdkXSLTHeaderDirectory: $!" if exitStatus($?);
+    print "Successfully copied $macosxXSLTHeaderDirectory to $sdkXSLTHeaderDirectory.\n";
+}
+
 sub updateXcodeSpecificationFilesForSDKIfNeeded($)
 {
     my ($sdkName) = @_;