| OLD | NEW |
| (Empty) |
| 1 # Copyright 2015 The Chromium 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 | |
| 5 import("//build/config/chrome_build.gni") | |
| 6 import("//build/config/features.gni") | |
| 7 import("//build/config/sanitizers/sanitizers.gni") | |
| 8 import("//build/config/ui.gni") | |
| 9 import("//mojo/public/tools/bindings/mojom.gni") | |
| 10 import("//tools/grit/repack.gni") | |
| 11 import("//tools/grit/grit_rule.gni") | |
| 12 | |
| 13 repack("pak") { | |
| 14 sources = [ | |
| 15 "$root_gen_dir/blimp/engine/blimp_browser_resources.pak", | |
| 16 "$root_gen_dir/blink/public/resources/blink_image_resources_100_percent.pak"
, | |
| 17 "$root_gen_dir/blink/public/resources/blink_resources.pak", | |
| 18 "$root_gen_dir/content/app/resources/content_resources_100_percent.pak", | |
| 19 "$root_gen_dir/content/app/strings/content_strings_en-US.pak", | |
| 20 "$root_gen_dir/content/browser/tracing/tracing_resources.pak", | |
| 21 "$root_gen_dir/content/content_resources.pak", | |
| 22 "$root_gen_dir/net/net_resources.pak", | |
| 23 "$root_gen_dir/ui/resources/ui_resources_100_percent.pak", | |
| 24 "$root_gen_dir/ui/resources/webui_resources.pak", | |
| 25 "$root_gen_dir/ui/strings/app_locale_settings_en-US.pak", | |
| 26 "$root_gen_dir/ui/strings/ui_strings_en-US.pak", | |
| 27 ] | |
| 28 | |
| 29 deps = [ | |
| 30 ":resources", | |
| 31 "//content:resources", | |
| 32 "//content/app/resources", | |
| 33 "//content/app/strings", | |
| 34 "//content/browser/tracing:resources", | |
| 35 "//net:net_resources", | |
| 36 "//third_party/WebKit/public:image_resources", | |
| 37 "//third_party/WebKit/public:resources", | |
| 38 "//ui/resources", | |
| 39 "//ui/strings", | |
| 40 ] | |
| 41 | |
| 42 if (toolkit_views) { | |
| 43 deps += [ "//ui/views/resources" ] | |
| 44 sources += | |
| 45 [ "$root_gen_dir/ui/views/resources/views_resources_100_percent.pak" ] | |
| 46 } | |
| 47 | |
| 48 output = "$root_out_dir/blimp_engine.pak" | |
| 49 } | |
| 50 | |
| 51 grit("resources") { | |
| 52 visibility = [ ":*" ] | |
| 53 source = "app/blimp_browser_resources.grd" | |
| 54 use_qualified_include = true | |
| 55 output_dir = "$root_gen_dir/blimp/engine" | |
| 56 outputs = [ | |
| 57 "grit/blimp_browser_resources.h", | |
| 58 "blimp_browser_resources.pak", | |
| 59 ] | |
| 60 } | |
| 61 | |
| 62 source_set("app") { | |
| 63 sources = [ | |
| 64 "app/blimp_browser_main_parts.cc", | |
| 65 "app/blimp_browser_main_parts.h", | |
| 66 "app/blimp_content_browser_client.cc", | |
| 67 "app/blimp_content_browser_client.h", | |
| 68 "app/blimp_content_main_delegate.cc", | |
| 69 "app/blimp_content_main_delegate.h", | |
| 70 ] | |
| 71 | |
| 72 public_deps = [ | |
| 73 ":app_metrics", | |
| 74 "//device/geolocation", | |
| 75 "//device/geolocation/public/interfaces", | |
| 76 ] | |
| 77 | |
| 78 deps = [ | |
| 79 ":app_config", | |
| 80 ":app_net", | |
| 81 ":app_permissions", | |
| 82 ":app_settings", | |
| 83 ":app_ui", | |
| 84 ":blob_channel_service", | |
| 85 ":common", | |
| 86 ":crash", | |
| 87 ":feature", | |
| 88 ":font_data_fetcher", | |
| 89 ":font_fetcher_mojo_impl", | |
| 90 ":renderer", | |
| 91 ":resources", | |
| 92 ":session", | |
| 93 "//base", | |
| 94 "//blimp/common", | |
| 95 "//blimp/common/proto", | |
| 96 "//blimp/engine:blob_channel_mojo", | |
| 97 "//blimp/net", | |
| 98 "//components/crash/content/app:app_breakpad_mac_win_to_be_deleted", | |
| 99 "//components/crash/content/app:lib", | |
| 100 "//content/public/app:both", | |
| 101 "//content/public/browser", | |
| 102 "//content/public/common", | |
| 103 "//content/public/common:service_names", | |
| 104 "//content/public/renderer", | |
| 105 "//content/public/utility", | |
| 106 "//device/geolocation", | |
| 107 "//net", | |
| 108 "//ui/base:base", | |
| 109 ] | |
| 110 } | |
| 111 | |
| 112 source_set("app_config") { | |
| 113 sources = [ | |
| 114 "app/blimp_engine_config.cc", | |
| 115 "app/blimp_engine_config.h", | |
| 116 ] | |
| 117 deps = [ | |
| 118 "//base", | |
| 119 "//blimp/common", | |
| 120 "//cc", | |
| 121 "//content/public/common", | |
| 122 "//ui/gl", | |
| 123 "//ui/native_theme", | |
| 124 ] | |
| 125 } | |
| 126 | |
| 127 source_set("app_metrics") { | |
| 128 sources = [ | |
| 129 "app/blimp_metrics_service_client.cc", | |
| 130 "app/blimp_metrics_service_client.h", | |
| 131 "app/blimp_stability_metrics_provider.cc", | |
| 132 "app/blimp_stability_metrics_provider.h", | |
| 133 ] | |
| 134 | |
| 135 public_deps = [ | |
| 136 "//components/metrics", | |
| 137 "//content/public/browser", | |
| 138 ] | |
| 139 | |
| 140 deps = [ | |
| 141 "//base", | |
| 142 "//base:i18n", | |
| 143 "//components/metrics:gpu", | |
| 144 "//components/metrics:net", | |
| 145 "//components/metrics:profiler", | |
| 146 "//components/metrics:ui", | |
| 147 "//components/prefs", | |
| 148 "//components/version_info", | |
| 149 "//net", | |
| 150 ] | |
| 151 } | |
| 152 | |
| 153 source_set("app_net") { | |
| 154 sources = [ | |
| 155 "app/blimp_network_delegate.cc", | |
| 156 "app/blimp_network_delegate.h", | |
| 157 "app/blimp_system_url_request_context_getter.cc", | |
| 158 "app/blimp_system_url_request_context_getter.h", | |
| 159 "app/blimp_url_request_context_getter.cc", | |
| 160 "app/blimp_url_request_context_getter.h", | |
| 161 ] | |
| 162 deps = [ | |
| 163 ":common_user_agent", | |
| 164 "//base", | |
| 165 "//content/public/browser", | |
| 166 "//net", | |
| 167 ] | |
| 168 } | |
| 169 | |
| 170 source_set("app_permissions") { | |
| 171 sources = [ | |
| 172 "app/blimp_permission_manager.cc", | |
| 173 "app/blimp_permission_manager.h", | |
| 174 ] | |
| 175 deps = [ | |
| 176 "//base", | |
| 177 "//content/public/browser", | |
| 178 ] | |
| 179 } | |
| 180 | |
| 181 source_set("app_settings") { | |
| 182 sources = [ | |
| 183 "app/engine_settings.h", | |
| 184 "app/settings_manager.cc", | |
| 185 "app/settings_manager.h", | |
| 186 ] | |
| 187 deps = [ | |
| 188 "//blimp/net", | |
| 189 "//content/public/browser", | |
| 190 "//content/public/common", | |
| 191 ] | |
| 192 } | |
| 193 | |
| 194 source_set("app_switches") { | |
| 195 sources = [ | |
| 196 "app/switches.cc", | |
| 197 "app/switches.h", | |
| 198 ] | |
| 199 } | |
| 200 | |
| 201 source_set("app_ui") { | |
| 202 sources = [ | |
| 203 "app/ui/blimp_layout_manager.cc", | |
| 204 "app/ui/blimp_layout_manager.h", | |
| 205 "app/ui/blimp_screen.cc", | |
| 206 "app/ui/blimp_screen.h", | |
| 207 "app/ui/blimp_window_parenting_client.cc", | |
| 208 "app/ui/blimp_window_parenting_client.h", | |
| 209 "app/ui/blimp_window_tree_host.cc", | |
| 210 "app/ui/blimp_window_tree_host.h", | |
| 211 ] | |
| 212 | |
| 213 deps = [ | |
| 214 "//blimp/common", | |
| 215 "//cc", | |
| 216 "//cc/surfaces", | |
| 217 "//ui/aura", | |
| 218 "//ui/compositor", | |
| 219 "//ui/display", | |
| 220 "//ui/events", | |
| 221 "//ui/gfx", | |
| 222 "//ui/platform_window", | |
| 223 "//ui/platform_window/stub/", | |
| 224 ] | |
| 225 } | |
| 226 | |
| 227 source_set("font_data_fetcher") { | |
| 228 sources = [ | |
| 229 "browser/font_data_fetcher.h", | |
| 230 "browser/font_data_fetcher_impl.cc", | |
| 231 "browser/font_data_fetcher_impl.h", | |
| 232 ] | |
| 233 | |
| 234 deps = [ | |
| 235 "//base", | |
| 236 "//skia", | |
| 237 ] | |
| 238 } | |
| 239 | |
| 240 source_set("crash") { | |
| 241 sources = [ | |
| 242 "app/blimp_engine_crash_keys.cc", | |
| 243 "app/blimp_engine_crash_keys.h", | |
| 244 "app/blimp_engine_crash_reporter_client.cc", | |
| 245 "app/blimp_engine_crash_reporter_client.h", | |
| 246 ] | |
| 247 | |
| 248 deps = [ | |
| 249 "//base", | |
| 250 "//components/crash/content/app:app_breakpad_mac_win_to_be_deleted", | |
| 251 "//components/crash/content/app:lib", | |
| 252 "//components/crash/core/common", | |
| 253 "//components/version_info", | |
| 254 "//components/version_info:generate_version_info", | |
| 255 "//content/public/common", | |
| 256 ] | |
| 257 } | |
| 258 | |
| 259 source_set("common") { | |
| 260 sources = [ | |
| 261 "common/blimp_browser_context.cc", | |
| 262 "common/blimp_browser_context.h", | |
| 263 "common/blimp_content_client.cc", | |
| 264 "common/blimp_content_client.h", | |
| 265 ] | |
| 266 | |
| 267 deps = [ | |
| 268 ":app_metrics", | |
| 269 ":app_net", | |
| 270 ":app_permissions", | |
| 271 ":common_user_agent", | |
| 272 "//base", | |
| 273 "//components/metrics", | |
| 274 "//components/pref_registry", | |
| 275 "//components/prefs", | |
| 276 "//components/version_info", | |
| 277 "//content/public/common", | |
| 278 "//net", | |
| 279 "//ui/base", | |
| 280 ] | |
| 281 } | |
| 282 | |
| 283 source_set("common_user_agent") { | |
| 284 sources = [ | |
| 285 "common/blimp_user_agent.cc", | |
| 286 "common/blimp_user_agent.h", | |
| 287 ] | |
| 288 deps = [ | |
| 289 "//components/version_info", | |
| 290 "//content/public/common", | |
| 291 ] | |
| 292 } | |
| 293 | |
| 294 source_set("feature") { | |
| 295 sources = [ | |
| 296 "feature/engine_render_widget_feature.cc", | |
| 297 "feature/engine_render_widget_feature.h", | |
| 298 "feature/engine_settings_feature.cc", | |
| 299 "feature/engine_settings_feature.h", | |
| 300 "feature/geolocation/blimp_location_provider.cc", | |
| 301 "feature/geolocation/blimp_location_provider.h", | |
| 302 "feature/geolocation/engine_geolocation_feature.cc", | |
| 303 "feature/geolocation/engine_geolocation_feature.h", | |
| 304 ] | |
| 305 | |
| 306 deps = [ | |
| 307 "//base", | |
| 308 "//blimp/common", | |
| 309 "//blimp/common/proto", | |
| 310 "//blimp/engine:app_settings", | |
| 311 "//blimp/engine:common", | |
| 312 "//blimp/net", | |
| 313 "//content/public/browser", | |
| 314 "//content/public/common", | |
| 315 "//device/geolocation", | |
| 316 "//net", | |
| 317 "//ui/base", | |
| 318 "//ui/base/ime", | |
| 319 "//ui/resources", | |
| 320 "//ui/wm", | |
| 321 ] | |
| 322 } | |
| 323 | |
| 324 source_set("renderer") { | |
| 325 sources = [ | |
| 326 "renderer/blimp_content_renderer_client.cc", | |
| 327 "renderer/blimp_content_renderer_client.h", | |
| 328 "renderer/blimp_engine_picture_cache.cc", | |
| 329 "renderer/blimp_engine_picture_cache.h", | |
| 330 "renderer/blimp_remote_compositor_bridge.cc", | |
| 331 "renderer/blimp_remote_compositor_bridge.h", | |
| 332 "renderer/blob_channel_sender_proxy.cc", | |
| 333 "renderer/blob_channel_sender_proxy.h", | |
| 334 "renderer/engine_image_serialization_processor.cc", | |
| 335 "renderer/engine_image_serialization_processor.h", | |
| 336 "renderer/frame_scheduler.cc", | |
| 337 "renderer/frame_scheduler.h", | |
| 338 ] | |
| 339 | |
| 340 deps = [ | |
| 341 ":blob_channel_service", | |
| 342 "//base", | |
| 343 "//blimp/common", | |
| 344 "//blimp/common/proto", | |
| 345 "//blimp/net", | |
| 346 "//cc", | |
| 347 "//cc/proto", | |
| 348 "//components/web_cache/renderer", | |
| 349 "//content/public/common", | |
| 350 "//content/public/renderer", | |
| 351 "//services/service_manager/public/cpp", | |
| 352 "//skia", | |
| 353 "//third_party/libwebp", | |
| 354 "//ui/gfx/geometry", | |
| 355 "//ui/gl", | |
| 356 ] | |
| 357 } | |
| 358 | |
| 359 source_set("session") { | |
| 360 sources = [ | |
| 361 "session/blimp_engine_session.cc", | |
| 362 "session/blimp_engine_session.h", | |
| 363 "session/page_load_tracker.cc", | |
| 364 "session/page_load_tracker.h", | |
| 365 "session/tab.cc", | |
| 366 "session/tab.h", | |
| 367 ] | |
| 368 | |
| 369 deps = [ | |
| 370 ":app_config", | |
| 371 ":app_settings", | |
| 372 ":app_switches", | |
| 373 ":app_ui", | |
| 374 ":blob_channel_service", | |
| 375 ":common", | |
| 376 ":common_user_agent", | |
| 377 ":feature", | |
| 378 "//base", | |
| 379 "//blimp/common", | |
| 380 "//blimp/common/proto", | |
| 381 "//blimp/net", | |
| 382 "//content/public/browser", | |
| 383 "//content/public/common", | |
| 384 "//device/geolocation", | |
| 385 "//net", | |
| 386 "//ui/aura", | |
| 387 "//ui/base/ime", | |
| 388 "//ui/gfx/geometry", | |
| 389 "//ui/wm", | |
| 390 ] | |
| 391 } | |
| 392 | |
| 393 # Implements the browser portions of the Mojo bridge to BlobChannel. | |
| 394 source_set("blob_channel_service") { | |
| 395 sources = [ | |
| 396 "mojo/blob_channel_service.cc", | |
| 397 "mojo/blob_channel_service.h", | |
| 398 ] | |
| 399 deps = [ | |
| 400 "//blimp/net", | |
| 401 ] | |
| 402 public_deps = [ | |
| 403 ":blob_channel_mojo", | |
| 404 ] | |
| 405 } | |
| 406 | |
| 407 mojom("blob_channel_mojo") { | |
| 408 sources = [ | |
| 409 "mojo/blob_channel.mojom", | |
| 410 ] | |
| 411 } | |
| 412 | |
| 413 # Implements the browser portion of the FontAccess. | |
| 414 source_set("font_fetcher_mojo_impl") { | |
| 415 sources = [ | |
| 416 "mojo/font_fetcher_mojo_impl.cc", | |
| 417 "mojo/font_fetcher_mojo_impl.h", | |
| 418 ] | |
| 419 public_deps = [ | |
| 420 ":font_fetcher_mojo", | |
| 421 "//skia", | |
| 422 ] | |
| 423 deps = [ | |
| 424 ":font_data_fetcher", | |
| 425 ] | |
| 426 } | |
| 427 | |
| 428 mojom("font_fetcher_mojo") { | |
| 429 sources = [ | |
| 430 "mojo/font_fetcher.mojom", | |
| 431 ] | |
| 432 } | |
| 433 | |
| 434 source_set("mojo_unit_tests") { | |
| 435 testonly = true | |
| 436 | |
| 437 sources = [ | |
| 438 "mojo/font_fetcher_mojo_impl_unittest.cc", | |
| 439 ] | |
| 440 | |
| 441 deps = [ | |
| 442 ":font_data_fetcher", | |
| 443 ":font_fetcher_mojo", | |
| 444 ":font_fetcher_mojo_impl", | |
| 445 "//skia", | |
| 446 "//testing/gmock", | |
| 447 "//testing/gtest:gtest", | |
| 448 ] | |
| 449 } | |
| 450 | |
| 451 source_set("test_support") { | |
| 452 testonly = true | |
| 453 | |
| 454 sources = [ | |
| 455 "app/test_content_main_delegate.cc", | |
| 456 "app/test_content_main_delegate.h", | |
| 457 "feature/geolocation/mock_blimp_location_provider_delegate.cc", | |
| 458 "feature/geolocation/mock_blimp_location_provider_delegate.h", | |
| 459 ] | |
| 460 | |
| 461 deps = [ | |
| 462 ":app", | |
| 463 ":feature", | |
| 464 "//base", | |
| 465 "//testing/gmock", | |
| 466 ] | |
| 467 } | |
| 468 | |
| 469 source_set("app_unit_tests") { | |
| 470 testonly = true | |
| 471 | |
| 472 sources = [ | |
| 473 "app/blimp_engine_config_unittest.cc", | |
| 474 "app/blimp_metrics_service_client_unittest.cc", | |
| 475 "app/blimp_stability_metrics_provider_unittest.cc", | |
| 476 "app/blimp_system_url_request_context_getter_unittest.cc", | |
| 477 "app/settings_manager_unittest.cc", | |
| 478 "app/ui/blimp_screen_unittest.cc", | |
| 479 ] | |
| 480 | |
| 481 deps = [ | |
| 482 ":app", | |
| 483 ":app_config", | |
| 484 ":app_metrics", | |
| 485 ":app_net", | |
| 486 ":app_settings", | |
| 487 "//base", | |
| 488 "//base/test:test_support", | |
| 489 "//blimp/common", | |
| 490 "//blimp/common:test_support", | |
| 491 "//blimp/engine:app_ui", | |
| 492 "//components/metrics:metrics", | |
| 493 "//components/pref_registry:pref_registry", | |
| 494 "//components/prefs:prefs", | |
| 495 "//components/prefs:test_support", | |
| 496 "//content/test:test_support", | |
| 497 "//net:test_support", | |
| 498 "//testing/gmock", | |
| 499 "//testing/gtest", | |
| 500 "//ui/display", | |
| 501 "//ui/gfx:test_support", | |
| 502 ] | |
| 503 } | |
| 504 | |
| 505 source_set("common_unit_tests") { | |
| 506 testonly = true | |
| 507 | |
| 508 sources = [ | |
| 509 "common/blimp_browser_context_unittest.cc", | |
| 510 ] | |
| 511 | |
| 512 deps = [ | |
| 513 ":common", | |
| 514 "//base", | |
| 515 "//base/test:test_support", | |
| 516 "//components/metrics:metrics", | |
| 517 "//content/public/browser", | |
| 518 "//content/test:test_support", | |
| 519 "//net:test_support", | |
| 520 "//testing/gmock", | |
| 521 "//testing/gtest", | |
| 522 ] | |
| 523 } | |
| 524 | |
| 525 source_set("feature_unit_tests") { | |
| 526 testonly = true | |
| 527 | |
| 528 sources = [ | |
| 529 "feature/engine_render_widget_feature_unittest.cc", | |
| 530 "feature/engine_settings_feature_unittest.cc", | |
| 531 "feature/geolocation/blimp_location_provider_unittest.cc", | |
| 532 "feature/geolocation/engine_geolocation_feature_unittest.cc", | |
| 533 ] | |
| 534 | |
| 535 deps = [ | |
| 536 ":feature", | |
| 537 ":test_support", | |
| 538 "//base", | |
| 539 "//base/test:test_support", | |
| 540 "//blimp/common", | |
| 541 "//blimp/common/proto", | |
| 542 "//blimp/engine:app_settings", | |
| 543 "//blimp/net", | |
| 544 "//blimp/net:test_support", | |
| 545 "//content", | |
| 546 "//content/public/browser", | |
| 547 "//device/geolocation", | |
| 548 "//net", | |
| 549 "//net:test_support", | |
| 550 "//testing/gmock", | |
| 551 "//testing/gtest", | |
| 552 "//third_party/WebKit/public:blink_headers", | |
| 553 "//ui/base:test_support", | |
| 554 ] | |
| 555 } | |
| 556 | |
| 557 source_set("font_data_fetcher_unit_tests") { | |
| 558 testonly = true | |
| 559 | |
| 560 sources = [ | |
| 561 "browser/font_data_fetcher_impl_unittest.cc", | |
| 562 ] | |
| 563 | |
| 564 deps = [ | |
| 565 ":font_data_fetcher", | |
| 566 "//base", | |
| 567 "//base/test:test_support", | |
| 568 "//net:test_support", | |
| 569 "//skia", | |
| 570 "//testing/gmock", | |
| 571 "//testing/gtest", | |
| 572 ] | |
| 573 } | |
| 574 | |
| 575 source_set("renderer_unit_tests") { | |
| 576 testonly = true | |
| 577 | |
| 578 sources = [ | |
| 579 "renderer/blimp_engine_picture_cache_unittest.cc", | |
| 580 "renderer/blimp_remote_compositor_bridge_unittest.cc", | |
| 581 "renderer/blob_channel_sender_proxy_unittest.cc", | |
| 582 "renderer/frame_scheduler_unittest.cc", | |
| 583 ] | |
| 584 | |
| 585 deps = [ | |
| 586 ":renderer", | |
| 587 "//base", | |
| 588 "//blimp/common", | |
| 589 "//blimp/common:test_support", | |
| 590 "//blimp/engine:blob_channel_mojo", | |
| 591 "//blimp/engine:blob_channel_service", | |
| 592 "//blimp/net:test_support", | |
| 593 "//blimp/test:support", | |
| 594 "//cc/proto", | |
| 595 "//mojo/public", | |
| 596 "//skia", | |
| 597 "//testing/gmock", | |
| 598 "//testing/gtest", | |
| 599 ] | |
| 600 } | |
| 601 | |
| 602 source_set("unit_tests") { | |
| 603 testonly = true | |
| 604 | |
| 605 deps = [ | |
| 606 ":app_unit_tests", | |
| 607 ":common_unit_tests", | |
| 608 ":feature_unit_tests", | |
| 609 ":font_data_fetcher_unit_tests", | |
| 610 ":mojo_unit_tests", | |
| 611 ":renderer_unit_tests", | |
| 612 ] | |
| 613 } | |
| 614 | |
| 615 if (is_linux) { | |
| 616 _runtime_deps = "$root_gen_dir/blimp-engine.runtime_deps" | |
| 617 _rebased_runtime_deps = rebase_path(_runtime_deps, root_out_dir) | |
| 618 | |
| 619 executable("blimp_engine_app") { | |
| 620 sources = [ | |
| 621 "app/blimp_main.cc", | |
| 622 ] | |
| 623 | |
| 624 deps = [ | |
| 625 ":app", | |
| 626 ":app_config", | |
| 627 ":pak", | |
| 628 "//base", | |
| 629 "//blimp/net", | |
| 630 "//content/public/app:both", | |
| 631 ] | |
| 632 | |
| 633 data_deps = [ | |
| 634 ":pak", | |
| 635 "//sandbox/linux:chrome_sandbox", | |
| 636 "//third_party/blimp_fonts", | |
| 637 ] | |
| 638 | |
| 639 # Setting this causes GN to write the list of runtime dependencies | |
| 640 # for this target to the specified location. We use this list of | |
| 641 # files to generate the tarball below in :blimp_engine_bundle, | |
| 642 # so that it will contain everything we need to run the engine. | |
| 643 write_runtime_deps = _runtime_deps | |
| 644 } | |
| 645 | |
| 646 group("engine") { | |
| 647 public_deps = [ | |
| 648 ":blimp_engine_app", | |
| 649 ] | |
| 650 } | |
| 651 | |
| 652 _manifest = "$root_gen_dir/engine-manifest.txt" | |
| 653 _rebased_manifest = rebase_path(_manifest, root_out_dir) | |
| 654 _rebased_blacklist = | |
| 655 rebase_path("//blimp/tools/engine-manifest-blacklist.txt") | |
| 656 | |
| 657 action("generate_manifest") { | |
| 658 script = "//blimp/tools/generate-target-manifest.py" | |
| 659 args = [ | |
| 660 "--blacklist", | |
| 661 _rebased_blacklist, | |
| 662 "--runtime-deps-file", | |
| 663 _rebased_runtime_deps, | |
| 664 "--output", | |
| 665 _rebased_manifest, | |
| 666 ] | |
| 667 inputs = [ | |
| 668 _runtime_deps, | |
| 669 ] | |
| 670 outputs = [ | |
| 671 _manifest, | |
| 672 ] | |
| 673 | |
| 674 # By specifying a dependency (not a data_dependency) on :engine, | |
| 675 # we can be sure that everything is built before the action is | |
| 676 # complete (though not necessarily before we generate the manifest | |
| 677 # itself). | |
| 678 deps = [ | |
| 679 ":engine", | |
| 680 ] | |
| 681 } | |
| 682 | |
| 683 # Builds and bundles the engine into a tarball that can be used to build a | |
| 684 # Docker image. | |
| 685 action("blimp_engine_bundle") { | |
| 686 script = "//blimp/tools/create-bundle.py" | |
| 687 | |
| 688 # These form the arguments to the script. | |
| 689 _rebased_out_dir = rebase_path(root_out_dir) | |
| 690 _rebased_dockerfile = rebase_path("//blimp/engine/Dockerfile") | |
| 691 _rebased_dockerfile_base = rebase_path("//blimp/tools/Dockerfile.base") | |
| 692 _rebased_startup_script = rebase_path("//blimp/engine/start_engine.sh") | |
| 693 _bundle = "$root_out_dir/blimp_engine_bundle.tar.gz" | |
| 694 | |
| 695 # Depending on this ensures that both the manifest is generated | |
| 696 # and everything in the manifest has been built. | |
| 697 deps = [ | |
| 698 ":generate_manifest", | |
| 699 ] | |
| 700 | |
| 701 sources = [ | |
| 702 _manifest, | |
| 703 _rebased_dockerfile, | |
| 704 _rebased_dockerfile_base, | |
| 705 _rebased_startup_script, | |
| 706 ] | |
| 707 outputs = [ | |
| 708 _bundle, | |
| 709 ] | |
| 710 | |
| 711 # Manually specify the actual arguments to the script. | |
| 712 args = [ | |
| 713 "--build-dir", | |
| 714 _rebased_out_dir, | |
| 715 "--filelist", | |
| 716 _rebased_dockerfile, | |
| 717 _rebased_dockerfile_base, | |
| 718 _rebased_startup_script, | |
| 719 "--manifest", | |
| 720 _rebased_manifest, | |
| 721 "--output", | |
| 722 rebase_path(_bundle), | |
| 723 ] | |
| 724 } | |
| 725 | |
| 726 # Crash symbols should only be created and uploaded from official builders. | |
| 727 if (is_official_build) { | |
| 728 # Action to create a Breakpad symbol file for the Engine. This can take | |
| 729 # a long time. | |
| 730 action("blimp_symbols") { | |
| 731 script = "//build/linux/dump_app_syms.py" | |
| 732 | |
| 733 dump_syms_label = "//breakpad:dump_syms" | |
| 734 dump_syms_binary = | |
| 735 get_label_info(dump_syms_label, "root_out_dir") + "/" + "dump_syms" | |
| 736 | |
| 737 engine_binary = "$root_out_dir/blimp_engine_app" | |
| 738 symbol_file = "$root_out_dir/blimp_engine_app.breakpad.x64" | |
| 739 | |
| 740 inputs = [ | |
| 741 engine_binary, | |
| 742 dump_syms_binary, | |
| 743 ] | |
| 744 outputs = [ | |
| 745 symbol_file, | |
| 746 ] | |
| 747 | |
| 748 args = [ | |
| 749 "./" + rebase_path(dump_syms_binary, root_build_dir), | |
| 750 "0", # strip_binary = false | |
| 751 rebase_path(engine_binary, root_build_dir), | |
| 752 rebase_path(symbol_file, root_build_dir), | |
| 753 ] | |
| 754 | |
| 755 # Include symupload target here as it is needed by the buildbots to upload | |
| 756 # the symbol file created by dump_syms. | |
| 757 deps = [ | |
| 758 ":blimp_engine_app", | |
| 759 "//breakpad:symupload", | |
| 760 dump_syms_label, | |
| 761 ] | |
| 762 } | |
| 763 } | |
| 764 } | |
| OLD | NEW |