Miembros
- action_is_enabled
- CcToolchainInfo
- compilar
- configure_features
- create_cc_toolchain_config_info
- create_compilation_context
- create_compilation_outputs
- create_compile_variables
- create_library_to_link
- create_link_variables
- create_linker_input
- create_linking_context
- create_linking_context_from_compilation_outputs
- do_not_use_tools_cpp_compiler_present
- get_environment_variables
- get_execution_requirements
- get_memory_inefficient_command_line
- get_tool_for_action
- is_enabled
- vínculo
- merge_cc_infos
- merge_compilation_contexts
- merge_compilation_outputs
action_is_enabled
bool cc_common.action_is_enabled(feature_configuration, action_name)
Parámetros
Parámetro | Descripción |
---|---|
feature_configuration
|
obligatorio Configuración del atributo que se consultará. |
action_name
|
obligatorio Nombre de action_config. |
CcToolchainInfo
Provider cc_common.CcToolchainInfo
compile
tuple cc_common.compile(actions, feature_configuration, cc_toolchain, srcs=[], public_hdrs=[], private_hdrs=[], includes=[], quote_includes=[], system_includes=[], framework_includes=[], defines=[], local_defines=[], include_prefix='', strip_include_prefix='', user_compile_flags=[], compilation_contexts=[], name, disallow_pic_outputs=False, disallow_nopic_outputs=False, additional_inputs=[], grep_includes=None)
CompilationContext
, CcCompilationOutputs
).
Parámetros
Parámetro | Descripción |
---|---|
actions
|
obligatorioactions .
|
feature_configuration
|
obligatoriofeature_configuration que se consultarán.
|
cc_toolchain
|
obligatorio Proveedor de CcToolchainInfo que se usará.
|
srcs
|
predeterminado = [] Es la lista de archivos de origen que se compilarán. |
public_hdrs
|
predeterminado = [] Lista de encabezados necesarios para la compilación de srcs y que las reglas dependientes pueden incluir de forma transitiva. |
private_hdrs
|
predeterminado = [] Lista de encabezados necesarios para la compilación de srcs y que NO deben incluirse en las reglas dependientes. |
includes
|
predeterminado = [] Busca rutas de acceso de archivos de encabezado a los que se haga referencia tanto por corchete angular como entre comillas. Por lo general, se aprueba con -I. Se propaga a los dependientes de forma transitiva. |
quote_includes
|
predeterminado = [] Rutas de acceso de archivos de encabezado a los que se hace referencia entre comillas, p.ej., #include "foo/bar/header.h". Pueden ser absolutas o relativas a la raíz de ejecución. Por lo general, se pasa con -iquote. Se propaga a los dependientes de forma transitiva. |
system_includes
|
predeterminado = [] Rutas de acceso de archivos de encabezado a los que se hace referencia con comillas angulares, p.ej., #include <foo/bar/header.h>. Pueden ser absolutas o relativas a la raíz de ejecución. Por lo general, se pasa con -isystem. Se propaga a los dependientes de forma transitiva. |
framework_includes
|
predeterminado = [] Busca rutas de acceso para archivos de encabezado en marcos de trabajo de Apple. Pueden ser absolutas o relativas a la raíz de ejecución. Por lo general, se aprueba con -F. Se propaga a los dependientes de forma transitiva. |
defines
|
predeterminado = [] Conjunto de definiciones necesarias para compilar este destino. Cada definición es una cadena. Se propaga a los dependientes de forma transitiva. |
local_defines
|
predeterminado = [] Conjunto de definiciones necesarias para compilar este destino. Cada definición es una cadena. No se propaga a los dependientes de forma transitiva. |
include_prefix
|
predeterminado = '' El prefijo que se agregará a las rutas de acceso de los encabezados de esta regla. Cuando se establece, los encabezados en el atributo hdrs de esta regla son accesibles en el valor de este atributo antepuesto a su ruta de acceso relativa del repositorio. Se quita el prefijo del atributo strip_include_prefix antes de agregar este prefijo. |
strip_include_prefix
|
predeterminado = '' El prefijo para quitar las rutas de acceso de los encabezados de esta regla. Cuando se establece, se puede acceder a los encabezados en el atributo hdrs de esta regla en su ruta de acceso con este prefijo cortado. Si es una ruta de acceso relativa, se toma como una ruta relativa de paquete. Si es una absoluta, se entiende como una ruta de acceso relativa de repositorio. El prefijo del atributo include_prefix se agrega después de que se quita este prefijo. |
user_compile_flags
|
predeterminado = [] Lista adicional de opciones de compilación. |
compilation_contexts
|
predeterminado = [] Encabezados de dependencias que se usan para la compilación. |
name
|
obligatorio Se usa para nombrar los artefactos de salida de las acciones creadas por este método. Consulta también el argumento `main_output`. |
disallow_pic_outputs
|
predeterminado = Falso Indica si se deben crear los resultados PIC. |
disallow_nopic_outputs
|
predeterminado = Falso Establece si se deben crear los resultados NOPIC. |
additional_inputs
|
predeterminado = [] Lista de archivos adicionales necesarios para la compilación de srcs |
grep_includes
|
File; or None ;
predeterminado = Ninguno |
configure_features
FeatureConfiguration cc_common.configure_features(ctx=None, cc_toolchain, language=None, requested_features=[], unsupported_features=[])
Parámetros
Parámetro | Descripción |
---|---|
ctx
|
ctx; or None ;
predeterminado = NingunoEl contexto de la regla. |
cc_toolchain
|
obligatorio cc_toolchain para el que configuramos funciones. |
language
|
string; or None ;
predeterminado = NingunoEl lenguaje para configurar: c++ u objc (c++ predeterminado) |
requested_features
|
predeterminado = [] Lista de funciones que se habilitarán. |
unsupported_features
|
predeterminado = [] Lista de funciones que no son compatibles con la regla actual. |
create_cc_toolchain_config_info
CcToolchainConfigInfo cc_common.create_cc_toolchain_config_info(ctx, features=[], action_configs=[], artifact_name_patterns=[], cxx_builtin_include_directories=[], toolchain_identifier, host_system_name=None, target_system_name, target_cpu, target_libc, compiler, abi_version=None, abi_libc_version=None, tool_paths=[], make_variables=[], builtin_sysroot=None, cc_target_os=None)
CcToolchainConfigInfo
.
Parámetros
Parámetro | Descripción |
---|---|
ctx
|
obligatorio El contexto de la regla. |
features
|
predeterminado = [] Contiene todas las especificaciones de marcas de una función. Argumentos: name: El nombre del elemento. Es posible incorporar una función sin cambiar a Bazel agregando una “función” a la cadena de herramientas y agrega la cadena correspondiente como función en el archivo BUILD. enabled: Si se establece en "True", esta función se habilitará, a menos que un tipo de regla la marque explícitamente como no compatible. flag_sets: Una lista FlagSet: Si se habilita la función en cuestión, los conjuntos de marcas se aplicarán a las acciones para las que se especifiquen. Env_sets: Una lista de EnvSet. Si el componente en cuestión está habilitado, los conjuntos de entornos se aplicarán a las acciones para las que se especifiquen. requiere: Una lista de conjuntos de atributos que definen cuándo la función es compatible con la cadena de herramientas. La función es compatible si se aplica por completo alguno de los conjuntos de atributos, es decir, cuando todas las funciones de un conjunto de atributos están habilitadas. Si es obligatorio se omite, la función se admite independientemente de qué otras funciones estén habilitadas. Úsalo como ejemplo para filtrar marcas según el modo de compilación habilitado (opt / fastbuild / dbg). implica: Una lista de cadenas de funciones o parámetros de configuración de acciones que se habilitan automáticamente cuando esta función está habilitada. Si no se puede habilitar alguna de las funciones o configuraciones de acciones implícitas, esta función tampoco se habilitará (en silencio). proporciona: Una lista de los nombres con los que esta función entra en conflicto. No se puede habilitar una función en los siguientes casos:- “ proporciona” contiene el nombre de una configuración de acción o función diferente que queremos habilitar. - ' proporciona' contiene el mismo valor que “brindar” en una configuración de acción o función diferente que queramos habilitar. Úsalo para asegurarte de que las funciones incompatibles no se puedan activar accidentalmente al mismo tiempo, lo que dificulta el diagnóstico de errores del compilador. |
action_configs
|
predeterminado = [] Una configuración de acciones corresponde a una acción de Bazel y permite la selección de una herramienta según las funciones activadas. La activación de la configuración de acciones ocurre con la misma semántica que los atributos: una función puede ser “requerida”. o "implícita" para configurar una acción del mismo modo que con otro atributo. Argumentos: action_name: Es el nombre de la acción de Bazel a la que se aplica esta configuración, p.ej., "c-compile" o "c-module-compile". enabled: Si se establece en "True", esta acción se habilita, a menos que un tipo de regla la marque explícitamente como no compatible. tools: La herramienta que se aplique a la acción será la primera que tenga un conjunto de atributos que coincida con la configuración de funciones. Se mostrará un error si ninguna herramienta coincide con una configuración de atributos proporcionada. Por ese motivo, es una buena idea proporcionar una herramienta predeterminada con un conjunto de atributos vacío. flag_sets: Si se habilita la configuración de la acción determinada, los conjuntos de marcas se aplicarán a la acción correspondiente. implica: Una lista de funciones o parámetros de configuración de acciones que se habilitan automáticamente cuando se habilita esta configuración de acciones. Si no se puede habilitar alguna de las funciones o configuraciones de acciones implícitas, esta configuración de acciones tampoco se habilitará (en silencio). |
artifact_name_patterns
|
predeterminado = [] Es el nombre de un artefacto de una categoría determinada de artefactos de entrada o salida para una acción. Argumentos: category_name: La categoría de artefactos a los que se aplica esta selección. Este campo se compara con una lista de categorías definidas en Bazel. Las categorías de ejemplo incluyen "linked_output" o el artefacto de esta selección. Junto con la extensión, se usa para crear un nombre de artefacto basado en el nombre de destino. extensión: Es la extensión para crear el artefacto para esta selección. Junto con el prefijo, se usa para crear un nombre de artefacto basado en el nombre de destino. |
cxx_builtin_include_directories
|
predeterminado = [] Directorios de inclusión integrados para la compilación de C++. Estas deben ser las rutas de acceso exactas que usa el compilador y, en general, son relativas a la raíz de ejecución. Las rutas de acceso usadas por el compilador pueden determinarse con "gcc -E -xc++ - -v". Actualmente, usamos las rutas de acceso de C++ también para la compilación en C, lo cual es seguro siempre y cuando no haya conflictos de nombres entre los archivos de encabezado C++ y C. Las rutas de acceso relativas se resuelven según el directorio del archivo de configuración. Si el compilador es compatible con --sysroot, estas rutas de acceso deben usar %sysroot% en lugar de incluir la ruta de acceso de inclusión y especificar el atributo sysroot a fin de proporcionar a blaze la información necesaria para realizar los reemplazos correctos. |
toolchain_identifier
|
obligatorio El identificador único de la cadena de herramientas dentro del lanzamiento de la herramienta cruzada. Debe ser posible usarlo como nombre de directorio en una ruta de acceso. Debe coincidir con la siguiente regex: [a-zA-Z_][\.\- \w]* |
host_system_name
|
string; or None ;
predeterminado = NingunoIgnorado |
target_system_name
|
obligatorio Es el nombre del sistema GNU. |
target_cpu
|
obligatorio La cadena de la arquitectura de destino. |
target_libc
|
obligatorio La cadena de versión de libc (p.ej., "glibc-2.2.2"). |
compiler
|
obligatorio La cadena de versión del compilador (p.ej., "gcc-4.1.1"). |
abi_version
|
string; or None ;
predeterminado = NingunoLa ABI en uso, que es una versión de GCC. P. ej.: “gcc-3.4” |
abi_libc_version
|
string; or None ;
predeterminado = NingunoEs la versión glibc que usa la ABI que usamos. |
tool_paths
|
predeterminado = [] Ubicaciones de las herramientas Argumentos: name: Nombre de la herramienta. path: Es la ubicación de la herramienta. Puede ser una ruta de acceso absoluta (en el caso de una cadena de herramientas no hermética) o una ruta de acceso relativa al paquete cc_toolchain. |
make_variables
|
predeterminado = [] Una variable Make a la que pueden acceder las reglas. |
builtin_sysroot
|
string; or None ;
predeterminado = NingunoEl sysroot integrado. Si este atributo no está presente, Bazel no permite usar un sysroot diferente, es decir, a través de la opción --grte_top. |
cc_target_os
|
string; or None ;
predeterminado = NingunoSolo para uso interno. No debes usarlo. |
create_compilation_context
CompilationContext cc_common.create_compilation_context(headers=unbound, system_includes=unbound, includes=unbound, quote_includes=unbound, framework_includes=unbound, defines=unbound, local_defines=unbound)
CompilationContext
.
Parámetros
Parámetro | Descripción |
---|---|
headers
|
predeterminado = no delimitado Conjunto de encabezados necesarios para compilar este destino |
system_includes
|
predeterminado = no delimitado Conjunto de rutas de búsqueda de archivos de encabezado a los que se hace referencia con corchetes angulares, p.ej., #include <foo/bar/header.h>. Pueden ser absolutas o relativas a la raíz de ejecución. Por lo general, se pasa con -isystem. |
includes
|
predeterminado = no delimitado Conjunto de rutas de búsqueda para archivos de encabezado a los que se hace referencia tanto por corchete angular como entre comillas. Por lo general, se pasan con -I. |
quote_includes
|
predeterminado = no delimitado Conjunto de rutas de búsqueda de archivos de encabezado a los que se hace referencia con comillas, p.ej., #include "foo/bar/header.h". Pueden ser absolutas o relativas a la raíz de ejecución. Por lo general, se pasa con -iquote. |
framework_includes
|
predeterminado = no delimitado Conjunto de rutas de búsqueda de framework para archivos de encabezado (solo en la plataforma de Apple) |
defines
|
predeterminado = no delimitado Conjunto de definiciones necesarias para compilar este destino. Cada definición es una cadena. Se propaga de forma transitiva a los dependientes. |
local_defines
|
predeterminado = no delimitado Conjunto de definiciones necesarias para compilar este destino. Cada definición es una cadena. No se propaga de forma transitiva a las dependencias. |
create_compilation_outputs
CcCompilationOutputs cc_common.create_compilation_outputs(objects=None, pic_objects=None)
Parámetros
Parámetro | Descripción |
---|---|
objects
|
depset; or None ;
predeterminado = NingunoLista de archivos de objetos. |
pic_objects
|
depset; or None ;
predeterminado = NingunoLista de archivos de objetos pic. |
create_compile_variables
Variables cc_common.create_compile_variables(cc_toolchain, feature_configuration, source_file=None, output_file=None, user_compile_flags=None, include_directories=None, quote_include_directories=None, system_include_directories=None, framework_include_directories=None, preprocessor_defines=None, thinlto_index=None, thinlto_input_bitcode_file=None, thinlto_output_object_file=None, use_pic=False, add_legacy_cxx_options=False, variables_extension=unbound)
Parámetros
Parámetro | Descripción |
---|---|
cc_toolchain
|
obligatorio cc_toolchain para el que creamos variables de compilación. |
feature_configuration
|
obligatorio Configuración del atributo que se consultará. |
source_file
|
valor predeterminado = Ninguno Archivo fuente opcional para la compilación. Es preferible pasar source_file en lugar de agregarlo al final de la línea de comandos generada desde cc_common.get_memory_inefficient_command_line, ya que el autor de la cadena de herramientas puede especificar y posicionar correctamente los indicadores del compilador. |
output_file
|
valor predeterminado = Ninguno Archivo de salida opcional de la compilación. Es preferible pasar output_file en lugar de agregarlo al final de la línea de comandos generada desde cc_common.get_memory_inefficient_command_line, ya que depende del autor del conjunto de herramientas especificar y posicionar correctamente las marcas del compilador. |
user_compile_flags
|
sequence of strings; or None ;
predeterminado = NingunoLista de marcas de compilación adicionales (copias). |
include_directories
|
depset; or None ;
predeterminado = NingunoConjunto de directorios de inclusión. |
quote_include_directories
|
depset; or None ;
predeterminado = NingunoEl depósito de las comillas incluye directorios. |
system_include_directories
|
depset; or None ;
predeterminado = NingunoEl punto de partida del sistema incluye directorios. |
framework_include_directories
|
depset; or None ;
predeterminado = NingunoEl origen del framework incluye directorios. |
preprocessor_defines
|
depset; or None ;
predeterminado = NingunoDefine el punto del preprocesador. |
thinlto_index
|
string; or None ;
predeterminado = NingunoRuta del archivo de índice de LTO. |
thinlto_input_bitcode_file
|
string; or None ;
predeterminado = NingunoArchivo de código de bits que se ingresa al backend de LTO. |
thinlto_output_object_file
|
string; or None ;
predeterminado = NingunoArchivo de objeto que es exportado por el backend de LTO. |
use_pic
|
predeterminado = Falso Cuando sea verdadera, la compilación generará un código independiente de la posición. |
add_legacy_cxx_options
|
predeterminado = Falso Sin uso. |
variables_extension
|
dict ;
predeterminado = no delimitadoEs un diccionario de variables adicionales que usan las acciones de compilación. |
create_library_to_link
LibraryToLink cc_common.create_library_to_link(actions, feature_configuration=None, cc_toolchain=None, static_library=None, pic_static_library=None, dynamic_library=None, interface_library=None, pic_objects=unbound, objects=unbound, alwayslink=False, dynamic_library_symlink_path='', interface_library_symlink_path='')
LibraryToLink
Parámetros
Parámetro | Descripción |
---|---|
actions
|
obligatorioactions .
|
feature_configuration
|
valor predeterminado = Ningunofeature_configuration que se consultarán.
|
cc_toolchain
|
valor predeterminado = Ninguno Proveedor de CcToolchainInfo que se usará.
|
static_library
|
File; or None ;
predeterminado = NingunoFile de la biblioteca estática que se vinculará.
|
pic_static_library
|
File; or None ;
predeterminado = NingunoSe vinculará File de la biblioteca de imágenes estáticas.
|
dynamic_library
|
File; or None ;
predeterminado = NingunoSe vinculará File de la biblioteca dinámica. Siempre se usa para el tiempo de ejecución y para la vinculación si no se pasa interface_library .
|
interface_library
|
File; or None ;
predeterminado = NingunoSe vinculará File de la biblioteca de interfaz.
|
pic_objects
|
sequence of Files ;
predeterminado = no delimitadoExperimental, no usar |
objects
|
sequence of Files ;
predeterminado = no delimitadoExperimental, no usar |
alwayslink
|
predeterminado = Falso Establece si se deben vincular la biblioteca o los objetos estáticos en el bloque --whole_archive. |
dynamic_library_symlink_path
|
string ;
predeterminado = ''Anula la ruta de acceso predeterminada del vínculo dinámico de la biblioteca en el directorio solib. Cadena vacía para usar el valor predeterminado. |
interface_library_symlink_path
|
predeterminado = '' Anula la ruta predeterminada del vínculo de la biblioteca de la interfaz en el directorio solib. Cadena vacía para usar el valor predeterminado. |
create_link_variables
Variables cc_common.create_link_variables(cc_toolchain, feature_configuration, library_search_directories=None, runtime_library_search_directories=None, user_link_flags=None, output_file=None, param_file=None, def_file=None, is_using_linker=True, is_linking_dynamic_library=False, must_keep_debug=True, use_test_only_flags=False, is_static_linking_mode=True)
Parámetros
Parámetro | Descripción |
---|---|
cc_toolchain
|
obligatorio cc_toolchain para el que creamos variables de compilación. |
feature_configuration
|
obligatorio Configuración del atributo que se consultará. |
library_search_directories
|
None; or depset ;
predeterminado = NingunoConjunto de directorios en el que el vinculador buscará bibliotecas en el momento de la vinculación. |
runtime_library_search_directories
|
None; or depset ;
predeterminado = NingunoConjunto de directorios en el que el cargador buscará bibliotecas en el tiempo de ejecución. |
user_link_flags
|
None; or sequence ;
predeterminado = NingunoLista de marcas de vínculos adicionales (linkopts). |
output_file
|
valor predeterminado = Ninguno Ruta de archivo de salida opcional. |
param_file
|
valor predeterminado = Ninguno Ruta de archivo de parámetros opcional. |
def_file
|
valor predeterminado = Ninguno Ruta de archivo .def opcional. |
is_using_linker
|
default = True Es verdadero cuando se usa el vinculador y Falso cuando se archiva. El llamador es responsable de mantenerla sincronizada con el nombre de acción utilizado (is_using_linker = True para vincular una biblioteca ejecutable o dinámica, is_using_linker = False para archivar la biblioteca estática). |
is_linking_dynamic_library
|
predeterminado = Falso Es verdadero cuando se crea una biblioteca dinámica. Es falso cuando se usa una biblioteca ejecutable o estática. La persona que llama es responsable de mantenerla sincronizada con el nombre de la acción utilizado. Este campo se quitará una vez que se corrija b/65151735. |
must_keep_debug
|
default = True Si se establece en True, Bazel expondrá "strip_debug_symbols" variable que generalmente se usa para utilizar el vinculador para quitar los símbolos de depuración del archivo de salida. |
use_test_only_flags
|
predeterminado = Falso Cuando se configura como verdadero, “is_cc_test”. variable de entorno. |
is_static_linking_mode
|
default = True Sin uso. |
create_linker_input
LinkerInput cc_common.create_linker_input(owner, libraries=None, user_link_flags=None, additional_inputs=None)
LinkerInput
.
Parámetros
Parámetro | Descripción |
---|---|
owner
|
obligatorio Etiqueta del destino que produjo todos los archivos usados en esta entrada. |
libraries
|
None; or depset ;
predeterminado = NingunoLista de LibraryToLink .
|
user_link_flags
|
None; or depset of strings; or sequence of strings ;
predeterminado = NingunoMarcas de vínculo de usuario pasadas como cadenas. Acepta [String], [[String]] o depset(String). Este último no es recomendable, ya que solo se conserva por motivos de compatibilidad; el depset se aplana. Si deseas propagar user_link_flags mediante depsets() sin compactar, únelos en un LinkerInput para que no se acoplen hasta el final. |
additional_inputs
|
None; or depset ;
predeterminado = NingunoPara obtener entradas adicionales a la acción de vinculación, p.ej., secuencias de comandos de vinculación. |
create_linking_context
LinkingContext cc_common.create_linking_context(linker_inputs=None, libraries_to_link=None, user_link_flags=None, additional_inputs=None)
LinkingContext
.
Parámetros
Parámetro | Descripción |
---|---|
linker_inputs
|
None; or depset ;
predeterminado = NingunoPunto de salida de LinkerInput .
|
libraries_to_link
|
None; or sequence ;
predeterminado = NingunoObsoleto. Este parámetro dejó de estar disponible y se quitará pronto. No dependa de él. Está inhabilitada con --+incompatible_require_linker_input_cc_api . Usa esta función experimental para verificar que tu código sea compatible con su eliminación inminente. Lista de LibraryToLink .
|
user_link_flags
|
None; or sequence ;
predeterminado = NingunoObsoleto. Este parámetro dejó de estar disponible y se quitará pronto. No dependa de él. Está inhabilitada con --+incompatible_require_linker_input_cc_api . Usa esta función experimental para verificar que tu código sea compatible con su eliminación inminente. Lista de marcas de vínculos de usuarios pasadas como cadenas. |
additional_inputs
|
None; or sequence ;
predeterminado = NingunoObsoleto. Este parámetro dejó de estar disponible y se quitará pronto. No dependa de él. Está inhabilitada con --+incompatible_require_linker_input_cc_api . Usa esta función experimental para verificar que tu código sea compatible con su eliminación inminente. Para entradas adicionales a la acción de vinculación, p.ej., secuencias de comandos de vinculación. |
create_linking_context_from_compilation_outputs
tuple cc_common.create_linking_context_from_compilation_outputs(actions, feature_configuration, cc_toolchain, compilation_outputs, user_link_flags=[], linking_contexts=[], name, language='c++', alwayslink=False, additional_inputs=[], disallow_static_libraries=False, disallow_dynamic_library=False, grep_includes=None)
CcLinkingContext
, CcLinkingOutputs
).
Parámetros
Parámetro | Descripción |
---|---|
actions
|
obligatorioactions .
|
feature_configuration
|
obligatoriofeature_configuration que se consultarán.
|
cc_toolchain
|
obligatorio Proveedor de CcToolchainInfo que se usará.
|
compilation_outputs
|
obligatorio Resultados de compilación que contienen archivos de objeto para vincular. |
user_link_flags
|
predeterminado = [] Lista adicional de opciones de vinculación. |
linking_contexts
|
predeterminado = [] Bibliotecas de dependencias Estas bibliotecas se vincularán al artefacto de salida de la llamada link(), ya sea un objeto binario o una biblioteca. |
name
|
obligatorio Se usa para nombrar los artefactos de salida de las acciones creadas por este método. |
language
|
default = “c++” Por el momento, solo es compatible con C++. No uses este parámetro. |
alwayslink
|
predeterminado = Falso Si esta biblioteca siempre debe estar vinculada. |
additional_inputs
|
predeterminado = [] Para obtener entradas adicionales a la acción de vinculación, p.ej., secuencias de comandos de vinculación. |
disallow_static_libraries
|
predeterminado = Falso Si se deben crear o no bibliotecas estáticas |
disallow_dynamic_library
|
predeterminado = Falso Indica si se debe crear o no una biblioteca dinámica. |
grep_includes
|
File; or None ;
predeterminado = Ninguno |
do_not_use_tools_cpp_compiler_present
None cc_common.do_not_use_tools_cpp_compiler_present
get_environment_variables
dict cc_common.get_environment_variables(feature_configuration, action_name, variables)
Parámetros
Parámetro | Descripción |
---|---|
feature_configuration
|
obligatorio Configuración del atributo que se consultará. |
action_name
|
obligatorio Nombre de la acción. Debe ser uno de los nombres de @bazel_tools//tools/build_defs/cc:action_names.bzl (https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl). |
variables
|
obligatorio Variables de compilación que se usarán para la expansión de plantillas. |
get_execution_requirements
sequence cc_common.get_execution_requirements(feature_configuration, action_name)
Parámetros
Parámetro | Descripción |
---|---|
feature_configuration
|
obligatorio Configuración del atributo que se consultará. |
action_name
|
obligatorio Nombre de la acción. Debe ser uno de los nombres de @bazel_tools//tools/build_defs/cc:action_names.bzl (https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl). |
get_memory_inefficient_command_line
sequence cc_common.get_memory_inefficient_command_line(feature_configuration, action_name, variables)
Parámetros
Parámetro | Descripción |
---|---|
feature_configuration
|
obligatorio Configuración del atributo que se consultará. |
action_name
|
obligatorio Nombre de la acción. Debe ser uno de los nombres de @bazel_tools//tools/build_defs/cc:action_names.bzl (https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl). |
variables
|
obligatorio Variables de compilación que se usarán para las expansiones de plantillas. |
get_tool_for_action
string cc_common.get_tool_for_action(feature_configuration, action_name)
Parámetros
Parámetro | Descripción |
---|---|
feature_configuration
|
obligatorio Configuración del atributo que se consultará. |
action_name
|
obligatorio Nombre de la acción. Debe ser uno de los nombres de @bazel_tools//tools/build_defs/cc:action_names.bzl (https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl). |
is_enabled
bool cc_common.is_enabled(feature_configuration, feature_name)
Parámetros
Parámetro | Descripción |
---|---|
feature_configuration
|
obligatorio Configuración del atributo que se consultará. |
feature_name
|
obligatorio Es el nombre del elemento. |
vínculo
CcLinkingOutputs cc_common.link(actions, feature_configuration, cc_toolchain, compilation_outputs=None, user_link_flags=[], linking_contexts=[], name, language='c++', output_type='executable', link_deps_statically=True, stamp=0, additional_inputs=[], grep_includes=None, additional_outputs=unbound)
Parámetros
Parámetro | Descripción |
---|---|
actions
|
obligatorioactions .
|
feature_configuration
|
obligatoriofeature_configuration que se consultarán.
|
cc_toolchain
|
obligatorio Proveedor de CcToolchainInfo que se usará.
|
compilation_outputs
|
CcCompilationOutputs; or None ;
predeterminado = NingunoResultados de compilación que contienen archivos de objeto para vincular. |
user_link_flags
|
predeterminado = [] Lista adicional de opciones del vinculador. |
linking_contexts
|
predeterminado = [] Vincula contextos de dependencias que se vincularán al contexto de vinculación que genera esta regla. |
name
|
obligatorio Se usa para nombrar los artefactos de salida de las acciones creadas por este método. |
language
|
default = “c++” Por el momento, solo es compatible con C++. No uses este parámetro. |
output_type
|
default = “executable” Puede ser “ejecutable” o "dynamic_library". |
link_deps_statically
|
default = True True para vincular dependencias de forma estática; falso de forma dinámica. |
stamp
|
valor predeterminado = 0 Indica si se debe incluir información de compilación en el ejecutable vinculado, si output_type es 'executable'. Si es 1, siempre se incluye la información de la compilación. Si es 0 (la información de compilación predeterminada siempre se excluye. Si es -1, se usa el comportamiento predeterminado, que puede anularse con la marca --[no]stamp. No se debe establecer (o se debe establecer en 0) cuando se genera el resultado ejecutable de las reglas de prueba. |
additional_inputs
|
sequence; or depset ;
predeterminado = []Para obtener entradas adicionales a la acción de vinculación, p.ej., secuencias de comandos de vinculación. |
grep_includes
|
File; or None ;
predeterminado = Ninguno |
additional_outputs
|
sequence ;
predeterminado = no delimitadoPara obtener resultados adicionales a la acción de vinculación, p.ej., archivos de mapa. |
merge_cc_infos
CcInfo cc_common.merge_cc_infos(direct_cc_infos=[], cc_infos=[])
CcInfo
en uno solo.
Parámetros
Parámetro | Descripción |
---|---|
direct_cc_infos
|
predeterminado = [] Lista de elementos CcInfo que se combinarán, cuyos encabezados exportarán los campos directos en el proveedor que se muestra.
|
cc_infos
|
predeterminado = [] Lista de elementos CcInfo que se combinarán, cuyos encabezados no serán exportados por los campos directos en el proveedor que se muestra.
|
merge_compilation_contexts
CompilationContext cc_common.merge_compilation_contexts(compilation_contexts=[])
CompilationContexts
en uno solo.
Parámetros
Parámetro | Descripción |
---|---|
compilation_contexts
|
predeterminado = [] Lista de elementos CompilationContexts que se combinarán. Los campos directos del proveedor mostrado exportarán los encabezados de cada contexto.
|
merge_compilation_outputs
CcCompilationOutputs cc_common.merge_compilation_outputs(compilation_outputs=[])
Parámetros
Parámetro | Descripción |
---|---|
compilation_outputs
|
predeterminado = [] |