OLD | NEW |
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 # This file is meant to be included into a target to provide a rule | 5 # This file is meant to be included into a target to provide a rule |
6 # to "build" .isolate files into a .isolated file. | 6 # to "build" .isolate files into a .isolated file. |
7 # | 7 # |
8 # To use this, create a gyp target with the following form: | 8 # To use this, create a gyp target with the following form: |
9 # 'conditions': [ | 9 # 'conditions': [ |
10 # ['test_isolation_mode != "noop"', { | 10 # ['test_isolation_mode != "noop"', { |
(...skipping 45 matching lines...) Loading... |
56 # dependency. This improves the runtime of the build driver since it | 56 # dependency. This improves the runtime of the build driver since it |
57 # doesn't have to stat() all these files. | 57 # doesn't have to stat() all these files. |
58 # | 58 # |
59 # More importantly, it means that even if a isolate_dependency_tracked | 59 # More importantly, it means that even if a isolate_dependency_tracked |
60 # file is missing, for example if a file was deleted and the .isolate | 60 # file is missing, for example if a file was deleted and the .isolate |
61 # file was not updated, that won't break the build, especially in the | 61 # file was not updated, that won't break the build, especially in the |
62 # case where foo_tests_run is not built! This should be reenabled once | 62 # case where foo_tests_run is not built! This should be reenabled once |
63 # the switch-over to running tests on Swarm is completed. | 63 # the switch-over to running tests on Swarm is completed. |
64 #'<@(isolate_dependency_tracked)', | 64 #'<@(isolate_dependency_tracked)', |
65 ], | 65 ], |
66 'outputs': [ | 66 'outputs': [], |
67 '<(PRODUCT_DIR)/<(RULE_INPUT_ROOT).isolated', | |
68 ], | |
69 'action': [ | 67 'action': [ |
70 'python', | 68 'python', |
71 '<(DEPTH)/tools/isolate_driver.py', | 69 '<(DEPTH)/tools/isolate_driver.py', |
72 '<(test_isolation_mode)', | 70 '<(test_isolation_mode)', |
73 '--isolated', '<@(_outputs)', | 71 '--isolated', '<(PRODUCT_DIR)/<(RULE_INPUT_ROOT).isolated', |
74 '--isolate', '<(RULE_INPUT_PATH)', | 72 '--isolate', '<(RULE_INPUT_PATH)', |
75 | 73 |
76 # Variables should use the -V FOO=<(FOO) form so frequent values, | 74 # Variables should use the -V FOO=<(FOO) form so frequent values, |
77 # like '0' or '1', aren't stripped out by GYP. Run 'isolate.py help' for | 75 # like '0' or '1', aren't stripped out by GYP. Run 'isolate.py help' for |
78 # more details. | 76 # more details. |
79 # | 77 # |
80 # This list needs to be kept in sync with the cmd line options | 78 # This list needs to be kept in sync with the cmd line options |
81 # in src/build/android/pylib/gtest/setup.py. | 79 # in src/build/android/pylib/gtest/setup.py. |
82 | 80 |
83 # Path variables are used to replace file paths when loading a .isolate | 81 # Path variables are used to replace file paths when loading a .isolate |
(...skipping 27 matching lines...) Loading... |
111 'action': [ | 109 'action': [ |
112 '--extra-variable', 'mac_product_name', '<(mac_product_name)', | 110 '--extra-variable', 'mac_product_name', '<(mac_product_name)', |
113 ], | 111 ], |
114 }], | 112 }], |
115 ["test_isolation_outdir!=''", { | 113 ["test_isolation_outdir!=''", { |
116 'action': [ '--isolate-server', '<(test_isolation_outdir)' ], | 114 'action': [ '--isolate-server', '<(test_isolation_outdir)' ], |
117 }], | 115 }], |
118 ['test_isolation_fail_on_missing == 0', { | 116 ['test_isolation_fail_on_missing == 0', { |
119 'action': ['--ignore_broken_items'], | 117 'action': ['--ignore_broken_items'], |
120 }], | 118 }], |
| 119 ["test_isolation_mode == 'prepare'", { |
| 120 'outputs': [ |
| 121 '<(PRODUCT_DIR)/<(RULE_INPUT_ROOT).isolated.gen.json', |
| 122 ], |
| 123 }, { |
| 124 'outputs': [ |
| 125 '<(PRODUCT_DIR)/<(RULE_INPUT_ROOT).isolated', |
| 126 ], |
| 127 }], |
121 ], | 128 ], |
122 }, | 129 }, |
123 ], | 130 ], |
124 } | 131 } |
OLD | NEW |