| OLD | NEW |
| 1 Mac OS X | 1 Mac OS X |
| 2 ======== | 2 ======== |
| 3 | 3 |
| 4 Quickstart | 4 Quickstart |
| 5 ---------- | 5 ---------- |
| 6 | 6 |
| 7 1. Install [XCode](http://developer.apple.com/xcode/). | 7 First, install [XCode](https://developer.apple.com/xcode/). |
| 8 | 8 |
| 9 2. Install depot tools. | 9 <!--?prettify lang=sh?--> |
| 10 | 10 |
| 11 <!--?prettify lang=sh?--> | 11 # Install depot tools. |
| 12 git clone 'https://chromium.googlesource.com/chromium/tools/depot_tools.git' |
| 13 export PATH="${PWD}/depot_tools:${PATH}" |
| 12 | 14 |
| 13 git clone 'https://chromium.googlesource.com/chromium/tools/depot_tools.
git' | 15 # Get Skia. |
| 14 export PATH="${PWD}/depot_tools:${PATH}" | 16 git clone 'https://skia.googlesource.com/skia' |
| 17 cd skia |
| 15 | 18 |
| 16 3. Get Skia. | 19 # Build. |
| 20 bin/sync-and-gyp |
| 21 ninja -C out/Debug |
| 17 | 22 |
| 18 <!--?prettify lang=sh?--> | 23 # Run DM (the Skia test app) and SampleApp. |
| 19 | 24 out/Debug/dm |
| 20 git clone 'https://skia.googlesource.com/skia' | 25 out/Debug/SampleApp |
| 21 cd skia | |
| 22 | |
| 23 4. Build. | |
| 24 | |
| 25 <!--?prettify lang=sh?--> | |
| 26 | |
| 27 bin/sync-and-gyp && ninja -C out/Debug | |
| 28 | |
| 29 5. Run DM (the Skia test app) and SampleApp. | |
| 30 | |
| 31 <!--?prettify lang=sh?--> | |
| 32 | |
| 33 out/Debug/dm | |
| 34 open out/Debug/SampleApp.app | |
| 35 | 26 |
| 36 Prerequisites | 27 Prerequisites |
| 37 ------------- | 28 ------------- |
| 38 | 29 |
| 39 Make sure the following have been installed: | 30 Make sure the following have been installed: |
| 40 | 31 |
| 41 * XCode (Apple's development environment): required | 32 * XCode (Apple's development environment): required |
| 42 * publicly available at http://developer.apple.com/xcode/ | 33 * publicly available at http://developer.apple.com/xcode/ |
| 43 * add the optional Unix Tools to the install so you get the make command lin
e tool. | 34 * add the optional Unix Tools to the install so you get the make command lin
e tool. |
| 44 * Chromium depot_tools: required to download the source and dependencies | 35 * Chromium depot_tools: required to download the source and dependencies |
| 45 * http://www.chromium.org/developers/how-tos/depottools | 36 * http://www.chromium.org/developers/how-tos/depottools |
| 46 | 37 |
| 47 Check out the source code | 38 Check out the source code |
| 48 ------------------------- | 39 ------------------------- |
| 49 | 40 |
| 50 See the instructions [here](../download). | 41 Follow the instructions [here](../download) for downloading the Skia source. |
| 51 | 42 |
| 52 Generate XCode projects | 43 Generate XCode projects |
| 53 ----------------------- | 44 ----------------------- |
| 54 | 45 |
| 55 We use the open-source gyp tool to generate XCode projects (and analogous | 46 We use the open-source gyp tool to generate XCode projects (and analogous |
| 56 build scripts on other platforms) from our multiplatform "gyp" files. | 47 build scripts on other platforms) from our multiplatform "gyp" files. |
| 57 | 48 |
| 49 Two Gyp generators are used on Mac OS: |
| 50 |
| 51 * `ninja` - Run ninja yourself, without XCode project files, |
| 52 |
| 53 * `xcode` - Generate a XCode project |
| 54 |
| 55 To choose which ones to use, set the `GYP_GENERATORS` environment |
| 56 variable to a comma-delimited list of generators before running |
| 57 sync-and-gyp. The default value for `GYP_GENERATORS` is |
| 58 `ninja,xcode`. For example to enable |
| 59 |
| 60 |
| 61 |
| 58 Before building, make sure that gyp knows to create an XCode project or ninja | 62 Before building, make sure that gyp knows to create an XCode project or ninja |
| 59 build files. If you leave GYP_GENERATORS undefined it will assume the | 63 build files. If you leave GYP_GENERATORS undefined it will assume the |
| 60 following default: | 64 following default: |
| 61 | 65 |
| 62 GYP_GENERATORS="ninja,xcode" | 66 GYP_GENERATORS="ninja,xcode" |
| 63 | 67 |
| 64 Or you can set it to `ninja` or `xcode` alone, if you like. | 68 Or you can set it to `ninja` or `xcode` alone, if you like. |
| 65 | 69 |
| 66 You can then generate the Xcode projects and ninja build files by running: | 70 You can then generate the Xcode projects and ninja build files by running: |
| 67 | 71 |
| 68 ./gyp_skia | 72 python bin/sync-and-gyp |
| 69 | 73 |
| 70 Build and run tests from the command line | 74 Build and run tests from the command line |
| 71 ----------------------------------------- | 75 ----------------------------------------- |
| 72 | 76 |
| 73 ninja -C out/Debug dm | 77 ninja -C out/Debug dm |
| 74 out/Debug/dm | 78 out/Debug/dm |
| 75 | 79 |
| 76 The usual mode you want for testing is Debug mode (SK_DEBUG is defined, and | |
| 77 debug symbols are included in the binary). If you would like to build the | |
| 78 Release version instead: | |
| 79 | |
| 80 ninja -C out/Release dm | |
| 81 out/Release/dm | |
| 82 | |
| 83 Build and run nanobench (performance tests) | |
| 84 ------------------------------------------- | |
| 85 | |
| 86 In this case, we will build with the "Release" configuration, since we are runni
ng performance tests. | |
| 87 | |
| 88 ninja -C out/Release nanobench | |
| 89 out/Release/nanobench [ --skps path/to/*.skp ] | |
| 90 | 80 |
| 91 Build and run SampleApp in the XCode IDE | 81 Build and run SampleApp in the XCode IDE |
| 92 ---------------------------------------- | 82 ---------------------------------------- |
| 93 | 83 |
| 94 * Run gyp_skia as described above. | 84 * Run `sync-and-gyp` as described above. |
| 95 * In the Finder, navigate to $SKIA_INSTALLDIR/trunk/out/gyp | 85 * In the Finder, navigate to `$SKIA_INSTALLDIR/trunk/out/gyp` |
| 96 * Double-click SampleApp.xcodeproj ; this will launch XCode and open the Sampl
eApp project | 86 * Double-click SampleApp.xcodeproj ; this will launch XCode and open the Sampl
eApp project |
| 97 * Click the “Build and Run” button in the top toolbar | 87 * Click the “Build and Run” button in the top toolbar |
| 98 * Once the build is complete, you should see a window with lots of shaded text
examples. To move through the sample app, use the following keypresses: | 88 * Once the build is complete, you should see a window with lots of shaded text
examples. To move through the sample app, use the following keypresses: |
| 99 * right- and left-arrow keys: cycle through different test pages | 89 * right- and left-arrow keys: cycle through different test pages |
| 100 * 'D' key: cycle through rendering methods for each test page | 90 * 'D' key: cycle through rendering methods for each test page |
| 101 * other keys are defined in SampleApp.cpp’s SampleWindow::onHandleKey() and
SampleWindow::onHandleChar() methods | 91 * other keys are defined in SampleApp.cpp’s SampleWindow::onHandleKey() and
SampleWindow::onHandleChar() methods |
| OLD | NEW |