Üyeler
- 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
- do_not_use_tools_cpp_compiler_present
- get_environment_variables
- get_execution_requirements
- get_memory_inefficient_command_line
- get_tool_for_action
- is_enabled
- link
- merge_compilation_contexts
- merge_compilation_outputs
action_is_enabled
bool cc_common.action_is_enabled(feature_configuration, action_name)Özellik yapılandırmasında belirtilen action_config etkinse Doğru değerini döndürür.
Parametreler
Parametre | Açıklama |
---|---|
feature_configuration
|
gerekli Sorgulanacak özellik yapılandırması. |
action_name
|
gerekli action_config dosyasının adı. |
CcToolchainInfo
Provider cc_common.CcToolchainInfoKullanılan C++ araç zinciriyle ilgili bilgileri içeren sağlayıcıyı almak için kullanılan anahtar
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=[])C++ derlemesi için kullanılmalıdır. (
CompilationContext
, CcCompilationOutputs
) öğesinden bir öğeyi döndürür.
Parametreler
Parametre | Açıklama |
---|---|
actions
|
gerekliactions nesne.
|
feature_configuration
|
Sorgulanması gereklifeature_configuration .
|
cc_toolchain
|
gerekliCcToolchainInfo sağlayıcısının kullanılması gerekiyor.
|
srcs
|
varsayılan değer: [] Derlenecek kaynak dosyaların listesi. |
public_hdrs
|
varsayılan değer: [] src öğelerinin derlemesi için gereken başlıkların listesidir ve bağımlı kurallar tarafından geçişli olarak eklenebilir. |
private_hdrs
|
varsayılan değer: [] src öğelerinin derlemesi için gereken ve bağımlı kurallar tarafından dahil EDİLMEMESİ gereken başlıkların listesi. |
includes
|
sequence; veya depset; varsayılan değer: [] Hem açılı ayraç hem de tırnak işaretleriyle başvurulan başlık dosyaları için arama yolları. Genellikle -I ile geçildi. Bağımlılara geçişli olarak çoğaltılır. |
quote_includes
|
varsayılan değer: [] Tırnak işaretleriyle başvurulan başlık dosyaları için arama yolları, ör. #include "foo/bar/header.h". Bunlar, exec root'a göreli veya mutlak olabilir. Genellikle -iquote ile geçirilir. Bağımlılara geçişli olarak çoğaltılır. |
system_includes
|
varsayılan değer: [] Köşeli ayraçla referans verilen başlık dosyaları için arama yolları, ör. #include <foo/bar/header.h>. Bunlar, exec root'a göre veya mutlak olabilir. Genellikle -isystem ile iletilir. Bağımlılara geçişli olarak çoğaltılır. |
framework_includes
|
varsayılan değer: [] Apple çerçevelerinden başlık dosyaları için arama yolları. Bunlar, exec root'a göreli veya mutlak olabilir. Genellikle -F ile geçilir. Bağımlılara geçişli olarak çoğaltılır. |
defines
|
varsayılan değer: [] Bu hedefi derlemek için gereken tanımlar grubu. Her tanım bir dizedir. Bağımlılara geçişli olarak çoğaltılır. |
local_defines
|
varsayılan değer: [] Bu hedefi derlemek için gereken tanımlar grubu. Her tanım bir dizedir. Bağımlılara geçişli olarak yayılmadı. |
include_prefix
|
varsayılan değer: '' Bu kuralın üstbilgilerinin yollarına eklenecek ön ektir. Ayarlandığında, bu kuralın hdrs özelliğindeki başlıklara, depoya bağlı yolunun başına eklenen bu özelliğin değerinden erişilebilir. Strip_include_prefix özelliğindeki ön ek, bu önek eklenmeden önce kaldırılır. |
strip_include_prefix
|
varsayılan değer: '' Bu kuralın üstbilgilerinin yollarından çıkarılacak ön ek. Ayarlandığında, bu kuralın hdrs özelliğindeki başlıklara yolundan erişilebilir ve bu önek kesilmiş olur. Bu göreli bir yolsa pakete bağlı yol olarak kabul edilir. Mutlak bir ise depoya bağlı yol olarak anlaşılır. include_prefix özelliğindeki ön ek, bu önek kaldırıldıktan sonra eklenir. |
user_compile_flags
|
varsayılan değer: [] Derleme seçeneklerinin ek listesi. |
compilation_contexts
|
varsayılan değer: [] Derleme için kullanılan bağımlılıkların üstbilgileri. |
name
|
gerekli Bu yöntem, bu yöntemle oluşturulan işlemlerin çıkış yapılarını adlandırmak için kullanılır. Ayrıca, "main_output" bağımsız değişkenine de bakın. |
disallow_pic_outputs
|
varsayılan değer: False PIC çıkışlarının oluşturulup oluşturulmayacağı. |
disallow_nopic_outputs
|
varsayılan değer: False NOPIC çıkışlarının oluşturulup oluşturulmayacağı. |
additional_inputs
|
varsayılan değer: [] src’lerin derlenmesi için gereken ek dosyaların listesi |
configure_features
FeatureConfiguration cc_common.configure_features(ctx=None, cc_toolchain, language=None, requested_features=[], unsupported_features=[])detay_yapılandırma örneği oluşturur. CPU yapılandırma parçasını gerektirir.
Parametreler
Parametre | Açıklama |
---|---|
ctx
|
ctx veya None ;
varsayılan: None Kural bağlamı. |
cc_toolchain
|
gerekli cc_toolchain öğelerini kullandığımız için teşekkür ederiz. |
language
|
string; veya None ;
varsayılan None 'dirYapılandırılacak dil: c++ veya objc (varsayılan c++) |
requested_features
|
varsayılan değer: [] Etkinleştirilecek özelliklerin listesi. |
unsupported_features
|
varsayılan değer: [] Mevcut kural tarafından desteklenmeyen özelliklerin listesi. |
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)
CcToolchainConfigInfo
sağlayıcısı oluşturur
Parametreler
Parametre | Açıklama |
---|---|
ctx
|
gerekli Kural bağlamı. |
features
|
varsayılan değer: [] Bir özelliğin tüm işaret özelliklerini içerir. Bağımsız değişkenler:
- provides , etkinleştirmek istediğimiz farklı bir özelliğin veya işlem yapılandırmasının adını içeriyorsa.- provides , etkinleştirmek istediğimiz farklı bir özellik veya işlem yapılandırmasındaki "sağlar" ile aynı değeri içeriyor. Uyumsuz özelliklerin aynı anda yanlışlıkla etkinleştirilmesini ve derleyici hatalarının teşhis edilmesini zorlaştırmak için bunu kullanın.
|
action_configs
|
Varsayılan değer: [] İşlem yapılandırması, Bazel işlemine karşılık gelir ve etkinleştirilen özelliklere göre araç seçimine olanak tanır. İşlem yapılandırmasını etkinleştirme, özelliklerle aynı anlama göre gerçekleşir: Bir özellik, bir işlem yapılandırmasını başka bir özellikle aynı şekilde 'gerektirebilir' veya 'ima edebilir'. Bağımsız değişkenler:
|
artifact_name_patterns
|
varsayılan değer: [] Bir işlem için belirli bir giriş veya çıkış yapısı kategorisindeki bir yapının adı. Bağımsız değişkenler:
|
cxx_builtin_include_directories
|
varsayılan değer: [] Yerleşik C++ derlemesi için dizinler içerir. Bunlar derleyici tarafından kullanılan tam yollar olmalıdır ve genellikle exec root ile ilişkilidirler. Derleyici tarafından kullanılan yollar "gcc -E -xc++ - -v" ile belirlenebilir. Şu anda C++ yollarını C derlemesi için de kullanıyoruz. C++ ve C başlık dosyaları arasında ad çakışması olmadığı sürece bu işlem güvenlidir. Göreli yollar, yapılandırma dosyası dizinine göre çözümlenir. Derleyicinin --sysroot desteği varsa, bu yolların include yolu yerine %sysroot% kullanması ve doğru değişiklikleri yapmak için gereken bilgileri blaze'e vermek üzere sysroot özelliğini belirtmesi gerekir. |
toolchain_identifier
|
zorunlu Çapraz araç sürümündeki araç zincirinin benzersiz tanımlayıcısı. Bunun bir yolda dizin adı olarak kullanılması mümkün olmalıdır. Şu normal ifadeyle eşleşmesi gerekir: [a-zA-Z_][\.\- \w]* |
host_system_name
|
string; veya None ;
varsayılan değer: None Yok sayılır. |
target_system_name
|
gerekli GNU Sistem Adı. |
target_cpu
|
gerekli Hedef mimari dizesi. |
target_libc
|
gerekli libc sürümü dizesi (ör. "glibc-2.2.2"). Dize "macosx" ise platformun MacOS olduğu varsayılır. Aksi halde, Linux |
compiler
|
gerekli Derleyici dizesi (ör. "gcc"). Mevcut araç zincirinin derleyicisi, bayrak değeri olarak "@bazel_tools//tools/cpp:Buildr (derleyici_flag)" ile gösterilir. Derleyiciye özel işaretler gerektiren hedefler, select() ifadelerindeki https://github.com/bazelbuild/rules_cc/blob/main/cc/Buildr/BUILD bölümündeki config_settings'i kullanabilir veya mevcut ayarlar yeterli olmazsa özel config_setting oluşturabilir. |
abi_version
|
string; veya None ;
varsayılan: None Kullanılan abi (gcc sürümüdür). E.g.: "gcc-3.4" |
abi_libc_version
|
string; veya None ;
varsayılan değer: None Kullandığımız abi tarafından kullanılan glibc sürümü. |
tool_paths
|
Varsayılan değer: [] Araç konumları. Bağımsız değişkenler:
|
make_variables
|
varsayılan değer: [] Kurallar tarafından erişilebilir hale getirilen bir değişken. |
builtin_sysroot
|
string; veya None ;
varsayılan: None Yerleşik sysroot. Bu özellik mevcut değilse Bazel, --grte_top seçeneğiyle farklı bir sysroot kullanımına izin vermez. |
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
oluşturur.
Parametreler
Parametre | Açıklama |
---|---|
headers
|
varsayılan değer: unbound Bu hedefi derlemek için gereken üstbilgi kümesi |
system_includes
|
varsayılan değer: unbound Köşeli ayraçla referans verilen başlık dosyaları için arama yolları grubu (ör. #include <foo/bar/header.h>). Bunlar, exec root'a göre veya mutlak olabilir. Genellikle -isystem ile geçer |
includes
|
varsayılan değer: unbound Hem köşeli parantez hem de tırnak işaretiyle başvurulan başlık dosyaları için arama yolları grubu.Genellikle -I ile geçirilir |
quote_includes
|
varsayılan değer: unbound Tırnak işaretleriyle başvurulan başlık dosyaları için arama yolları grubu; ör. #include "foo/bar/header.h". Bunlar, exec root'a göreli veya mutlak olabilir. Genellikle -iquote ile iletiliyor |
framework_includes
|
Varsayılan değer: unbound Başlık dosyaları için çerçeve arama yolları grubu (yalnızca Apple platform) |
defines
|
varsayılan değer: unbound Bu hedefi derlemek için gereken tanımlar grubu. Her tanım bir dizedir. Bağımlılara geçişli olarak çoğaltılır. |
local_defines
|
varsayılan değer: unbound Bu hedefi derlemek için gereken tanımlar grubu. Her tanım bir dizedir. Bağımlılara geçişli olarak yayılmadı. |
create_compilation_outputs
CcCompilationOutputs cc_common.create_compilation_outputs(objects=None, pic_objects=None)Derleme çıktıları nesnesi oluştur.
Parametreler
Parametre | Açıklama |
---|---|
objects
|
depset; veya None ;
varsayılan: None Nesne dosyalarının listesi. |
pic_objects
|
depset; veya None ;
varsayılan: None Resim nesne dosyalarının listesi. |
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)Derleme işlemleri için kullanılan değişkenleri döndürür.
Parametreler
Parametre | Açıklama |
---|---|
cc_toolchain
|
gerekli Derleme değişkenlerini oluşturacağımız cc_toolchain öğesi için de geçerlidir. |
feature_configuration
|
gerekli Sorgulanacak özellik yapılandırması. |
source_file
|
varsayılan değer: None Derleme için isteğe bağlı kaynak dosya. Lütfen source_file dosyasını cc_common.get_memory_inefficiency_command_line parametresinden oluşturulan komut satırının sonuna eklemek yerine buraya iletmeyi tercih edin. Bu durumda, derleyici işaretlerini düzgün bir şekilde belirtmek ve konumlandırmak araç zinciri yazarının yetkisindedir. |
output_file
|
varsayılan değer: None Derlemenin isteğe bağlı çıkış dosyası. Lütfen exit_file dosyasını, cc_common.get_memory_inefficiency_command_line parametresinden oluşturulan komut satırının sonuna eklemek yerine buraya iletmeyi tercih edin. Bu durumda, derleyici işaretlerini düzgün bir şekilde belirtmek ve konumlandırmak, araç zinciri yazarının yetkisindedir. |
user_compile_flags
|
string sequence veya None ; varsayılan değer None Ek derleme işaretlerinin (copts) listesi. |
include_directories
|
depset; veya None ;
varsayılan: None Dahil etme dizinlerinin kaldırıldı. |
quote_include_directories
|
depset; veya None ;
varsayılan: None Fiyat teklifinin dökümü dizinleri içerir. |
system_include_directories
|
depset; veya None ;
varsayılan değer: None Sistem dahil etme dizinlerinin dökümü. |
framework_include_directories
|
depset; veya None ; varsayılan değer: None Çerçevenin dökümü dizinleri içerir. |
preprocessor_defines
|
depset veya None ; varsayılan değer None Ön işlemci tanımlarının dökümü. |
thinlto_index
|
string; veya None ;
varsayılan olarak None LTO dizin dosyası yolu. |
thinlto_input_bitcode_file
|
string; veya None ;
varsayılan değer olan None LTO arka ucuna girilen bit kodu dosyası. |
thinlto_output_object_file
|
string; veya None ;
varsayılan değer: None LTO arka ucu tarafından oluşturulan nesne dosyası. |
use_pic
|
varsayılan değer: False Doğru değerine ayarlandığında derleme, konumdan bağımsız kod oluşturur. |
add_legacy_cxx_options
|
varsayılan değer: False Kullanılmayan. |
variables_extension
|
dict;
varsayılan: unbound Derleme işlemleri tarafından kullanılan ek değişkenlerin bir sözlüğü. |
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='')Oluşturulma:
LibraryToLink
Parametreler
Parametre | Açıklama |
---|---|
actions
|
gerekliactions nesne.
|
feature_configuration
|
varsayılan değer: None feature_configuration sorgulanacak.
|
cc_toolchain
|
varsayılan olarak None CcToolchainInfo sağlayıcısı kullanılacak.
|
static_library
|
File veya None ;
varsayılan olarak,
None File statik kitaplığın bağlanacağı.
|
pic_static_library
|
File; veya None ;
varsayılan olarak None File fotoğraf statik kitaplığı bağlanacak.
|
dynamic_library
|
File (Dosya) veya None ;
varsayılan olarak,
None File dinamik kitaplık bağlanacak. Her zaman çalışma zamanı için kullanılır ve interface_library iletilmezse bağlantı oluşturmak için kullanılır.
|
interface_library
|
File (Dosya) veya None ;
varsayılan olarak, bağlanacak arayüz kitaplığının None File kadarı.
|
pic_objects
|
Dosya dizisi; varsayılan değer unbound Deneysel, kullanma |
objects
|
Dosya dizisi; varsayılan değer unbound Deneysel, kullanma |
alwayslink
|
varsayılan değer: False --whole_archive bloğundaki statik kitaplığın/nesnelerin bağlanıp bağlanmayacağı. |
dynamic_library_symlink_path
|
string;
varsayılan '' Solib dizinindeki dinamik kitaplık bağlantısının varsayılan yolunu geçersiz kılar. Varsayılanı kullanacak boş dize. |
interface_library_symlink_path
|
varsayılan değer: '' Solib dizinindeki arayüz kitaplığı bağlantısının varsayılan yolunu geçersiz kılar. Varsayılanı kullanacak boş dize. |
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, is_using_linker=True, is_linking_dynamic_library=False, must_keep_debug=True, use_test_only_flags=False, is_static_linking_mode=True)Bağlantı işlemleri için kullanılan bağlantı değişkenlerini döndürür.
Parametreler
Parametre | Açıklama |
---|---|
cc_toolchain
|
gerekli Derleme değişkenlerini oluşturacağımız cc_toolchain öğesi için de geçerlidir. |
feature_configuration
|
gerekli Sorgulanacak özellik yapılandırması. |
library_search_directories
|
None ; veya depset;
varsayılan: None Bağlayıcının bağlantı sırasında kitaplıkları arayacağı dizinlerin dökümü. |
runtime_library_search_directories
|
None ; veya depset;
varsayılan değer: None Yükleyicinin çalışma zamanında kitaplıkları arayacağı dizinlerin kümesi. |
user_link_flags
|
None veya dizi;
varsayılan: None Ek bağlantı bayraklarının (linkopts) listesi. |
output_file
|
varsayılan değer: None İsteğe bağlı çıkış dosyası yolu. |
param_file
|
varsayılan değer: None İsteğe bağlı parametre dosyası yolu. |
is_using_linker
|
varsayılan değer: True Bağlayıcı kullanırken doğru, arşivleyici için yanlış. Arayan, bunu kullanılan işlem adıyla senkronize etmekten sorumludur (is_using_linker = Yürütülebilir veya dinamik kitaplığı bağlamak için Doğru, is_using_linker = Statik kitaplığı arşivlemek için Yanlış). |
is_linking_dynamic_library
|
varsayılan değer False Dinamik kitaplık oluşturulurken doğru, yürütülebilir veya statik kitaplık olduğunda False'tur. Bunu, kullanılan işlem adıyla senkronize etmek arayanın sorumluluğundadır. b/65151735 düzeltildikten sonra bu alan kaldırılacaktır. |
must_keep_debug
|
varsayılan değer: True Yanlış değerine ayarlandığında Bazel, genellikle hata ayıklama sembollerini çıkış dosyasından çıkarmak üzere bağlayıcıyı kullanmak için kullanılan "strip_debug_symbols" değişkenini gösterir. |
use_test_only_flags
|
varsayılan değer: False Doğru değerine ayarlandığında "is_cc_test" değişkeni ayarlanır. |
is_static_linking_mode
|
varsayılan değer: True Kullanılmayan. |
create_linker_input
LinkerInput cc_common.create_linker_input(owner, libraries=None, user_link_flags=None, additional_inputs=None)
LinkerInput
oluşturur.
Parametreler
Parametre | Açıklama |
---|---|
owner
|
gerekli Bu girişte kullanılan tüm dosyaları oluşturan hedefin etiketi. |
libraries
|
None veya depset;
varsayılan None LibraryToLink listesi.
|
user_link_flags
|
None veya dizelerin depset ya da dize öğelerinin dizisi; varsayılan değer: None Dize olarak iletilen kullanıcı bağlantısı işaretleri. [Dize], [[Dize]] veya depset(Dize) değerini kabul eder. İkincisi ise yalnızca uyumluluk amacıyla saklandığı için önerilmez ve kullanımdan kaldırılmış olur. user_link_flags'in unflattened depsets() aracılığıyla yayılmasını istiyorsanız bunları bir LinkerInput içine sarmalayın, böylece sonuna kadar düzleşmemesini sağlayın. |
additional_inputs
|
None ; veya depset;
varsayılan değer: None Bağlantı oluşturma işlemine ek girişler (ör. bağlantı oluşturma komut dosyaları) için. |
create_linking_context
LinkingContext cc_common.create_linking_context(linker_inputs=None, libraries_to_link=None, user_link_flags=None, additional_inputs=None)
LinkingContext
oluşturur.
Parametreler
Parametre | Açıklama |
---|---|
linker_inputs
|
None veya depset;
varsayılan None Derinlik: LinkerInput .
|
libraries_to_link
|
None veya dizi;
varsayılan: None Kullanımdan kaldırıldı. Bu parametre artık kullanılmamaktadır ve yakında kaldırılacaktır. Lütfen bu özelliğe güvenmeyin. --+incompatible_require_linker_input_cc_api ile devre dışı bırakıldı. Kodunuzun, yakında kaldırılmak üzere uygun olduğunu doğrulamak için bu işareti kullanın. LibraryToLink tarihli liste.
|
user_link_flags
|
None veya dizi;
varsayılan: None Kullanımdan kaldırıldı. Bu parametre artık kullanılmamaktadır ve yakında kaldırılacaktır. Lütfen bu özelliğe güvenmeyin. --+incompatible_require_linker_input_cc_api ile devre dışı bırakıldı. Kodunuzun, yakında kaldırılmak üzere uygun olduğunu doğrulamak için bu işareti kullanın. Dize olarak iletilen kullanıcı bağlantısı işaretlerinin listesi. |
additional_inputs
|
None veya dizi;
varsayılan: None Kullanımdan kaldırıldı. Bu parametre artık kullanılmamaktadır ve yakında kaldırılacaktır. Lütfen bu özelliğe güvenmeyin. --+incompatible_require_linker_input_cc_api ile devre dışı bırakıldı. Kodunuzun, yakında kaldırılmak üzere uygun olduğunu doğrulamak için bu işareti kullanın. Bağlantı oluşturma işlemine ek girişler için (ör. komut dosyalarını bağlama). |
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)Yürütülebilir veya dinamik kitaplık oluşturmak için geçişli bağlantı yapan üst düzey bir kural tarafından daha sonra bağlanabilmek üzere aşağı akış bilgileri yayan kitaplık kuralları oluşturmak için kullanılmalıdır. (
CcLinkingContext
, CcLinkingOutputs
) öğesinden bir öğeyi döndürür.
Parametreler
Parametre | Açıklama |
---|---|
actions
|
gerekliactions nesne.
|
feature_configuration
|
Sorgulanması gereklifeature_configuration .
|
cc_toolchain
|
gerekliCcToolchainInfo sağlayıcısının kullanılması gerekiyor.
|
compilation_outputs
|
gerekli Bağlantı oluşturulacak nesne dosyalarını içeren derleme çıkışları. |
user_link_flags
|
varsayılan değer: [] Bağlantı seçeneklerinin ek listesi. |
linking_contexts
|
[] varsayılandırBağımlılıklardan kitaplıklar. Bu kitaplıklar, link() çağrısının (ikili program veya kitaplık) çıkış yapısına bağlanır. |
name
|
gerekli Bu yöntem, bu yöntemle oluşturulan işlemlerin çıkış yapılarını adlandırmak için kullanılır. |
language
|
varsayılan değer: 'c++' Şimdilik yalnızca C++ destekleniyor. Bu parametreyi kullanmayın. |
alwayslink
|
varsayılan değer: False Bu kitaplığın her zaman bağlı olup olmayacağı. |
additional_inputs
|
[] varsayılandırBağlantı oluşturma işlemine ek girişler (ör. komut dosyalarını bağlama) için. |
disallow_static_libraries
|
varsayılan değer: False Statik kitaplıkların oluşturulup oluşturulmayacağı. |
disallow_dynamic_library
|
varsayılan değer: False Dinamik kitaplığın oluşturulup oluşturulmayacağı. |
do_not_use_tools_cpp_compiler_present
None
cc_common.do_not_use_tools_cpp_compiler_present
Bu alanı kullanmayın, tek amacı config_setting.values{'derr') öğesinden config_settings.flag_values{'@bazel_tools//tools/cpp:Buildr'} ortamına geçişe yardımcı olmaktır.
get_environment_variables
dict cc_common.get_environment_variables(feature_configuration, action_name, variables)Belirli bir işlem için ayarlanacak ortam değişkenlerini döndürür.
Parametreler
Parametre | Açıklama |
---|---|
feature_configuration
|
gerekli Sorgulanacak özellik yapılandırması. |
action_name
|
gerekli İşlemin adı. @bazel_tools//tools/build_defs/cc:action_names.bzl (https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl) içindeki adlardan biri olmalıdır |
variables
|
gerekli Şablon genişletme için kullanılacak değişkenler oluşturun. |
get_execution_requirements
sequence cc_common.get_execution_requirements(feature_configuration, action_name)Belirli bir eylem için yürütme gereksinimlerini döndürür.
Parametreler
Parametre | Açıklama |
---|---|
feature_configuration
|
gerekli Sorgulanacak özellik yapılandırması. |
action_name
|
gerekli İşlemin adı. @bazel_tools//tools/build_defs/cc:action_names.bzl (https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl) içindeki adlardan biri olmalıdır |
get_memory_inefficient_command_line
sequence cc_common.get_memory_inefficient_command_line(feature_configuration, action_name, variables)Genişletme için belirtilen değişkenleri kullanarak, belirli bir işlem için düzleştirilmiş komut satırı işaretlerini döndürür. İç içe yerleştirilmiş kümeleri düzleştirir ve ideal olarak kullanılmamalı veya en azından analizden daha uzun süre kalmamalıdır. Arg öğeleri döndüren bellek verimli bir işlev üzerinde çalışmalar devam etmektedir.
Parametreler
Parametre | Açıklama |
---|---|
feature_configuration
|
gerekli Sorgulanacak özellik yapılandırması. |
action_name
|
gerekli İşlemin adı. @bazel_tools//tools/build_defs/cc:action_names.bzl (https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl) içindeki adlardan biri olmalıdır |
variables
|
gerekli Şablon genişletmeleri için kullanılacak değişkenler oluşturun. |
get_tool_for_action
string cc_common.get_tool_for_action(feature_configuration, action_name)Belirli bir işlem için araç yolunu döndürür.
Parametreler
Parametre | Açıklama |
---|---|
feature_configuration
|
gerekli Sorgulanacak özellik yapılandırması. |
action_name
|
gerekli İşlemin adı. @bazel_tools//tools/build_defs/cc:action_names.bzl (https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl) içindeki adlardan biri olmalıdır |
is_enabled
bool cc_common.is_enabled(feature_configuration, feature_name)Belirtilen özellik, özellik yapılandırmasında etkinse Doğru değerini döndürür.
Parametreler
Parametre | Açıklama |
---|---|
feature_configuration
|
gerekli Sorgulanacak özellik yapılandırması. |
feature_name
|
gerekli Özelliğin adı. |
bağlantı
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=[], additional_outputs=unbound)C++ geçişli bağlantı için kullanılmalıdır.
Parametreler
Parametre | Açıklama |
---|---|
actions
|
gerekliactions nesne.
|
feature_configuration
|
Sorgulanması gereklifeature_configuration .
|
cc_toolchain
|
gerekliCcToolchainInfo sağlayıcısının kullanılması gerekiyor.
|
compilation_outputs
|
CcCompilationOutputs veya None ;
varsayılan değer: None Bağlantı oluşturulacak nesne dosyalarını içeren derleme çıkışları. |
user_link_flags
|
varsayılan değer: [] Bağlayıcı seçeneklerinin ek listesi. |
linking_contexts
|
Varsayılan ayar [] şeklindedir.Bu kural tarafından oluşturulan bağlantı bağlamına bağlanacak bağımlılıklardaki bağlamları bağlama. |
name
|
gerekli Bu yöntem, bu yöntemle oluşturulan işlemlerin çıkış yapılarını adlandırmak için kullanılır. |
language
|
varsayılan değer: 'c++' Şimdilik yalnızca C++ destekleniyor. Bu parametreyi kullanmayın. |
output_type
|
varsayılan değer: 'executable' "Yürütülebilir" veya "dynamic_library" olabilir. |
link_deps_statically
|
varsayılan değer True Bağımlılıkları statik olarak bağlamak için True, dinamik olarak False'tur. |
stamp
|
varsayılan değer: 0 Out_type "executable" ise derleme bilgilerinin bağlantılı yürütülebilir dosyaya eklenip eklenmeyeceğini belirtir. 1 ise derleme bilgileri her zaman dahil edilir. 0 ise (varsayılan derleme bilgileri her zaman hariç tutulur. -1 ise --[no]damga işareti ile geçersiz kılınabilecek varsayılan davranışı kullanır. Test kuralları için yürütülebilir çıkış oluşturulurken bu ayar belirlenmemeli (veya 0 olarak ayarlanmalıdır). |
additional_inputs
|
sequence veya depset; varsayılan değer [] Bağlantı oluşturma işlemine ek girişler (ör. komut dosyalarını bağlama) içindir. |
additional_outputs
|
sequence; varsayılan değer: unbound Bağlantı oluşturma işlemine ek çıkışlar (ör. eşleme dosyaları) için |
merge_compilation_contexts
CompilationContext cc_common.merge_compilation_contexts(compilation_contexts=[])Birden çok
CompilationContexts
değerini tek bir grupta birleştirir.
Parametreler
Parametre | Açıklama |
---|---|
compilation_contexts
|
varsayılan değer: [] Birleştirilecek CompilationContexts listesi. Her bağlamın üstbilgileri, döndürülen sağlayıcıdaki doğrudan alanlar tarafından dışa aktarılır.
|
merge_compilation_outputs
CcCompilationOutputs cc_common.merge_compilation_outputs(compilation_outputs=[])Derleme çıktılarını birleştirin.
Parametreler
Parametre | Açıklama |
---|---|
compilation_outputs
|
varsayılan değer: [] |