dart-sdk/utils/create_timestamp.gni
Ryan Macnak a22d5b98fd Reapply "[build] Track glob dependencies via depfiles, instead of always re-executing scripts at GN time."
Use a relative path for the depfile's target to match Ninja's expectation; otherwise it thinks the target is always dirty.

TEST=build twice
Bug: https://github.com/flutter/flutter/issues/81074
Change-Id: I4cae7ab55f79b5206521c7090502c0769d2b5277
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/198443
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2021-05-12 00:27:28 +00:00

24 lines
717 B
Text

# Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file
# for details. All rights reserved. Use of this source code is governed by a
# BSD-style license that can be found in the LICENSE file.
_dart_root = rebase_path("..")
template("create_timestamp_file") {
assert(defined(invoker.path), "Must specify 'path'")
assert(defined(invoker.output), "Must specify 'output'")
path = invoker.path
output = invoker.output
action(target_name) {
script = "$_dart_root/tools/list_dart_files_as_depfile.py"
args = [
rebase_path(output),
path,
]
if (defined(invoker.pattern)) {
args += [ invoker.pattern ]
}
depfile = output
outputs = [ output ]
}
}