OLD | NEW |
---|---|
(Empty) | |
1 # Copyright 2016 the V8 project authors. All rights reserved. | |
2 # Use of this source code is governed by a BSD-style license that can be | |
3 # found in the LICENSE file. | |
4 | |
Michael Achenbach
2016/06/02 14:23:57
This ports https://cs.chromium.org/chromium/src/v8
| |
5 import("//build/config/sanitizers/sanitizers.gni") | |
6 import("v8.gni") | |
7 | |
8 declare_args() { | |
9 # Sets the test isolation mode (noop|prepare|check). | |
10 v8_test_isolation_mode = "noop" | |
11 } | |
12 | |
13 template("v8_isolate_run") { | |
14 # Remember target name as within the action scope the target name will be | |
15 # different. | |
16 name = target_name | |
17 if (name != "" && invoker.isolate != "" && invoker.deps != [] && | |
Michael Achenbach
2016/06/02 14:23:57
Referencing a bunch of variables here for the sake
vogelheim
2016/06/02 16:18:05
Sorry, I don't get this... could you explain once
Michael Achenbach
2016/06/02 18:32:35
I'd like to have the condition v8_test_isolation_m
| |
18 v8_test_isolation_mode != "noop") { | |
19 action(name + "_run") { | |
20 deps = invoker.deps | |
21 | |
22 script = "tools/isolate_driver.py" | |
23 | |
24 sources = [ | |
25 invoker.isolate, | |
26 ] | |
27 | |
28 inputs = [ | |
29 # Files that are known to be involved in this step. | |
30 "tools/swarming_client/isolate.py", | |
31 "tools/swarming_client/run_isolated.py", | |
32 ] | |
33 | |
34 outputs = [ | |
35 "$root_out_dir/$name.isolated", | |
36 ] | |
37 | |
38 # Translate gn to gyp variables. | |
Michael Achenbach
2016/06/02 14:23:57
The following 40 lines are probably a bit ugly. Bu
| |
39 if (is_asan) { | |
40 asan = "1" | |
41 } else { | |
42 asan = "0" | |
43 } | |
44 if (is_msan) { | |
45 msan = "1" | |
46 } else { | |
47 msan = "0" | |
48 } | |
49 if (is_tsan) { | |
50 tsan = "1" | |
51 } else { | |
52 tsan = "0" | |
53 } | |
54 if (is_cfi) { | |
55 cfi_vptr = "1" | |
56 } else { | |
57 cfi_vptr = "0" | |
58 } | |
59 if (use_custom_libcxx) { | |
60 custom_libcxx = "1" | |
61 } else { | |
62 custom_libcxx = "0" | |
63 } | |
64 if (target_cpu == "x86") { | |
65 target_arch = "ia32" | |
66 } else { | |
67 target_arch = target_cpu | |
68 } | |
69 if (is_debug) { | |
70 configuration_name = "Debug" | |
71 } else { | |
72 configuration_name = "Release" | |
73 } | |
74 if (is_component_build) { | |
75 component = "shared_library" | |
76 } else { | |
77 component = "static_library" | |
78 } | |
79 if (icu_use_data_file) { | |
80 icu_use_data_file_flag = "1" | |
81 } else { | |
82 icu_use_data_file_flag = "0" | |
83 } | |
84 if (v8_use_external_startup_data) { | |
85 use_external_startup_data = "1" | |
86 } else { | |
87 use_external_startup_data = "0" | |
88 } | |
89 if (v8_use_snapshot) { | |
90 use_snapshot = "1" | |
91 } else { | |
92 use_snapshot = "0" | |
93 } | |
94 | |
95 args = [ | |
96 v8_test_isolation_mode, | |
97 "--isolated", | |
98 rebase_path("$root_out_dir/$name.isolated", root_build_dir), | |
99 "--isolate", | |
100 rebase_path(invoker.isolate, root_build_dir), | |
101 | |
102 # Path variables are used to replace file paths when loading a .isolate | |
103 # file | |
104 "--path-variable", | |
105 "DEPTH", | |
106 rebase_path("//", root_build_dir), | |
107 "--path-variable", | |
108 "PRODUCT_DIR", | |
109 rebase_path(root_out_dir, root_build_dir), | |
110 | |
111 # TODO(machenbach): Set variables for remaining features. | |
112 "--config-variable", | |
113 "CONFIGURATION_NAME=$configuration_name", | |
114 "--config-variable", | |
115 "OS=$target_os", | |
116 "--config-variable", | |
117 "asan=$asan", | |
118 "--config-variable", | |
119 "cfi_vptr=$cfi_vptr", | |
120 "--config-variable", | |
121 "gcmole=0", | |
122 "--config-variable", | |
123 "has_valgrind=0", | |
124 "--config-variable", | |
125 "icu_use_data_file_flag=$icu_use_data_file_flag", | |
126 "--config-variable", | |
127 "msan=$msan", | |
128 "--config-variable", | |
129 "tsan=$tsan", | |
130 "--config-variable", | |
131 "coverage=0", | |
132 "--config-variable", | |
133 "sanitizer_coverage=0", | |
134 "--config-variable", | |
135 "component=$component", | |
136 "--config-variable", | |
137 "target_arch=$target_arch", | |
138 "--config-variable", | |
139 "use_custom_libcxx=$custom_libcxx", | |
140 "--config-variable", | |
141 "v8_use_external_startup_data=$use_external_startup_data", | |
142 "--config-variable", | |
143 "v8_use_snapshot=$use_snapshot", | |
144 ] | |
145 | |
146 if (is_win) { | |
147 args += [ | |
148 "--config-variable", | |
149 "msvs_version=2013", | |
150 ] | |
151 } else { | |
152 args += [ | |
153 "--config-variable", | |
154 "msvs_version=0", | |
155 ] | |
156 } | |
157 } | |
158 } | |
159 } | |
OLD | NEW |