1# Copyright 2020 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 5import("//build/config/python.gni") 6import("//tools/grit/grit_defines.gni") 7 8template("preprocess_grit") { 9 # TODO(crbug.com/1112471): Get this to run cleanly under Python 3. 10 python2_action(target_name) { 11 script = "//tools/grit/preprocess_grit.py" 12 13 if (defined(invoker.deps)) { 14 deps = invoker.deps 15 } 16 17 inputs = [] 18 outputs = [] 19 foreach(in_file, invoker.in_files) { 20 inputs += [ invoker.in_folder + "/" + in_file ] 21 outputs += [ invoker.out_folder + "/" + in_file ] 22 } 23 24 args = [ 25 "--in-folder", 26 rebase_path(invoker.in_folder, root_build_dir), 27 "--out-folder", 28 rebase_path(invoker.out_folder, root_build_dir), 29 "--in-files", 30 ] + invoker.in_files + grit_defines 31 32 if (defined(invoker.defines)) { 33 foreach(define, invoker.defines) { 34 args += [ 35 "-D", 36 define, 37 ] 38 } 39 } 40 41 if (defined(invoker.out_manifest)) { 42 args += [ 43 "--out-manifest", 44 rebase_path(invoker.out_manifest, root_build_dir), 45 ] 46 outputs += [ invoker.out_manifest ] 47 } 48 } 49} 50