[build] Remove hermetic deps suppression in dart_library

Change-Id: I80bf247896afb4f190d7f2b5f76043200e969e40
Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/491078
Commit-Queue: Anirudh Mathukumilli <rudymathu@google.com>
Reviewed-by: Shai Barack <shayba@google.com>
diff --git a/build/dart/dart_library.gni b/build/dart/dart_library.gni
index 6e145b6..673df43 100644
--- a/build/dart/dart_library.gni
+++ b/build/dart/dart_library.gni
@@ -514,13 +514,27 @@
         "/dart-tools/strict_deps"
     _strict_deps_stamp =
         "${invoker.target_gen_dir}/${invoker.target_name}_strict_deps.report"
+    _strict_deps_snapshot_path =
+        get_label_info(_strict_deps_tool_label, "target_gen_dir") +
+        "/strict_deps.snapshot"
 
     action("${invoker.target_name}_strict_deps") {
-      hermetic_deps = false
       deps = [
-        ":$_dart_package_config_target_name",
-        ":${invoker.target_name}_dart_build_info",
-        _strict_deps_tool_label,
+               ":$_dart_package_config_target_name",
+               ":${invoker.target_name}_dart_build_info",
+               "//tools/dart-strict-deps:strict_deps_snapshot($host_toolchain)",
+               _strict_deps_tool_label,
+             ] + _dart_deps
+      sources = []
+      if (defined(invoker.sources)) {
+        foreach(src, invoker.sources) {
+          sources += [ rebase_path("$source_dir/$src") ]
+        }
+      }
+      inputs = [
+        _metadata_collection_results_path,
+        _packages_path,
+        _strict_deps_snapshot_path,
       ]
       outputs = [ _strict_deps_stamp ]
       script = _strict_deps_tool_path