blob: a81af4d0bc7ca0f87d17ab105684a6aee2438c94 [file] [log] [blame]
Ben Murdoch097c5b22016-05-18 11:27:45 +01001# Copyright 2014 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5# Creates a zip archive of the inputs.
6#
7# inputs (required)
8# List of input files relative to the current directory.
9#
10# output (required)
11# File name to write.
12#
13# base_dir (optional)
14# If provided, the archive paths will be relative to this directory.
15#
16# deps, public_deps, data_deps, testonly, visibility (optional)
17# Normal meaning.
18template("zip") {
19 action(target_name) {
20 script = "//build/android/gn/zip.py"
21 depfile = "$target_gen_dir/$target_name.d"
22 inputs = invoker.inputs
23 outputs = [
24 depfile,
25 invoker.output,
26 ]
27
28 assert(defined(invoker.inputs))
29 rebase_inputs = rebase_path(invoker.inputs, root_build_dir)
30
31 assert(defined(invoker.output))
32 rebase_output = rebase_path(invoker.output, root_build_dir)
33
34 args = [
35 "--depfile",
36 rebase_path(depfile, root_build_dir),
37 "--inputs=$rebase_inputs",
38 "--output=$rebase_output",
39 ]
40 if (defined(invoker.base_dir)) {
41 args += [
42 "--base-dir",
43 rebase_path(invoker.base_dir, root_build_dir),
44 ]
45 }
46
47 forward_variables_from(invoker,
48 [
49 "testonly",
50 "deps",
51 "public_deps",
52 "data_deps",
53 "visibility",
54 ])
55 }
56}