OLD | NEW |
---|---|
(Empty) | |
1 Multiple repo Chromium trybots | |
2 ============================== | |
3 | |
4 When a proposed Skia change will require a change in Chromium or Blink it is | |
5 often helpful to locally create the Chromium and Blink changes and test with the | |
6 proposed Skia change. This often happens with Skia API changes and changes | |
7 which affect Blink layout tests. While simple to do locally, this explains how | |
8 to do so on the Chromium trybots. | |
9 | |
10 The basic idea is to make your Chromium and Blink change in the usual way, but | |
11 then pull in other changes by modifying the \<chromium>/src/DEPS file. | |
12 | |
13 | |
14 Rietveld | |
15 -------- | |
16 If the the patch to be applied is to a project already in Chromium (like Skia) | |
17 and the patch is already in Rietveld, then add the following to | |
18 \<chromium>/src/DEPS in the 'hooks' array just before the 'gyp' hook. | |
19 | |
20 { | |
21 'name': 'apply_custom_patch', | |
22 'pattern': '.', | |
23 'action': ['apply_issue', | |
24 '--root_dir', 'src/third_party/skia', | |
25 '--issue', '1873923002', | |
26 '--patchset', '160001', | |
dogben
2016/04/14 16:40:51
Maybe indicate that issue, patchset, and potential
bungeman-skia
2016/04/14 17:16:12
Eck, I actually wrote that but it appears I didn't
| |
27 '--server', 'https://codereview.chromium.org', | |
28 '--force', | |
29 '--ignore_deps', | |
30 '-v', | |
31 '-v', | |
32 '--no-auth', | |
33 '--blacklist', 'DEPS' | |
34 ], | |
35 }, | |
36 | |
37 An example of this being used can be seen at | |
38 https://crrev.com/1877673002/#ps120001 . | |
39 | |
40 | |
41 External changes not in rietveld | |
42 -------------------------------- | |
43 If the patch is to files where the above is not possible, then it is still | |
44 possible to patch the files manually by adding the following to | |
45 \<chromium>/src/DEPS in the 'hooks' array just before the 'gyp' hook. | |
46 | |
47 { | |
48 'name': 'apply_custom_patch', | |
49 'pattern': '.', | |
50 'action': ['python', | |
51 '-c', 'from distutils.dir_util import copy_tree; copy_tree("s rc/patch/", "src/");' | |
52 ], | |
53 }, | |
54 | |
55 Then, copy all 'out of tree' files into \<chromium>/src/patch/, using the same | |
56 directory structure used by Chromium. When 'gclient runhooks' is run, the files | |
57 in \<chromium>/src/patch/ will be copied to and overwrite corresponding files in | |
58 \<chromium>/src/. For example, if changing \<skia>/include/core/SkPath.h, place | |
59 a copy of the modified SkPath.h at | |
60 \<chromium>/src/patch/third_party/skia/include/core/SkPath.h. | |
61 | |
62 An example of this being used can be seen at | |
63 https://crrev.com/1866773002/#ps20001 . | |
64 | |
65 | |
66 Try the patch | |
67 ------------- | |
68 After committing these \<chromium>/src/DEPS and \<chromium>/src/patch/ changes | |
69 locally, 'git cl upload' can be used in the usual way. Be sure to add | |
70 'COMMIT=false' to the issue description to avoid accidentally checking it in. | |
OLD | NEW |