123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- # Copyright 2021 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/apple/compile_plist.gni")
- # Template to merge multiple .entitlements files performing variable
- # substitutions.
- #
- # Arguments
- #
- # entitlements_templates:
- # string array, paths to entitlements files which will be used for the
- # bundle.
- #
- # substitutions:
- # string array, 'key=value' pairs used to replace ${key} by value
- # when generating the output plist file.
- #
- # output_name:
- # string, name of the generated entitlements file.
- template("compile_entitlements") {
- assert(defined(invoker.entitlements_templates),
- "A list of template plist files must be specified for $target_name")
- compile_plist(target_name) {
- forward_variables_from(invoker,
- "*",
- [
- "entitlements_templates",
- "format",
- "plist_templates",
- ])
- plist_templates = invoker.entitlements_templates
- # Entitlements files are always encoded in xml1.
- format = "xml1"
- # Entitlements files use unsubstitued variables, so define substitutions
- # to leave those variables untouched.
- if (!defined(substitutions)) {
- substitutions = []
- }
- substitutions += [
- "AppIdentifierPrefix=\$(AppIdentifierPrefix)",
- "CFBundleIdentifier=\$(CFBundleIdentifier)",
- ]
- }
- }
|