1# Copyright 2021 The Chromium Authors 2# Use of this source code is governed by a BSD-style license that can be 3# found in the LICENSE file. 4 5# Template to package an app extension into an app. 6# 7# Parameters 8# 9# extension_target: 10# name of the extension target to package; the extension 11# bundle name must be derived from the target name 12# 13# extension_name: 14# (optional) name of the extension appex file; derived from 15# the target name if omitted 16# 17template("extension_bundle_data") { 18 assert(defined(invoker.extension_target), 19 "extension_target must be defined for $target_name") 20 21 _extension_name = get_label_info(invoker.extension_target, "name") + ".appex" 22 if (defined(invoker.extension_name)) { 23 _extension_name = invoker.extension_name 24 } 25 26 _extension_dir = "PlugIns" 27 if (defined(invoker.extension_dir)) { 28 _extension_dir = invoker.extension_dir 29 } 30 31 forward_variables_from(invoker, [ "testonly" ]) 32 bundle_data(target_name) { 33 public_deps = [ invoker.extension_target ] 34 outputs = [ "{{bundle_contents_dir}}/$_extension_dir/{{source_file_part}}" ] 35 sources = [ get_label_info(invoker.extension_target, "root_out_dir") + 36 "/$_extension_name" ] 37 } 38} 39