Update Xcode requirement and add instructions to build, run, and debug WebKit for...
authordbates@webkit.org <dbates@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 27 Jan 2015 17:00:08 +0000 (17:00 +0000)
committerdbates@webkit.org <dbates@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 27 Jan 2015 17:00:08 +0000 (17:00 +0000)
Reviewed by David Kilzer.

* building/build.html: Added instructions to build WebKit for iOS Simulator.
* building/debug.html: Added some instructions to debug the UIProcess and WebProcess
in the iOS Simulator using command line tools. We should look to add Xcode instructions
and simplify these steps once we teach debug-safari about the iOS Simulator.
* building/run.html: Added remark to run Safari in the iOS Simulator.
* building/tools.html: Require Xcode 6.1.1 (for the iOS 8.1 SDK) to build for iOS Simulator.
* css/main.css: Define the .ios-instructions class with the same style as other .*-instructions classes.

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

Websites/webkit.org/ChangeLog
Websites/webkit.org/building/build.html
Websites/webkit.org/building/debug.html
Websites/webkit.org/building/run.html
Websites/webkit.org/building/tools.html
Websites/webkit.org/css/main.css

index 1046301..1cee877 100644 (file)
@@ -1,3 +1,17 @@
+2015-01-27  Daniel Bates  <dabates@apple.com>
+
+        Update Xcode requirement and add instructions to build, run, and debug WebKit for iOS Simulator
+
+        Reviewed by David Kilzer.
+
+        * building/build.html: Added instructions to build WebKit for iOS Simulator.
+        * building/debug.html: Added some instructions to debug the UIProcess and WebProcess
+        in the iOS Simulator using command line tools. We should look to add Xcode instructions
+        and simplify these steps once we teach debug-safari about the iOS Simulator.
+        * building/run.html: Added remark to run Safari in the iOS Simulator.
+        * building/tools.html: Require Xcode 6.1.1 (for the iOS 8.1 SDK) to build for iOS Simulator.
+        * css/main.css: Define the .ios-instructions class with the same style as other .*-instructions classes.
+
 2014-09-27  Dan Bernstein  <mitz@apple.com>
 
         WebKit top of tree sources won't build in 10.9 w/ Xcode 6.0.1
index 2e5704f..ab300eb 100644 (file)
@@ -13,6 +13,14 @@ installed</a> and that you have a copy of the <a href="checkout.html">WebKit sou
 <p>Building on Windows requires a few more steps. For details, see <a href="http://trac.webkit.org/wiki/BuildingOnWindows">http://trac.webkit.org/wiki/BuildingOnWindows</a>.</p>
 </div>
 
+<div class="ios-instructions">
+<h4>iOS Simulator</h4>
+<p>The first time after you install a new Xcode, you will need to run <code>sudo Tools/Scripts/configure-xcode-for-ios-development</code> in the Terminal to enable Xcode to build command line tools for iOS Simulator. Otherwise you will see the error message:</p>
+<p class="code">target specifies product type 'com.apple.product-type.tool', but there's no such product type for the 'iphonesimulator' platform.</p>
+<p>when building target JSCLLIntOffsetsExtractor of project JavaScriptCore.</p>
+<p>Then follow the instructions below, passing the <code>--ios-simulator</code> option, to build WebKit for your first build and all subsequent builds.</p>
+</div>
+
 <ol>
 <li><p>Run the <code>build-webkit</code> <a href="/coding/scripts.html">script</a>
 to build WebKit.</p>
index 24b1a87..7cc3782 100644 (file)
@@ -4,14 +4,25 @@
 ?>
 
 <div class="mac-instructions">
-<h2>Debugging on OS X</h2>
+<h2>Debugging on OS X and iOS Simulator</h2>
 <p>To debug from within Xcode, you can use the WebKit workspace. Ensure that the Products and Intermediates locations for the workspace match those used by <code>build-webkit</code> by choosing File > Workspace Settings and clicking the Advanced button, selecting Custom, Relative to Workspace, and entering WebKitBuild both for Products and for Intermediates. Note that if you have specified a custom build location in Xcode preferences, then you don&rsquo;t need to do this.</p>
-<h3>Internal Debug Menu</h3>
+<h3>iOS Simulator</h3>
+<h4>Debugging UIProcess or WebProcess</h4>
+<ol>
+    <li><p><a href="run.html">Run Safari</a> with the WebKit version you built.</p></li>
+    <li>
+        <p>Execute <code>xcrun --sdk iphonesimulator lldb --attach-name MobileSafari</code> in the Terminal to debug the UIProcess.</p>
+        <p>Use <code>com.apple.WebKit.WebContent.Development</code> for the value of <code>--attach-name</code> to debug the WebProcess:</p>
+        <p class="code">xcrun --sdk iphonesimulator lldb --attach-name com.apple.WebKit.WebContent.Development</p>
+    </li>
+</ol>
+<h3>OS X</h3>
+<h4>Internal Debug Menu</h4>
 There is a Debug menu that can be enabled in Safari, and it supplies many useful options to help with debugging. To enable it, run the following in your terminal:
 <code>defaults write com.apple.Safari IncludeInternalDebugMenu 1</code>
-<h3>Debugging UIProcess</h3>
+<h4>Debugging UIProcess</h4>
 <p>Follow the instructions on the <a href="debug-mac-uiprocess.html">debugging UIProcess</a> page.</p>
-<h3>Debugging WebProcess</h3>
+<h4>Debugging WebProcess</h4>
 <p>Current versions of Safari use a process for each tab, so it is easy to end up with a new WebProcess and have to reattach. If you enable the Internal Debug Menu as outlined above, you can have Safari display the Process ID of the WebProcess for each tab. Simply go to Debug &gt; Miscellaneous Flags and select Show Web Process IDs In Page Titles. You should now see something like <code>[WP 60737]</code> in the title of every web page you navigate to, and 60737 is the Process ID of the WebProcess backing that tab.</p>
 <ul>
     <li>
index 3a2077e..a142c50 100644 (file)
@@ -4,6 +4,11 @@
 ?>
 
 <h2>Running WebKit</h2>
+<div class="ios-instructions">
+<h4>iOS Simulator</h4>
+<p>Follow the instructions below, passing the <code>--ios-simulator</code> option.</p>
+</div>
+
 <ol>
 <li><p>Execute the <code>run-safari</code> <a href="/coding/scripts.html">script</a>
 to run Safari with the WebKit version you <a href="build.html">built</a>.</p>
index ab39966..86533e6 100644 (file)
@@ -4,10 +4,10 @@ include("../header.inc");
 ?>
 <h2>Installing the Developer Tools</h2>
 <div class="mac-instructions">
-<h4>OS X</h4>
+<h4>OS X or iOS Simulator</h4>
 <ol>
 <li><p>Install Xcode</p>
-<p>Get Xcode from <a target="installtools" href="https://developer.apple.com/downloads">https://developer.apple.com/downloads</a>. Xcode 5.0 or later is required to build.</p>
+<p>Get Xcode from <a target="installtools" href="https://developer.apple.com/downloads">https://developer.apple.com/downloads</a>. To build WebKit for OS X, Xcode 5.1.1 or later is required. To build WebKit for iOS Simulator, Xcode 6.1.1 is required.</p>
 <li><p>Install the Xcode Command Line Tools by running <code>xcode-select --install</code> in the Terminal.</p>
 <li><p>Install Java for Mac OS X Developer Package</p>
 <p>Download and install the latest OS-appropriate &ldquo;Java for Mac OS X Developer Package&rdquo; from <a target="installtools" href="https://developer.apple.com/downloads">https://developer.apple.com/downloads</a>.</p>
index 66c6c7d..e441a5b 100644 (file)
@@ -204,7 +204,7 @@ dt {
     line-height: normal;
 }
 
-.mac-instructions, .unix-instructions, .windows-instructions, .gtk-instructions, .efl-instructions {
+.mac-instructions, .ios-instructions, .unix-instructions, .windows-instructions, .gtk-instructions, .efl-instructions {
     border: 1px solid black;
     background-color: white;
     -webkit-border-radius: 5px;