# Copyright 2024 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//build/config/chromeos/ui_mode.gni")
assert(is_chromeos_ash)
device_policy_remover_path = "$target_gen_dir/device_policy_remover.cc"
action("device_policy_remover_generate") {
script = "generate_device_policy_remover.py"
descriptor_pool_path = "//third_party/protobuf/python"
symbol_database_path = "$root_out_dir/pyproto"
# This is provided by //components/policy/proto listed in public_deps.
# The containing directory is in a separate variable because that's what
# the script expects as an argument.
chrome_device_policy_pb2_dir = "$root_out_dir/pyproto/components/policy/proto"
chrome_device_policy_pb2_path =
"$chrome_device_policy_pb2_dir/chrome_device_policy_pb2.py"
sources = [
# It's important to explicitly list which files provided by this action's
# dependencies are actually used by this action, because the action is not
# automatically re-run on changes in one of the public_deps. See
# https://crbug.com/933359 for more information.
chrome_device_policy_pb2_path,
]
outputs = [ device_policy_remover_path ]
args = [
# generated file name
rebase_path(device_policy_remover_path, root_build_dir),
# directories for PATH variable to compile generated file
rebase_path(descriptor_pool_path, root_build_dir),
rebase_path(symbol_database_path, root_build_dir),
rebase_path(chrome_device_policy_pb2_dir, root_build_dir),
]
public_deps = [
"//components/policy/proto",
"//third_party/protobuf:py_proto",
]
}
static_library("device_policy_remover_generated") {
sources = [ device_policy_remover_path ]
public_deps = [ ":device_policy_remover_generate" ]
}