aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Mike Klein <mtklein@chromium.org>2017-02-03 13:13:29 -0500
committerGravatar Mike Klein <mtklein@chromium.org>2017-02-06 14:38:25 +0000
commitc34b235871dacd0f3b840508dbbc5555ec9ede0d (patch)
tree819290594a0eda313cba8b2993686c8de66a2c09
parent0312a0cec95a9002f27ba88f7d24de25111a4e2d (diff)
Start updating iOS docs.
This removes the docs for the old GYP-based local development and replaces them with ones for GN-based development. I have not yet updated the docs for iOS on the bots... still in flux. Change-Id: I1f9c5c1a3331ae192dc08c614ef7da26924f808e Reviewed-on: https://skia-review.googlesource.com/8002 Reviewed-by: Stephan Altmueller <stephana@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
-rw-r--r--site/user/build.md17
-rw-r--r--site/user/quick/index.md2
-rw-r--r--site/user/quick/ios.md131
3 files changed, 17 insertions, 133 deletions
diff --git a/site/user/build.md b/site/user/build.md
index 9e173549b8..7828897f4c 100644
--- a/site/user/build.md
+++ b/site/user/build.md
@@ -84,6 +84,23 @@ Mac
Mac users may want to pass `--ide=xcode` to `bin/gn gen` to generate an Xcode project.
+iOS
+---
+
+Googlers who want to sign and run iOS test binaries can do so by running something like
+
+ python gn/package_ios.py out/Debug/dm
+ python gn/package_ios.py out/Release/nanobench
+
+These commands will create and sign `dm.app` or `nanobench.app` packages you
+can push to iOS devices registered for Google development. `ios-deploy` makes
+installing and running these packages easy:
+
+ ios-deploy -b out/Debug/dm.app -d --args "--match foo"
+
+If you find yourself missing a Google signing identity or provisioning profile,
+you'll want to have a read through go/appledev.
+
Windows
-------
diff --git a/site/user/quick/index.md b/site/user/quick/index.md
index c6c497316b..35c9e5a2c8 100644
--- a/site/user/quick/index.md
+++ b/site/user/quick/index.md
@@ -3,5 +3,3 @@ Quick Start Guides (Deprecated)
This section is obsolete and will be removed soon.
See [How to build Skia](/user/build) for the best way to build Skia.
-
-Legacy guidelines (soon be removed): [iOS](/user/quick/ios)
diff --git a/site/user/quick/ios.md b/site/user/quick/ios.md
deleted file mode 100644
index 44534ac87f..0000000000
--- a/site/user/quick/ios.md
+++ /dev/null
@@ -1,131 +0,0 @@
-iOS
-===
-
-These instructions are historical and not explictly supported. There is
-currently no explictly supported way to build Skia for iOS.
-
-The following has been tested on MacOS Yosemite with Xcode version 6.3.
-
-Quickstart
-----------
-
-First, install [XCode](https://developer.apple.com/xcode/).
-
-<!--?prettify lang=sh?-->
-
- # Install depot tools.
- git clone 'https://chromium.googlesource.com/chromium/tools/depot_tools.git'
- export PATH="${PWD}/depot_tools:${PATH}"
-
- # Get Skia.
- git clone 'https://skia.googlesource.com/skia'
- cd skia
-
- # Create the project files.
- python tools/git-sync-deps
- GYP_DEFINES="skia_os='ios' skia_arch_type='arm' armv7=1 arm_neon=0" ./gyp_skia
- # Build and run SampleApp.
- xed out/gyp/SampleApp.xcodeproj # opens the SampleApp project in Xcode
-
-Prerequisites
--------------
-
-Make sure the following have been installed:
-
- * XCode (Apple's development environment): required
- * publicly available at http://developer.apple.com/xcode/
- * add the optional Unix Tools to the install so you get the make command line tool.
- * Chromium depot_tools: required to download the source and dependencies
- * http://www.chromium.org/developers/how-tos/depottools
- * You will need an Apple developer account if you wish to run on an iOS device.
- * A tool such as [ios-deploy](https://github.com/phonegap/ios-deploy) is also useful for pulling output from an iOS device.
-
-Check out the source code
--------------------------
-
-See the instructions [here](../download).
-
-Generate XCode projects
------------------------
-
-We use the open-source gyp tool to generate XCode projects (and analogous
-build scripts on other platforms) from our multiplatform "gyp" files.
-
-Before building, make sure that gyp knows to create an XCode project or ninja
-build files. If you leave GYP_GENERATORS undefined it will assume the
-following default:
-
- GYP_GENERATORS="ninja,xcode"
-
-Or you can set it to `xcode` alone, if you like.
-
-You can then generate the Xcode projects by running:
-
- python tools/git-sync-deps
- GYP_DEFINES="skia_os='ios' skia_arch_type='arm' armv7=1 arm_neon=0" ./gyp_skia
-
-Alternatively, you can do:
-
- python tools/git-sync-deps
- export GYP_DEFINES="skia_os='ios' skia_arch_type='arm' armv7=1 arm_neon=0"
- ./gyp_skia
-
-Build and run tests
--------------------
-
-The 'dm' test program is wrapped in an app called iOSShell. The project for iOSShell is at out/gyp/iOSShell.xcodeproj.
-Running this app with the flag '--dm' will run unit tests and golden master images. Other arguments to the standard 'dm'
-test program can also be passed in.
-
-To launch the iOS app on a device from the command line you can use a tool such as [ios-deploy](https://github.com/phonegap/ios-deploy):
-
- xcodebuild -project out/gyp/iOSShell.xcodeproj -configuration Debug
- ios-deploy --bundle xcodebuild/Debug-iphoneos/iOSShell.app -I -d --args "--dm <dm_args>"
-
-The usual mode you want for testing is Debug mode (SK_DEBUG is defined, and
-debug symbols are included in the binary). If you would like to build the
-Release version instead:
-
- xcodebuild -project out/gyp/iOSShell.xcodeproj -configuration Release
- ios-deploy --bundle xcodebuild/Release-iphoneos/iOSShell.app -I -d --args "--dm <dm_args>"
-
-Build and run nanobench (performance tests)
--------------------------------------------
-
-The 'nanobench' test program is also wrapped in iOSShell.app. Passing in the flag '--nanobench' will run these tests.
-
-Here's an example of running nanobench from the command line. We will build with the "Release" configuration, since we are running performance tests.
-
- xcodebuild --project out/gyp/iOSShell.xcodeproj -configuration Release
- ios-deploy --bundle xcodebuild/Release-iphoneos/iOSShell.app -I -d --args "--nanobench <nanobench_args>"
-
-Build and run SampleApp in the XCode IDE
-----------------------------------------
-
- * Run `git-sync-deps` and `gyp_skia` as described above.
- * In the Finder, navigate to $SKIA_INSTALLDIR/trunk/out/gyp
- * Double-click SampleApp.xcodeproj ; this will launch XCode and open the SampleApp project
- * Make sure the SampleApp target is selected, and choose an iOS device to run on
- * Click the “Build and Run” button in the top toolbar
- * Once the build is complete, launching the app will display a window with lots of shaded text examples. On the upper left there is a drop down
-menu that allows you to cycle through different test pages. On the upper right there is a dialog with a set of options, including different
-rendering methods for each test page.
-
-Provisioning
-------------
-
-To run the Skia apps on an iOS device rather than using the simulator, you will need a developer account and a provisioning profile. See
-[Launching Your App on Devices](https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/LaunchingYourApponDevices/LaunchingYourApponDevices.html) for more information.
-
-Managing App Data
------------------
-By default, the iOS apps will look for resource files in the Documents/resources folder of the app and write any output files to Documents/. To upload resources
-so that the app can read them you can use a tool such as [ios-deploy](https://github.com/phonegap/ios-deploy). For example:
-
- ios-deploy --bundle_id 'com.google.SkiaSampleApp' --upload resources/baby_tux.png --to Documents/resources/baby_tux.png
-
-You can use the same tool to download log files and golden master (GM) images:
-
- ios-deploy --bundle_id 'com.google.iOSShell' --download=/Documents --to ./my_download_location
-
-Alternatively, you can put resources and other files in the bundle of the application. In this case, you'll need to run the app with the option '--resourcePath .'