OLD | NEW |
1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2013 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 is the root build file for GN. GN will start processing by loading this | 5 # This is the root build file for GN. GN will start processing by loading this |
6 # file, and recursively load all dependencies until all dependencies are either | 6 # file, and recursively load all dependencies until all dependencies are either |
7 # resolved or known not to exist (which will cause the build to fail). So if | 7 # resolved or known not to exist (which will cause the build to fail). So if |
8 # you add a new build file, there must be some path of dependencies from this | 8 # you add a new build file, there must be some path of dependencies from this |
9 # file to your new one or GN won't know about it. | 9 # file to your new one or GN won't know about it. |
10 | 10 |
(...skipping 26 matching lines...) Expand all Loading... |
37 # a GYP build. Because GN has different rules for deciding what an 'all' build | 37 # a GYP build. Because GN has different rules for deciding what an 'all' build |
38 # is, this may end up including targets that are actually defined in a GYP | 38 # is, this may end up including targets that are actually defined in a GYP |
39 # build but not dependencies of GYP's "all" (and so not actually built). | 39 # build but not dependencies of GYP's "all" (and so not actually built). |
40 # | 40 # |
41 # "gn_visibility": targets that are normally not visible to top-level targets, | 41 # "gn_visibility": targets that are normally not visible to top-level targets, |
42 # but are built anyway by "all". Since we don't want any such targets, we have | 42 # but are built anyway by "all". Since we don't want any such targets, we have |
43 # this placeholder to make sure hidden targets that aren't otherwise depended | 43 # this placeholder to make sure hidden targets that aren't otherwise depended |
44 # on yet are accounted for. | 44 # on yet are accounted for. |
45 # | 45 # |
46 # "All" is an alias for "gn_all". It exists for bot compatibility w/ GYP for | 46 # "All" is an alias for "gn_all". It exists for bot compatibility w/ GYP for |
47 # the iOS bots and the official builders, but should not be generally used | 47 # the iOS bots, but should not be generally used during the GYP->GN migration. |
48 # during the GYP->GN migration. We cannot guarantee that GN's "All" builds the | 48 # We cannot guarantee that GN's "All" builds the same set of targets as GYP's |
49 # same set of targets as GYP's "All" does, because GYP's "All" supports | 49 # "All" does, because GYP's "All" supports wildcards. |
50 # wildcards. | |
51 # | 50 # |
52 # Lastly, none of these targets are guaranteed to be the same as what ninja | 51 # Lastly, none of these targets are guaranteed to be the same as what ninja |
53 # will build with "all". For more on how "all" works and the differences in how | 52 # will build with "all". For more on how "all" works and the differences in how |
54 # GYP and GN determine "all", see crbug.com/503241. | 53 # GYP and GN determine "all", see crbug.com/503241. |
55 # | 54 # |
56 # TODO(GYP): crbug.com/481694. Make sure that the above is true and there are | 55 # TODO(GYP): crbug.com/481694. Make sure that the above is true and there are |
57 # scripts run on the bots that enforce this. Once the GYP migration is over, we | 56 # scripts run on the bots that enforce this. Once the GYP migration is over, we |
58 # can collapse all of these targets as desired. | 57 # can collapse all of these targets as desired. |
59 | 58 |
60 group("gn_all") { | 59 group("gn_all") { |
61 testonly = true | 60 testonly = true |
62 | 61 |
63 deps = [ | 62 deps = [ |
64 ":both_gn_and_gyp", | 63 ":both_gn_and_gyp", |
65 ":gn_only", | 64 ":gn_only", |
66 ":gn_visibility", | 65 ":gn_visibility", |
67 ] | 66 ] |
68 } | 67 } |
69 | 68 |
70 # TODO(GYP): This target exists for compatibility with GYP, specifically | 69 # TODO(GYP): This target exists for compatibility with GYP, specifically |
71 # for the iOS bots and the official builders. | 70 # for the iOS bots. We should update the iOS bots to not pass 'All'. |
72 group("All") { | 71 group("All") { |
73 testonly = true | 72 testonly = true |
74 | 73 |
75 deps = [ | 74 deps = [ |
76 ":gn_all", | 75 ":gn_all", |
77 ] | 76 ] |
78 } | 77 } |
79 | 78 |
80 # The "both_gn_and_gyp" target should reflect every target that is built | 79 # The "both_gn_and_gyp" target should reflect every target that is built |
81 # in both the GN and GYP builds, and ideally it should match the | 80 # in both the GN and GYP builds, and ideally it should match the |
82 # "both_gn_and_gyp" target in build/gn_migration.gypi line-for-line. | 81 # "both_gn_and_gyp" target in build/gn_migration.gypi line-for-line. |
83 # | 82 # |
84 # TODO(GYP): Add build steps that check and enforce this on the bots. | 83 # TODO(GYP): Add build steps that check and enforce this on the bots. |
85 group("both_gn_and_gyp") { | 84 group("both_gn_and_gyp") { |
86 testonly = true | 85 testonly = true |
87 deps = [ | 86 deps = [ |
88 "//base:base_unittests", | 87 "//base:base_unittests", |
89 "//chrome/installer", | 88 "//chrome/installer", |
90 "//components:components_unittests", | 89 "//components:components_unittests", |
91 "//net:net_unittests", | 90 "//net:net_unittests", |
92 "//skia:skia_unittests", | 91 "//skia:skia_unittests", |
93 "//sql:sql_unittests", | 92 "//sql:sql_unittests", |
94 "//sync:sync_unit_tests", | 93 "//sync:sync_unit_tests", |
| 94 "//third_party/openh264/tests:openh264_unittests", |
95 "//ui/base:ui_base_unittests", | 95 "//ui/base:ui_base_unittests", |
96 "//ui/gfx:gfx_unittests", | 96 "//ui/gfx:gfx_unittests", |
97 "//url:url_unittests", | 97 "//url:url_unittests", |
98 ] | 98 ] |
99 | 99 |
100 if (!is_ios && !is_android && !is_chromecast) { | 100 if (!is_ios && !is_android && !is_chromecast) { |
101 deps += [ | 101 deps += [ |
102 "//chrome", | 102 "//chrome", |
103 "//chrome/test:browser_tests", | 103 "//chrome/test:browser_tests", |
104 "//chrome/test:interactive_ui_tests", | 104 "//chrome/test:interactive_ui_tests", |
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
198 "//tools/imagediff($host_toolchain)", | 198 "//tools/imagediff($host_toolchain)", |
199 "//tools/telemetry:bitmaptools($host_toolchain)", | 199 "//tools/telemetry:bitmaptools($host_toolchain)", |
200 "//ui/display:display_unittests", | 200 "//ui/display:display_unittests", |
201 "//ui/events:events_unittests", | 201 "//ui/events:events_unittests", |
202 "//ui/gl:gl_unittests", | 202 "//ui/gl:gl_unittests", |
203 "//ui/touch_selection:ui_touch_selection_unittests", | 203 "//ui/touch_selection:ui_touch_selection_unittests", |
204 ] | 204 ] |
205 } else { | 205 } else { |
206 deps += [ | 206 deps += [ |
207 "//ios/net:ios_net_unittests", | 207 "//ios/net:ios_net_unittests", |
208 "//ios/public/provider/chrome/browser", | |
209 "//ios/public/provider/web", | |
210 "//ios/testing:ocmock_support_unittest", | 208 "//ios/testing:ocmock_support_unittest", |
211 "//ios/web/shell:ios_web_shell", | |
212 "//ios/web:ios_web_unittests", | 209 "//ios/web:ios_web_unittests", |
213 ] | 210 ] |
214 } | 211 } |
215 | 212 |
216 deps += root_extra_deps | 213 deps += root_extra_deps |
217 | 214 |
218 if (enable_extensions) { | 215 if (enable_extensions) { |
219 deps += [ "//extensions/shell:app_shell_unittests" ] | 216 deps += [ "//extensions/shell:app_shell_unittests" ] |
220 } | 217 } |
221 | 218 |
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
302 "//third_party/smhasher:murmurhash3", | 299 "//third_party/smhasher:murmurhash3", |
303 "//ui/message_center:test_support", | 300 "//ui/message_center:test_support", |
304 ] | 301 ] |
305 deps -= [ | 302 deps -= [ |
306 "//net:net_perftests", | 303 "//net:net_perftests", |
307 "//url:url_unittests", | 304 "//url:url_unittests", |
308 ] | 305 ] |
309 | 306 |
310 if (!is_chromecast) { | 307 if (!is_chromecast) { |
311 deps += [ | 308 deps += [ |
312 "//android_webview", | 309 "//android_webview:system_webview_apk", |
313 "//chrome/android:chrome_junit_tests", | 310 "//chrome/android:chrome_junit_tests", |
314 "//chrome/android:chrome_public_apk", | 311 "//chrome/android:chrome_public_apk", |
315 "//chrome/android:chrome_public_test_apk", | 312 "//chrome/android:chrome_public_test_apk", |
316 "//chrome/test/chromedriver/test/webview_shell:chromedriver_webview_shel
l_apk", | 313 "//chrome/test/chromedriver/test/webview_shell:chromedriver_webview_shel
l_apk", |
317 "//third_party/custom_tabs_client:custom_tabs_client_example_apk", | 314 "//third_party/custom_tabs_client:custom_tabs_client_example_apk", |
318 ] | 315 ] |
319 } | 316 } |
320 | 317 |
321 if (target_cpu != "x64") { | 318 if (target_cpu != "x64") { |
322 deps += [ "//third_party/android_platform:android_relocation_packer_unitte
sts($host_toolchain)" ] | 319 deps += [ "//third_party/android_platform:android_relocation_packer_unitte
sts($host_toolchain)" ] |
(...skipping 24 matching lines...) Expand all Loading... |
347 deps += [ | 344 deps += [ |
348 "//rlz:rlz_id", | 345 "//rlz:rlz_id", |
349 "//rlz:rlz_lib", | 346 "//rlz:rlz_lib", |
350 "//rlz:rlz_unittests", | 347 "//rlz:rlz_unittests", |
351 ] | 348 ] |
352 } | 349 } |
353 | 350 |
354 if (is_linux) { | 351 if (is_linux) { |
355 # The following are definitely linux-only. | 352 # The following are definitely linux-only. |
356 deps += [ | 353 deps += [ |
357 "//chrome:manpage", | |
358 "//chrome:xdg_mime", | |
359 "//dbus:dbus_test_server", | 354 "//dbus:dbus_test_server", |
360 "//dbus:dbus_unittests", | 355 "//dbus:dbus_unittests", |
361 "//net:disk_cache_memory_test", | 356 "//net:disk_cache_memory_test", |
362 "//net:flip_in_mem_edsm_server", | 357 "//net:flip_in_mem_edsm_server", |
363 "//net:flip_in_mem_edsm_server_unittests", | 358 "//net:flip_in_mem_edsm_server_unittests", |
364 "//net:quic_client", | 359 "//net:quic_client", |
365 "//net:quic_server", | 360 "//net:quic_server", |
366 "//sandbox/linux:chrome_sandbox", | 361 "//sandbox/linux:chrome_sandbox", |
367 "//sandbox/linux:sandbox_linux_unittests", | 362 "//sandbox/linux:sandbox_linux_unittests", |
368 ] | 363 ] |
369 | 364 |
370 if (is_chromeos || use_ash) { | 365 if (is_chromeos || use_ash) { |
371 deps += [ "//components/session_manager/core" ] | 366 deps += [ "//components/session_manager/core" ] |
372 } | 367 } |
373 | |
374 if (is_chrome_branded && is_official_build) { | |
375 # TODO(dpranke): add the linux_dump_symbols flag? | |
376 deps += [ "//chrome:linux_symbols" ] | |
377 } | |
378 } | 368 } |
379 | 369 |
380 if (is_ios || is_win || (is_linux && !is_chromeos)) { | 370 if (is_ios || is_win || (is_linux && !is_chromeos)) { |
381 deps += [ | 371 deps += [ |
382 "//base:base_i18n_perftests", | 372 "//base:base_i18n_perftests", |
383 "//base:base_perftests", | 373 "//base:base_perftests", |
384 "//google_apis:google_apis_unittests", | 374 "//google_apis:google_apis_unittests", |
385 ] | 375 ] |
386 } | 376 } |
387 | 377 |
388 if (is_win || (is_linux && !is_chromeos)) { | 378 if (is_win || (is_linux && !is_chromeos)) { |
389 # TODO(GYP): Figure out which of these should (and can) build | 379 # TODO(GYP): Figure out which of these should (and can) build |
390 # for android/chromeos/mac/ios. | 380 # for android/chromeos/mac/ios. |
391 deps += [ | 381 deps += [ |
392 "//base:check_example", | 382 "//base:check_example", |
393 "//base:build_utf8_validator_tables", | 383 "//base:build_utf8_validator_tables", |
394 "//cc:cc_perftests", | 384 "//cc:cc_perftests", |
395 "//cc/blink:cc_blink_unittests", | 385 "//cc/blink:cc_blink_unittests", |
396 "//chrome/test:load_library_perf_tests", | 386 "//chrome/test:load_library_perf_tests", |
397 "//chrome/test:performance_browser_tests", | 387 "//chrome/test:performance_browser_tests", |
398 "//chrome/test:sync_performance_tests", | 388 "//chrome/test:sync_performance_tests", |
399 "//chrome/test/chromedriver:chromedriver", | 389 "//chrome/test/chromedriver:chromedriver", |
400 "//chrome/test/chromedriver:chromedriver_tests", | 390 "//chrome/test/chromedriver:chromedriver_tests", |
| 391 "//chrome/tools/profile_reset:jtl_compiler", |
401 "//components:components_perftests", | 392 "//components:components_perftests", |
402 "//content/test:content_gl_tests", | 393 "//content/test:content_gl_tests", |
403 "//content/test:content_gl_benchmark", | 394 "//content/test:content_gl_benchmark", |
404 "//courgette:courgette", | 395 "//courgette:courgette", |
405 "//courgette:courgette_fuzz", | 396 "//courgette:courgette_fuzz", |
406 "//courgette:courgette_minimal_tool", | 397 "//courgette:courgette_minimal_tool", |
407 "//courgette:courgette_unittests", | 398 "//courgette:courgette_unittests", |
408 "//device:device_unittests", | 399 "//device:device_unittests", |
409 "//gin:gin_shell", | 400 "//gin:gin_shell", |
410 "//gin:gin_unittests", | 401 "//gin:gin_unittests", |
(...skipping 10 matching lines...) Expand all Loading... |
421 "//net:dump_cache", | 412 "//net:dump_cache", |
422 "//net:gdig", | 413 "//net:gdig", |
423 "//net:get_server_time", | 414 "//net:get_server_time", |
424 "//net:net_watcher", # TODO(GYP): This should be conditional on use_v8_in
_net | 415 "//net:net_watcher", # TODO(GYP): This should be conditional on use_v8_in
_net |
425 "//net:run_testserver", | 416 "//net:run_testserver", |
426 "//net:stress_cache", | 417 "//net:stress_cache", |
427 "//net:tld_cleanup", | 418 "//net:tld_cleanup", |
428 "//ppapi:pepper_hash_for_uma", | 419 "//ppapi:pepper_hash_for_uma", |
429 "//ppapi:ppapi_perftests", | 420 "//ppapi:ppapi_perftests", |
430 "//sync:run_sync_testserver", | 421 "//sync:run_sync_testserver", |
| 422 "//third_party/angle/src/tests:angle_end2end_tests", |
431 "//third_party/angle/src/tests:angle_unittests", | 423 "//third_party/angle/src/tests:angle_unittests", |
432 "//third_party/codesighs:maptsvdifftool", | 424 "//third_party/codesighs:maptsvdifftool", |
433 "//third_party/leveldatabase:env_chromium_unittests", | 425 "//third_party/leveldatabase:env_chromium_unittests", |
434 "//third_party/libaddressinput:libaddressinput_unittests", | 426 "//third_party/libaddressinput:libaddressinput_unittests", |
435 "//third_party/libphonenumber:libphonenumber_unittests", | 427 "//third_party/libphonenumber:libphonenumber_unittests", |
436 "//ui/compositor:compositor_unittests", | 428 "//ui/compositor:compositor_unittests", |
437 ] | 429 ] |
438 | 430 |
439 if (!is_linux) { | |
440 # TODO(dpranke): Re-enable this once | |
441 # https://chromium-review.googlesource.com/#/c/312298/1 is rolled | |
442 # into chromium. | |
443 deps += [ "//third_party/angle/src/tests:angle_end2end_tests" ] | |
444 } | |
445 | |
446 if (enable_extensions) { | 431 if (enable_extensions) { |
447 deps += [ "//extensions/shell:app_shell" ] | 432 deps += [ "//extensions/shell:app_shell" ] |
448 } | 433 } |
449 | 434 |
450 if (enable_nacl) { | 435 if (enable_nacl) { |
451 deps += [ "//components/nacl:nacl_loader_unittests" ] | 436 deps += [ "//components/nacl:nacl_loader_unittests" ] |
452 | |
453 if (is_linux) { | |
454 # TODO(dpranke): Figure out what platforms should actually have this. | |
455 deps += [ | |
456 "//components/nacl:nacl_helper", | |
457 "//components/nacl:helper_nonsfi", | |
458 ] | |
459 } | |
460 } | 437 } |
461 | 438 |
462 if (media_use_ffmpeg) { | 439 if (media_use_ffmpeg) { |
463 deps += [ "//media:ffmpeg_regression_tests" ] | 440 deps += [ "//media:ffmpeg_regression_tests" ] |
464 } | 441 } |
465 | 442 |
466 if (use_ash) { | 443 if (use_ash) { |
467 deps += [ | 444 deps += [ |
468 "//ash:ash_shell_with_content", | 445 "//ash:ash_shell_with_content", |
469 "//ash:ash_unittests", | 446 "//ash:ash_unittests", |
(...skipping 218 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
688 } | 665 } |
689 if (is_android) { | 666 if (is_android) { |
690 deps += [ "//build/android/gyp/test:hello_world" ] | 667 deps += [ "//build/android/gyp/test:hello_world" ] |
691 } | 668 } |
692 | 669 |
693 if (is_linux && current_toolchain == host_toolchain) { | 670 if (is_linux && current_toolchain == host_toolchain) { |
694 deps += [ "//v8:d8" ] | 671 deps += [ "//v8:d8" ] |
695 } | 672 } |
696 } | 673 } |
697 | 674 |
698 if (is_android || is_linux || is_chromeos) { | 675 if (is_android) { |
699 deps += [ "//blimp" ] | 676 deps += [ "//blimp" ] |
700 } | 677 } |
701 | 678 |
702 if (is_mac) { | 679 if (is_mac) { |
703 deps -= [ "//mandoline:all" ] # TODO(GYP) | 680 deps -= [ "//mandoline:all" ] # TODO(GYP) |
704 } | 681 } |
705 | 682 |
706 if (use_libfuzzer) { | 683 if (use_libfuzzer) { |
707 deps += [ "//testing/libfuzzer:libfuzzer_main" ] | 684 deps += [ "//testing/libfuzzer:libfuzzer_main" ] |
708 } | 685 } |
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
840 if (target_cpu == "x86") { | 817 if (target_cpu == "x86") { |
841 deps += [ | 818 deps += [ |
842 # "//content/shell:crash_service_win64", TODO(GYP): crbug.com/537009 | 819 # "//content/shell:crash_service_win64", TODO(GYP): crbug.com/537009 |
843 ] | 820 ] |
844 } | 821 } |
845 } else { | 822 } else { |
846 deps += [ "//breakpad:minidump_stackwalk($host_toolchain)" ] | 823 deps += [ "//breakpad:minidump_stackwalk($host_toolchain)" ] |
847 } | 824 } |
848 } | 825 } |
849 } | 826 } |
OLD | NEW |