• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1package {
2    default_applicable_licenses: ["build_blueprint_license"],
3}
4
5// Added automatically by a large-scale-change that took the approach of
6// 'apply every license found to every target'. While this makes sure we respect
7// every license restriction, it may not be entirely correct.
8//
9// e.g. GPL in an MIT project might only apply to the contrib/ directory.
10//
11// Please consider splitting the single license below into multiple licenses,
12// taking care not to lose any license_kind information, and overriding the
13// default license using the 'licenses: [...]' property on targets as needed.
14//
15// For unused files, consider creating a 'fileGroup' with "//visibility:private"
16// to attach the license to, and including a comment whether the files may be
17// used in the current project.
18// See: http://go/android-license-faq
19license {
20    name: "build_blueprint_license",
21    visibility: [":__subpackages__"],
22    license_kinds: [
23        "SPDX-license-identifier-Apache-2.0",
24        "SPDX-license-identifier-BSD",
25    ],
26    license_text: [
27        "LICENSE",
28    ],
29}
30
31bootstrap_go_package {
32    name: "blueprint",
33    deps: [
34        "blueprint-metrics",
35        "blueprint-parser",
36        "blueprint-pathtools",
37        "blueprint-proptools",
38    ],
39    pkgPath: "github.com/google/blueprint",
40    srcs: [
41        "context.go",
42        "levenshtein.go",
43        "glob.go",
44        "live_tracker.go",
45        "mangle.go",
46        "module_ctx.go",
47        "name_interface.go",
48        "ninja_defs.go",
49        "ninja_strings.go",
50        "ninja_writer.go",
51        "package_ctx.go",
52        "provider.go",
53        "scope.go",
54        "singleton_ctx.go",
55    ],
56    testSrcs: [
57        "context_test.go",
58        "levenshtein_test.go",
59        "glob_test.go",
60        "module_ctx_test.go",
61        "ninja_strings_test.go",
62        "ninja_writer_test.go",
63        "provider_test.go",
64        "splice_modules_test.go",
65        "visit_test.go",
66    ],
67}
68
69bootstrap_go_package {
70    name: "blueprint-parser",
71    pkgPath: "github.com/google/blueprint/parser",
72    srcs: [
73        "parser/ast.go",
74        "parser/modify.go",
75        "parser/parser.go",
76        "parser/printer.go",
77        "parser/sort.go",
78    ],
79    testSrcs: [
80        "parser/modify_test.go",
81        "parser/parser_test.go",
82        "parser/printer_test.go",
83        "parser/sort_test.go",
84    ],
85}
86
87bootstrap_go_package {
88    name: "blueprint-deptools",
89    pkgPath: "github.com/google/blueprint/deptools",
90    srcs: ["deptools/depfile.go"],
91}
92
93bootstrap_go_package {
94    name: "blueprint-pathtools",
95    pkgPath: "github.com/google/blueprint/pathtools",
96    deps: [
97        "blueprint-deptools",
98    ],
99    srcs: [
100        "pathtools/lists.go",
101        "pathtools/fs.go",
102        "pathtools/glob.go",
103    ],
104    testSrcs: [
105        "pathtools/fs_test.go",
106        "pathtools/glob_test.go",
107        "pathtools/lists_test.go",
108    ],
109}
110
111bootstrap_go_package {
112    name: "blueprint-proptools",
113    pkgPath: "github.com/google/blueprint/proptools",
114    deps: [
115        "blueprint-parser",
116    ],
117    srcs: [
118        "proptools/clone.go",
119        "proptools/escape.go",
120        "proptools/extend.go",
121        "proptools/filter.go",
122        "proptools/proptools.go",
123        "proptools/tag.go",
124        "proptools/typeequal.go",
125        "proptools/unpack.go",
126    ],
127    testSrcs: [
128        "proptools/clone_test.go",
129        "proptools/escape_test.go",
130        "proptools/extend_test.go",
131        "proptools/filter_test.go",
132        "proptools/tag_test.go",
133        "proptools/typeequal_test.go",
134        "proptools/unpack_test.go",
135    ],
136}
137
138bootstrap_go_package {
139    name: "blueprint-bootstrap",
140    deps: [
141        "blueprint",
142        "blueprint-deptools",
143        "blueprint-pathtools",
144        "blueprint-bootstrap-bpdoc",
145    ],
146    pkgPath: "github.com/google/blueprint/bootstrap",
147    srcs: [
148        "bootstrap/bootstrap.go",
149        "bootstrap/command.go",
150        "bootstrap/config.go",
151        "bootstrap/glob.go",
152        "bootstrap/writedocs.go",
153    ],
154}
155
156bootstrap_go_package {
157    name: "blueprint-bootstrap-bpdoc",
158    deps: [
159        "blueprint",
160        "blueprint-proptools",
161    ],
162    pkgPath: "github.com/google/blueprint/bootstrap/bpdoc",
163    srcs: [
164        "bootstrap/bpdoc/bpdoc.go",
165        "bootstrap/bpdoc/properties.go",
166        "bootstrap/bpdoc/reader.go",
167    ],
168    testSrcs: [
169        "bootstrap/bpdoc/bpdoc_test.go",
170        "bootstrap/bpdoc/properties_test.go",
171        "bootstrap/bpdoc/reader_test.go",
172    ],
173}
174
175blueprint_go_binary {
176    name: "bpglob",
177    deps: ["blueprint-pathtools"],
178    srcs: ["bootstrap/bpglob/bpglob.go"],
179}
180
181blueprint_go_binary {
182    name: "bpfmt",
183    deps: ["blueprint-parser"],
184    srcs: ["bpfmt/bpfmt.go"],
185}
186
187blueprint_go_binary {
188    name: "bpmodify",
189    deps: [
190        "blueprint-parser",
191        "blueprint-proptools",
192    ],
193    srcs: ["bpmodify/bpmodify.go"],
194    testSrcs: ["bpmodify/bpmodify_test.go"],
195}
196
197blueprint_go_binary {
198    name: "gotestmain",
199    srcs: ["gotestmain/gotestmain.go"],
200}
201
202// gotestmain tests can't be on the gotestmain module because it is an implicit dependency of tests.
203// Put the tests in their own package and make it a dependency of minibp to make sure they run.
204bootstrap_go_package {
205    name: "gotestmain-tests",
206    pkgPath: "github.com/google/blueprint/gotestmain",
207    srcs: [
208        "gotestmain/dummy.go",
209    ],
210    testSrcs: [
211        "gotestmain/testmain_test.go",
212    ],
213}
214
215blueprint_go_binary {
216    name: "gotestrunner",
217    srcs: ["gotestrunner/gotestrunner.go"],
218}
219
220blueprint_go_binary {
221    name: "loadplugins",
222    srcs: ["loadplugins/loadplugins.go"],
223}
224
225blueprint_go_binary {
226    name: "microfactory",
227    deps: ["blueprint-microfactory"],
228    srcs: ["microfactory/main/main.go"],
229}
230
231bootstrap_go_package {
232    name: "blueprint-microfactory",
233    pkgPath: "github.com/google/blueprint/microfactory",
234    srcs: ["microfactory/microfactory.go"],
235    testSrcs: ["microfactory/microfactory_test.go"],
236}
237