• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1package {
2    default_applicable_licenses: [
3        "external_pandora_bt-test-interfaces_license",
4    ],
5}
6
7genrule {
8    name: "protoc-gen-pandora-python-src",
9    srcs: ["_build/protoc-gen-custom_grpc"],
10    cmd: "cp $(in) $(out)",
11    out: ["protoc-gen-custom_grpc.py"],
12}
13
14python_binary_host {
15    name: "protoc-gen-pandora-python",
16    main: "protoc-gen-custom_grpc.py",
17    srcs: [":protoc-gen-pandora-python-src"],
18    libs: ["libprotobuf-python"],
19}
20
21genrule {
22    name: "pandora-python-gen-src",
23    tools: [
24        "aprotoc",
25        "protoc-gen-pandora-python"
26    ],
27    cmd: "$(location aprotoc)" +
28         "    -Iexternal/pandora/bt-test-interfaces" +
29         "    -Iexternal/protobuf/src" +
30         "    --plugin=protoc-gen-grpc=$(location protoc-gen-pandora-python)" +
31         "    --python_out=$(genDir)" +
32         "    --grpc_out=$(genDir)" +
33         "    $(in) &&" +
34         "touch $(genDir)/pandora/py.typed &&" +
35         "touch $(genDir)/pandora/__init__.py",
36    srcs: [":pandora-protos"],
37    out: [
38        "pandora/py.typed",
39        "pandora/__init__.py",
40        "pandora/_utils.py",
41        "pandora/host_grpc.py",
42        "pandora/host_grpc_aio.py",
43        "pandora/host_pb2.py",
44        "pandora/host_pb2.pyi",
45        "pandora/security_grpc.py",
46        "pandora/security_grpc_aio.py",
47        "pandora/security_pb2.py",
48        "pandora/security_pb2.pyi",
49    ]
50}
51
52filegroup {
53    name: "pandora-python-src",
54    srcs: [
55        ":pandora-python-gen-src"
56    ],
57    exclude_srcs: [
58        ":pandora-python-stubs",
59    ]
60}
61
62filegroup {
63    name: "pandora-python-stubs",
64    srcs: [
65        ":pandora-python-gen-src{pandora/py.typed}",
66        ":pandora-python-gen-src{pandora/host_pb2.pyi}",
67        ":pandora-python-gen-src{pandora/security_pb2.pyi}",
68    ],
69}
70
71python_library_host {
72    name: "pandora-python",
73    srcs: [
74        ":pandora-python-src",
75    ],
76    data: [
77        ":pandora-python-stubs"
78    ]
79}