• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1
2---
3title: "Chrome changes"
4linkTitle: "Chrome changes"
5
6---
7
8
9If your change modifies the Skia API, you may also need to land a change in Chromium.
10
11The strategy you use to synchronize changes in the Skia and Chromium
12repositories may differ based on the nature of the change, but in general, we
13recommend using build flag suppressions \(defines\)\.
14We also prefer making the old code path opt-in where possible.
15
16Method 1 \(preferred\) \- Make the old code path opt\-in for Chromium
17
18  * Add new code to Skia, leaving the old code in place.
19  * Deprecate the old code path so that it must be enabled with a flag such as
20    'SK_SUPPORT_LEGACY_XXX'.
21  * Synchronize the above changes in Skia with a Chromium commit to
22    'skia/skia_common.gypi' or 'skia/config/SkUserConfig.h' to enable the
23    deprecated Skia API.
24      * Note that the code suppression cannot exist in both the header file and
25      the gyp file, it should only reside in one location.
26  * Test the new or updated Skia API within Chromium.
27  * Remove the flag and code when the legacy code path is no longer in use.
28
29Method 2 \- Make the new code path opt\-in for Chromium
30
31  * Add new code to Skia, suppressed by a flag.
32  * Leave the old code path in place.
33  * Set the flag in Chromium's 'skia/skia_common.gypi' or
34    'skia/config/SkUserConfig.h' to enable the new or updated Skia API.
35  * Test the new or updated Skia API within Chromium.
36  * Remove the code suppression \(and code\) when the legacy API is no longer
37    in use.
38
39If your changes will affect Blink layout tests, see detailed instructions about
40how to synchronize the changes between Skia, Blink, and Chromium [here](../blink).
41
42