Build Fuchsia packages for test and executable targets.

All targets that use the test() or fuchsia_executable_runner rules
will produce Fuchsia packages, which contain the test executable and
their runtime dependencies.

The packages are modules which can be deployed in an already-running
system, as opposed to the current scheme which bakes the files into
the system boot image.

Deployment and support for dynamic libraries will be addressed
in followup CLs.

This CL also:
* Fixes PathService logic for packaged invocations.
* Adds a new "build_manifest.py" GN helper script.
* Fixes the dependency graph for Fuchsia runner script generation
  so that it accurately captures the real dependency ordering.


Bug: 796779
Change-Id: I4e3a38e0075573b328ad98425cc493e28cff1ca4
Reviewed-on: https://chromium-review.googlesource.com/841749
Commit-Queue: Kevin Marshall <kmarshall@chromium.org>
Reviewed-by: Wez <wez@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: Sergey Ulanov <sergeyu@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#531288}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: b2b018c5a98218a3c08ad090fc38d20826eaee77
1 file changed
tree: 1efbb350060da26c4281ee7b7c696b553031fb8e
  1. accessibility/
  2. android/
  3. battor_agent/
  4. binary_size/
  5. bisect_repackage/
  6. blink_rename_merge_helper/
  7. cfi/
  8. check_ecs_deps/
  9. checkbins/
  10. checklicenses/
  11. checkperms/
  12. checkteamtags/
  13. chrome_extensions/
  14. chrome_proxy/
  15. clang/
  16. code_coverage/
  17. compile_test/
  18. coverity/
  19. cr/
  20. cros/
  21. cygprofile/
  22. cygprofile_win/
  23. determinism/
  24. dromaeo_benchmark_runner/
  25. emacs/
  26. find_runtime_symbols/
  27. flakiness/
  28. fuchsia/
  29. gdb/
  30. gen_keyboard_overlay_data/
  31. generate_library_loader/
  32. generate_shim_headers/
  33. generate_stubs/
  34. git/
  35. gn/
  36. grit/
  37. gritsettings/
  38. idl_parser/
  39. imagediff/
  40. ipc_fuzzer/
  41. json_comment_eater/
  42. json_schema_compiler/
  43. json_to_struct/
  44. linux/
  45. lldb/
  46. luci-go/
  47. mac/
  48. mb/
  49. md_browser/
  50. measure_page_load_time/
  51. media_engagement_preload/
  52. memory/
  53. memory_inspector/
  54. metrics/
  55. msan/
  56. oopif/
  57. origin_trials/
  58. page_cycler/
  59. perf/
  60. perf_expectations/
  61. polymer/
  62. protoc_wrapper/
  63. python/
  64. real_world_impact/
  65. resource_prefetch_predictor/
  66. resources/
  67. screenshot_testing/
  68. security/
  69. site_compare/
  70. stats_viewer/
  71. strict_enum_value_checker/
  72. sublime/
  73. symsrc/
  74. tcmalloc/
  75. tests/
  76. traceline/
  77. traffic_annotation/
  78. ubsan/
  79. usb_gadget/
  80. v8_context_snapshot/
  81. valgrind/
  82. variations/
  83. vim/
  84. web_bluetooth/
  85. web_dev_style/
  86. win/
  87. xdisplaycheck/
  88. bash-completion
  89. bisect-builds.py
  90. bisect-manual-test.py
  91. bisect_test.py
  92. boilerplate.py
  93. check_git_config.py
  94. check_grd_for_unused_strings.py
  95. clang-format-js
  96. DEPS
  97. diagnose-me.py
  98. gypv8sh.py
  99. include_tracer.py
  100. ipc_messages_log.py
  101. licenses.py
  102. multi_process_rss.py
  103. nocompile_driver.py
  104. omahaproxy.py
  105. OWNERS
  106. perry.py
  107. prepare-bisect-perf-regression.py
  108. remove_duplicate_includes.py
  109. remove_stale_pyc_files.py
  110. roll_angle.py
  111. roll_swiftshader.py
  112. roll_webgl_conformance.py
  113. roll_webrtc.py
  114. run-bisect-manual-test.py
  115. run-bisect-perf-regression.py
  116. run-perf-test.cfg
  117. safely-roll-deps.py
  118. sort-headers.py
  119. sort_sources.py
  120. uberblame.py
  121. unused-symbols-report.py
  122. yes_no.py