| Index: ui/vector_icons/vector_icons.gni
|
| diff --git a/ui/vector_icons/vector_icons.gni b/ui/vector_icons/vector_icons.gni
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..f22984d19ff32a7c8b95b85f070f9caaaaa0ce3b
|
| --- /dev/null
|
| +++ b/ui/vector_icons/vector_icons.gni
|
| @@ -0,0 +1,60 @@
|
| +# Copyright 2017 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.
|
| +
|
| +# Creates an action that aggregates vector icon files (.icon) into a C++ file.
|
| +# In addition to running the action, the outputs should be added to another
|
| +# target's sources for compilation.
|
| +#
|
| +# Parameters
|
| +#
|
| +# icons (required)
|
| +# A list of icon filenames to use as inputs.
|
| +#
|
| +# icon_directory (required)
|
| +# The path component of the location of the icons, relative to the current
|
| +# directory. For example, if the invoking BUILD file exists in //foo/bar
|
| +# and the icons are in //foo/bar/vector_icons/, then icon_directory should
|
| +# be set to "vector_icons". There must also be template files in this
|
| +# directory.
|
| +#
|
| +# Example
|
| +#
|
| +# See BUILD.gn in this directory (//ui/vector_icons/) for an example.
|
| +template("aggregate_vector_icons") {
|
| + assert(defined(invoker.icons),
|
| + "Need icons in $target_name listing the icon files.")
|
| + assert(
|
| + defined(invoker.icon_directory),
|
| + "Need icon_directory in $target_name where the icons and templates live.")
|
| +
|
| + action(target_name) {
|
| + visibility = [ ":*" ]
|
| +
|
| + script = "//ui/gfx/vector_icons/aggregate_vector_icons.py"
|
| +
|
| + output_cc = "$target_gen_dir/vector_icons.cc"
|
| + output_h = "$target_gen_dir/vector_icons.h"
|
| +
|
| + templates = [
|
| + "vector_icons.cc.template",
|
| + "vector_icons.h.template",
|
| + ]
|
| + inputs = rebase_path(templates + invoker.icons, ".", invoker.icon_directory)
|
| +
|
| + outputs = [
|
| + output_cc,
|
| + output_h,
|
| + ]
|
| +
|
| + response_file_contents =
|
| + rebase_path(invoker.icons, root_build_dir, invoker.icon_directory)
|
| +
|
| + args = [
|
| + "--working_directory=" + rebase_path(invoker.icon_directory),
|
| + "--file_list={{response_file_name}}",
|
| + "--output_cc=" + rebase_path(output_cc, root_build_dir),
|
| + "--output_h=" + rebase_path(output_h, root_build_dir),
|
| + ]
|
| + }
|
| +}
|
|
|