Regras
py_proto_library
Acessar a origem da regrapy_proto_library(name, deps, compatible_with, deprecation, distribs, exec_compatible_with, exec_properties, features, restricted_to, tags, target_compatible_with, testonly, toolchains, visibility)
Argumentos
Atributos | |
---|---|
name |
Nome: obrigatório Um nome exclusivo para essa segmentação. |
deps
|
Lista de rótulos. O padrão é |
proto_lang_toolchain
Exibir origem da regraproto_lang_toolchain(name, allowlist_different_package, blacklisted_protos, command_line, compatible_with, deprecation, distribs, exec_compatible_with, exec_properties, features, mnemonic, output_files, plugin, plugin_format_flag, progress_message, protoc_minimal_do_not_use, restricted_to, runtime, tags, target_compatible_with, testonly, toolchain_type, toolchains, visibility)
Se estiver usando o Bazel, carregue a regra em https://github.com/bazelbuild/rules_proto.
Especifica como uma regra LANG_proto_library (por exemplo, java_proto_library
) precisa invocar o
protocompilador.
Algumas regras do Lang_proto_library permitem especificar qual conjunto de ferramentas usar usando sinalizações de linha de comando.
Consulte a documentação.
Normalmente, não é recomendável escrever esse tipo de regra, a menos que você queira ajustar seu compilador Java.
Não há compilador. O proto-compiler é retirado da regra proto_library a que nos conectamos. Ele é
transmitido como uma flag de linha de comando para o Blaze.
Vários recursos exigem que um proto-compiler seja invocado na própria regra proto_library.
É benéfico forçar o compilador que LANG_proto_library usa a mesma que
proto_library
.
Exemplos
Um exemplo simples seria:
proto_lang_toolchain(
name = "javalite_toolchain",
command_line = "--javalite_out=shared,immutable:$(OUT)",
plugin = ":javalite_plugin",
runtime = ":protobuf_lite",
)
Argumentos
Atributos | |
---|---|
name |
Nome: obrigatório Um nome exclusivo para o destino. |
allowlist_different_package
|
Rótulo: o padrão é |
blacklisted_protos
|
Lista de rótulos; o padrão é srcs de
blacklisted_protos .
Isso é usado para arquivos .proto que já estão vinculados a ambientes de execução de proto, como
any.proto .
|
command_line
|
String, obrigatório Esse valor será transmitido para o proto-compiler para gerar o código. Inclua apenas as partes específicas para esse gerador de código/plug-in (por exemplo, não inclua parâmetros -I)
|
mnemonic
|
String; o padrão é |
output_files
|
String. O padrão é $(OUT) em command_line é formatado, seja
por um caminho para um único arquivo ou diretório de saída em caso de vários arquivos.
Os valores possíveis são: "single" e "multiple".
|
plugin
|
Rótulo: o padrão é --plugin=protoc-gen-PLUGIN=<executable>.
|
plugin_format_flag
|
String; o padrão é --plugin=protoc-gen-PLUGIN=<executable>.
|
progress_message
|
String; o padrão é |
protoc_minimal_do_not_use
|
Rótulo: o padrão é |
runtime
|
Rótulo; o padrão é |
toolchain_type
|
Rótulo: o padrão é |
proto_toolchain
Acessar a origem da regraproto_toolchain(name, command_line, compatible_with, deprecation, distribs, exec_compatible_with, exec_properties, features, mnemonic, output_files, progress_message, proto_compiler, restricted_to, tags, target_compatible_with, testonly, toolchains, visibility)
Argumentos
Atributos | |
---|---|
name |
Nome: obrigatório Um nome exclusivo para essa segmentação. |
command_line
|
String; o padrão é |
mnemonic
|
String; o padrão é |
output_files
|
String; o padrão é |
progress_message
|
String; o padrão é |
proto_compiler
|
Rótulo: o padrão é |