OLD | NEW |
1 # Copyright 2016 The Chromium Authors. All rights reserved. | 1 # Copyright 2016 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 # Used to produce a Mojo Application Manifest for an application. | 5 # Used to produce a Mojo Application Manifest for an application. |
6 # | 6 # |
7 # Parameters: | 7 # Parameters: |
8 # | 8 # |
9 # source | 9 # source |
10 # The manifest file template for this application, must be valid JSON with | 10 # The manifest file template for this application, must be valid JSON with |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
55 | 55 |
56 action(target_name) { | 56 action(target_name) { |
57 script = "//mojo/public/tools/manifest/manifest_collator.py" | 57 script = "//mojo/public/tools/manifest/manifest_collator.py" |
58 | 58 |
59 type = "mojo" | 59 type = "mojo" |
60 if (defined(invoker.type)) { | 60 if (defined(invoker.type)) { |
61 type = invoker.type | 61 type = invoker.type |
62 } | 62 } |
63 | 63 |
64 application_name = invoker.application_name | 64 application_name = invoker.application_name |
| 65 inputs = [ |
| 66 invoker.source, |
| 67 ] |
| 68 |
65 if (type == "mojo") { | 69 if (type == "mojo") { |
66 output = "$root_out_dir/$application_name/manifest.json" | 70 output = "$root_out_dir/$application_name/manifest.json" |
67 } else { | 71 } else { |
68 output = "$root_out_dir/${application_name}_manifest.json" | 72 output = "$root_out_dir/${application_name}_manifest.json" |
69 } | 73 } |
70 outputs = [ | 74 outputs = [ |
71 output, | 75 output, |
72 ] | 76 ] |
73 | 77 |
74 rebase_parent = rebase_path(invoker.source, root_build_dir) | 78 rebase_parent = rebase_path(invoker.source, root_build_dir) |
75 rebase_output = rebase_path(output, root_build_dir) | 79 rebase_output = rebase_path(output, root_build_dir) |
76 | 80 |
77 args = [ | 81 args = [ |
78 "--application-name=$application_name", | 82 "--application-name=$application_name", |
79 "--parent=$rebase_parent", | 83 "--parent=$rebase_parent", |
80 "--output=$rebase_output", | 84 "--output=$rebase_output", |
81 ] | 85 ] |
82 | 86 |
83 if (defined(invoker.packaged_applications)) { | 87 if (defined(invoker.packaged_applications)) { |
84 foreach(application_name, invoker.packaged_applications) { | 88 foreach(application_name, invoker.packaged_applications) { |
85 input = "$root_out_dir/$application_name/manifest.json" | 89 input = "$root_out_dir/$application_name/manifest.json" |
| 90 inputs += [ input ] |
86 args += [ rebase_path(input, root_build_dir) ] | 91 args += [ rebase_path(input, root_build_dir) ] |
87 } | 92 } |
88 } | 93 } |
89 deps = [] | 94 deps = [] |
90 if (defined(invoker.deps)) { | 95 if (defined(invoker.deps)) { |
91 deps += invoker.deps | 96 deps += invoker.deps |
92 } | 97 } |
93 } | 98 } |
94 | 99 |
95 all_deps = [] | 100 all_deps = [] |
96 if (defined(invoker.deps)) { | 101 if (defined(invoker.deps)) { |
97 all_deps += invoker.deps | 102 all_deps += invoker.deps |
98 } | 103 } |
99 | 104 |
100 group("${target_name}__is_mojo_application_manifest") { | 105 group("${target_name}__is_mojo_application_manifest") { |
101 } | 106 } |
102 | 107 |
103 # Explicitly ensure that all dependencies are mojo_application_manifest | 108 # Explicitly ensure that all dependencies are mojo_application_manifest |
104 # targets themselves. | 109 # targets themselves. |
105 group("${target_name}__check_deps_are_all_mojo_application_manifest") { | 110 group("${target_name}__check_deps_are_all_mojo_application_manifest") { |
106 deps = [] | 111 deps = [] |
107 foreach(d, all_deps) { | 112 foreach(d, all_deps) { |
108 name = get_label_info(d, "label_no_toolchain") | 113 name = get_label_info(d, "label_no_toolchain") |
109 toolchain = get_label_info(d, "toolchain") | 114 toolchain = get_label_info(d, "toolchain") |
110 deps += [ "${name}__is_mojo_application_manifest(${toolchain})" ] | 115 deps += [ "${name}__is_mojo_application_manifest(${toolchain})" ] |
111 } | 116 } |
112 } | 117 } |
113 } | 118 } |
OLD | NEW |