# Copyright 2014 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# This target creates a stamp file that depends on all the sources in the grit
# directory. By depending on this, a target can force itself to be rebuilt if
# grit itself changes.
action("grit_sources") {
  depfile = "$target_out_dir/grit_sources.d"
  script = "stamp_grit_sources.py"

  inputs = [
    "grit.py",
  ]

  # Note that we can't call this "grit_sources.stamp" because that file is
  # implicitly created by GN for script actions.
  outputs = [
    "$target_out_dir/grit_sources.script.stamp",
  ]

  args = [
    rebase_path("//tools/grit", root_build_dir),
    rebase_path(outputs[0], root_build_dir),
    rebase_path(depfile, root_build_dir),
  ]
}
