# Copyright 2018 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//tools/grit/repack.gni")
# Template to repack all scalable resources at a given scale.
#
# Arguments
#
# scale
# string, scale as a percentage, e.g. "200" corresponds to @2x scale.
#
# Generates a bundle_data target for convenience.
template("_ios_web_view_repack_one_scale") {
assert(defined(invoker.scale), "scale must be defined for ${target_name}")
repack(target_name) {
forward_variables_from(invoker,
[
"testonly",
"visibility",
])
sources = [
# TODO(crbug.com/40575998): Bundle less resources.
"${root_gen_dir}/components/components_resources_${invoker.scale}_percent.pak",
]
deps = [ "//components/resources:components_scaled_resources" ]
output = "$target_gen_dir/web_view_${invoker.scale}_percent.pak"
copy_data_to_bundle = true
}
}
# Template to repack all scalable resources at all scales.
#
# Arguments
#
# scales
# list of strings corresponding to scales as percentage, e.g. "200"
# corresponds to @2x scale.
#
# Generates a collection of bundle_data targets for convenience.
template("ios_web_view_repack_all_scales") {
assert(defined(invoker.scales), "scales must be defined for ${target_name}")
_scale_targets = []
_target_name = target_name
foreach(_scale, invoker.scales) {
_scale_targets += [ ":${_target_name}_${_scale}_percent" ]
_ios_web_view_repack_one_scale("${_target_name}_${_scale}_percent") {
forward_variables_from(invoker, [ "testonly" ])
visibility = [ ":${_target_name}" ]
scale = _scale
}
}
group(_target_name) {
forward_variables_from(invoker,
[
"testonly",
"visibility",
])
public_deps = _scale_targets
}
}