Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(513)

Side by Side Diff: mojo/public/dart/rules.gni

Issue 953953003: Introduce dartanalyze into our build. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | mojo/public/dart/src/codec.dart » ('j') | mojo/public/dart/src/data_pipe.dart » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2015 The Chromium Authors. All rights reserved. 1 # Copyright 2015 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 # Rules to generate python packaged applications for Dart 5 # Rules to generate python packaged applications for Dart
6 6
7 import("../mojo_sdk.gni") 7 import("../mojo_sdk.gni")
8 8
9 template("dart_package") { 9 template("dart_package") {
10 action(target_name) { 10 action(target_name) {
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
47 } 47 }
48 } 48 }
49 49
50 # Use this template to generate a .mojo dart application. One of the source 50 # Use this template to generate a .mojo dart application. One of the source
51 # files should be named main.dart and contain a main function as the 51 # files should be named main.dart and contain a main function as the
52 # entry point. Dependencies of dart_packaged_application targets should be 52 # entry point. Dependencies of dart_packaged_application targets should be
53 # either mojom targets (and specified using the mojom_deps variable) or 53 # either mojom targets (and specified using the mojom_deps variable) or
54 # dart_package targets. 54 # dart_package targets.
55 template("dart_packaged_application") { 55 template("dart_packaged_application") {
56 package_name = "${target_name}_package" 56 package_name = "${target_name}_package"
57 package_analyze_sources = "${target_name}_analyze"
57 package_output = "$target_out_dir/$package_name.dartzip" 58 package_output = "$target_out_dir/$package_name.dartzip"
58 59
59 if (defined(invoker.output_name)) { 60 if (defined(invoker.output_name)) {
60 mojo_output = "$root_out_dir/" + invoker.output_name + ".mojo" 61 mojo_output = "$root_out_dir/" + invoker.output_name + ".mojo"
61 } else { 62 } else {
62 mojo_output = "$root_out_dir/" + target_name + ".mojo" 63 mojo_output = "$root_out_dir/" + target_name + ".mojo"
63 } 64 }
64 65
66 action_foreach(package_analyze_sources) {
67 sources = invoker.sources
68
69 script = rebase_path("mojo/public/tools/dart_analyze.py", ".", mojo_root)
70
71 args = [
72 rebase_path(root_gen_dir),
73 rebase_path("$target_gen_dir/{{source_name_part}}.stamp"),
74 "{{source}}",
75 "--no-hints",
76 "--url-mapping=dart:mojo_application,/" +
77 rebase_path("mojo/public/dart/application.dart", "/", mojo_root),
78 "--url-mapping=dart:mojo_bindings,/" +
79 rebase_path("mojo/public/dart/bindings.dart", "/", mojo_root),
80 "--url-mapping=dart:mojo_builtin,/" +
81 rebase_path("mojo/dart/embedder/builtin.dart", "/", mojo_root),
82 "--url-mapping=dart:mojo_core,/" +
83 rebase_path("mojo/public/dart/core.dart", "/", mojo_root),
84 ]
85
86 deps = []
87 if (defined(invoker.deps)) {
88 deps += invoker.deps
89 }
90
91 outputs = [
92 "$target_gen_dir/{{source_name_part}}.stamp",
93 ]
94 }
95
65 dart_package(package_name) { 96 dart_package(package_name) {
66 sources = invoker.sources 97 sources = invoker.sources
67 if (defined(invoker.deps)) { 98 if (defined(invoker.deps)) {
68 deps = invoker.deps 99 deps = invoker.deps
69 } 100 }
70 if (defined(invoker.mojom_deps)) { 101 if (defined(invoker.mojom_deps)) {
71 mojom_deps = invoker.mojom_deps 102 mojom_deps = invoker.mojom_deps
72 } 103 }
73 if (defined(invoker.datadeps)) { 104 if (defined(invoker.datadeps)) {
74 datadeps = invoker.datadeps 105 datadeps = invoker.datadeps
75 } 106 }
76 } 107 }
77 108
78 action(target_name) { 109 action(target_name) {
79 script = rebase_path("mojo/public/tools/prepend.py", ".", mojo_root) 110 script = rebase_path("mojo/public/tools/prepend.py", ".", mojo_root)
80 111
81 input = package_output 112 input = package_output
82 inputs = [ 113 inputs = [
83 input, 114 input,
84 ] 115 ]
85 116
86 output = mojo_output 117 output = mojo_output
87 outputs = [ 118 outputs = [
88 output, 119 output,
89 ] 120 ]
90 121
91 deps = [ 122 deps = [
123 ":$package_analyze_sources",
92 ":$package_name", 124 ":$package_name",
93 ] 125 ]
94 if (defined(invoker.deps)) { 126 if (defined(invoker.deps)) {
95 deps += invoker.deps 127 deps += invoker.deps
96 } 128 }
97 if (defined(invoker.mojom_deps)) { 129 if (defined(invoker.mojom_deps)) {
98 deps += invoker.mojom_deps 130 deps += invoker.mojom_deps
99 } 131 }
100 if (defined(invoker.datadeps)) { 132 if (defined(invoker.datadeps)) {
101 datadeps = invoker.datadeps 133 datadeps = invoker.datadeps
102 } 134 }
103 135
104 line = "#!mojo mojo:dart_content_handler" 136 line = "#!mojo mojo:dart_content_handler"
105 if (defined(invoker.strict) && invoker.strict == true) { 137 if (defined(invoker.strict) && invoker.strict == true) {
106 line = "#!mojo mojo:dart_content_handler?strict=true" 138 line = "#!mojo mojo:dart_content_handler?strict=true"
107 } 139 }
108 140
109 rebase_input = rebase_path(input, root_build_dir) 141 rebase_input = rebase_path(input, root_build_dir)
110 rebase_output = rebase_path(output, root_build_dir) 142 rebase_output = rebase_path(output, root_build_dir)
111 args = [ 143 args = [
112 "--input=$rebase_input", 144 "--input=$rebase_input",
113 "--output=$rebase_output", 145 "--output=$rebase_output",
114 "--line=$line", 146 "--line=$line",
115 ] 147 ]
116 } 148 }
117 } 149 }
OLDNEW
« no previous file with comments | « no previous file | mojo/public/dart/src/codec.dart » ('j') | mojo/public/dart/src/data_pipe.dart » ('J')

Powered by Google App Engine
This is Rietveld 408576698