| # Copyright 2014 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 a zip archive of the inputs. |
| # If base_dir is provided, the archive paths will be relative to it. |
| template("zip") { |
| set_sources_assignment_filter([]) |
| if (defined(invoker.testonly)) { |
| testonly = invoker.testonly |
| } |
| |
| assert(defined(invoker.inputs)) |
| assert(defined(invoker.output)) |
| |
| rebase_inputs = rebase_path(invoker.inputs, root_build_dir) |
| rebase_output = rebase_path(invoker.output, root_build_dir) |
| action(target_name) { |
| script = "//build/android/gn/zip.py" |
| depfile = "$target_gen_dir/$target_name.d" |
| inputs = invoker.inputs |
| outputs = [ |
| depfile, |
| invoker.output, |
| ] |
| args = [ |
| "--depfile", |
| rebase_path(depfile, root_build_dir), |
| "--inputs=$rebase_inputs", |
| "--output=$rebase_output", |
| ] |
| if (defined(invoker.base_dir)) { |
| args += [ |
| "--base-dir", |
| rebase_path(invoker.base_dir, root_build_dir), |
| ] |
| } |
| |
| if (defined(invoker.deps)) { |
| deps = invoker.deps |
| } |
| if (defined(invoker.public_deps)) { |
| public_deps = invoker.public_deps |
| } |
| if (defined(invoker.data_deps)) { |
| data_deps = invoker.data_deps |
| } |
| |
| if (defined(invoker.visibility)) { |
| visibility = invoker.visibility |
| } |
| } |
| } |