15f9996aaSopenharmony_ci# Copyright 2014 The Chromium Authors. All rights reserved. 25f9996aaSopenharmony_ci# Use of this source code is governed by a BSD-style license that can be 35f9996aaSopenharmony_ci# found in the LICENSE file. 45f9996aaSopenharmony_ci 55f9996aaSopenharmony_ci# Creates a zip archive of the inputs. 65f9996aaSopenharmony_ci# 75f9996aaSopenharmony_ci# inputs (required) 85f9996aaSopenharmony_ci# List of input files relative to the current directory. 95f9996aaSopenharmony_ci# 105f9996aaSopenharmony_ci# output (required) 115f9996aaSopenharmony_ci# File name to write. 125f9996aaSopenharmony_ci# 135f9996aaSopenharmony_ci# base_dir (optional) 145f9996aaSopenharmony_ci# If provided, the archive paths will be relative to this directory. 155f9996aaSopenharmony_ci# 165f9996aaSopenharmony_ci# deps, public_deps, data_deps, testonly, visibility (optional) 175f9996aaSopenharmony_ci# Normal meaning. 185f9996aaSopenharmony_citemplate("zip") { 195f9996aaSopenharmony_ci action(target_name) { 205f9996aaSopenharmony_ci script = "//build/zip.py" 215f9996aaSopenharmony_ci depfile = "$target_gen_dir/$target_name.d" 225f9996aaSopenharmony_ci inputs = invoker.inputs 235f9996aaSopenharmony_ci outputs = [ invoker.output ] 245f9996aaSopenharmony_ci 255f9996aaSopenharmony_ci assert(defined(invoker.inputs)) 265f9996aaSopenharmony_ci rebase_inputs = rebase_path(invoker.inputs, root_build_dir) 275f9996aaSopenharmony_ci 285f9996aaSopenharmony_ci assert(defined(invoker.output)) 295f9996aaSopenharmony_ci rebase_output = rebase_path(invoker.output, root_build_dir) 305f9996aaSopenharmony_ci 315f9996aaSopenharmony_ci args = [ 325f9996aaSopenharmony_ci "--depfile", 335f9996aaSopenharmony_ci rebase_path(depfile, root_build_dir), 345f9996aaSopenharmony_ci "--inputs=$rebase_inputs", 355f9996aaSopenharmony_ci "--output=$rebase_output", 365f9996aaSopenharmony_ci ] 375f9996aaSopenharmony_ci if (defined(invoker.base_dir)) { 385f9996aaSopenharmony_ci args += [ 395f9996aaSopenharmony_ci "--base-dir", 405f9996aaSopenharmony_ci rebase_path(invoker.base_dir, root_build_dir), 415f9996aaSopenharmony_ci ] 425f9996aaSopenharmony_ci } 435f9996aaSopenharmony_ci 445f9996aaSopenharmony_ci forward_variables_from(invoker, 455f9996aaSopenharmony_ci [ 465f9996aaSopenharmony_ci "testonly", 475f9996aaSopenharmony_ci "deps", 485f9996aaSopenharmony_ci "public_deps", 495f9996aaSopenharmony_ci "data_deps", 505f9996aaSopenharmony_ci "visibility", 515f9996aaSopenharmony_ci ]) 525f9996aaSopenharmony_ci } 535f9996aaSopenharmony_ci} 54