Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(67)

Side by Side Diff: Source/devtools/BUILD.gn

Issue 608523002: DevTools: Support debug_devtools=true arg in GN builds (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebased patch, some conditionals removed/commented out Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | public/BUILD.gn » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2014 The Chromium Authors. All rights reserved. 1 # Copyright 2014 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 import("//build/config/features.gni")
6
7 app_names = [
brettw 2014/09/26 18:24:12 Are we anticipating adding lots more apps here? If
apavlov 2014/09/26 19:47:06 Another app is actually pending addition (from dgo
8 "devtools",
9 "toolbox"
10 ]
11
5 gypi_values = exec_script( 12 gypi_values = exec_script(
6 "//build/gypi_to_gn.py", 13 "//build/gypi_to_gn.py",
7 [ rebase_path("devtools.gypi") ], 14 [ rebase_path("devtools.gypi") ],
8 "scope", 15 "scope",
9 [ "devtools.gypi" ]) 16 [ "devtools.gypi" ])
10 17
11 # Some of the files in the .gypi use GYP variable expansions, go through and 18 # Some of the files in the .gypi use GYP variable expansions, go through and
12 # fix them. 19 # fix them.
13 devtools_core_base_files = gypi_values.devtools_core_base_files - [ 20 devtools_core_base_files = gypi_values.devtools_core_base_files - [
14 "<@(devtools_standalone_files)", 21 "<@(devtools_standalone_files)",
15 ] + gypi_values.devtools_standalone_files 22 ] + gypi_values.devtools_standalone_files
16 23
17 devtools_core_files = 24 devtools_core_files =
18 devtools_core_base_files + 25 devtools_core_base_files +
19 gypi_values.devtools_bindings_js_files + 26 gypi_values.devtools_bindings_js_files +
20 gypi_values.devtools_common_js_files + 27 gypi_values.devtools_common_js_files +
21 gypi_values.devtools_components_js_files + 28 gypi_values.devtools_components_js_files +
22 gypi_values.devtools_host_js_files + 29 gypi_values.devtools_host_js_files +
23 gypi_values.devtools_main_js_files + 30 gypi_values.devtools_main_js_files +
24 gypi_values.devtools_sdk_js_files + 31 gypi_values.devtools_sdk_js_files +
25 gypi_values.devtools_screencast_js_files + 32 gypi_values.devtools_screencast_js_files +
33 gypi_values.devtools_sdk_js_files +
dgozman 2014/09/26 15:35:37 sdk duplicated
apavlov 2014/09/26 19:47:07 Thanks, it's a bad rebase
26 gypi_values.devtools_toolbox_js_files + 34 gypi_values.devtools_toolbox_js_files +
27 gypi_values.devtools_toolbox_bootstrap_js_files + 35 gypi_values.devtools_toolbox_bootstrap_js_files +
28 gypi_values.devtools_ui_js_files + 36 gypi_values.devtools_ui_js_files +
29 gypi_values.devtools_workspace_js_files 37 gypi_values.devtools_workspace_js_files
30 38
31 devtools_extensions_js_files = gypi_values.devtools_extensions_js_files - 39 devtools_extensions_js_files = gypi_values.devtools_extensions_js_files -
32 [ "<@(devtools_extension_api_files)" ] + 40 [ "<@(devtools_extension_api_files)" ] +
33 gypi_values.devtools_extension_api_files 41 gypi_values.devtools_extension_api_files
34 42
43 if (debug_devtools) {
44 # Adding a new <module_name> here requires
45 # a new ":build_<module_name>_module" target.
46 core_modules = [
47 "bindings",
48 "common",
49 "components",
50 "host",
51 "main",
52 "screencast",
53 "sdk",
54 "toolbox",
55 "toolbox_bootstrap",
56 "ui",
57 "workspace",
58 ]
59
60 devtools_modules_js_files =
61 gypi_values.devtools_audits_js_files +
62 gypi_values.devtools_console_js_files +
63 gypi_values.devtools_devices_js_files +
64 gypi_values.devtools_documentation_js_files +
65 gypi_values.devtools_elements_js_files +
66 devtools_extensions_js_files +
67 gypi_values.devtools_heap_snapshot_worker_js_files +
68 gypi_values.devtools_layers_js_files +
69 gypi_values.devtools_network_js_files +
70 gypi_values.devtools_profiler_js_files +
71 gypi_values.devtools_promises_js_files +
72 gypi_values.devtools_resources_js_files +
73 gypi_values.devtools_script_formatter_worker_js_files +
74 gypi_values.devtools_settings_js_files +
75 gypi_values.devtools_source_frame_js_files +
76 gypi_values.devtools_sources_js_files +
77 gypi_values.devtools_temp_storage_shared_worker_js_files +
78 gypi_values.devtools_timeline_js_files
79
80 all_devtools_files =
81 gypi_values.devtools_cm_css_files +
82 gypi_values.devtools_cm_js_files +
83 devtools_core_files +
84 gypi_values.devtools_module_json_files +
85 devtools_modules_js_files +
86 gypi_values.devtools_uglify_files
87 }
88
35 #------------------------------------------------------------------------------- 89 #-------------------------------------------------------------------------------
36 90
37 visibility = [ "//third_party/WebKit/*" ] 91 visibility = [ "//third_party/WebKit/*" ]
38 92
39 # Probably need to parameterize this. If we set it to true, there will be some
40 # further work in the scripts below.
41 debug_devtools = false
42
43 group("devtools_frontend_resources") { 93 group("devtools_frontend_resources") {
44 deps = [ 94 deps = [
95 ":app_htmls",
45 ":copy_inspector_images", 96 ":copy_inspector_images",
46 ":devtools_html",
47 ":toolbox_html",
48 ":frontend_protocol_sources", 97 ":frontend_protocol_sources",
49 ":supported_css_properties", 98 ":supported_css_properties",
50 ":build_applications", 99 ":build_applications",
51 ] 100 ]
52 101
53 if (!debug_devtools) { 102 if (!debug_devtools) {
54 deps += [ 103 foreach(app, app_names) {
55 ":concatenated_devtools_css", 104 deps += [ ":concatenated_" + app + "_css" ]
56 ":concatenated_toolbox_css", 105 }
57 ]
58 } 106 }
59 } 107 }
60 108
109 # FIXME: Fix the generate_devtools_grd.py script to accept trailing slashes.
110 resources_out_dir_no_slash = "$root_out_dir/resources/inspector"
111 resources_out_dir = resources_out_dir_no_slash + "/"
112
61 copy("copy_inspector_images") { 113 copy("copy_inspector_images") {
62 sources = gypi_values.devtools_image_files 114 sources = gypi_values.devtools_image_files
63 outputs = [ "$root_out_dir/resources/inspector/Images/{{source_file_part}}" ] 115 outputs = [ resources_out_dir + "Images/{{source_file_part}}" ]
64 } 116 }
65 117
66 # TODO(GYP) need debug_devtools support (this runs somewhat differently).
67 action("generate_devtools_grd") { 118 action("generate_devtools_grd") {
68 script = "scripts/generate_devtools_grd.py" 119 script = "scripts/generate_devtools_grd.py"
69 120
70 input_pages = [ 121 if (debug_devtools) {
71 "$root_out_dir/resources/inspector/devtools.css", 122 input_pages = all_devtools_files + [
72 "$root_out_dir/resources/inspector/devtools.html", 123 "front_end/Runtime.js",
73 "$root_out_dir/resources/inspector/devtools.js", 124 resources_out_dir + "InspectorBackendCommands.js",
74 "$root_out_dir/resources/inspector/toolbox.css", 125 resources_out_dir + "SupportedCSSProperties.js",
75 "$root_out_dir/resources/inspector/toolbox.html", 126 ]
76 "$root_out_dir/resources/inspector/toolbox.js", 127 foreach(app, app_names) {
77 "$root_out_dir/resources/inspector/audits_module.js", 128 input_pages += [
78 "$root_out_dir/resources/inspector/console_module.js", 129 resources_out_dir + app + ".html",
79 "$root_out_dir/resources/inspector/devices_module.js", 130 ]
80 "$root_out_dir/resources/inspector/documentation_module.js", 131 }
81 "$root_out_dir/resources/inspector/elements_module.js", 132 } else {
82 "$root_out_dir/resources/inspector/extensions_module.js", 133 input_pages = [
83 "$root_out_dir/resources/inspector/heap_snapshot_worker_module.js", 134 resources_out_dir + "audits_module.js",
84 "$root_out_dir/resources/inspector/layers_module.js", 135 resources_out_dir + "console_module.js",
85 "$root_out_dir/resources/inspector/network_module.js", 136 resources_out_dir + "devices_module.js",
86 "$root_out_dir/resources/inspector/profiler_module.js", 137 resources_out_dir + "documentation_module.js",
87 "$root_out_dir/resources/inspector/promises_module.js", 138 resources_out_dir + "elements_module.js",
88 "$root_out_dir/resources/inspector/resources_module.js", 139 resources_out_dir + "extensions_module.js",
89 "$root_out_dir/resources/inspector/script_formatter_worker_module.js", 140 resources_out_dir + "heap_snapshot_worker_module.js",
90 "$root_out_dir/resources/inspector/settings_module.js", 141 resources_out_dir + "layers_module.js",
91 "$root_out_dir/resources/inspector/source_frame_module.js", 142 resources_out_dir + "network_module.js",
92 "$root_out_dir/resources/inspector/sources_module.js", 143 resources_out_dir + "profiler_module.js",
93 "$root_out_dir/resources/inspector/temp_storage_shared_worker_module.js", 144 resources_out_dir + "promises_module.js",
94 "$root_out_dir/resources/inspector/timeline_module.js", 145 resources_out_dir + "resources_module.js",
95 "$root_out_dir/resources/inspector/devtools_extension_api.js", 146 resources_out_dir + "script_formatter_worker_module.js",
96 ] + gypi_values.devtools_standalone_files + gypi_values.devtools_cm_css_files 147 resources_out_dir + "settings_module.js",
148 resources_out_dir + "source_frame_module.js",
149 resources_out_dir + "sources_module.js",
150 resources_out_dir + "temp_storage_shared_worker_module.js",
151 resources_out_dir + "timeline_module.js",
152 resources_out_dir + "devtools_extension_api.js",
153 ]
154 input_pages += gypi_values.devtools_standalone_files +
155 gypi_values.devtools_cm_css_files
156
157 foreach(app, app_names) {
158 input_pages += [
159 resources_out_dir + app + ".css",
160 resources_out_dir + app + ".html",
161 resources_out_dir + app + ".js",
162 ]
163 }
164 }
97 165
98 images = gypi_values.devtools_image_files 166 images = gypi_values.devtools_image_files
99 images_path = "front_end/Images" 167 images_path = "front_end/Images"
100 168
101 inputs = input_pages + images 169 inputs = input_pages + images
102 170
103 outfile = "$root_gen_dir/devtools/devtools_resources.grd" 171 outfile = "$root_gen_dir/devtools/devtools_resources.grd"
104 outputs = [ outfile ] 172 outputs = [ outfile ]
105 173
106 relative_path_dirs = [ 174 relative_path_dirs = [
107 "$root_out_dir/resources/inspector", 175 resources_out_dir_no_slash,
108 "front_end", 176 "front_end",
109 ] 177 ]
110 178
111 args = rebase_path(input_pages, root_build_dir) + [ 179 args = rebase_path(input_pages, root_build_dir) + [
112 "--relative_path_dirs" ] + 180 "--relative_path_dirs" ] +
113 rebase_path(relative_path_dirs, root_build_dir) + [ 181 rebase_path(relative_path_dirs, root_build_dir) + [
114 "--images", rebase_path(images_path, root_build_dir), 182 "--images", rebase_path(images_path, root_build_dir),
115 "--output", rebase_path(outfile, root_build_dir), 183 "--output", rebase_path(outfile, root_build_dir),
116 ] 184 ]
117 185
118 deps = [ 186 # Only :devtools_frontend_resources is required for !debug_devtools mode.
119 ":devtools_html", 187 deps = [ ":devtools_frontend_resources" ]
120 ":toolbox_html", 188
121 ":devtools_extension_api", 189 if (debug_devtools) {
122 ":devtools_frontend_resources", 190 deps += [
123 ] 191 ":app_htmls",
192 ":devtools_extension_api",
193 ]
194 }
124 } 195 }
125 196
126 template("generate_app_html") { 197 template("generate_app_html") {
127 assert(defined(invoker.app_name), target_name) 198 assert(defined(invoker.app_name), target_name)
199 app_name = invoker.app_name
128 200
129 action(target_name) { 201 action(target_name) {
130 script = "scripts/generate_devtools_html.py" 202 script = "scripts/generate_devtools_html.py"
131 203
132 inputs = [ "front_end/" + invoker.app_name + ".html"] 204 inputs = [ "front_end/" + app_name + ".html"]
133 outputs = [ 205 outputs = [ resources_out_dir + app_name + ".html" ]
134 "$root_out_dir/resources/inspector/" + invoker.app_name + ".html"
135 ]
136 206
137 args = rebase_path(inputs, root_build_dir) + 207 args = rebase_path(inputs, root_build_dir) +
138 rebase_path(outputs, root_build_dir) 208 rebase_path(outputs, root_build_dir)
139 209
140 if (debug_devtools) { 210 if (debug_devtools) {
141 args += [ "1" ] 211 args += [ "1" ]
142 } else { 212 } else {
143 args += [ "0" ] 213 args += [ "0" ]
144 } 214 }
145 } 215 }
146 } 216 }
147 217
148 generate_app_html("devtools_html") { 218 foreach(app, app_names) {
149 app_name = "devtools" 219 generate_app_html(app + "_html") {
150 } 220 app_name = app
151 221 }
152 generate_app_html("toolbox_html") {
153 app_name = "toolbox"
154 } 222 }
155 223
156 action("devtools_extension_api") { 224 action("devtools_extension_api") {
157 script = "scripts/generate_devtools_extension_api.py" 225 script = "scripts/generate_devtools_extension_api.py"
158 226
159 inputs = gypi_values.devtools_extension_api_files 227 inputs = gypi_values.devtools_extension_api_files
160 outputs = [ "$root_out_dir/resources/inspector/devtools_extension_api.js" ] 228 outputs = [ resources_out_dir + "devtools_extension_api.js" ]
161 229
162 args = rebase_path(outputs, root_build_dir) + 230 args = rebase_path(outputs, root_build_dir) +
163 rebase_path(gypi_values.devtools_extension_api_files, root_build_dir) 231 rebase_path(gypi_values.devtools_extension_api_files, root_build_dir)
164 } 232 }
165 233
166 action("supported_css_properties") { 234 action("supported_css_properties") {
167 script = "scripts/generate_supported_css.py" 235 script = "scripts/generate_supported_css.py"
168 236
169 inputs = [ 237 inputs = [ "../core/css/CSSProperties.in" ]
170 "../core/css/CSSProperties.in",
171 ]
172 238
173 outputs = [ 239 outputs = [ resources_out_dir + "SupportedCSSProperties.js" ]
174 "$root_out_dir/resources/inspector/SupportedCSSProperties.js"
175 ]
176 240
177 args = rebase_path(inputs, root_build_dir) + 241 args = rebase_path(inputs, root_build_dir) +
178 rebase_path(outputs, root_build_dir) 242 rebase_path(outputs, root_build_dir)
179 } 243 }
180 244
181 action("frontend_protocol_sources") { 245 action("frontend_protocol_sources") {
182 script = "scripts/CodeGeneratorFrontend.py" 246 script = "scripts/CodeGeneratorFrontend.py"
183 247
184 inputs = [ "protocol.json" ] 248 inputs = [ "protocol.json" ]
185 outputs = [ "$root_out_dir/resources/inspector/InspectorBackendCommands.js" ] 249 outputs = [ resources_out_dir + "InspectorBackendCommands.js" ]
186 250
187 args = rebase_path(inputs, root_build_dir) + [ 251 args = rebase_path(inputs, root_build_dir) + [
188 "--output_js_dir", 252 "--output_js_dir",
189 rebase_path("$root_out_dir/resources/inspector", root_build_dir), 253 rebase_path(resources_out_dir, root_build_dir),
190 ] 254 ]
191 } 255 }
192 256
193 action("build_applications") { 257 group("build_modules") {
194 script = "scripts/build_applications.py"
195 helper_scripts = [
196 "scripts/modular_build.py",
197 "scripts/concatenate_application_code.py",
198 ]
199
200 app_descriptor_names = [
201 "front_end/devtools.json",
202 "front_end/toolbox.json",
203 ]
204
205 app_loader_names = [
206 "front_end/devtools.js",
207 "front_end/toolbox.js",
208 ]
209
210 generated_inputs = [
211 "$root_out_dir/resources/inspector/Runtime.js",
212 "$root_out_dir/resources/inspector/InspectorBackendCommands.js",
213 "$root_out_dir/resources/inspector/SupportedCSSProperties.js",
214 ]
215
216 inputs =
217 helper_scripts + app_descriptor_names + app_loader_names +
218 devtools_core_files + gypi_values.devtools_module_json_files +
219 generated_inputs
220
221 output_path = "$root_out_dir/resources/inspector/"
222 outputs = [
223 output_path + "devtools.js",
224 output_path + "toolbox.js",
225 output_path + "heap_snapshot_worker/heap_snapshot_worker.js",
226 output_path + "temp_storage_shared_worker/temp_storage_shared_worker.js",
227 output_path + "script_formatter_worker/script_formatter_worker.js",
228 ]
229
230 if (debug_devtools) {
231 debug_flag = "1"
232 } else {
233 debug_flag = "0"
234 }
235
236 app_names = [
237 "devtools",
238 "toolbox"
239 ]
240
241 args = app_names + [
242 "--input_path", rebase_path("front_end", root_build_dir),
243 "--output_path", rebase_path(output_path, root_build_dir),
244 "--debug", debug_flag
245 ]
246
247 deps = [ 258 deps = [
248 ":build_audits_module", 259 ":build_audits_module",
249 ":build_console_module", 260 ":build_console_module",
250 ":build_devices_module", 261 ":build_devices_module",
251 ":build_documentation_module", 262 ":build_documentation_module",
252 ":build_elements_module", 263 ":build_elements_module",
253 ":build_extensions_module", 264 ":build_extensions_module",
254 ":build_heap_snapshot_worker_module", 265 ":build_heap_snapshot_worker_module",
255 ":build_layers_module", 266 ":build_layers_module",
256 ":build_network_module", 267 ":build_network_module",
257 ":build_profiler_module", 268 ":build_profiler_module",
258 ":build_promises_module", 269 ":build_promises_module",
259 ":build_resources_module", 270 ":build_resources_module",
260 ":build_script_formatter_worker_module", 271 ":build_script_formatter_worker_module",
261 ":build_settings_module", 272 ":build_settings_module",
262 ":build_source_frame_module", 273 ":build_source_frame_module",
263 ":build_sources_module", 274 ":build_sources_module",
264 ":build_temp_storage_shared_worker_module", 275 ":build_temp_storage_shared_worker_module",
265 ":build_timeline_module", 276 ":build_timeline_module",
266 ] 277 ]
267 278
279 if (debug_devtools) {
280 foreach(module_name, core_modules) {
281 deps += [
282 ":build_" + module_name + "_module",
283 ]
284 }
285
286 copy("copy_runtime_core") {
287 sources = devtools_core_base_files
288 outputs = [ resources_out_dir + "/{{source_file_part}}" ]
289 }
290 deps += [ ":copy_runtime_core" ]
291 }
292 }
293
294 group("build_applications") {
295 deps = [ ":build_modules" ]
296
268 if (!debug_devtools) { 297 if (!debug_devtools) {
269 deps += [ 298 # Required for !debug_devtools mode only.
270 ":devtools_html", 299 action("build_applications_release") {
271 ":toolbox_html", 300 script = "scripts/build_applications.py"
272 ":supported_css_properties", 301 helper_scripts = [
273 ":frontend_protocol_sources", 302 "scripts/modular_build.py",
274 ":concatenated_module_descriptors", 303 "scripts/concatenate_application_code.py",
275 ] 304 ]
276 } 305
277 } 306 app_descriptor_names = []
278 307 app_loader_names = []
279 # Runs the concatenate_module_scripts script. 308
309 outputs = []
310
311 foreach(app, app_names) {
312 app_descriptor_names += [ "front_end/" + app + ".json" ]
313 app_loader_names += [ "front_end/" + app + ".js" ]
314 outputs += [ resources_out_dir + app + ".js" ]
315 }
316
317 generated_inputs = [
318 resources_out_dir + "Runtime.js",
319 resources_out_dir + "InspectorBackendCommands.js",
320 resources_out_dir + "SupportedCSSProperties.js",
321 ]
322
323 inputs =
324 helper_scripts + app_descriptor_names + app_loader_names +
325 devtools_core_files + gypi_values.devtools_module_json_files +
326 generated_inputs
327
328 outputs += [
329 resources_out_dir + "heap_snapshot_worker/heap_snapshot_worker.js",
330 resources_out_dir +
331 "temp_storage_shared_worker/temp_storage_shared_worker.js",
332 resources_out_dir +
333 "script_formatter_worker/script_formatter_worker.js",
334 ]
335
336 args = app_names + [
337 "--input_path", rebase_path("front_end", root_build_dir),
338 "--output_path", rebase_path(resources_out_dir, root_build_dir),
339 "--debug", "1"
340 ]
341
342 deps += [
343 ":app_htmls",
344 ":supported_css_properties",
345 ":frontend_protocol_sources",
346 ":concatenated_module_descriptors",
347 ]
348 }
349 }
350 }
351
352 group("app_htmls") {
353 deps = []
354
355 foreach(app, app_names) {
356 deps += [ ":" + app + "_html" ]
357 }
358 }
359
360 # Runs the build_module script.
280 # module_name: (String) The JS module name to process. 361 # module_name: (String) The JS module name to process.
281 # imported_files: (List of strings) The list of files the input depends on. 362 # imported_files: (List of strings) The list of files the input depends on.
282 template("concatenate_module_scripts") { 363 template("build_module") {
283 assert(defined(invoker.module_name), target_name) 364 assert(defined(invoker.module_name), target_name)
284 assert(defined(invoker.imported_files), target_name) 365 assert(defined(invoker.imported_files), target_name)
285 366
286 action(target_name) { 367 imported_files = invoker.imported_files
287 script = "scripts/concatenate_module_scripts.py" 368 module_name = invoker.module_name
288 module_name = invoker.module_name 369 module_json = "front_end/" + module_name + "/module.json"
289 370
290 input = "front_end/" + module_name + "/module.json" 371 if (debug_devtools) {
291 inputs = [ input ] + invoker.imported_files 372 copy(target_name) {
292 373 sources = [ module_json ] + imported_files
293 output = "$root_out_dir/resources/inspector/" + module_name + "_module.js" 374 outputs = [ resources_out_dir + module_name + "/{{source_file_part}}" ]
294 outputs = [ output ] 375 }
295 376 } else {
296 args = [ 377 action(target_name) {
297 rebase_path(input, root_build_dir), 378 script = "scripts/concatenate_module_scripts.py"
298 rebase_path(output, root_build_dir), 379
299 ] 380 inputs = [ module_json ] + imported_files
300 } 381
301 } 382 output = resources_out_dir + module_name + "_module.js"
302 383 outputs = [ output ]
303 concatenate_module_scripts("build_audits_module") { 384
385 args = [
386 rebase_path(module_json, root_build_dir),
387 rebase_path(output, root_build_dir),
388 ]
389 }
390 }
391 }
392
393 build_module("build_audits_module") {
304 module_name = "audits" 394 module_name = "audits"
305 imported_files = gypi_values.devtools_audits_js_files 395 imported_files = gypi_values.devtools_audits_js_files
306 } 396 }
307 397
308 concatenate_module_scripts("build_console_module") { 398 build_module("build_console_module") {
309 module_name = "console" 399 module_name = "console"
310 imported_files = gypi_values.devtools_console_js_files 400 imported_files = gypi_values.devtools_console_js_files
311 } 401 }
312 402
313 concatenate_module_scripts("build_devices_module") { 403 build_module("build_devices_module") {
314 module_name = "devices" 404 module_name = "devices"
315 imported_files = gypi_values.devtools_devices_js_files 405 imported_files = gypi_values.devtools_devices_js_files
316 } 406 }
317 407
318 concatenate_module_scripts("build_documentation_module") { 408 build_module("build_documentation_module") {
319 module_name = "documentation" 409 module_name = "documentation"
320 imported_files = gypi_values.devtools_documentation_js_files 410 imported_files = gypi_values.devtools_documentation_js_files
321 } 411 }
322 412
323 concatenate_module_scripts("build_elements_module") { 413 build_module("build_elements_module") {
324 module_name = "elements" 414 module_name = "elements"
325 imported_files = gypi_values.devtools_elements_js_files 415 imported_files = gypi_values.devtools_elements_js_files
326 } 416 }
327 417
328 concatenate_module_scripts("build_extensions_module") { 418 build_module("build_extensions_module") {
329 module_name = "extensions" 419 module_name = "extensions"
330 imported_files = devtools_extensions_js_files 420 imported_files = devtools_extensions_js_files
331 } 421 }
332 422
333 concatenate_module_scripts("build_heap_snapshot_worker_module") { 423 build_module("build_heap_snapshot_worker_module") {
334 module_name = "heap_snapshot_worker" 424 module_name = "heap_snapshot_worker"
335 imported_files = gypi_values.devtools_heap_snapshot_worker_js_files 425 imported_files = gypi_values.devtools_heap_snapshot_worker_js_files
336 } 426 }
337 427
338 concatenate_module_scripts("build_layers_module") { 428 build_module("build_layers_module") {
339 module_name = "layers" 429 module_name = "layers"
340 imported_files = gypi_values.devtools_layers_js_files 430 imported_files = gypi_values.devtools_layers_js_files
341 } 431 }
342 432
343 concatenate_module_scripts("build_network_module") { 433 build_module("build_network_module") {
344 module_name = "network" 434 module_name = "network"
345 imported_files = gypi_values.devtools_network_js_files 435 imported_files = gypi_values.devtools_network_js_files
346 } 436 }
347 437
348 concatenate_module_scripts("build_profiler_module") { 438 build_module("build_profiler_module") {
349 module_name = "profiler" 439 module_name = "profiler"
350 imported_files = gypi_values.devtools_profiler_js_files 440 imported_files = gypi_values.devtools_profiler_js_files
351 } 441 }
352 442
353 concatenate_module_scripts("build_promises_module") { 443 build_module("build_promises_module") {
354 module_name = "promises" 444 module_name = "promises"
355 imported_files = gypi_values.devtools_promises_js_files 445 imported_files = gypi_values.devtools_promises_js_files
356 } 446 }
357 447
358 concatenate_module_scripts("build_resources_module") { 448 build_module("build_resources_module") {
359 module_name = "resources" 449 module_name = "resources"
360 imported_files = gypi_values.devtools_resources_js_files 450 imported_files = gypi_values.devtools_resources_js_files
361 } 451 }
362 452
363 concatenate_module_scripts("build_script_formatter_worker_module") { 453 group("build_script_formatter_worker_module") {
364 module_name = "script_formatter_worker" 454 build_module("build_script_formatter_worker_module_base") {
365 imported_files = gypi_values.devtools_uglify_files + 455 module_name = "script_formatter_worker"
366 gypi_values.devtools_script_formatter_worker_js_files 456 imported_files = gypi_values.devtools_uglify_files +
367 } 457 gypi_values.devtools_script_formatter_worker_js_files
368 458 }
369 concatenate_module_scripts("build_settings_module") { 459
460 # Required for debug_devtools mode only.
461 copy("copy_uglify_js_files") {
462 sources = gypi_values.devtools_uglify_files
463 outputs = [ resources_out_dir + "UglifyJS/{{source_file_part}}" ]
464 }
465
466 deps = [
467 ":build_script_formatter_worker_module_base",
468 ":copy_uglify_js_files"
469 ]
470 }
471
472 build_module("build_settings_module") {
370 module_name = "settings" 473 module_name = "settings"
371 imported_files = gypi_values.devtools_settings_js_files 474 imported_files = gypi_values.devtools_settings_js_files
372 } 475 }
373 476
374 group("build_source_frame_module") { 477 group("build_source_frame_module") {
375 concatenate_module_scripts("concatenate_source_frame_module") { 478 build_module("build_source_frame_module_base") {
376 module_name = "source_frame" 479 module_name = "source_frame"
377 imported_files = gypi_values.devtools_source_frame_js_files + 480 imported_files = gypi_values.devtools_source_frame_js_files
378 gypi_values.devtools_cm_js_files 481 # if (!debug_devtools) {
482 imported_files += gypi_values.devtools_cm_js_files
483 # }
379 } 484 }
380 485
381 copy("copy_codemirror_files") { 486 copy("copy_codemirror_files") {
382 sources = gypi_values.devtools_cm_css_files 487 sources = gypi_values.devtools_cm_css_files
383 outputs = [ "$root_out_dir/resources/inspector/cm/{{source_file_part}}" ] 488 # if (debug_devtools) {
489 sources += gypi_values.devtools_cm_js_files
490 # }
491 outputs = [ resources_out_dir + "cm/{{source_file_part}}" ]
384 } 492 }
385 493
386 deps = [ 494 deps = [
387 ":concatenate_source_frame_module", 495 ":build_source_frame_module_base",
388 ":copy_codemirror_files", 496 ":copy_codemirror_files",
389 ] 497 ]
390 } 498 }
391 499
392 concatenate_module_scripts("build_sources_module") { 500 build_module("build_sources_module") {
393 module_name = "sources" 501 module_name = "sources"
394 imported_files = gypi_values.devtools_sources_js_files 502 imported_files = gypi_values.devtools_sources_js_files
395 } 503 }
396 504
397 concatenate_module_scripts("build_temp_storage_shared_worker_module") { 505 build_module("build_temp_storage_shared_worker_module") {
398 module_name = "temp_storage_shared_worker" 506 module_name = "temp_storage_shared_worker"
399 imported_files = gypi_values.devtools_temp_storage_shared_worker_js_files 507 imported_files = gypi_values.devtools_temp_storage_shared_worker_js_files
400 } 508 }
401 509
402 concatenate_module_scripts("build_timeline_module") { 510 build_module("build_timeline_module") {
403 module_name = "timeline" 511 module_name = "timeline"
404 imported_files = gypi_values.devtools_timeline_js_files 512 imported_files = gypi_values.devtools_timeline_js_files
405 } 513 }
406 514
407 action("concatenated_module_descriptors") { 515 if (debug_devtools) {
408 script = "scripts/concatenate_module_descriptors.py" 516 build_module("build_common_module") {
409 517 module_name = "common"
410 input = "front_end/Runtime.js" 518 imported_files = gypi_values.devtools_common_js_files
411 inputs = [ input ] + gypi_values.devtools_module_json_files 519 }
412 outputs = [ "$root_out_dir/resources/inspector/Runtime.js" ] 520
413 521 build_module("build_host_module") {
414 args = rebase_path([ input ] + outputs + 522 module_name = "host"
415 gypi_values.devtools_module_json_files, root_build_dir) 523 imported_files = gypi_values.devtools_host_js_files
416 } 524 }
417 525
418 template("concatenate_css") { 526 build_module("build_sdk_module") {
419 assert(defined(invoker.app_name), target_name) 527 module_name = "sdk"
420 528 imported_files = gypi_values.devtools_sdk_js_files
421 action(target_name) { 529 }
422 script = "scripts/concatenate_css_files.py" 530
423 531 build_module("build_ui_module") {
424 input_stylesheet = "front_end/" + invoker.app_name + ".css" 532 module_name = "ui"
425 inputs = [ input_stylesheet ] + devtools_core_base_files 533 imported_files = gypi_values.devtools_ui_js_files
426 534 }
427 outputs = [ 535
428 "$root_out_dir/resources/inspector/" + invoker.app_name + ".css" 536 build_module("build_components_module") {
429 ] 537 module_name = "components"
430 538 imported_files = gypi_values.devtools_components_js_files
431 args = [ rebase_path(input_stylesheet, root_build_dir) ] + 539 }
432 rebase_path(outputs, root_build_dir) 540
433 } 541 build_module("build_workspace_module") {
434 } 542 module_name = "workspace"
435 543 imported_files = gypi_values.devtools_workspace_js_files
436 concatenate_css("concatenated_devtools_css") { 544 }
437 app_name = "devtools" 545
438 } 546 build_module("build_bindings_module") {
439 547 module_name = "bindings"
440 concatenate_css("concatenated_toolbox_css") { 548 imported_files = gypi_values.devtools_bindings_js_files
441 app_name = "toolbox" 549 }
442 } 550
551 build_module("build_screencast_module") {
552 module_name = "screencast"
553 imported_files = gypi_values.devtools_screencast_js_files
554 }
555
556 build_module("build_toolbox_module") {
557 module_name = "toolbox"
558 imported_files = gypi_values.devtools_toolbox_js_files
559 }
560
561 build_module("build_toolbox_bootstrap_module") {
562 module_name = "toolbox_bootstrap"
563 imported_files = gypi_values.devtools_toolbox_bootstrap_js_files
564 }
565
566 build_module("build_main_module") {
567 module_name = "main"
568 imported_files = gypi_values.devtools_main_js_files
569 }
570 } else {
571 template("concatenate_css") {
572 assert(defined(invoker.app_name), target_name)
573 app_name = invoker.app_name
574
575 action(target_name) {
576 script = "scripts/concatenate_css_files.py"
577
578 input_stylesheet = "front_end/" + app_name + ".css"
579 inputs = [ input_stylesheet ] + devtools_core_base_files
580
581 outputs = [ resources_out_dir + app_name + ".css" ]
582
583 args = [ rebase_path(input_stylesheet, root_build_dir) ] +
584 rebase_path(outputs, root_build_dir)
585 }
586 }
587
588 foreach(app, app_names) {
589 concatenate_css("concatenated_" + app + "_css") {
590 app_name = app
591 }
592 }
593
594 action("concatenated_module_descriptors") {
595 script = "scripts/concatenate_module_descriptors.py"
596
597 input = "front_end/Runtime.js"
598 inputs = [ input ] + gypi_values.devtools_module_json_files
599 outputs = [ resources_out_dir + "Runtime.js" ]
600
601 args = rebase_path([ input ] + outputs +
602 gypi_values.devtools_module_json_files, root_build_dir)
603 }
604 }
OLDNEW
« no previous file with comments | « no previous file | public/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698