CcToolchainInfo

Informar um problema Acessar fonte

Informações sobre o compilador C++ que está sendo usado.

Participantes

all_files

depset CcToolchainInfo.all_files

Retorna todos os arquivos de conjunto de ferramentas para que possam ser passados para ações que usam esse conjunto de ferramentas como entradas.

ar_executable

string CcToolchainInfo.ar_executable

O caminho para o binário AR.

built_in_include_directories

list CcToolchainInfo.built_in_include_directories

Retorna a lista de diretórios integrados do compilador.

compilador

string CcToolchainInfo.compiler

Compilador C++. Poderá haver retorno em None.

compiler_executable

string CcToolchainInfo.compiler_executable

O caminho para o binário do compilador.

cpu

string CcToolchainInfo.cpu

CPU de destino do conjunto de ferramentas C++. Poderá haver retorno em None.

dynamic_runtime_lib

depset CcToolchainInfo.dynamic_runtime_lib(feature_configuration)

Retorna os arquivos do atributo "dynamic_runtime_lib" (para que eles possam ser transmitidos para ações que usam esse conjunto de ferramentas como entradas). O autor da chamada pode verificar se o feature_configuration ativa o recurso "static_link_cpp_runtimes". Caso contrário, "static_runtime_lib" e "dynamic_runtime_lib" não precisam ser usados. Além disso, use "static_runtime_lib" se o modo de vinculação estática estiver ativo.

Parâmetros

Parâmetro Descrição
feature_configuration obrigatório
Configuração de recurso a ser consultada.

gcov_executable

string CcToolchainInfo.gcov_executable

O caminho para o binário do gcov.

ld_executable

string CcToolchainInfo.ld_executable

O caminho para o binário ld.

libc

string CcToolchainInfo.libc

string da versão da libc. Poderá haver retorno em None.

needs_pic_for_dynamic_libraries

bool CcToolchainInfo.needs_pic_for_dynamic_libraries(feature_configuration)

Retorna verdadeiro se as compilações desta regra devem aplicar -fPIC. Caso contrário, será falso. Determina se devemos aplicar -fPIC para as compilações desta regra em C++, dependendo do conjunto de ferramentas do C++ e da presença da opção "--force_pic" Bazel.

Parâmetros

Parâmetro Descrição
feature_configuration obrigatório
Configuração de recurso a ser consultada.

nm_executable

string CcToolchainInfo.nm_executable

O caminho para o binário nm.

objcopy_executable

string CcToolchainInfo.objcopy_executable

O caminho para o binário objcopy.

objdump_executable

string CcToolchainInfo.objdump_executable

O caminho para o binário objdump.

preprocessor_executable

string CcToolchainInfo.preprocessor_executable

O caminho para o binário do pré-processador.

static_runtime_lib

depset CcToolchainInfo.static_runtime_lib(feature_configuration)

Retorna os arquivos do atributo "static_runtime_lib" (para que eles possam ser transmitidos para ações que usam esse conjunto de ferramentas como entradas). O autor da chamada precisa verificar se o feature_configuration ativa o recurso "static_link_cpp_runtimes". Caso contrário, "static_runtime_lib" e "dynamic_runtime_lib" não devem ser usados. Além disso, use "dynamic_runtime_lib" se o modo de vinculação dinâmica estiver ativo.

Parâmetros

Parâmetro Descrição
feature_configuration obrigatório
Configuração de recurso a ser consultada.

strip_executable

string CcToolchainInfo.strip_executable

O caminho para o binário da faixa.

sysroot

string CcToolchainInfo.sysroot

Retorna o sysroot a ser usado. Se o compilador do conjunto de ferramentas não oferecer suporte a diferentes sysroots ou o sysroot for o mesmo que o sysroot padrão, esse método retornará None. Poderá haver retorno em None.

target_gnu_system_name

string CcToolchainInfo.target_gnu_system_name

É o nome do sistema GNU. Poderá haver retorno em None.

to_json

string CcToolchainInfo.to_json()

Obsoleto. Esta API foi descontinuada e vai ser removida em breve. Não dependa disso. Ela está desativada com o ---incompatible_struct_has_no_methods. Use essa sinalização para verificar se seu código é compatível com a remoção iminente.
Cria uma string JSON a partir do parâmetro struct. Esse método só funciona se todos os elementos de struct (recursivamente) forem strings, ints, booleanos, outras estruturas, uma lista desses tipos ou um dicionário com chaves de string e valores desses tipos. Aspas e novas linhas em strings têm escape. Por exemplo:
struct(key=123).to_json()
# {"key":123}

struct(key=True).to_json()
# {"key":true}

struct(key=[1, 2, 3]).to_json()
# {"key":[1,2,3]}

struct(key='text').to_json()
# {"key":"text"}

struct(key=struct(inner_key='text')).to_json()
# {"key":{"inner_key":"text"}}

struct(key=[struct(inner_key=1), struct(inner_key=2)]).to_json()
# {"key":[{"inner_key":1},{"inner_key":2}]}

struct(key=struct(inner_key=struct(inner_inner_key='text'))).to_json()
# {"key":{"inner_key":{"inner_inner_key":"text"}}}
.

Obsoleto: em vez disso, use json.encode(x) ou json.encode_indent(x), que funcionam para valores diferentes de structs e não poluem o namespace do campo struct.

to_proto

string CcToolchainInfo.to_proto()

Obsoleto. Esta API foi descontinuada e vai ser removida em breve. Não dependa disso. Ela está desativada com o ---incompatible_struct_has_no_methods. Use essa sinalização para verificar se seu código é compatível com a remoção iminente.
Cria uma mensagem de texto a partir do parâmetro struct. Esse método só funciona se todos os elementos struct (recursivamente) forem strings, ints, booleanos, outras estruturas, dicts ou listas desses tipos. Aspas e novas linhas em strings têm escape. As chaves struct são iteradas na ordem de classificação. Exemplos:
struct(key=123).to_proto()
# key: 123

struct(key=True).to_proto()
# key: true

struct(key=[1, 2, 3]).to_proto()
# key: 1
# key: 2
# key: 3

struct(key='text').to_proto()
# key: "text"

struct(key=struct(inner_key='text')).to_proto()
# key {
#   inner_key: "text"
# }

struct(key=[struct(inner_key=1), struct(inner_key=2)]).to_proto()
# key {
#   inner_key: 1
# }
# key {
#   inner_key: 2
# }

struct(key=struct(inner_key=struct(inner_inner_key='text'))).to_proto()
# key {
#    inner_key {
#     inner_inner_key: "text"
#   }
# }

struct(foo={4: 3, 2: 1}).to_proto()
# foo: {
#   key: 4
#   value: 3
# }
# foo: {
#   key: 2
#   value: 1
# }

Obsoleto: use proto.encode_text(x).