From 43c2d2c6d2a6ab2d281a5bb69de2a52f052df768 Mon Sep 17 00:00:00 2001 From: Ben Konyi Date: Fri, 24 Apr 2020 19:59:48 +0000 Subject: [PATCH] Reland "[ DartDev ] Generate dartdev.dart.snapshot for runtime builds and place it in the root of the build output directory" This reverts commit 60823bdaf634f84fccc22dd933258307cfbe5d12. Change-Id: I10a8421cb1fc5738bfb56d3c4e68d05bb3b4edd9 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/144680 Reviewed-by: Jaime Wren Commit-Queue: Ben Konyi --- runtime/bin/dartdev_utils.cc | 3 +-- sdk/BUILD.gn | 4 ++-- sdk_nnbd/BUILD.gn | 4 ++-- utils/dartdev/BUILD.gn | 14 +++++++++++++- 4 files changed, 18 insertions(+), 7 deletions(-) diff --git a/runtime/bin/dartdev_utils.cc b/runtime/bin/dartdev_utils.cc index 0314d6e0dcc..3f14bc45ab7 100644 --- a/runtime/bin/dartdev_utils.cc +++ b/runtime/bin/dartdev_utils.cc @@ -40,8 +40,7 @@ bool DartDevUtils::TryResolveDartDevSnapshotPath(char** script_name) { // If we're not in dart-sdk/bin, we might be in one of the $SDK/out/* // directories. Try to use a snapshot from a previously built SDK. - snapshot_path = Utils::SCreate( - "%sdart-sdk/bin/snapshots/dartdev.dart.snapshot", dir_prefix.get()); + snapshot_path = Utils::SCreate("%sdartdev.dart.snapshot", dir_prefix.get()); if (File::Exists(nullptr, snapshot_path)) { *script_name = snapshot_path; return true; diff --git a/sdk/BUILD.gn b/sdk/BUILD.gn index b343437e072..8579a96a5e1 100644 --- a/sdk/BUILD.gn +++ b/sdk/BUILD.gn @@ -125,7 +125,7 @@ _platform_sdk_snapshots = [ ], [ "dartdev", - "../utils/dartdev", + "../utils/dartdev:generate_dartdev_snapshot", ], [ "dartdoc", @@ -170,7 +170,7 @@ _full_sdk_snapshots = [ ], [ "dartdev", - "../utils/dartdev", + "../utils/dartdev:generate_dartdev_snapshot", ], [ "dartdevc", diff --git a/sdk_nnbd/BUILD.gn b/sdk_nnbd/BUILD.gn index b343437e072..8579a96a5e1 100644 --- a/sdk_nnbd/BUILD.gn +++ b/sdk_nnbd/BUILD.gn @@ -125,7 +125,7 @@ _platform_sdk_snapshots = [ ], [ "dartdev", - "../utils/dartdev", + "../utils/dartdev:generate_dartdev_snapshot", ], [ "dartdoc", @@ -170,7 +170,7 @@ _full_sdk_snapshots = [ ], [ "dartdev", - "../utils/dartdev", + "../utils/dartdev:generate_dartdev_snapshot", ], [ "dartdevc", diff --git a/utils/dartdev/BUILD.gn b/utils/dartdev/BUILD.gn index 495643d7f51..44a5426a3fe 100644 --- a/utils/dartdev/BUILD.gn +++ b/utils/dartdev/BUILD.gn @@ -18,8 +18,20 @@ dartfix_files = exec_script("../../tools/list_dart_files.py", ], "list lines") -application_snapshot("dartdev") { +group("dartdev") { + deps = [ ":copy_dartdev_snapshot" ] +} + +copy("copy_dartdev_snapshot") { + visibility = [ ":dartdev" ] + deps = [ ":generate_dartdev_snapshot" ] + sources = [ "$root_gen_dir/dartdev.dart.snapshot" ] + outputs = [ "$root_out_dir/dartdev.dart.snapshot" ] +} + +application_snapshot("generate_dartdev_snapshot") { main_dart = "../../pkg/dartdev/bin/dartdev.dart" training_args = [ "--help" ] inputs = dartdev_files + dartfix_files + output = "$root_gen_dir/dartdev.dart.snapshot" }