1 # 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 # Runs the version processing script over the given template file to produce 6 # an output file. This is used for generating various forms of files that 7 # incorporate the product name and version. 8 # 9 # This template automatically includes VERSION, 10 # 11 # Parameters: 12 # source: 13 # File name of source template file to read. 14 # 15 # output: 16 # File name of file to write. 17 # 18 # visibility (optional) 19 # 20 # Example: 21 # process_version("myversion") { 22 # source = "myfile.h.in" 23 # output = "$target_gen_dir/myfile.h" 24 # } 25 template("process_version") { 26 assert(defined(invoker.source), "Source must be defined for $target_name") 27 assert(defined(invoker.output), "Output must be defined for $target_name") 28 29 action(target_name) { 30 if (defined(invoker.visibility)) { 31 visibility = invoker.visibility 32 } 33 script = "//build/util/version.py" 34 35 version_path = "//chrome/VERSION" 36 37 inputs = [ 38 version_path, 39 invoker.source, 40 ] 41 42 outputs = [ invoker.output ] 43 44 args = [ 45 "-f", rebase_path(version_path, root_build_dir), 46 rebase_path(invoker.source, root_build_dir), 47 rebase_path(invoker.output, root_build_dir), 48 ] 49 } 50 } 51