Fuchsia: modify scripts to run non-test executables
* Move most test runner functionality to "runner_common.py", with
the exception of gtest-specific logic.
* Move the test-specific "main()" portions into "test_runner.py".
* Add "exe_runner.py", a very thin wrapper around the test_common
functionality.
* Use stripped executables for building the bootfs file, which results
in a substantially smaller file size (10x difference!)
It's necessary for running larger executables like "headless_shell",
which are enormous when unstripped, resulting in long mkbootfs times
and higher RAM requirements for in-memory tmpfs disks. The unstripped
executable remains intact alongside the stripped executable, for
backtrace symbolization.
* Add a GN template "fuchsia_executable_runner", which generates
executable runner scripts on non-test targets.
Bug: 746674,752364
Change-Id: Ia39c3d7fdf9bb574049f0112df84951c2e048f41
Reviewed-on: https://chromium-review.googlesource.com/602410
Commit-Queue: Kevin Marshall <kmarshall@chromium.org>
Reviewed-by: Sami Kyöstilä <skyostil@chromium.org>
Reviewed-by: Scott Graham <scottmg@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#493524}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 143e53fb43b6dfbee260273daaa4b033c3edf1ec