- Revision
- 165298
- Author
- [email protected]
- Date
- 2014-03-07 16:18:21 -0800 (Fri, 07 Mar 2014)
Log Message
Source/WebKit: Make it possible to copy WebKit2 headers to WebKit.framework
https://bugs.webkit.org/show_bug.cgi?id=129935
Reviewed by Dan Bernstein.
* WebKit.xcodeproj/project.pbxproj:
Move the migrate headers script out into its own file.
Source/WebKit/mac: Make it possible to copy WebKit2 headers to WebKit.framework
https://bugs.webkit.org/show_bug.cgi?id=129935
<rdar://problem/15920020>
Reviewed by Dan Bernstein.
* MigrateHeaders.make:
Gather a list of public and private WebKit2 headers and filter them against the WEBKIT2_HEADERS list.
The matching headers are copied to the respective Headers or PrivateHeaders directories under WebKit.framework,
and also have their #imports rewritten to reference WebKit instead of WebKit2.
* migrate-headers.sh: Added.
Set up the WEBKIT2_FRAMEWORKS_DIR if needed.
Modified Paths
Added Paths
Diff
Modified: trunk/Source/WebKit/ChangeLog (165297 => 165298)
--- trunk/Source/WebKit/ChangeLog 2014-03-07 23:43:57 UTC (rev 165297)
+++ trunk/Source/WebKit/ChangeLog 2014-03-08 00:18:21 UTC (rev 165298)
@@ -1,3 +1,13 @@
+2014-03-07 Anders Carlsson <[email protected]>
+
+ Make it possible to copy WebKit2 headers to WebKit.framework
+ https://bugs.webkit.org/show_bug.cgi?id=129935
+
+ Reviewed by Dan Bernstein.
+
+ * WebKit.xcodeproj/project.pbxproj:
+ Move the migrate headers script out into its own file.
+
2014-03-07 Brent Fulgham <[email protected]>
[Win] Convert WebKit.make to an MSBuild file.
Modified: trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj (165297 => 165298)
--- trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj 2014-03-07 23:43:57 UTC (rev 165297)
+++ trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj 2014-03-08 00:18:21 UTC (rev 165298)
@@ -2031,7 +2031,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "mkdir -p \"${TARGET_BUILD_DIR}/${PRIVATE_HEADERS_FOLDER_PATH}\"\nmkdir -p \"${TARGET_BUILD_DIR}/${PUBLIC_HEADERS_FOLDER_PATH}\"\nmkdir -p \"${BUILT_PRODUCTS_DIR}/DerivedSources/WebKit\"\n\n# If we didn't build WebCore, use the production copy of the headers\nif [ ! -d \"${WEBCORE_PRIVATE_HEADERS_DIR}\" ]; then\n export WEBCORE_PRIVATE_HEADERS_DIR=\"`eval 'echo ${WEBCORE_PRIVATE_HEADERS_DIR_'${PLATFORM_NAME}'_Production}'`\"\nfi\n\nif [ \"${ACTION}\" = \"build\" -o \"${ACTION}\" = \"install\" -o \"${ACTION}\" = \"installhdrs\" ]; then\n make -C mac -f \"MigrateHeaders.make\" -j `/usr/sbin/sysctl -n hw.activecpu`\nfi\n";
+ shellScript = "exec \"${SRCROOT}/mac/migrate-headers.sh\"";
};
3713F018142905B70036387F /* Check For Inappropriate Objective-C Class Names */ = {
isa = PBXShellScriptBuildPhase;
Modified: trunk/Source/WebKit/mac/ChangeLog (165297 => 165298)
--- trunk/Source/WebKit/mac/ChangeLog 2014-03-07 23:43:57 UTC (rev 165297)
+++ trunk/Source/WebKit/mac/ChangeLog 2014-03-08 00:18:21 UTC (rev 165298)
@@ -1,5 +1,21 @@
2014-03-07 Anders Carlsson <[email protected]>
+ Make it possible to copy WebKit2 headers to WebKit.framework
+ https://bugs.webkit.org/show_bug.cgi?id=129935
+ <rdar://problem/15920020>
+
+ Reviewed by Dan Bernstein.
+
+ * MigrateHeaders.make:
+ Gather a list of public and private WebKit2 headers and filter them against the WEBKIT2_HEADERS list.
+ The matching headers are copied to the respective Headers or PrivateHeaders directories under WebKit.framework,
+ and also have their #imports rewritten to reference WebKit instead of WebKit2.
+
+ * migrate-headers.sh: Added.
+ Set up the WEBKIT2_FRAMEWORKS_DIR if needed.
+
+2014-03-07 Anders Carlsson <[email protected]>
+
Fix a typo
<rdar://problem/15920020>
Modified: trunk/Source/WebKit/mac/MigrateHeaders.make (165297 => 165298)
--- trunk/Source/WebKit/mac/MigrateHeaders.make 2014-03-07 23:43:57 UTC (rev 165297)
+++ trunk/Source/WebKit/mac/MigrateHeaders.make 2014-03-08 00:18:21 UTC (rev 165298)
@@ -231,8 +231,8 @@
endif
-REPLACE_RULES = -e s/\<WebCore/\<WebKit/ -e s/DOMDOMImplementation/DOMImplementation/
-HEADER_MIGRATE_CMD = sed $(REPLACE_RULES) $< > $@
+WEBCORE_HEADER_REPLACE_RULES = -e s/\<WebCore/\<WebKit/ -e s/DOMDOMImplementation/DOMImplementation/
+WEBCORE_HEADER_MIGRATE_CMD = sed $(WEBCORE_HEADER_REPLACE_RULES) $< > $@
ifeq ($(filter iphoneos iphonesimulator, $(PLATFORM_NAME)), )
PUBLIC_HEADER_CHECK_CMD = @if grep -q "AVAILABLE.*TBD" "$<"; then line=$$(awk "/AVAILABLE.*TBD/ { print FNR; exit }" "$<" ); echo "$<:$$line: error: A class within a public header has unspecified availability."; false; fi
@@ -242,17 +242,41 @@
$(PUBLIC_HEADERS_DIR)/DOM% : DOMDOM% MigrateHeaders.make
$(PUBLIC_HEADER_CHECK_CMD)
- $(HEADER_MIGRATE_CMD)
+ $(WEBCORE_HEADER_MIGRATE_CMD)
$(PRIVATE_HEADERS_DIR)/DOM% : DOMDOM% MigrateHeaders.make
- $(HEADER_MIGRATE_CMD)
+ $(WEBCORE_HEADER_MIGRATE_CMD)
$(PUBLIC_HEADERS_DIR)/% : % MigrateHeaders.make
$(PUBLIC_HEADER_CHECK_CMD)
- $(HEADER_MIGRATE_CMD)
+ $(WEBCORE_HEADER_MIGRATE_CMD)
$(PRIVATE_HEADERS_DIR)/% : % MigrateHeaders.make
- $(HEADER_MIGRATE_CMD)
+ $(WEBCORE_HEADER_MIGRATE_CMD)
$(INTERNAL_HEADERS_DIR)/% : % MigrateHeaders.make
- $(HEADER_MIGRATE_CMD)
+ $(WEBCORE_HEADER_MIGRATE_CMD)
+
+# Migration of WebKit2 headers to WebKit
+
+WEBKIT2_HEADERS = \
+ WKFoundation.h \
+ WKProcessPoolConfiguration.h \
+ WKProcessPoolConfigurationPrivate.h \
+#
+
+WEBKIT2_PUBLIC_HEADERS = $(addprefix $(PUBLIC_HEADERS_DIR)/, $(filter $(WEBKIT2_HEADERS),$(notdir $(wildcard $(WEBKIT2_FRAMEWORKS_DIR)/WebKit2.framework/Headers/*))))
+WEBKIT2_PRIVATE_HEADERS = $(addprefix $(PRIVATE_HEADERS_DIR)/, $(filter $(WEBKIT2_HEADERS),$(notdir $(wildcard $(WEBKIT2_FRAMEWORKS_DIR)/WebKit2.framework/PrivateHeaders/*))))
+
+ifeq ($(PLATFORM_NAME), macosx)
+all : $(WEBKIT2_PUBLIC_HEADERS) $(WEBKIT2_PRIVATE_HEADERS)
+endif
+
+WEBKIT2_HEADER_REPLACE_RULES = -e s/\<WebKit2/\<WebKit/
+WEBKIT2_HEADER_MIGRATE_CMD = sed $(WEBKIT2_HEADER_REPLACE_RULES) $< > $@
+
+$(PUBLIC_HEADERS_DIR)/% : $(WEBKIT2_FRAMEWORKS_DIR)/WebKit2.framework/Headers/% MigrateHeaders.make
+ $(WEBKIT2_HEADER_MIGRATE_CMD)
+
+$(PRIVATE_HEADERS_DIR)/% : $(WEBKIT2_FRAMEWORKS_DIR)/WebKit2.framework/PrivateHeaders/% MigrateHeaders.make
+ $(WEBKIT2_HEADER_MIGRATE_CMD)
Added: trunk/Source/WebKit/mac/migrate-headers.sh (0 => 165298)
--- trunk/Source/WebKit/mac/migrate-headers.sh (rev 0)
+++ trunk/Source/WebKit/mac/migrate-headers.sh 2014-03-08 00:18:21 UTC (rev 165298)
@@ -0,0 +1,42 @@
+#
+# Copyright (C) 2006, 2014 Apple Inc. All rights reserved.
+#
+# 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.
+#
+
+mkdir -p "${TARGET_BUILD_DIR}/${PRIVATE_HEADERS_FOLDER_PATH}"
+mkdir -p "${TARGET_BUILD_DIR}/${PUBLIC_HEADERS_FOLDER_PATH}"
+mkdir -p "${BUILT_PRODUCTS_DIR}/DerivedSources/WebKit"
+
+# If we didn't build WebCore, use the production copy of the headers
+if [ ! -d "${WEBCORE_PRIVATE_HEADERS_DIR}" ]; then
+ export WEBCORE_PRIVATE_HEADERS_DIR="`eval 'echo ${WEBCORE_PRIVATE_HEADERS_DIR_'${PLATFORM_NAME}'_Production}'`"
+fi
+
+# If we didn't build WebKit2, use the production copy of the headers
+if [ ! -d "${WEBKIT2_FRAMEWORKS_DIR}/WebKit2.framework" ]; then
+ export WEBKIT2_FRAMEWORKS_DIR="`eval 'echo ${WEBKIT2_FRAMEWORKS_DIR_Production}'/WebKit2.framework`"
+fi
+
+if [ "${ACTION}" = "build" -o "${ACTION}" = "install" -o "${ACTION}" = "installhdrs" ]; then
+ make -C mac -f "MigrateHeaders.make" -j `/usr/sbin/sysctl -n hw.activecpu`
+fi
Property changes on: trunk/Source/WebKit/mac/migrate-headers.sh
___________________________________________________________________
Added: svn:executable