<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[161332] trunk/Source</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/161332">161332</a></dd>
<dt>Author</dt> <dd>mrowe@apple.com</dd>
<dt>Date</dt> <dd>2014-01-06 00:15:52 -0800 (Mon, 06 Jan 2014)</dd>
</dl>

<h3>Log Message</h3>
<pre>&lt;https://webkit.org/b/126499&gt; Move WebKit off the legacy WebKit availability macros

The legacy WebKit availability macros are verbose, confusing, and provide no benefit
over using the system availability macros directly. The original vision was that
they'd serve a cross-platform purpose but that never came to be.

Since WebKit1 is API on OS X but SPI on iOS, some indirection is still needed in the
availability macros to allow the headers to advertise the API as unavailable on OS X
without interfering with the ability to build on iOS. This is achieved by defining
WEBKIT-prefixed versions of the Foundation availability macros that are defined to
their NS-prefixed equivalents. The installed headers are post-processed to map these
macros back to their Foundation equivalents.

Part of &lt;rdar://problem/15512304&gt;.

Source/WebCore:

Reviewed by Sam Weinig.

* WebCore.xcodeproj/project.pbxproj:
* bindings/objc/WebKitAvailability.h: Added. This lives at the WebCore level since it
will be needed by the Objective-C DOM bindings.

Source/WebKit:

Reviewed by Sam Weinig.

* WebKit.xcodeproj/project.pbxproj: Change the Postprocess Headers build phase to
invoke mac/postprocess-headers.sh.

Source/WebKit/mac:

The OS X version used in the new availability macros is based on the mapping in
JavaScriptCore/WebKitAvailability.h.

Reviewed by Sam Weinig.

* Carbon/CarbonUtils.h:
* Carbon/HIWebView.h:
* MigrateHeaders.make: Migrate WebKitAvailability.h from WebCore as an API header.
* Plugins/WebPlugin.h:
* Plugins/WebPluginViewFactory.h:
* WebView/WebFrameLoadDelegate.h:
* WebView/WebResourceLoadDelegatePrivate.h:
* WebView/WebUIDelegate.h:
* postprocess-headers.sh: Added. Extracted from the Xcode project. Extended to map the
WEBKIT-prefixed macros to their NS-prefixed equivalents on OS X and to remove them on iOS.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreWebCorexcodeprojprojectpbxproj">trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj</a></li>
<li><a href="#trunkSourceWebKitChangeLog">trunk/Source/WebKit/ChangeLog</a></li>
<li><a href="#trunkSourceWebKitWebKitxcodeprojprojectpbxproj">trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj</a></li>
<li><a href="#trunkSourceWebKitmacCarbonCarbonUtilsh">trunk/Source/WebKit/mac/Carbon/CarbonUtils.h</a></li>
<li><a href="#trunkSourceWebKitmacCarbonHIWebViewh">trunk/Source/WebKit/mac/Carbon/HIWebView.h</a></li>
<li><a href="#trunkSourceWebKitmacChangeLog">trunk/Source/WebKit/mac/ChangeLog</a></li>
<li><a href="#trunkSourceWebKitmacMigrateHeadersmake">trunk/Source/WebKit/mac/MigrateHeaders.make</a></li>
<li><a href="#trunkSourceWebKitmacPluginsWebPluginh">trunk/Source/WebKit/mac/Plugins/WebPlugin.h</a></li>
<li><a href="#trunkSourceWebKitmacPluginsWebPluginViewFactoryh">trunk/Source/WebKit/mac/Plugins/WebPluginViewFactory.h</a></li>
<li><a href="#trunkSourceWebKitmacWebViewWebFrameLoadDelegateh">trunk/Source/WebKit/mac/WebView/WebFrameLoadDelegate.h</a></li>
<li><a href="#trunkSourceWebKitmacWebViewWebResourceLoadDelegatePrivateh">trunk/Source/WebKit/mac/WebView/WebResourceLoadDelegatePrivate.h</a></li>
<li><a href="#trunkSourceWebKitmacWebViewWebUIDelegateh">trunk/Source/WebKit/mac/WebView/WebUIDelegate.h</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li><a href="#trunkSourceWebCorebindingsobjcWebKitAvailabilityh">trunk/Source/WebCore/bindings/objc/WebKitAvailability.h</a></li>
<li><a href="#trunkSourceWebKitmacpostprocessheaderssh">trunk/Source/WebKit/mac/postprocess-headers.sh</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (161331 => 161332)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2014-01-06 07:54:02 UTC (rev 161331)
+++ trunk/Source/WebCore/ChangeLog        2014-01-06 08:15:52 UTC (rev 161332)
</span><span class="lines">@@ -1,3 +1,26 @@
</span><ins>+2014-01-06  Mark Rowe  &lt;mrowe@apple.com&gt;
+
+        &lt;https://webkit.org/b/126499&gt; Move WebKit off the legacy WebKit availability macros
+
+        The legacy WebKit availability macros are verbose, confusing, and provide no benefit
+        over using the system availability macros directly. The original vision was that
+        they'd serve a cross-platform purpose but that never came to be.
+
+        Since WebKit1 is API on OS X but SPI on iOS, some indirection is still needed in the
+        availability macros to allow the headers to advertise the API as unavailable on OS X
+        without interfering with the ability to build on iOS. This is achieved by defining
+        WEBKIT-prefixed versions of the Foundation availability macros that are defined to
+        their NS-prefixed equivalents. The installed headers are post-processed to map these
+        macros back to their Foundation equivalents.
+
+        Part of &lt;rdar://problem/15512304&gt;.
+
+        Reviewed by Sam Weinig.
+
+        * WebCore.xcodeproj/project.pbxproj:
+        * bindings/objc/WebKitAvailability.h: Added. This lives at the WebCore level since it
+        will be needed by the Objective-C DOM bindings.
+
</ins><span class="cx"> 2014-01-05  Simon Fraser  &lt;simon.fraser@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Move responsibility for remote layer tree committing to RemoteLayerTreeDrawingArea
</span></span></pre></div>
<a id="trunkSourceWebCoreWebCorexcodeprojprojectpbxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (161331 => 161332)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj        2014-01-06 07:54:02 UTC (rev 161331)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj        2014-01-06 08:15:52 UTC (rev 161332)
</span><span class="lines">@@ -1968,6 +1968,7 @@
</span><span class="cx">                 5DFE8F570D16477C0076E937 /* ScheduledAction.h in Headers */ = {isa = PBXBuildFile; fileRef = BCA378BB0D15F64200B793D6 /* ScheduledAction.h */; };
</span><span class="cx">                 5F2DBBE9178E3C8100141486 /* CertificateInfoMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5F2DBBE7178E332D00141486 /* CertificateInfoMac.mm */; };
</span><span class="cx">                 5FA904CA178E61F5004C8A2D /* CertificateInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 5F2DBBE8178E336900141486 /* CertificateInfo.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><ins>+                5DFEBAB718592B6D00C75BEB /* WebKitAvailability.h in Headers */ = {isa = PBXBuildFile; fileRef = 5DFEBAB618592B6D00C75BEB /* WebKitAvailability.h */; settings = {ATTRIBUTES = (Private, ); }; };
</ins><span class="cx">                 5FC7DC26CFE2563200B85AE4 /* JSEventTarget.h in Headers */ = {isa = PBXBuildFile; fileRef = 5FC7DC26CFE2563200B85AE5 /* JSEventTarget.h */; };
</span><span class="cx">                 5FE1D292178FD1F3001AA3C3 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5FE1D291178FD1F3001AA3C3 /* Security.framework */; };
</span><span class="cx">                 626CDE0E1140424C001E5A68 /* SpatialNavigation.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 626CDE0C1140424C001E5A68 /* SpatialNavigation.cpp */; };
</span><span class="lines">@@ -8768,6 +8769,7 @@
</span><span class="cx">                 5DB1BC6910715A6400EFAA49 /* TransformSourceLibxslt.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TransformSourceLibxslt.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 5F2DBBE7178E332D00141486 /* CertificateInfoMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = CertificateInfoMac.mm; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 5F2DBBE8178E336900141486 /* CertificateInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CertificateInfo.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><ins>+                5DFEBAB618592B6D00C75BEB /* WebKitAvailability.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebKitAvailability.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</ins><span class="cx">                 5FC7DC26CFE2563200B85AE5 /* JSEventTarget.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = JSEventTarget.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 5FE1D291178FD1F3001AA3C3 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = System/Library/Frameworks/Security.framework; sourceTree = SDKROOT; };
</span><span class="cx">                 626CDE0C1140424C001E5A68 /* SpatialNavigation.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SpatialNavigation.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="lines">@@ -19867,6 +19869,7 @@
</span><span class="cx">                                 1CF6BE130E9BB4670025E1CD /* ObjCNodeFilterCondition.h */,
</span><span class="cx">                                 1CF6BE120E9BB4670025E1CD /* ObjCNodeFilterCondition.mm */,
</span><span class="cx">                                 1CD0B6200AABDB5000D0A3FF /* PublicDOMInterfaces.h */,
</span><ins>+                                5DFEBAB618592B6D00C75BEB /* WebKitAvailability.h */,
</ins><span class="cx">                                 1CAF347E0A6C405200ABE06E /* WebScriptObject.h */,
</span><span class="cx">                                 1CAF347F0A6C405200ABE06E /* WebScriptObject.mm */,
</span><span class="cx">                                 1CAF34800A6C405200ABE06E /* WebScriptObjectPrivate.h */,
</span><span class="lines">@@ -23771,6 +23774,7 @@
</span><span class="cx">                                 1AE2AE5C0A1D26F200B42B25 /* JSHTMLMenuElement.h in Headers */,
</span><span class="cx">                                 A80E7A180A19C3D6007FB8C5 /* JSHTMLMetaElement.h in Headers */,
</span><span class="cx">                                 A7BBE26711AFB3F20005EA03 /* JSHTMLMeterElement.h in Headers */,
</span><ins>+                                5DFEBAB718592B6D00C75BEB /* WebKitAvailability.h in Headers */,
</ins><span class="cx">                                 1AE2AB2A0A1CE63B00B42B25 /* JSHTMLModElement.h in Headers */,
</span><span class="cx">                                 BC305C7A0C076BB300CD20F0 /* JSHTMLObjectElement.h in Headers */,
</span><span class="cx">                                 1A85B1EB0A1B240500D8C87C /* JSHTMLOListElement.h in Headers */,
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsobjcWebKitAvailabilityh"></a>
<div class="addfile"><h4>Added: trunk/Source/WebCore/bindings/objc/WebKitAvailability.h (0 => 161332)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/objc/WebKitAvailability.h                                (rev 0)
+++ trunk/Source/WebCore/bindings/objc/WebKitAvailability.h        2014-01-06 08:15:52 UTC (rev 161332)
</span><span class="lines">@@ -0,0 +1,47 @@
</span><ins>+/*
+ * Copyright (C) 2013 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. ``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
+ * 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.
+ */
+
+#ifndef WebKit_WebKitAvailability_h
+#define WebKit_WebKitAvailability_h
+
+#import &lt;TargetConditionals.h&gt;
+
+#if !TARGET_OS_IPHONE
+
+#define WEBKIT_AVAILABLE_MAC(introduced) NS_AVAILABLE_MAC(introduced)
+#define WEBKIT_CLASS_AVAILABLE_MAC(introduced) NS_CLASS_AVAILABLE_MAC(introduced)
+#define WEBKIT_ENUM_AVAILABLE_MAC(introduced) NS_ENUM_AVAILABLE_MAC(introduced)
+#define WEBKIT_DEPRECATED_MAC(introduced, deprecated) NS_DEPRECATED_MAC(introduced, deprecated)
+
+#else
+
+#define WEBKIT_AVAILABLE_MAC(introduced)
+#define WEBKIT_CLASS_AVAILABLE_MAC(introduced)
+#define WEBKIT_ENUM_AVAILABLE_MAC(introduced)
+#define WEBKIT_DEPRECATED_MAC(introduced, deprecated)
+
+#endif /* !TARGET_OS_IPHONE */
+
+#endif /* WebKit_WebKitAvailability_h */
</ins></span></pre></div>
<a id="trunkSourceWebKitChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/ChangeLog (161331 => 161332)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/ChangeLog        2014-01-06 07:54:02 UTC (rev 161331)
+++ trunk/Source/WebKit/ChangeLog        2014-01-06 08:15:52 UTC (rev 161332)
</span><span class="lines">@@ -1,3 +1,25 @@
</span><ins>+2014-01-06  Mark Rowe  &lt;mrowe@apple.com&gt;
+
+        &lt;https://webkit.org/b/126499&gt; Move WebKit off the legacy WebKit availability macros
+
+        The legacy WebKit availability macros are verbose, confusing, and provide no benefit
+        over using the system availability macros directly. The original vision was that
+        they'd serve a cross-platform purpose but that never came to be.
+
+        Since WebKit1 is API on OS X but SPI on iOS, some indirection is still needed in the
+        availability macros to allow the headers to advertise the API as unavailable on OS X
+        without interfering with the ability to build on iOS. This is achieved by defining
+        WEBKIT-prefixed versions of the Foundation availability macros that are defined to
+        their NS-prefixed equivalents. The installed headers are post-processed to map these
+        macros back to their Foundation equivalents.
+
+        Part of &lt;rdar://problem/15512304&gt;.
+
+        Reviewed by Sam Weinig.
+
+        * WebKit.xcodeproj/project.pbxproj: Change the Postprocess Headers build phase to
+        invoke mac/postprocess-headers.sh.
+
</ins><span class="cx"> 2014-01-05  Martin Robinson  &lt;mrobinson@igalia.com&gt;
</span><span class="cx"> 
</span><span class="cx">         [GTK] [CMake] Ensure that the autotools build and the CMake install the same files
</span></span></pre></div>
<a id="trunkSourceWebKitWebKitxcodeprojprojectpbxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj (161331 => 161332)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj        2014-01-06 07:54:02 UTC (rev 161331)
+++ trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj        2014-01-06 08:15:52 UTC (rev 161332)
</span><span class="lines">@@ -2137,7 +2137,7 @@
</span><span class="cx">                         );
</span><span class="cx">                         runOnlyForDeploymentPostprocessing = 0;
</span><span class="cx">                         shellPath = /bin/sh;
</span><del>-                        shellScript = &quot;postProcessInDirectory() {\n    cd \&quot;$1\&quot;\n\n    if [[ ${PLATFORM_NAME} == iphoneos ]]; then\n        local unifdefOptions=\&quot;-DTARGET_OS_EMBEDDED=1 -DTARGET_OS_IPHONE=1 -DTARGET_IPHONE_SIMULATOR=0\&quot;;\n    elif [[ ${PLATFORM_NAME} == iphonesimulator ]]; then\n        local unifdefOptions=\&quot;-DTARGET_OS_EMBEDDED=0 -DTARGET_OS_IPHONE=1 -DTARGET_IPHONE_SIMULATOR=1\&quot;;\n    else\n        local unifdefOptions=\&quot;-DTARGET_OS_EMBEDDED=0 -DTARGET_OS_IPHONE=0 -DTARGET_IPHONE_SIMULATOR=0\&quot;;\n    fi\n\n    for header in $(find . -name '*.h' -type f); do\n        unifdef -B ${unifdefOptions} -o ${header}.unifdef ${header}\n        case $? in\n        0)\n            rm ${header}.unifdef\n            ;;\n        1)\n            mv ${header}{.unifdef,}\n            ;;\n        *)\n            exit 1\n            ;;\n        esac\n    done\n}\n\npostProcessInDirectory \&quot;${TARGET_BUILD_DIR}/${PUBLIC_HEADERS_FOLDER_PATH}\&quot;\npostProcessInDirectory \&quot;${TARGET_BUILD_DIR}/${PRIVATE_HEADERS_FOLDER_PATH}\&quot;&quot;;
</del><ins>+                        shellScript = &quot;exec ${SRCROOT}/mac/postprocess-headers.sh&quot;;
</ins><span class="cx">                 };
</span><span class="cx">                 A55DEAA516703F9F003DB841 /* Check For Inappropriate Macros in External Headers */ = {
</span><span class="cx">                         isa = PBXShellScriptBuildPhase;
</span></span></pre></div>
<a id="trunkSourceWebKitmacCarbonCarbonUtilsh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/Carbon/CarbonUtils.h (161331 => 161332)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/Carbon/CarbonUtils.h        2014-01-06 07:54:02 UTC (rev 161331)
+++ trunk/Source/WebKit/mac/Carbon/CarbonUtils.h        2014-01-06 08:15:52 UTC (rev 161332)
</span><span class="lines">@@ -33,7 +33,7 @@
</span><span class="cx"> 
</span><span class="cx"> // These functions are only available for 32-bit.
</span><span class="cx"> 
</span><del>-#include &lt;JavaScriptCore/WebKitAvailability.h&gt;
</del><ins>+#include &lt;WebKit/WebKitAvailability.h&gt;
</ins><span class="cx"> 
</span><span class="cx"> #ifdef __OBJC__
</span><span class="cx"> #import &lt;ApplicationServices/ApplicationServices.h&gt;
</span><span class="lines">@@ -45,12 +45,12 @@
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> extern void
</span><del>-WebInitForCarbon(void) AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_4_0;
</del><ins>+WebInitForCarbon(void) CF_DEPRECATED_MAC(10_3, 10_6);
</ins><span class="cx"> 
</span><span class="cx"> #ifdef __OBJC__
</span><span class="cx"> 
</span><span class="cx"> extern CGImageRef
</span><del>-WebConvertNSImageToCGImageRef(NSImage * inImage) AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_4_0;
</del><ins>+WebConvertNSImageToCGImageRef(NSImage * inImage) CF_DEPRECATED_MAC(10_3, 10_6);
</ins><span class="cx"> 
</span><span class="cx"> #endif
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebKitmacCarbonHIWebViewh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/Carbon/HIWebView.h (161331 => 161332)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/Carbon/HIWebView.h        2014-01-06 07:54:02 UTC (rev 161331)
+++ trunk/Source/WebKit/mac/Carbon/HIWebView.h        2014-01-06 08:15:52 UTC (rev 161332)
</span><span class="lines">@@ -33,7 +33,7 @@
</span><span class="cx"> 
</span><span class="cx"> #include &lt;Carbon/Carbon.h&gt;
</span><span class="cx"> 
</span><del>-#include &lt;JavaScriptCore/WebKitAvailability.h&gt;
</del><ins>+#include &lt;WebKit/WebKitAvailability.h&gt;
</ins><span class="cx"> 
</span><span class="cx"> #if PRAGMA_ONCE
</span><span class="cx"> #pragma once
</span><span class="lines">@@ -67,7 +67,7 @@
</span><span class="cx">  *    Non-Carbon CFM:   not available
</span><span class="cx">  */
</span><span class="cx"> extern OSStatus 
</span><del>-HIWebViewCreate(HIViewRef * outControl) AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_4_0;
</del><ins>+HIWebViewCreate(HIViewRef * outControl) CF_DEPRECATED_MAC(10_3, 10_6, &quot;Use WebView instead.&quot;);
</ins><span class="cx"> 
</span><span class="cx"> #ifdef __OBJC__
</span><span class="cx"> 
</span><span class="lines">@@ -91,7 +91,7 @@
</span><span class="cx">  *    Non-Carbon CFM:   not available
</span><span class="cx">  */
</span><span class="cx"> extern WebView *
</span><del>-HIWebViewGetWebView(HIViewRef inView) AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_4_0;
</del><ins>+HIWebViewGetWebView(HIViewRef inView) CF_DEPRECATED_MAC(10_3, 10_6);
</ins><span class="cx"> 
</span><span class="cx"> #endif
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebKitmacChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/ChangeLog (161331 => 161332)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/ChangeLog        2014-01-06 07:54:02 UTC (rev 161331)
+++ trunk/Source/WebKit/mac/ChangeLog        2014-01-06 08:15:52 UTC (rev 161332)
</span><span class="lines">@@ -1,3 +1,36 @@
</span><ins>+2014-01-06  Mark Rowe  &lt;mrowe@apple.com&gt;
+
+        &lt;https://webkit.org/b/126499&gt; Move WebKit off the legacy WebKit availability macros
+
+        The legacy WebKit availability macros are verbose, confusing, and provide no benefit
+        over using the system availability macros directly. The original vision was that
+        they'd serve a cross-platform purpose but that never came to be.
+
+        Since WebKit1 is API on OS X but SPI on iOS, some indirection is still needed in the
+        availability macros to allow the headers to advertise the API as unavailable on OS X
+        without interfering with the ability to build on iOS. This is achieved by defining
+        WEBKIT-prefixed versions of the Foundation availability macros that are defined to
+        their NS-prefixed equivalents. The installed headers are post-processed to map these
+        macros back to their Foundation equivalents.
+
+        Part of &lt;rdar://problem/15512304&gt;.
+
+        The OS X version used in the new availability macros is based on the mapping in
+        JavaScriptCore/WebKitAvailability.h.
+
+        Reviewed by Sam Weinig.
+
+        * Carbon/CarbonUtils.h:
+        * Carbon/HIWebView.h:
+        * MigrateHeaders.make: Migrate WebKitAvailability.h from WebCore as an API header.
+        * Plugins/WebPlugin.h:
+        * Plugins/WebPluginViewFactory.h:
+        * WebView/WebFrameLoadDelegate.h:
+        * WebView/WebResourceLoadDelegatePrivate.h:
+        * WebView/WebUIDelegate.h:
+        * postprocess-headers.sh: Added. Extracted from the Xcode project. Extended to map the
+        WEBKIT-prefixed macros to their NS-prefixed equivalents on OS X and to remove them on iOS.
+
</ins><span class="cx"> 2014-01-04  Zan Dobersek  &lt;zdobersek@igalia.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Explicitly use the std:: nested name specifier when using std::pair, std::make_pair
</span></span></pre></div>
<a id="trunkSourceWebKitmacMigrateHeadersmake"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/MigrateHeaders.make (161331 => 161332)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/MigrateHeaders.make        2014-01-06 07:54:02 UTC (rev 161331)
+++ trunk/Source/WebKit/mac/MigrateHeaders.make        2014-01-06 08:15:52 UTC (rev 161332)
</span><span class="lines">@@ -182,6 +182,7 @@
</span><span class="cx">     $(PUBLIC_HEADERS_DIR)/DOMXPathExpression.h \
</span><span class="cx">     $(PUBLIC_HEADERS_DIR)/DOMXPathNSResolver.h \
</span><span class="cx">     $(PUBLIC_HEADERS_DIR)/DOMXPathResult.h \
</span><ins>+    $(PUBLIC_HEADERS_DIR)/WebKitAvailability.h \
</ins><span class="cx">     $(PUBLIC_HEADERS_DIR)/WebScriptObject.h \
</span><span class="cx">     $(PUBLIC_HEADERS_DIR)/npapi.h \
</span><span class="cx">     $(PUBLIC_HEADERS_DIR)/npfunctions.h \
</span></span></pre></div>
<a id="trunkSourceWebKitmacPluginsWebPluginh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/Plugins/WebPlugin.h (161331 => 161332)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/Plugins/WebPlugin.h        2014-01-06 07:54:02 UTC (rev 161331)
+++ trunk/Source/WebKit/mac/Plugins/WebPlugin.h        2014-01-06 08:15:52 UTC (rev 161332)
</span><span class="lines">@@ -27,7 +27,7 @@
</span><span class="cx">  */
</span><span class="cx"> 
</span><span class="cx"> #import &lt;Foundation/Foundation.h&gt;
</span><del>-#import &lt;JavaScriptCore/WebKitAvailability.h&gt;
</del><ins>+#import &lt;WebKit/WebKitAvailability.h&gt;
</ins><span class="cx"> 
</span><span class="cx"> #if !TARGET_OS_IPHONE
</span><span class="cx"> #import &lt;AppKit/AppKit.h&gt;
</span><span class="lines">@@ -106,7 +106,7 @@
</span><span class="cx">     @discussion This method is only sent to the plug-in if the
</span><span class="cx">     WebPlugInShouldLoadMainResourceKey argument passed to the plug-in was NO.
</span><span class="cx"> */
</span><del>-- (void)webPlugInMainResourceDidReceiveResponse:(NSURLResponse *)response WEBKIT_OBJC_METHOD_ANNOTATION(AVAILABLE_IN_WEBKIT_VERSION_4_0);
</del><ins>+- (void)webPlugInMainResourceDidReceiveResponse:(NSURLResponse *)response WEBKIT_AVAILABLE_MAC(10_6);
</ins><span class="cx"> 
</span><span class="cx"> /*!
</span><span class="cx">     @method webPlugInMainResourceDidReceiveData:
</span><span class="lines">@@ -115,7 +115,7 @@
</span><span class="cx">     @discussion This method is only sent to the plug-in if the
</span><span class="cx">     WebPlugInShouldLoadMainResourceKey argument passed to the plug-in was NO.
</span><span class="cx"> */
</span><del>-- (void)webPlugInMainResourceDidReceiveData:(NSData *)data WEBKIT_OBJC_METHOD_ANNOTATION(AVAILABLE_IN_WEBKIT_VERSION_4_0);
</del><ins>+- (void)webPlugInMainResourceDidReceiveData:(NSData *)data WEBKIT_AVAILABLE_MAC(10_6);
</ins><span class="cx"> 
</span><span class="cx"> /*!
</span><span class="cx">     @method webPlugInMainResourceDidFailWithError:
</span><span class="lines">@@ -124,7 +124,7 @@
</span><span class="cx">     @discussion This method is only sent to the plug-in if the
</span><span class="cx">     WebPlugInShouldLoadMainResourceKey argument passed to the plug-in was NO.
</span><span class="cx"> */
</span><del>-- (void)webPlugInMainResourceDidFailWithError:(NSError *)error WEBKIT_OBJC_METHOD_ANNOTATION(AVAILABLE_IN_WEBKIT_VERSION_4_0);
</del><ins>+- (void)webPlugInMainResourceDidFailWithError:(NSError *)error WEBKIT_AVAILABLE_MAC(10_6);
</ins><span class="cx"> 
</span><span class="cx"> /*!
</span><span class="cx">     @method webPlugInMainResourceDidFinishLoading
</span><span class="lines">@@ -133,6 +133,6 @@
</span><span class="cx">     @discussion This method is only sent to the plug-in if the
</span><span class="cx">     WebPlugInShouldLoadMainResourceKey argument passed to the plug-in was NO.
</span><span class="cx"> */
</span><del>-- (void)webPlugInMainResourceDidFinishLoading WEBKIT_OBJC_METHOD_ANNOTATION(AVAILABLE_IN_WEBKIT_VERSION_4_0);
</del><ins>+- (void)webPlugInMainResourceDidFinishLoading WEBKIT_AVAILABLE_MAC(10_6);
</ins><span class="cx"> 
</span><span class="cx"> @end
</span></span></pre></div>
<a id="trunkSourceWebKitmacPluginsWebPluginViewFactoryh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/Plugins/WebPluginViewFactory.h (161331 => 161332)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/Plugins/WebPluginViewFactory.h        2014-01-06 07:54:02 UTC (rev 161331)
+++ trunk/Source/WebKit/mac/Plugins/WebPluginViewFactory.h        2014-01-06 08:15:52 UTC (rev 161332)
</span><span class="lines">@@ -27,7 +27,7 @@
</span><span class="cx">  */
</span><span class="cx"> 
</span><span class="cx"> #import &lt;Foundation/Foundation.h&gt;
</span><del>-#import &lt;JavaScriptCore/WebKitAvailability.h&gt;
</del><ins>+#import &lt;WebKit/WebKitAvailability.h&gt;
</ins><span class="cx"> 
</span><span class="cx"> #if !TARGET_OS_IPHONE
</span><span class="cx"> #import &lt;AppKit/AppKit.h&gt;
</span><span class="lines">@@ -70,7 +70,7 @@
</span><span class="cx">  For compatibility with older versions of WebKit, the plug-in should assume that the value for
</span><span class="cx">  WebPlugInShouldLoadMainResourceKey is NO if it is absent from the arguments dictionary.
</span><span class="cx">  */
</span><del>-extern NSString *WebPlugInShouldLoadMainResourceKey AVAILABLE_IN_WEBKIT_VERSION_4_0;
</del><ins>+extern NSString *WebPlugInShouldLoadMainResourceKey WEBKIT_AVAILABLE_MAC(10_6);
</ins><span class="cx"> 
</span><span class="cx"> /*!
</span><span class="cx">     @protocol WebPlugInViewFactory
</span></span></pre></div>
<a id="trunkSourceWebKitmacWebViewWebFrameLoadDelegateh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/WebView/WebFrameLoadDelegate.h (161331 => 161332)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/WebView/WebFrameLoadDelegate.h        2014-01-06 07:54:02 UTC (rev 161331)
+++ trunk/Source/WebKit/mac/WebView/WebFrameLoadDelegate.h        2014-01-06 08:15:52 UTC (rev 161332)
</span><span class="lines">@@ -28,7 +28,7 @@
</span><span class="cx"> 
</span><span class="cx"> #import &lt;Foundation/Foundation.h&gt;
</span><span class="cx"> #import &lt;JavaScriptCore/JSBase.h&gt;
</span><del>-#import &lt;JavaScriptCore/WebKitAvailability.h&gt;
</del><ins>+#import &lt;WebKit/WebKitAvailability.h&gt;
</ins><span class="cx"> 
</span><span class="cx"> #if !TARGET_OS_IPHONE
</span><span class="cx"> #import &lt;AppKit/AppKit.h&gt;
</span><span class="lines">@@ -203,7 +203,7 @@
</span><span class="cx">     @discussion This method is deprecated. Consider using webView:didClearWindowObject:forFrame:
</span><span class="cx">     instead.
</span><span class="cx"> */
</span><del>-- (void)webView:(WebView *)webView windowScriptObjectAvailable:(WebScriptObject *)windowScriptObject WEBKIT_OBJC_METHOD_ANNOTATION(AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0);
</del><ins>+- (void)webView:(WebView *)webView windowScriptObjectAvailable:(WebScriptObject *)windowScriptObject WEBKIT_DEPRECATED_MAC(10_4, 10_5);
</ins><span class="cx"> 
</span><span class="cx"> #if JSC_OBJC_API_ENABLED
</span><span class="cx"> /*!
</span></span></pre></div>
<a id="trunkSourceWebKitmacWebViewWebResourceLoadDelegatePrivateh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/WebView/WebResourceLoadDelegatePrivate.h (161331 => 161332)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/WebView/WebResourceLoadDelegatePrivate.h        2014-01-06 07:54:02 UTC (rev 161331)
+++ trunk/Source/WebKit/mac/WebView/WebResourceLoadDelegatePrivate.h        2014-01-06 08:15:52 UTC (rev 161332)
</span><span class="lines">@@ -37,15 +37,13 @@
</span><span class="cx"> - (void)webView:(WebView *)webView didLoadResourceFromMemoryCache:(NSURLRequest *)request response:(NSURLResponse *)response length:(NSInteger)length fromDataSource:(WebDataSource *)dataSource;
</span><span class="cx"> - (BOOL)webView:(WebView *)webView resource:(id)identifier shouldUseCredentialStorageForDataSource:(WebDataSource *)dataSource;
</span><span class="cx"> 
</span><del>-#if WEBKIT_VERSION_MAX_ALLOWED &gt; WEBKIT_VERSION_4_0
</del><span class="cx"> /*!
</span><span class="cx">  @method webView:resource:canAuthenticateAgainstProtectionSpace:forDataSource:
</span><span class="cx">  @abstract Inspect an NSURLProtectionSpace before an authentication attempt is made. Only used on Snow Leopard or newer.
</span><span class="cx">  @param protectionSpace an NSURLProtectionSpace that will be used to generate an authentication challenge
</span><span class="cx">  @result Return YES if the resource load delegate is prepared to respond to an authentication challenge generated with protectionSpace, NO otherwise
</span><span class="cx">  */
</span><del>-- (BOOL)webView:(WebView *)sender resource:(id)identifier canAuthenticateAgainstProtectionSpace:(NSURLProtectionSpace *)protectionSpace forDataSource:(WebDataSource *)dataSource;
-#endif
</del><ins>+- (BOOL)webView:(WebView *)sender resource:(id)identifier canAuthenticateAgainstProtectionSpace:(NSURLProtectionSpace *)protectionSpace forDataSource:(WebDataSource *)dataSource WEBKIT_AVAILABLE_MAC(10_6);
</ins><span class="cx"> 
</span><span class="cx"> /*!
</span><span class="cx">  @method webView:shouldPaintBrokenImageForURL:(NSURL*)imageURL
</span></span></pre></div>
<a id="trunkSourceWebKitmacWebViewWebUIDelegateh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/WebView/WebUIDelegate.h (161331 => 161332)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/WebView/WebUIDelegate.h        2014-01-06 07:54:02 UTC (rev 161331)
+++ trunk/Source/WebKit/mac/WebView/WebUIDelegate.h        2014-01-06 08:15:52 UTC (rev 161332)
</span><span class="lines">@@ -28,7 +28,7 @@
</span><span class="cx"> 
</span><span class="cx"> #import &lt;Foundation/Foundation.h&gt;
</span><span class="cx"> #import &lt;Foundation/NSURLRequest.h&gt;
</span><del>-#import &lt;JavaScriptCore/WebKitAvailability.h&gt;
</del><ins>+#import &lt;WebKit/WebKitAvailability.h&gt;
</ins><span class="cx"> 
</span><span class="cx"> #if !TARGET_OS_IPHONE
</span><span class="cx"> #import &lt;AppKit/AppKit.h&gt;
</span><span class="lines">@@ -133,7 +133,7 @@
</span><span class="cx">     @abstract Call this method to return an array of filenames from the file open panel.
</span><span class="cx">     @param fileNames
</span><span class="cx"> */
</span><del>-- (void)chooseFilenames:(NSArray *)fileNames WEBKIT_OBJC_METHOD_ANNOTATION(AVAILABLE_IN_WEBKIT_VERSION_4_0);
</del><ins>+- (void)chooseFilenames:(NSArray *)fileNames WEBKIT_AVAILABLE_MAC(10_6);
</ins><span class="cx"> 
</span><span class="cx"> /*!
</span><span class="cx">     @method cancel
</span><span class="lines">@@ -426,7 +426,7 @@
</span><span class="cx">     @discussion This method is passed a callback object instead of giving a return
</span><span class="cx">     value so that it can be handled with a sheet.
</span><span class="cx"> */
</span><del>-- (void)webView:(WebView *)sender runOpenPanelForFileButtonWithResultListener:(id&lt;WebOpenPanelResultListener&gt;)resultListener allowMultipleFiles:(BOOL)allowMultipleFiles WEBKIT_OBJC_METHOD_ANNOTATION(AVAILABLE_IN_WEBKIT_VERSION_4_0);
</del><ins>+- (void)webView:(WebView *)sender runOpenPanelForFileButtonWithResultListener:(id&lt;WebOpenPanelResultListener&gt;)resultListener allowMultipleFiles:(BOOL)allowMultipleFiles WEBKIT_AVAILABLE_MAC(10_6);
</ins><span class="cx"> 
</span><span class="cx"> /*!
</span><span class="cx">     @method webView:mouseDidMoveOverElement:modifierFlags:
</span><span class="lines">@@ -573,12 +573,12 @@
</span><span class="cx"> 
</span><span class="cx"> // The following delegate methods are deprecated in favor of the ones above that specify
</span><span class="cx"> // the WebFrame whose JavaScript initiated this call.
</span><del>-- (void)webView:(WebView *)sender runJavaScriptAlertPanelWithMessage:(NSString *)message WEBKIT_OBJC_METHOD_ANNOTATION(AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0);
-- (BOOL)webView:(WebView *)sender runJavaScriptConfirmPanelWithMessage:(NSString *)message WEBKIT_OBJC_METHOD_ANNOTATION(AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0);
-- (NSString *)webView:(WebView *)sender runJavaScriptTextInputPanelWithPrompt:(NSString *)prompt defaultText:(NSString *)defaultText WEBKIT_OBJC_METHOD_ANNOTATION(AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0);
</del><ins>+- (void)webView:(WebView *)sender runJavaScriptAlertPanelWithMessage:(NSString *)message WEBKIT_DEPRECATED_MAC(10_3, 10_5);
+- (BOOL)webView:(WebView *)sender runJavaScriptConfirmPanelWithMessage:(NSString *)message WEBKIT_DEPRECATED_MAC(10_3, 10_5);
+- (NSString *)webView:(WebView *)sender runJavaScriptTextInputPanelWithPrompt:(NSString *)prompt defaultText:(NSString *)defaultText WEBKIT_DEPRECATED_MAC(10_3, 10_5);
</ins><span class="cx"> 
</span><span class="cx"> // The following delegate methods are deprecated. Content rect calculations are now done automatically.
</span><del>-- (void)webView:(WebView *)sender setContentRect:(NSRect)frame WEBKIT_OBJC_METHOD_ANNOTATION(AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0);
-- (NSRect)webViewContentRect:(WebView *)sender WEBKIT_OBJC_METHOD_ANNOTATION(AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0);
</del><ins>+- (void)webView:(WebView *)sender setContentRect:(NSRect)frame WEBKIT_DEPRECATED_MAC(10_3, 10_5);
+- (NSRect)webViewContentRect:(WebView *)sender WEBKIT_DEPRECATED_MAC(10_3, 10_5);
</ins><span class="cx"> 
</span><span class="cx"> @end
</span></span></pre></div>
<a id="trunkSourceWebKitmacpostprocessheaderssh"></a>
<div class="addfile"><h4>Added: trunk/Source/WebKit/mac/postprocess-headers.sh (0 => 161332)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/postprocess-headers.sh                                (rev 0)
+++ trunk/Source/WebKit/mac/postprocess-headers.sh        2014-01-06 08:15:52 UTC (rev 161332)
</span><span class="lines">@@ -0,0 +1,51 @@
</span><ins>+#!/bin/sh
+
+postProcessInDirectory()
+{
+    cd &quot;$1&quot;
+
+    local unifdefOptions sedExpression
+
+    if [[ ${PLATFORM_NAME} == iphoneos ]]; then
+        unifdefOptions=&quot;-DTARGET_OS_EMBEDDED=1 -DTARGET_OS_IPHONE=1 -DTARGET_IPHONE_SIMULATOR=0&quot;;
+    elif [[ ${PLATFORM_NAME} == iphonesimulator ]]; then
+        unifdefOptions=&quot;-DTARGET_OS_EMBEDDED=0 -DTARGET_OS_IPHONE=1 -DTARGET_IPHONE_SIMULATOR=1&quot;;
+    else
+        unifdefOptions=&quot;-DTARGET_OS_EMBEDDED=0 -DTARGET_OS_IPHONE=0 -DTARGET_IPHONE_SIMULATOR=0&quot;;
+    fi
+
+    if [[ ${PLATFORM_NAME} == iphone* ]]; then
+        sedExpression='s/ *WEBKIT_((CLASS_|ENUM_)?AVAILABLE|DEPRECATED)_MAC\([^)]+\)//g';
+    else
+        sedExpression='s/WEBKIT_((CLASS_|ENUM_)?AVAILABLE|DEPRECATED)/NS_\1/g';
+    fi
+
+    for header in $(find . -name '*.h' -type f); do
+        unifdef -B ${unifdefOptions} -o ${header}.unifdef ${header}
+        case $? in
+        0)
+            rm ${header}.unifdef
+            ;;
+        1)
+            mv ${header}{.unifdef,}
+            ;;
+        *)
+            exit 1
+            ;;
+        esac
+
+        if [[ ${header} == &quot;./WebKitAvailability.h&quot; ]]; then
+            continue
+        fi
+
+        sed -E -e &quot;${sedExpression}&quot; &lt; ${header} &gt; ${header}.sed
+        if cmp ${header} ${header}.sed; then
+            rm ${header}.sed
+        else
+            mv ${header}.sed ${header}
+        fi
+    done
+}
+
+postProcessInDirectory &quot;${TARGET_BUILD_DIR}/${PUBLIC_HEADERS_FOLDER_PATH}&quot;
+postProcessInDirectory &quot;${TARGET_BUILD_DIR}/${PRIVATE_HEADERS_FOLDER_PATH}&quot;
</ins><span class="cx">Property changes on: trunk/Source/WebKit/mac/postprocess-headers.sh
</span><span class="cx">___________________________________________________________________
</span></span></pre></div>
<a id="svnexecutable"></a>
<div class="addfile"><h4>Added: svn:executable</h4></div>
</div>

</body>
</html>