1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- # Copyright 2016 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.
- import("//build/util/lastchange.gni")
- # Template to run the tweak_info_plist.py script on a plist.
- #
- # Arguments:
- #
- # info_plist:
- # (optional), string, the plist to tweak.
- #
- # info_plists:
- # (optional), list of string, the plist files to merge and tweak.
- #
- # args:
- # (optional), list of string, the arguments to pass to the
- # tweak_info_plist.py script.
- #
- # Callers should use get_target_outputs() to get the output name. One of
- # info_plist or info_plists must be specified.
- template("tweak_info_plist") {
- _output_name = "$target_gen_dir/${target_name}_tweaked.plist"
- if (defined(invoker.info_plists)) {
- assert(!defined(invoker.info_plist),
- "Cannot have both info_plist and info_plists for $target_name")
- _source_name = "$target_gen_dir/${target_name}_merged.plist"
- _deps = [ ":" + target_name + "_merge_plist" ]
- action(target_name + "_merge_plist") {
- forward_variables_from(invoker,
- [
- "testonly",
- "deps",
- ])
- script = "//build/apple/plist_util.py"
- sources = invoker.info_plists
- outputs = [ _source_name ]
- args = [
- "merge",
- "-f=xml1",
- "-o=" + rebase_path(_source_name, root_build_dir),
- ] + rebase_path(invoker.info_plists, root_build_dir)
- }
- } else {
- assert(defined(invoker.info_plist),
- "The info_plist must be specified in $target_name")
- _source_name = invoker.info_plist
- _deps = []
- if (defined(invoker.deps)) {
- _deps += invoker.deps
- }
- }
- action(target_name) {
- forward_variables_from(invoker,
- [
- "args",
- "testonly",
- ])
- script = "//build/apple/tweak_info_plist.py"
- inputs = [
- script,
- "//build/util/version.py",
- lastchange_file,
- "//chrome/VERSION",
- ]
- sources = [ _source_name ]
- outputs = [ _output_name ]
- if (!defined(args)) {
- args = []
- }
- args += [
- "--plist",
- rebase_path(_source_name, root_build_dir),
- "--output",
- rebase_path(_output_name, root_build_dir),
- "--platform=$current_os",
- ]
- deps = _deps
- }
- }
|