• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1package {
2    default_applicable_licenses: ["Android-Apache-2.0"],
3}
4
5bootstrap_go_package {
6    name: "soong-genrule",
7    pkgPath: "android/soong/genrule",
8    deps: [
9        "blueprint",
10        "blueprint-pathtools",
11        "sbox_proto",
12        "soong",
13        "soong-android",
14        "soong-shared",
15    ],
16    srcs: [
17        "genrule.go",
18        "locations.go",
19    ],
20    testSrcs: [
21        "genrule_test.go",
22    ],
23    pluginFor: ["soong_build"],
24    // Used by plugins
25    visibility: ["//visibility:public"],
26}
27
28genrule {
29    name: "nsjail_genrule_test_input",
30    cmd: "echo nsjail_genrule_test_input > $(out)",
31    out: ["nsjail_genrule_test_input.txt"],
32}
33
34// Pseudo-test that's run on checkbuilds to verify consistent directory
35// structure for genrules using sbox or nsjail.
36genrule_defaults {
37    name: "nsjail_genrule_test_gen_defaults",
38    // verify both relative paths and its contents
39    cmd: "(echo $(out) $(genDir) && sha256sum " +
40        "$(location get_clang_version) " +
41        "$(location py3-cmd) " +
42        "$(location genrule.go) " +
43        "$(location :nsjail_genrule_test_input) " +
44        "$(locations *.go)) | sed 's@\\./@@g' > $(out)",
45    tools: [
46        "get_clang_version", // random tool
47        "py3-cmd", // random prebuilt tool
48    ],
49    tool_files: ["genrule.go"], // random local file
50    srcs: [
51        ":nsjail_genrule_test_input", // random OutputFileProducer
52        "*.go", // random glob
53    ],
54    out: ["nsjail_genrule_test.txt"],
55}
56
57genrule {
58    name: "nsjail_genrule_test_gen_without_nsjail",
59    defaults: ["nsjail_genrule_test_gen_defaults"],
60}
61
62genrule {
63    name: "nsjail_genrule_test_gen_with_nsjail",
64    defaults: ["nsjail_genrule_test_gen_defaults"],
65    use_nsjail: true,
66}
67
68genrule {
69    name: "nsjail_genrule_test",
70    srcs: [
71        ":nsjail_genrule_test_gen_without_nsjail",
72        ":nsjail_genrule_test_gen_with_nsjail",
73    ],
74    cmd: "diff $(in) > $(out)",
75    out: ["nsjail_genrule_test"],
76}
77