chromium/tools/grit/BUILD.gn

# Copyright 2014 The Chromium Authors
# 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.

import("//build/config/sanitizers/sanitizers.gni")

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),
  ]
}

group("grit_python_unittests") {
  testonly = true

  data_deps = [ "//testing:test_scripts_shared" ]

  data = [
    "//testing/scripts/run_isolated_script_test.py",
    "//tools/grit/",
    "//third_party/catapult/third_party/typ/",
    "//third_party/node/",
  ]
}

# See https://crbug.com/983200
if (is_mac && is_asan) {
  create_bundle("brotli_mac_asan_workaround") {
    bundle_root_dir = "$target_out_dir/$target_name"
    bundle_executable_dir = bundle_root_dir

    public_deps = [ "//third_party/brotli:brotli($host_toolchain)" ]
  }
}