skia2/docs/quickstart.md
commit-bot@chromium.org 07b7462e16 warn that docs/quickstart.md is out of sync with official docs
(SkipBuildbotRuns)
NOTREECHECKS=True
NOTRY=True
R=halcanary@google.com, hcm@google.com, mtklein@google.com
TBR=borenet

Author: epoger@google.com

Review URL: https://codereview.chromium.org/245283002

git-svn-id: http://skia.googlecode.com/svn/trunk@14287 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-21 19:18:46 +00:00

1.9 KiB

Skia Quickstart Guide

WARNING: Several steps in this guide are out of sync with our automatically- tested, officially-supported processes for checking out and building Skia. The officially supported processes are the ones documented in skiadocs; see https://sites.google.com/site/skiadocs/user-documentation/quick-start-guides

The steps documented within this file are more experimental in nature.

This guide assumes you've got git, ninja, and python on your path.

  1. First, checkout Skia:
    • git clone https://skia.googlesource.com/skia.git
    • cd skia
  2. Then download the dependencies. You only need to rerun this when the dependencies change.
    • python tools/git-sync-deps
  3. Create our Ninja build files from our Gyp meta-build files. You only need to rerun this when you sync or change a .gyp file.
    • GYP_GENERATORS=ninja ./gyp_skia
  4. Now, let's build Skia. There are a few options:
    • ninja -C out/Debug: no optimization, asserts enabled
    • ninja -C out/Release: optimization, asserts disabled
    • ninja -C out/Coverage: no optimization, asserts enabled, code coverage generated
  5. Run some tests:
    • out/Debug/tests: runs unit tests from tests/
    • out/Debug/dm: runs golden master tests from gm/
  6. Make some changes:
    • git checkout -b my-new-feature origin/master
    • vim src/...
    • git commit -am "Changes for my new feature."
    • vim tests/...
    • git commit --amend -a
    • ninja -C out/Debug && out/Debug/tests && out/Debug/dm && echo ok
  7. Rebase your change onto the latest Skia code:
    • git pull --rebase
    • ninja -C out/Debug && out/Debug/tests && out/Debug/dm && echo ok
  8. Upload your change and send it out for review:
    • git cl upload -r my-skia-reviewer@google.com -s
    • git cl web
  9. Go through code review, get an LGTM, submit using the checkbox on the code review page.