| package { |
| default_applicable_licenses: ["Android-Apache-2.0"], |
| } |
| |
| genrule { |
| name: "protoc-gen-pandora_interfaces-python-src", |
| srcs: ["_build/protoc-gen-custom_grpc"], |
| cmd: "cp $(in) $(out)", |
| out: ["protoc-gen-custom_grpc.py"], |
| } |
| |
| python_binary_host { |
| name: "protoc-gen-pandora_interfaces-python", |
| main: "protoc-gen-custom_grpc.py", |
| srcs: [":protoc-gen-pandora_interfaces-python-src"], |
| libs: ["libprotobuf-python"], |
| } |
| |
| genrule { |
| name: "pandora_interfaces-python-gen-src", |
| tools: [ |
| "aprotoc", |
| "protoc-gen-pandora_interfaces-python", |
| ], |
| cmd: "$(location aprotoc)" + |
| " -Ipackages/modules/Bluetooth/pandora/interfaces" + |
| " -Iexternal/pandora/bt-test-interfaces" + |
| " -Iexternal/protobuf/src" + |
| " --plugin=protoc-gen-grpc=$(location protoc-gen-pandora_interfaces-python)" + |
| " --python_out=$(genDir)" + |
| " --grpc_out=$(genDir)" + |
| " $(locations :pandora_interfaces-protos) &&" + |
| "touch $(genDir)/pandora/py.typed &&" + |
| "touch $(genDir)/pandora/__init__.py", |
| srcs: [ |
| ":libprotobuf-internal-protos", |
| ":pandora_interfaces-protos", |
| ], |
| out: [ |
| "pandora/__init__.py", |
| "pandora/_utils.py", |
| "pandora/a2dp_grpc.py", |
| "pandora/a2dp_grpc_aio.py", |
| "pandora/a2dp_pb2.py", |
| "pandora/a2dp_pb2.pyi", |
| "pandora/asha_grpc.py", |
| "pandora/asha_grpc_aio.py", |
| "pandora/asha_pb2.py", |
| "pandora/asha_pb2.pyi", |
| "pandora/avrcp_grpc.py", |
| "pandora/avrcp_grpc_aio.py", |
| "pandora/avrcp_pb2.py", |
| "pandora/avrcp_pb2.pyi", |
| "pandora/bumble_config_grpc.py", |
| "pandora/bumble_config_grpc_aio.py", |
| "pandora/bumble_config_pb2.py", |
| "pandora/bumble_config_pb2.pyi", |
| "pandora/dck_grpc.py", |
| "pandora/dck_grpc_aio.py", |
| "pandora/dck_pb2.py", |
| "pandora/dck_pb2.pyi", |
| "pandora/gatt_grpc.py", |
| "pandora/gatt_grpc_aio.py", |
| "pandora/gatt_pb2.py", |
| "pandora/gatt_pb2.pyi", |
| "pandora/hap_grpc.py", |
| "pandora/hap_grpc_aio.py", |
| "pandora/hap_pb2.py", |
| "pandora/hap_pb2.pyi", |
| "pandora/hfp_grpc.py", |
| "pandora/hfp_grpc_aio.py", |
| "pandora/hfp_pb2.py", |
| "pandora/hfp_pb2.pyi", |
| "pandora/hid_grpc.py", |
| "pandora/hid_grpc_aio.py", |
| "pandora/hid_pb2.py", |
| "pandora/hid_pb2.pyi", |
| "pandora/host_grpc.py", |
| "pandora/host_grpc_aio.py", |
| "pandora/host_pb2.py", |
| "pandora/host_pb2.pyi", |
| "pandora/l2cap_grpc.py", |
| "pandora/l2cap_grpc_aio.py", |
| "pandora/l2cap_pb2.py", |
| "pandora/l2cap_pb2.pyi", |
| "pandora/le_audio_grpc.py", |
| "pandora/le_audio_grpc_aio.py", |
| "pandora/le_audio_pb2.py", |
| "pandora/le_audio_pb2.pyi", |
| "pandora/map_client_grpc.py", |
| "pandora/map_client_grpc_aio.py", |
| "pandora/map_client_pb2.py", |
| "pandora/map_client_pb2.pyi", |
| "pandora/map_grpc.py", |
| "pandora/map_grpc_aio.py", |
| "pandora/map_pb2.py", |
| "pandora/map_pb2.pyi", |
| "pandora/mediaplayer_grpc.py", |
| "pandora/mediaplayer_grpc_aio.py", |
| "pandora/mediaplayer_pb2.py", |
| "pandora/mediaplayer_pb2.pyi", |
| "pandora/oob_grpc.py", |
| "pandora/oob_grpc_aio.py", |
| "pandora/oob_pb2.py", |
| "pandora/oob_pb2.pyi", |
| "pandora/opp_grpc.py", |
| "pandora/opp_grpc_aio.py", |
| "pandora/opp_pb2.py", |
| "pandora/opp_pb2.pyi", |
| "pandora/os_grpc.py", |
| "pandora/os_grpc_aio.py", |
| "pandora/os_pb2.py", |
| "pandora/os_pb2.pyi", |
| "pandora/pan_grpc.py", |
| "pandora/pan_grpc_aio.py", |
| "pandora/pan_pb2.py", |
| "pandora/pan_pb2.pyi", |
| "pandora/pbap_grpc.py", |
| "pandora/pbap_grpc_aio.py", |
| "pandora/pbap_pb2.py", |
| "pandora/pbap_pb2.pyi", |
| "pandora/py.typed", |
| "pandora/rfcomm_grpc.py", |
| "pandora/rfcomm_grpc_aio.py", |
| "pandora/rfcomm_pb2.py", |
| "pandora/rfcomm_pb2.pyi", |
| "pandora/security_grpc.py", |
| "pandora/security_grpc_aio.py", |
| "pandora/security_pb2.py", |
| "pandora/security_pb2.pyi", |
| "pandora/vcp_grpc.py", |
| "pandora/vcp_grpc_aio.py", |
| "pandora/vcp_pb2.py", |
| "pandora/vcp_pb2.pyi", |
| ], |
| } |
| |
| filegroup { |
| name: "pandora_interfaces-python-src", |
| srcs: [ |
| ":pandora_interfaces-python-gen-src", |
| ], |
| exclude_srcs: [ |
| ":pandora_interfaces-python-stubs", |
| ], |
| visibility: [ |
| "//packages/modules/Bluetooth:__subpackages__", |
| "//vendor:__subpackages__", |
| ], |
| } |
| |
| filegroup { |
| name: "pandora_interfaces-python-stubs", |
| srcs: [ |
| ":pandora_interfaces-python-gen-src{pandora/a2dp_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/asha_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/avrcp_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/bumble_config_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/dck_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/gatt_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/hap_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/hfp_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/hid_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/host_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/l2cap_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/le_audio_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/map_client_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/map_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/mediaplayer_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/oob_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/opp_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/os_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/pan_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/pbap_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/py.typed}", |
| ":pandora_interfaces-python-gen-src{pandora/rfcomm_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/security_pb2.pyi}", |
| ":pandora_interfaces-python-gen-src{pandora/vcp_pb2.pyi}", |
| ], |
| } |
| |
| python_library_host { |
| name: "pandora_interfaces-python", |
| srcs: [":pandora_interfaces-python-src"], |
| data: [ |
| ":pandora_interfaces-python-stubs", |
| ], |
| } |