Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Source / build / make_file_arrays.gni
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 # Paraneters:
6 #   filename
7 #       Output base name (will be put into gen/blink with various extensions).
8 #
9 #   resources
10 #       List of resource files.
11 #
12 #   namespace (optional)
13 #       String. If specified, files will be wrapped in this namespace.
14 template("make_file_arrays") {
15   assert(defined(invoker.resources), "Need resources in $target_name")
16   assert(defined(invoker.filename), "Need filename in $target_name")
17
18   code_gen_target_name = target_name + "_code_gen"
19
20   action(code_gen_target_name) {
21     script = "//third_party/WebKit/Source/build/scripts/make-file-arrays.py"
22
23     sources = [ script ]
24     sources += invoker.resources
25
26     inputs = invoker.resources
27     outputs = [
28       "$root_gen_dir/blink/" + invoker.filename + ".h",
29       "$root_gen_dir/blink/" + invoker.filename + ".cpp",
30     ]
31
32     args = [
33       "--out-h=gen/blink/" + invoker.filename + ".h",
34       "--out-cpp=gen/blink/" + invoker.filename + ".cpp",
35     ]
36     if (defined(invoker.namespace)) {
37       args += [ "--namespace=" + invoker.namespace ]
38     }
39     args += rebase_path(invoker.resources, root_build_dir, ".")
40   }
41
42   source_set(target_name) {
43     sources = get_target_outputs(":$code_gen_target_name")
44     deps = [ ":$code_gen_target_name" ]
45     configs += [ "//third_party/WebKit/Source:config" ]
46   }
47 }
48
49