Miembros
- action_is_enabled
- CcToolchainInfo
- compile
- 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
- create_lto_compilation_context
- 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_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 | FeatureConfiguration;
                                     obligatorio Es la configuración de la función que se consultará. | 
| action_name | string;
                                     required 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=[], conly_flags=[], cxx_flags=[], compilation_contexts=[], name, disallow_pic_outputs=False, disallow_nopic_outputs=False, additional_inputs=[], module_interfaces=unbound)
CompilationContext, CcCompilationOutputs).
          
      Parámetros
| Parámetro | Descripción | 
|---|---|
| actions | actions:
                                     objeto actionsobligatorio. | 
| feature_configuration | FeatureConfiguration;
                                     required feature_configurationque se consultará. | 
| cc_toolchain | Info;
                                     required CcToolchainInfoproveedor que se usará. | 
| srcs | sequence;
                                     el valor predeterminado es []Es la lista de archivos fuente que se compilarán. | 
| public_hdrs | sequence;
                                     el valor predeterminado es []Lista de encabezados necesarios para la compilación de srcs y que pueden incluirse de forma transitiva en las reglas dependientes. | 
| private_hdrs | sequence;
                                     el valor predeterminado es []Lista de encabezados necesarios para la compilación de srcs y que NO deben incluir las reglas dependientes. | 
| includes | sequence o depset;
                                     El valor predeterminado es []Son las rutas de acceso de búsqueda para los archivos de encabezado a los que se hace referencia con corchetes angulares y comillas. Por lo general, se pasa con -I. Se propaga a los elementos dependientes de forma transitiva. | 
| quote_includes | sequence;
                                     el valor predeterminado es []Son las rutas de búsqueda de los archivos de encabezado a los que se hace referencia entre comillas, p.ej., #include "foo/bar/header.h". Pueden ser relativas a la raíz de ejecución o absolutas. Por lo general, se pasa con -iquote. Se propaga a los elementos dependientes de forma transitiva. | 
| system_includes | sequence;
                                     el valor predeterminado es []Son las rutas de búsqueda de los archivos de encabezado a los que se hace referencia con corchetes angulares, p.ej., #include <foo/bar/header.h>. Pueden ser relativas a la raíz de ejecución o absolutas. Por lo general, se pasa con -isystem. Se propaga a los elementos dependientes de forma transitiva. | 
| framework_includes | sequence;
                                     el valor predeterminado es []Son las rutas de búsqueda de los archivos de encabezado de los frameworks de Apple. Pueden ser relativas a la raíz de ejecución o absolutas. Por lo general, se pasa con -F. Se propaga a los elementos dependientes de forma transitiva. | 
| defines | sequence;
                                     El valor predeterminado es []Es el conjunto de definiciones necesarias para compilar este destino. Cada definición es una cadena. Se propaga a los elementos dependientes de forma transitiva. | 
| local_defines | sequence;
                                     El valor predeterminado es []Es el conjunto de definiciones necesarias para compilar este destino. Cada definición es una cadena. No se propaga a los elementos dependientes de forma transitiva. | 
| include_prefix | string;
                                     El valor predeterminado es ''Es el prefijo que se agregará a las rutas de acceso de los encabezados de esta regla. Cuando se configura, se puede acceder a los encabezados del atributo hdrs de esta regla en la ruta de acceso relativa al repositorio a la que se antepone el valor de este atributo. El prefijo del atributo strip_include_prefix se quita antes de que se agregue este prefijo. | 
| strip_include_prefix | string;
                                     el valor predeterminado es ''Es el prefijo que se quitará de las rutas de acceso de los encabezados de esta regla. Cuando se configura, se puede acceder a los encabezados del 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 de acceso relativa al paquete. Si es absoluta, se entiende como una ruta de acceso relativa al repositorio. El prefijo del atributo include_prefix se agrega después de que se quita este prefijo. | 
| user_compile_flags | sequence:
                                     El valor predeterminado es []Lista adicional de opciones de compilación. | 
| conly_flags | sequence:
                                     El valor predeterminado es []Lista adicional de opciones de compilación para compilaciones de C. | 
| cxx_flags | sequence;
                                     el valor predeterminado es []Lista adicional de opciones de compilación para compilaciones de C++. | 
| compilation_contexts | sequence;
                                     el valor predeterminado es []Encabezados de las dependencias que se usan para la compilación. | 
| name | cadena;
                                     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 | bool;
                                     El valor predeterminado es FalseIndica si se deben crear resultados de PIC. | 
| disallow_nopic_outputs | bool;
                                     El valor predeterminado es FalseIndica si se deben crear resultados de NOPIC. | 
| additional_inputs | sequence;
                                     El valor predeterminado es []Lista de archivos adicionales necesarios para la compilación de srcs | 
| module_interfaces | sequence;
                                     El valor predeterminado es unboundEs la lista de archivos de origen de las interfaces del módulo que se compilarán. Nota: Esta es una función experimental que solo se habilita con --experimental_cpp_modules. | 
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 o None;
                                     el valor predeterminado esNoneEs el contexto de la regla. | 
| cc_toolchain | Info;
                                     required cc_toolchain para el que configuramos funciones. | 
| language | string o None;
                                     El valor predeterminado esNoneEl lenguaje para configurar: c++ o objc (el valor predeterminado es c++) | 
| requested_features | sequence:
                                     El valor predeterminado es []Lista de funciones que se habilitarán. | 
| unsupported_features | sequence;
                                     el valor predeterminado es []Lista de funciones que no admite 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=None, target_cpu=None, target_libc=None, compiler, abi_version=None, abi_libc_version=None, tool_paths=[], make_variables=[], builtin_sysroot=None)
CcToolchainConfigInfo.
          
      Parámetros
| Parámetro | Descripción | 
|---|---|
| ctx | ctx:
                                     obligatorio Es el contexto de la regla. | 
| features | sequence;
                                     El valor predeterminado es []Contiene todas las especificaciones de marcas para una función. Argumentos: 
 
 
 
 
 
 
 - providescontiene el nombre de otra configuración de acción o función que queremos habilitar.- providescontiene el mismo valor que un "provides" en otra configuración de acción o función que queremos habilitar. Úsalo para garantizar que las funciones incompatibles no se puedan activar accidentalmente al mismo tiempo, lo que generaría errores de compilador difíciles de diagnosticar. | 
| action_configs | sequence;
                                     El valor predeterminado es []Una configuración de acción corresponde a una acción de Bazel y permite seleccionar una herramienta en función de las funciones activadas. La activación de la configuración de la acción se produce con la misma semántica que las funciones: una función puede "requerir" o "implicar" una configuración de la acción de la misma manera que lo haría con otra función. Argumentos: 
 
 
 
 
 | 
| artifact_name_patterns | sequence;
                                     el valor predeterminado es []Es el nombre de un artefacto de una categoría determinada de artefactos de entrada o salida para una acción. Argumentos: 
 
 | 
| cxx_builtin_include_directories | sequence;
                                     el valor predeterminado es []Son los directorios de inclusión integrados para la compilación de C++. Estas deben ser las rutas de acceso exactas que usa el compilador y, por lo general, son relativas a la raíz de ejecución. Los comandos "gcc -E -xc++ - -v" pueden determinar las rutas que usa el compilador. Actualmente, también usamos las rutas de C++ para la compilación de C, lo que es seguro siempre y cuando no haya conflictos de nombres entre los archivos de encabezado de C++ y C. Las rutas relativas se resuelven en relación con el directorio del archivo de configuración. Si el compilador admite --sysroot, estas rutas de acceso deben usar %sysroot% en lugar de la ruta de acceso de inclusión y especificar el atributo sysroot para proporcionar a Blaze la información necesaria para realizar los reemplazos correctos. | 
| toolchain_identifier | string;
                                     required Es el identificador único de la cadena de herramientas dentro de la versión de crosstool. 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 | cadena o None;
                                     el valor predeterminado esNoneSe ignora. | 
| target_system_name | cadena o None; el valor predeterminado esNoneObsoleto. Es el nombre del sistema GNU. La cadena se expone a CcToolchainInfo.target_gnu_system_name. | 
| target_cpu | cadena o None;
                                     el valor predeterminado esNoneObsoleto: En su lugar, usa restricciones basadas en la CPU. Si la cadena es "k8", se omitirá `target_cpu` del nombre de archivo de los datos sin procesar del perfil de FDO. | 
| target_libc | cadena o None;
                                     el valor predeterminado esNoneObsoleto: Usa restricciones basadas en el SO en su lugar. Es la cadena de versión de libc (p.ej., "glibc-2.2.2"). Si la cadena es "macosx", se supone que la plataforma es MacOS. De lo contrario, Linux. La cadena se expone a CcToolchainInfo.libc. | 
| compiler | string;
                                     obligatorio Es la cadena del compilador (p.ej., "gcc"). El compilador de la cadena de herramientas actual se expone a `@bazel_tools//tools/cpp:compiler (compiler_flag)` como un valor de la marca. Los destinos que requieren marcas específicas del compilador pueden usar config_settings en https://github.com/bazelbuild/rules_cc/blob/main/cc/compiler/BUILD en instrucciones select() o crear config_setting personalizadas si la configuración existente no es suficiente. | 
| abi_version | cadena o None;
                                     el valor predeterminado esNoneEs la ABI en uso, que es una versión de gcc. P. ej.: "gcc-3.4". La cadena se establece en la ABI de la variable de la cadena de herramientas de C++. | 
| abi_libc_version | cadena o None;
                                     el valor predeterminado esNoneEs la versión de glibc que usa la ABI que estamos usando. La cadena se establece en la variable de cadena de herramientas de C++ ABI_LIBC_VERSION. | 
| tool_paths | sequence:
                                     El valor predeterminado es []Ubicaciones de las herramientas. Argumentos: 
 
 | 
| make_variables | sequence;
                                     El valor predeterminado es []Es una variable de creación a la que se puede acceder desde las reglas. | 
| builtin_sysroot | cadena o None;
                                     el valor predeterminado esNoneEs el directorio raíz del sistema 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. | 
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 | El valor predeterminado es unbound. Conjunto de encabezados necesarios para compilar este destino | 
| system_includes | El valor predeterminado es unbound. Es un conjunto de rutas de acceso de búsqueda para los archivos de encabezado a los que se hace referencia con corchetes angulares, es decir, #include <foo/bar/header.h>. Pueden ser relativas a la raíz de ejecución o absolutas. Por lo general, se pasa con -isystem | 
| includes | El valor predeterminado es unbound. Es un conjunto de rutas de búsqueda para los archivos de encabezado a los que se hace referencia con corchetes angulares y comillas. Por lo general, se pasa con -I. | 
| quote_includes | El valor predeterminado es unbound. Es un conjunto de rutas de acceso de búsqueda para los archivos de encabezado a los que se hace referencia entre comillas, p. ej., #include "foo/bar/header.h". Pueden ser relativas a la raíz de ejecución o absolutas. Por lo general, se pasa con -iquote | 
| framework_includes | El valor predeterminado es unbound. Conjunto de rutas de búsqueda de frameworks para archivos de encabezado (solo para la plataforma de Apple) | 
| defines | El valor predeterminado es unbound. Es el conjunto de definiciones necesarias para compilar este destino. Cada definición es una cadena. Se propaga de forma transitiva a los elementos dependientes. | 
| local_defines | El valor predeterminado es unbound. Es el conjunto de definiciones necesarias para compilar este destino. Cada definición es una cadena. No se propaga de forma transitiva a los elementos dependientes. | 
create_compilation_outputs
CcCompilationOutputs cc_common.create_compilation_outputs(objects=None, pic_objects=None)
Parámetros
| Parámetro | Descripción | 
|---|---|
| objects | depset o None;
                                     El valor predeterminado esNoneLista de archivos de objetos. | 
| pic_objects | depset o None;
                                     El valor predeterminado esNoneLista 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 | Info;
                                     required cc_toolchain para la que creamos variables de compilación. | 
| feature_configuration | FeatureConfiguration;
                                     obligatorio Es la configuración de la función que se consultará. | 
| source_file | El valor predeterminado es None. Archivo de origen opcional para la compilación. Prefiere pasar source_file aquí en lugar de agregarlo al final de la línea de comandos generada a partir de cc_common.get_memory_inefficient_command_line, ya que, de esta manera, el autor de la cadena de herramientas puede especificar y posicionar correctamente las marcas del compilador. | 
| output_file | El valor predeterminado es None. Archivo de salida opcional de la compilación. Prefiere pasar output_file aquí en lugar de agregarlo al final de la línea de comandos generada a partir de cc_common.get_memory_inefficient_command_line, ya que, de esta manera, el autor de la cadena de herramientas puede especificar y posicionar correctamente las marcas del compilador. | 
| user_compile_flags | secuencia de cadenas o None;
                                     el valor predeterminado esNoneLista de marcas de compilación adicionales (copts). | 
| include_directories | depset o None;
                                     El valor predeterminado esNoneEs un depset de los directorios de inclusión. | 
| quote_include_directories | depset o None;                                     el valor predeterminado esNoneEs un depset de directorios de inclusión de comillas. | 
| system_include_directories | depset o None;
                                     El valor predeterminado esNoneEs el depset de los directorios de inclusión del sistema. | 
| framework_include_directories | depset o None;
                                     El valor predeterminado esNoneEs un depset de los directorios de inclusión del framework. | 
| preprocessor_defines | depset o None;
                                     el valor predeterminado esNoneEs el depset de las definiciones del preprocesador. | 
| thinlto_index | string o None;
                                     el valor predeterminado esNoneRuta de acceso al archivo de índice de LTO. | 
| thinlto_input_bitcode_file | string o None;
                                     el valor predeterminado esNoneArchivo de bitcode que se ingresa en el backend de LTO. | 
| thinlto_output_object_file | cadena o None;
                                     el valor predeterminado esNoneArchivo de objeto que genera el backend de LTO. | 
| use_pic | bool;
                                     el valor predeterminado es FalseCuando es verdadero, la compilación generará código independiente de la posición. | 
| add_legacy_cxx_options | bool;
                                     El valor predeterminado es FalseSin usar. | 
| variables_extension | dict;
                                     El valor predeterminado es unboundEs 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 | obligatorio Objeto actions. | 
| feature_configuration | El valor predeterminado es Nonefeature_configurationque se consultará. | 
| cc_toolchain | El valor predeterminado es el proveedor NoneCcToolchainInfoque se usará. | 
| static_library | Archivo o None;                                     el valor predeterminado esNoneFilede la biblioteca estática que se vinculará. | 
| pic_static_library | Archivo o None; de forma predeterminada, esNoneFilede la biblioteca estática de pic que se vinculará. | 
| dynamic_library | File o None;
                                     el valor predeterminado esNoneFilede la biblioteca dinámica que se vinculará. Siempre se usa para el tiempo de ejecución y para la vinculación si no se pasainterface_library. | 
| interface_library | Archivo o None;
                                     el valor predeterminado esNoneFilede la biblioteca de la interfaz que se vinculará. | 
| pic_objects | secuencia de Files;
                                     el valor predeterminado es unboundExperimental, no usar | 
| objects | secuencia de Files;
                                     el valor predeterminado es unboundExperimental, no usar | 
| alwayslink | bool;
                                     el valor predeterminado es FalseIndica si se deben vincular la biblioteca o los objetos estáticos en el bloque --whole_archive. | 
| dynamic_library_symlink_path | string;
                                     el valor predeterminado es ''Anula la ruta de acceso predeterminada del vínculo de la biblioteca dinámica en el directorio solib. Cadena vacía para usar el valor predeterminado. | 
| interface_library_symlink_path | cadena;
                                     el valor predeterminado es ''Anula la ruta de acceso 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=[], runtime_library_search_directories=[], user_link_flags=[], output_file=None, param_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 | Info;
                                     required cc_toolchain para la que creamos variables de compilación. | 
| feature_configuration | FeatureConfiguration;
                                     obligatorio Es la configuración de la función que se consultará. | 
| library_search_directories | depset;
                                     El valor predeterminado es []Es un depset de directorios en los que el vinculador buscará bibliotecas en el momento de la vinculación. | 
| runtime_library_search_directories | depset;
                                     El valor predeterminado es []Es el depset de los directorios en los que el cargador buscará bibliotecas durante el tiempo de ejecución. | 
| user_link_flags | sequence;
                                     el valor predeterminado es []Lista de marcas de vinculación adicionales (linkopts). | 
| output_file | El valor predeterminado es None. Ruta de acceso opcional del archivo de salida. | 
| param_file | El valor predeterminado es None. Ruta de acceso opcional al archivo de parámetros. | 
| is_using_linker | bool;
                                     el valor predeterminado es TrueEs verdadero cuando se usa el vinculador y falso cuando se usa el archivador. La persona que llama es responsable de mantener esto sincronizado con el nombre de la acción que se usa (is_using_linker = True para vincular la biblioteca dinámica o el ejecutable, is_using_linker = False para archivar la biblioteca estática). | 
| is_linking_dynamic_library | bool;
                                     el valor predeterminado es FalseEs verdadero cuando se crea una biblioteca dinámica y falso cuando se trata de una biblioteca estática o un archivo ejecutable. La entidad llamadora es responsable de mantener la sincronización con el nombre de la acción utilizada. Este campo se quitará una vez que se corrija b/65151735. | 
| must_keep_debug | bool;
                                     el valor predeterminado es TrueCuando se establece en False, bazel expondrá la variable "strip_debug_symbols", que suele usarse para que el vinculador quite los símbolos de depuración del archivo de salida. | 
| use_test_only_flags | bool;
                                     el valor predeterminado es FalseCuando se configura como verdadero, se establecerá la variable "is_cc_test". | 
| is_static_linking_mode | bool;
                                     El valor predeterminado es TrueSin usar. | 
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 | Label:
                                     obligatorio Es la etiqueta del destino que produjo todos los archivos utilizados en esta entrada. | 
| libraries | None; o depset;
                                     El valor predeterminado esNoneLista de LibraryToLink. | 
| user_link_flags | None; o depset de strings; o sequence de strings;
                                     el valor predeterminado esNoneSon marcas de vínculos del usuario que se pasan como cadenas. Acepta [String], [[String]] o depset(String). No se recomienda el último, ya que solo se mantiene por motivos de compatibilidad, y el depset se aplana. Si deseas propagar user_link_flags a través de depsets() sin aplanar, envuélvelos en un LinkerInput para que no se aplanen hasta el final. | 
| additional_inputs | Noneo depset;
                                     El valor predeterminado esNoneSon entradas adicionales para 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; o depset;
                                     El valor predeterminado esNoneEs el depset de LinkerInput. | 
| libraries_to_link | None; o sequence;
                                     el valor predeterminado esNoneObsoleto. Este parámetro dejó de estar disponible y se quitará pronto. No dependas de ella. Se inhabilita con --incompatible_require_linker_input_cc_api. Usa esta marca para verificar que tu código sea compatible con esta eliminación inminente.Lista de LibraryToLink. | 
| user_link_flags | None; o sequence;
                                     el valor predeterminado esNoneObsoleto. Este parámetro dejó de estar disponible y se quitará pronto. No dependas de ella. Se inhabilita con --incompatible_require_linker_input_cc_api. Usa esta marca para verificar que tu código sea compatible con esta eliminación inminente.Lista de marcas de vinculación del usuario que se pasan como cadenas. | 
| additional_inputs | None; o sequence;
                                     el valor predeterminado esNoneObsoleto. Este parámetro dejó de estar disponible y se quitará pronto. No dependas de ella. Se inhabilita con --incompatible_require_linker_input_cc_api. Usa esta marca para verificar que tu código sea compatible con esta eliminación inminente.Son entradas adicionales para 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, name, feature_configuration, cc_toolchain, language='c++', disallow_static_libraries=False, disallow_dynamic_library=False, compilation_outputs, linking_contexts=[], user_link_flags=[], alwayslink=False, additional_inputs=[], variables_extension=unbound)
CcLinkingContext, CcLinkingOutputs).
          
      Parámetros
| Parámetro | Descripción | 
|---|---|
| actions | actions:
                                     objeto actionsobligatorio. | 
| name | cadena;
                                     obligatorio Se usa para nombrar los artefactos de salida de las acciones creadas por este método. | 
| feature_configuration | FeatureConfiguration;
                                     required feature_configurationque se consultará. | 
| cc_toolchain | Info;
                                     required CcToolchainInfoproveedor que se usará. | 
| language | string;
                                     El valor predeterminado es 'c++'Por el momento, solo se admite C++. No uses este parámetro. | 
| disallow_static_libraries | bool;
                                     el valor predeterminado es FalseIndica si se deben crear bibliotecas estáticas. | 
| disallow_dynamic_library | bool;
                                     el valor predeterminado es FalseIndica si se debe crear una biblioteca dinámica. | 
| compilation_outputs | CcCompilationOutputs;
                                     required Resultados de la compilación que contienen archivos de objetos para vincular. | 
| linking_contexts | sequence;
                                     el valor predeterminado es []Bibliotecas de dependencias. Estas bibliotecas se vincularán en el artefacto de salida de la llamada a link(), ya sea un objeto binario o una biblioteca. | 
| user_link_flags | sequence:
                                     El valor predeterminado es []Lista adicional de opciones de vinculación. | 
| alwayslink | bool;
                                     el valor predeterminado es FalseIndica si esta biblioteca siempre debe estar vinculada. | 
| additional_inputs | sequence;
                                     el valor predeterminado es []Son entradas adicionales para la acción de vinculación, p.ej., secuencias de comandos de vinculación. | 
| variables_extension | dict;
                                     el valor predeterminado es unboundSon variables adicionales que se pasan a la configuración de la cadena de herramientas cuando se crea la línea de comandos del vínculo. | 
create_lto_compilation_context
LtoCompilationContext cc_common.create_lto_compilation_context(objects={})Parámetros
| Parámetro | Descripción | 
|---|---|
| objects | dict;
                                     el valor predeterminado es {}mapa del objeto completo al objeto de índice | 
do_not_use_tools_cpp_compiler_present
None cc_common.do_not_use_tools_cpp_compiler_presentget_environment_variables
dict cc_common.get_environment_variables(feature_configuration, action_name, variables)
Parámetros
| Parámetro | Descripción | 
|---|---|
| feature_configuration | FeatureConfiguration;
                                     obligatorio Es la configuración de la función que se consultará. | 
| action_name | cadena;
                                     obligatorio Nombre de la acción. Debe ser uno de los nombres en @bazel_tools//tools/build_defs/cc:action_names.bzl (https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl) | 
| variables | Variables:
                                     required Son las variables de compilación que se usarán para la expansión de la plantilla. | 
get_execution_requirements
sequence cc_common.get_execution_requirements(feature_configuration, action_name)
Parámetros
| Parámetro | Descripción | 
|---|---|
| feature_configuration | FeatureConfiguration;
                                     obligatorio Es la configuración de la función que se consultará. | 
| action_name | cadena;
                                     obligatorio Nombre de la acción. Debe ser uno de los nombres en @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 | FeatureConfiguration;
                                     obligatorio Es la configuración de la función que se consultará. | 
| action_name | cadena;
                                     obligatorio Nombre de la acción. Debe ser uno de los nombres en @bazel_tools//tools/build_defs/cc:action_names.bzl (https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl) | 
| variables | Variables;                                     obligatorio Son las 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 | FeatureConfiguration;
                                     obligatorio Es la configuración de la función que se consultará. | 
| action_name | cadena;
                                     obligatorio Nombre de la acción. Debe ser uno de los nombres en @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 | FeatureConfiguration;
                                     obligatorio Es la configuración de la función que se consultará. | 
| feature_name | string;
                                     obligatorio Nombre de la función. | 
vínculo
CcLinkingOutputs cc_common.link(actions, name, feature_configuration, cc_toolchain, language='c++', output_type='executable', link_deps_statically=True, compilation_outputs=None, linking_contexts=[], user_link_flags=[], stamp=0, additional_inputs=[], additional_outputs=[], variables_extension={})
Parámetros
| Parámetro | Descripción | 
|---|---|
| actions | actions:
                                     objeto actionsobligatorio. | 
| name | cadena;
                                     obligatorio Se usa para nombrar los artefactos de salida de las acciones creadas por este método. | 
| feature_configuration | FeatureConfiguration;
                                     required feature_configurationque se consultará. | 
| cc_toolchain | Info;
                                     required CcToolchainInfoproveedor que se usará. | 
| language | string;
                                     El valor predeterminado es 'c++'Por el momento, solo se admite C++. No uses este parámetro. | 
| output_type | string;
                                     el valor predeterminado es 'executable'Puede ser "executable" o "dynamic_library". | 
| link_deps_statically | bool;
                                     el valor predeterminado es TrueEs verdadero para vincular dependencias de forma estática y falso para hacerlo de forma dinámica. | 
| compilation_outputs | CcCompilationOutputs o None;
                                     el valor predeterminado esNoneSon los resultados de la compilación que contienen archivos de objeto para vincular. | 
| linking_contexts | sequence:
                                     El valor predeterminado es []Contextos de vinculación de las dependencias que se vincularán al contexto de vinculación generado por esta regla. | 
| user_link_flags | sequence:
                                     El valor predeterminado es []Lista adicional de opciones del vinculador. | 
| stamp | int;
                                     El valor predeterminado es 0Indica si se debe incluir información de compilación en el archivo ejecutable vinculado, si output_type es "executable". Si es 1, siempre se incluye la información de compilación. Si es 0, la información de compilación predeterminada siempre se excluye. Si es -1, se usa el comportamiento predeterminado, que se puede anular con la marca --[no]stamp. Este parámetro debe anularse (o establecerse en 0) cuando se genere el resultado ejecutable para las reglas de prueba. | 
| additional_inputs | sequence o depset; el valor predeterminado es []Son entradas adicionales para la acción de vinculación, p.ej., secuencias de comandos de vinculación. | 
| additional_outputs | sequence;
                                     el valor predeterminado es []Para obtener resultados adicionales de la acción de vinculación, p.ej., archivos de mapas. | 
| variables_extension | dict;
                                     El valor predeterminado es {}Son variables adicionales que se pasan a la configuración de la cadena de herramientas cuando se crea la línea de comandos del vínculo. | 
merge_compilation_contexts
CompilationContext cc_common.merge_compilation_contexts(compilation_contexts=[])
CompilationContexts en uno.
          
      Parámetros
| Parámetro | Descripción | 
|---|---|
| compilation_contexts | sequence;
                                     el valor predeterminado es []Lista de CompilationContextss que se combinarán. Los encabezados de cada contexto se exportarán a través de los campos directos del proveedor devuelto. | 
merge_compilation_outputs
CcCompilationOutputs cc_common.merge_compilation_outputs(compilation_outputs=[])
Parámetros
| Parámetro | Descripción | 
|---|---|
| compilation_outputs | sequence;
                                     el valor predeterminado es [] |