C++ derleme, bağlama ve komut satırı oluşturma için yardımcı programlar.
Üyeler
- action_is_enabled
- CcToolchainInfo
- derleme
- 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)
Parametreler
Parametre | Açıklama |
---|---|
feature_configuration
|
required Sorgulanacak özellik yapılandırması. |
action_name
|
required action_config adlı öğenin adı. |
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=[])
CompilationContext
, CcCompilationOutputs
) çiftini döndürür.
Parametreler
Parametre | Açıklama |
---|---|
actions
|
gerekliactions nesne.
|
feature_configuration
|
gerekenfeature_configuration .
|
cc_toolchain
|
requiredCcToolchainInfo sağlayıcının kullanılması gerekir.
|
srcs
|
varsayılan değer [] Derlenecek kaynak dosyaların listesi. |
public_hdrs
|
varsayılan değer [] Kaynakların derlenmesi için gereken üstbilgilerin listesi. Bağımlı kurallar tarafından aktarmalı olarak dahil edilebilir. |
private_hdrs
|
varsayılan değer [] Kaynakların derlenmesi için gereken ve bağımlı kurallar tarafından DAHİL EDİLMEMESİ gereken üstbilgilerin listesi. |
includes
|
sequence veya depset;
varsayılan değer [] Hem köşeli parantez hem de tırnak işareti ile referans verilen başlık dosyalarının arama yolları. Genellikle -I ile birlikte iletilir. Bağımlılara geçişli olarak aktarılır. |
quote_includes
|
varsayılan değer [] Tek tırnak içinde referans verilen başlık dosyalarının arama yolları (ör. #include "foo/bar/header.h"). Bu dizinler, yürütme köküne göre göreli veya mutlak olabilir. Genellikle -iquote ile iletilir. Bağımlılara geçişli olarak aktarılır. |
system_includes
|
varsayılan değer [] Açılı köşeli parantezlerle referans verilen başlık dosyalarının arama yolları (ör. #include <foo/bar/header.h>). Bu yollar, yürütülebilir köke göre göreli veya mutlak olabilir. Genellikle -isystem ile iletilir. Bağımlılara geçişli olarak aktarılır. |
framework_includes
|
varsayılan değer [] Apple çerçevelerindeki başlık dosyalarının arama yolları. Yönetici kökü veya mutlak bağlı olabilirler. Genellikle -F ile iletilir. Bağımlılara geçişli olarak aktarı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 aktarı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 aktarılmaz. |
include_prefix
|
varsayılan '' şeklindedirBu kuralın başlıklarının yollarına eklenecek ön ektir. Bu kuralın hdrs özelliğindeki üstbilgilerin ayarlanması durumunda, bu özelliğin değeri, depoya göre yollarının başına eklenir. Strip_include_prefix özelliğindeki ön ek, bu ön ek eklenmeden önce kaldırılır. |
strip_include_prefix
|
varsayılan ayar '' Bu kuralın üstbilgilerinin yollarından kaldırılacak ön ek. Bu ön ek ayarlandığında, bu kuralın hdrs özelliğindeki üstbilgilerin yollarına bu ön ek kaldırılmış şekilde erişilebilir. Göreli bir yol ise pakete göreli bir yol olarak alınır. Mutlak bir yol ise depoya göreli yol olarak anlaşılır. include_prefix özelliğindeki ön ek, bu ön ek kaldırıldıktan sonra eklenir. |
user_compile_flags
|
varsayılan değer [] Derleme seçeneklerinin ek listesi. |
conly_flags
|
varsayılan değer [] C derlemeleri için derleme seçeneklerinin ek listesi. |
cxx_flags
|
varsayılan ayar: [] C++ derlemeleri için ek derleme seçenekleri listesi. |
compilation_contexts
|
varsayılan değer [] Derleme için kullanılan bağımlılıklardaki başlıklar. |
name
|
required Bu, bu yöntemle oluşturulan işlemlerin çıkış yapılarını adlandırmak için kullanılır. "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 [] srcs derlemesi için gereken ek dosyaların listesi |
configure_features
FeatureConfiguration cc_common.configure_features(ctx=None, cc_toolchain, language=None, requested_features=[], unsupported_features=[])
Parametreler
Parametre | Açıklama |
---|---|
ctx
|
ctx veya None ;
varsayılan değer None Kural bağlamı. |
cc_toolchain
|
required cc_toolchain özelliklerini yapılandırdığımız. |
language
|
dize; veya None ;
varsayılan değer None Yapılandırılacak dil: c++ veya objc (varsayılan c++) |
requested_features
|
varsayılan olarak [] Etkinleştirilecek özelliklerin listesi. |
unsupported_features
|
varsayılan değer [] şeklindedirGeçerli 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, cc_target_os=None)
CcToolchainConfigInfo
sağlayıcı oluşturur
Parametreler
Parametre | Açıklama |
---|---|
ctx
|
required Kural bağlamı. |
features
|
varsayılan [] şeklindedirBir özelliğin tüm işaret spesifikasyonlarını içerir. Bağımsız değişkenler:
- provides , etkinleştirmek istediğimiz farklı bir özellik veya işlem yapılandırmasının adını içeriyor.- provides , etkinleştirmek istediğimiz farklı bir özellik veya işlem yapılandırmasında "provides" ile aynı değeri içeriyor. Uyumsuz özelliklerin aynı anda yanlışlıkla etkinleştirilmesini önlemek 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ı, bir Bazel işlemine karşılık gelir ve etkinleştirilen özelliklere göre bir aracın seçilmesine olanak tanır. İşlem yapılandırması etkinleştirme işlemi, özelliklerle aynı anlamsal bağlamda gerçekleşir: Bir özellik, başka bir özellikte olduğu gibi bir işlem yapılandırmasını "gerektirebilir" veya "anlaştırır". Bağımsız değişkenler:
|
artifact_name_patterns
|
varsayılan değer [] Bir işleme ait belirli bir giriş veya çıkış yapıları kategorisindeki yapının adı. Bağımsız değişkenler:
|
cxx_builtin_include_directories
|
Varsayılan değer [] 'tır. C++ derlemesi için yerleşik dizinler içerir. Bunlar, derleyici tarafından kullanılan tam yollar olmalı ve genellikle exec köküne göreli olmalıdır. Derleyici tarafından kullanılan yollar "gcc -E -xc++ - -v" ile belirlenebilir. Şu anda C++ yollarını C derlemesi için de kullanıyoruz. Bu, C++ ve C başlık dosyaları arasında ad çakışması olmadığı sürece güvenlidir. Göreli yollar, yapılandırma dosyası dizine göre çözülür. Derleyicide --sysroot desteği varsa bu yollar ekleme yolu yerine %sysroot% kullanmalı ve doğru değişiklikleri yapmak için gereken bilgileri blaze'e vermek için sysroot özelliğini belirtmelidir. |
toolchain_identifier
|
zorunlu Çapraz araç sürümünün araç zincirinin benzersiz tanımlayıcısı. Bu ad, bir yolda dizin adı olarak kullanılabilir olmalıdır. Şu normal ifadeyle eşleşmesi gerekir: [a-zA-Z_][\.\- \w]* |
host_system_name
|
dize; veya None ;
varsayılan değer None Yoksayılır. |
target_system_name
|
zorunlu GNU sistem adı. |
target_cpu
|
gerekli Hedef mimari dizesi. |
target_libc
|
zorunlu libc sürüm dizesi (ör. "glibc-2.2.2"). |
compiler
|
required Derleyici sürüm dizesi (ör. "gcc-4.1.1"). |
abi_version
|
dize veya None ;
varsayılan olarak None Kullanılan gcc sürümü olan abi. Örneğin: "gcc-3.4" |
abi_libc_version
|
dize veya None ;
varsayılan olarak None Kullandığımız abi tarafından kullanılan glibc sürümü. |
tool_paths
|
[] Araç konumları. Bağımsız değişkenler:
|
make_variables
|
varsayılan değer [] Kurallar tarafından erişilebilir hale getirilen bir "yap" değişkeni. |
builtin_sysroot
|
dize veya None ;
varsayılan değer None Yerleşik sysroot. Bu özellik mevcut değilse Bazel, --grte_top seçeneği aracılığıyla farklı bir sysroot kullanılmasına izin vermez. |
cc_target_os
|
dize; veya None ;
varsayılan değer None Yalnızca dahili kullanımdır, kullanmayın. |
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 başlık grubu |
system_includes
|
varsayılan değer unbound Açılı köşeli parantezlerle referans verilen başlık dosyalarının arama yolları kümesi (ör. #include <foo/bar/header.h>). Bu yollar, yürütülen köke göreli veya mutlak olabilir. Genellikle -isystem ile iletilir. |
includes
|
varsayılan değer unbound Hem köşeli parantez hem de tırnak işareti ile referans verilen başlık dosyaları için arama yolları grubu.Genellikle -I ile iletilir |
quote_includes
|
varsayılan değer unbound Tek tırnak içinde referans verilen başlık dosyaları için arama yolları kümesi (ör. #include "foo/bar/header.h"). Yönetici kökü veya mutlak bağlı olabilirler. Genellikle -iquote ile iletilir |
framework_includes
|
varsayılan değer unbound Üst bilgi dosyaları için çerçeve arama yolları grubu (yalnızca Apple platformu) |
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 aktarılır. |
local_defines
|
varsayılan değer unbound 'tirBu hedefi derlemek için gereken tanımlar kümesi. Her tanım bir dizedir. Bağımlılara geçişli olarak aktarılmaz. |
create_compilation_outputs
CcCompilationOutputs cc_common.create_compilation_outputs(objects=None, pic_objects=None)
Parametreler
Parametre | Açıklama |
---|---|
objects
|
depset veya None ;
varsayılan değer None Nesne dosyalarının listesi. |
pic_objects
|
depset veya None ;
varsayılan değer None Resim nesnesi 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)
Parametreler
Parametre | Açıklama |
---|---|
cc_toolchain
|
zorunlu cc_toolchain (derleme değişkenleri oluşturduğumuz) |
feature_configuration
|
required Sorgulanacak özellik yapılandırması. |
source_file
|
varsayılan None şeklindedirDerleme için isteğe bağlı kaynak dosya. Lütfen source_file parametresini buradan iletmek yerine cc_common.get_memory_inefficient_command_line işlevinden oluşturulan komut satırının sonuna eklemeyi tercih edin. Bu durumda, derleyici işaretlerini doğru şekilde belirtme ve konumlandırma işlemi araç zinciri yazarının yetkisinde olur. |
output_file
|
varsayılan değer None Derlemenin isteğe bağlı çıkış dosyası. Derleyici işaretlerini doğru bir şekilde belirlemek ve konumlandırmak araç zinciri yazarının gücünde olduğundan, lütfen çıkış_dosyasını cc_common.get_memory_inefficiency_command_line parametresinden oluşturulan komut satırının sonuna eklemek yerine buraya iletmeyi tercih edin. |
user_compile_flags
|
Dize dizisi veya None ;
varsayılan değer None Ek derleme işaretlerinin (copts) listesi. |
include_directories
|
depset veya None ;
varsayılan değer None Dahil edilen dizinlerin depset'i. |
quote_include_directories
|
depset; veya None ;
varsayılan değer None Alıntının derinliği dizinleri içerir. |
system_include_directories
|
depset veya None ;
varsayılan değer None Sistem dahil dizinlerinin depset'i. |
framework_include_directories
|
depset veya None ;
varsayılan değer None Çerçeve depsetinde dizinler bulunur. |
preprocessor_defines
|
depset; veya None ;
varsayılan olarak None Önişleyici tanımları için Depset. |
thinlto_index
|
dize veya None ;
varsayılan değer None LTO dizin dosyası yolu. |
thinlto_input_bitcode_file
|
string; veya None ;
varsayılan değer None LTO arka ucuna girilen bit kodu dosyası. |
thinlto_output_object_file
|
string; veya None ;
varsayılan olarak None şeklindedirLTO arka ucu tarafından oluşturulan nesne dosyası. |
use_pic
|
varsayılan False şeklindedirTrue (doğru) değerine ayarlandığında derleme, konumdan bağımsız kod oluşturur. |
add_legacy_cxx_options
|
varsayılan değer False Kullanılmıyor. |
variables_extension
|
dict;
varsayılan olarak unbound şeklindedirDerleme işlemleri tarafından kullanılan ek değişkenlerin yer aldığı bir sözlük. |
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
oluşturulur
Parametreler
Parametre | Açıklama |
---|---|
actions
|
requiredactions nesnesi.
|
feature_configuration
|
Varsayılan değer None feature_configuration sorgulanacaktır.
|
cc_toolchain
|
varsayılan olarak kullanılacak None CcToolchainInfo sağlayıcısıdır.
|
static_library
|
Dosya veya None ;
varsayılan olarak None Bağlı olacak statik kitaplığın File .
|
pic_static_library
|
Dosya veya None ;
varsayılan olarak None File statik resim kitaplığının bağlantısı.
|
dynamic_library
|
Dosya veya None ;
varsayılan olarak None Bağlı olacak dinamik kitaplığın File . Çalışma zamanı için her zaman ve interface_library geçilmezse bağlantı için kullanılır.
|
interface_library
|
Dosya veya None ;
varsayılan olarak None Bağlı olacak arayüz kitaplığının File .
|
pic_objects
|
Dosya dizisi;
varsayılan değer unbound Deneyseldir, kullanmayın |
objects
|
Dosya dizisi;
varsayılan değer unbound Deneyseldir, kullanmayın |
alwayslink
|
varsayılan değer False --whole_archive bloğundaki statik kitaplığın/nesnelerin bağlanıp bağlanmayacağı. |
dynamic_library_symlink_path
|
dize;
varsayılan değer '' solib dizininde dinamik kitaplık bağlantısının varsayılan yolunu geçersiz kılar. Varsayılan değeri kullanmak için boş dize. |
interface_library_symlink_path
|
varsayılan değer '' solib dizininde arayüz kitaplığı bağlantısının varsayılan yolunu geçersiz kılın. Varsayılan değeri kullanmak için 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, 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)
Parametreler
Parametre | Açıklama |
---|---|
cc_toolchain
|
zorunlu cc_toolchain (derleme değişkenleri oluşturduğumuz) |
feature_configuration
|
required Sorgulanacak özellik yapılandırması. |
library_search_directories
|
None ; veya depset;
varsayılan değer None Bağlantı oluşturucunun bağlantı sırasında kitaplık aradığı dizinlerin depseti. |
runtime_library_search_directories
|
None ; veya depset;
varsayılan değer None Yükleyicinin çalışma zamanında kitaplık arayacağı dizinlerin depset'i. |
user_link_flags
|
None ; veya sequence;
varsayılan None şeklindedirEk bağlantı işaretlerinin (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. |
def_file
|
varsayılan değer None İsteğe bağlı .def dosya yoludur. |
is_using_linker
|
varsayılan değeri True bağlayıcı kullanırken Doğru, arşivleyici kullanırken False değeridir. Çağırıcı, bu değerin kullanılan işlem adıyla senkronize tutulmasından sorumludur (is_using_linker = True, yürütülebilir veya dinamik kitaplığı bağlamak için; is_using_linker = False, statik kitaplığı arşivlemek için). |
is_linking_dynamic_library
|
varsayılan değeri False Dinamik kitaplık oluştururken True, yürütülebilir veya statik kitaplık oluştururken False (Yanlış) şeklindedir. Bu ad, kullanılan işlem adıyla senkronize tutulmalıdır. Bu işlemden arayan sorumludur. b/65151735 düzeltildikten sonra bu alan kaldırılacaktır. |
must_keep_debug
|
varsayılan değer True Yanlış olarak ayarlandığında bazel, genellikle hata ayıklama simgelerini çıkış dosyasından kaldırmak için bağlayıcıyı kullanmak üzere "strip_debug_symbols" değişkenini gösterir. |
use_test_only_flags
|
Varsayılan değer False Doğru olarak ayarlandığında "is_cc_test" değişkeni ayarlanır. |
is_static_linking_mode
|
varsayılan değer True Kullanılmıyor. |
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
|
required Bu girişte kullanılan tüm dosyaları üreten hedefin etiketi. |
libraries
|
None veya depset;
varsayılan değer None LibraryToLink listesi.
|
user_link_flags
|
None ; veya dizelerden oluşan depset; veya dizelerden oluşan dize;
varsayılan değer None Kullanıcı bağlantısı işaretleri dize olarak iletilir. [Dize], [[Dize]] veya depset(Dize) kabul eder. Yalnızca uyumluluk amacıyla tutulduğundan ikinci yöntemin kullanılması önerilmez. Bu durumda depset düzleştirilir. user_link_flags öğesini düzleştirilmemiş depsets() aracılığıyla dağıtmak istiyorsanız sonuna kadar düzleştirilmeyecekleri şekilde bir LinkerInput içine sarın. |
additional_inputs
|
None ; veya depset;
varsayılan değer None Bağlantı işlemine yönelik ek girişler için (ör. bağlantı komut dosyaları). |
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 değer None Depset of LinkerInput .
|
libraries_to_link
|
None veya sequence;
varsayılan değer None Desteği sonlandırıldı. Bu parametrenin desteği sonlandırıldı ve yakında kaldırılacak. Lütfen bu metrikten yararlanmayın. --+incompatible_require_linker_input_cc_api ile devre dışı bırakılır. Kodunuzun yakında kaldırılacak olan işlevlerle uyumlu olup olmadığını doğrulamak için bu işareti kullanın. LibraryToLink öğesinin listesi.
|
user_link_flags
|
None veya sequence;
varsayılan değer None Desteği sonlandırıldı. Bu parametrenin desteği sonlandırıldı ve yakında kaldırılacak. Lütfen bu metrikten yararlanmayın. --+incompatible_require_linker_input_cc_api ile devre dışı bırakılır. Kodunuzun yakında kaldırılacak olan işlevlerle uyumlu olup olmadığını doğrulamak için bu işareti kullanın. Dize olarak iletilen kullanıcı bağlantısı işaretçilerinin listesi. |
additional_inputs
|
None veya sequence;
varsayılan değer None Desteği sonlandırıldı. Bu parametrenin desteği sonlandırıldı ve yakında kaldırılacak. Lütfen bu metrikten yararlanmayın. --+incompatible_require_linker_input_cc_api ile devre dışı bırakılır. Kodunuzun yakında kaldırılacak olan işlevlerle uyumlu olup olmadığını doğrulamak için bu işareti kullanın. Bağlantı oluşturma işlemine yönelik ek girişler için (ör. bağlantı oluşturma komut dosyaları). |
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)
CcLinkingContext
, CcLinkingOutputs
) çiftini döndürür.
Parametreler
Parametre | Açıklama |
---|---|
actions
|
gerekliactions nesne.
|
feature_configuration
|
gerekenfeature_configuration .
|
cc_toolchain
|
gerekliCcToolchainInfo sağlayıcı kullanılacak.
|
compilation_outputs
|
zorunlu Bağlanacak nesne dosyalarını içeren derleme çıkışları. |
user_link_flags
|
varsayılan ayar [] şeklindedirEk bağlantı seçenekleri listesi. |
linking_contexts
|
varsayılan değer [] Bağımlılıklardaki kitaplıklar. Bu kitaplıklar, link() çağrısının çıkış yapılarına (ikili veya kitaplık) bağlanır. |
name
|
required Bu, bu yöntemle oluşturulan işlemlerin çıkış yapılarını adlandırmak için kullanılır. |
language
|
varsayılan değer 'c++' Şu anda yalnızca C++ desteklenmektedir. Bu parametreyi kullanmayın. |
alwayslink
|
varsayılan değer False Bu kitaplığın her zaman bağlı olup olmayacağını belirtir. |
additional_inputs
|
varsayılan değer [] Bağlantı işlemine ek girişler için (ör. bağlantı komut dosyaları). |
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ık oluşturulup oluşturulmayacağı. |
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)
Parametreler
Parametre | Açıklama |
---|---|
feature_configuration
|
gerekli Sorgulanacak özellik yapılandırması. |
action_name
|
required İş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
|
required Şablon genişletmesi için kullanılacak değişkenleri oluşturun. |
get_execution_requirements
sequence cc_common.get_execution_requirements(feature_configuration, action_name)
Parametreler
Parametre | Açıklama |
---|---|
feature_configuration
|
gerekli Sorgulanacak özellik yapılandırması. |
action_name
|
required İş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) dosyasında bulunan adlardan biri olmalıdır. |
get_memory_inefficient_command_line
sequence cc_common.get_memory_inefficient_command_line(feature_configuration, action_name, variables)
Parametreler
Parametre | Açıklama |
---|---|
feature_configuration
|
gerekli Sorgulanacak özellik yapılandırması. |
action_name
|
required İş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) dosyasında bulunan adlardan biri olmalıdır. |
variables
|
required Şablon genişletmeleri için kullanılacak değişkenleri oluşturun. |
get_tool_for_action
string cc_common.get_tool_for_action(feature_configuration, action_name)
Parametreler
Parametre | Açıklama |
---|---|
feature_configuration
|
gerekli Sorgulanacak özellik yapılandırması. |
action_name
|
required İş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) dosyasında bulunan adlardan biri olmalıdır. |
is_enabled
bool cc_common.is_enabled(feature_configuration, feature_name)
Parametreler
Parametre | Açıklama |
---|---|
feature_configuration
|
required Sorgulanacak özellik yapılandırması. |
feature_name
|
required Ö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)
Parametreler
Parametre | Açıklama |
---|---|
actions
|
gerekliactions nesne.
|
feature_configuration
|
gerekenfeature_configuration .
|
cc_toolchain
|
requiredCcToolchainInfo sağlayıcının kullanılması gerekir.
|
compilation_outputs
|
CcCompilationOutputs; veya None ;
varsayılan olarak None Bağlanacak nesne dosyalarını içeren derleme çıkışlarıdır. |
user_link_flags
|
varsayılan değer [] Bağlantılayıcı seçeneklerinin ek listesi. |
linking_contexts
|
varsayılan ayar [] şeklindedirBu kural tarafından oluşturulan bağlantı bağlamına bağlanacak bağımlılıklardaki bağlamları bağlama. |
name
|
gereklidir Bu yöntem tarafından oluşturulan işlemlerin çıkış yapılarını adlandırmak için kullanılır. |
language
|
varsayılan değer 'c++' Şu anda yalnızca C++ desteklenmektedir. Bu parametreyi kullanmayın. |
output_type
|
varsayılan değer 'executable' "executable" 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 bağlamak için False. |
stamp
|
varsayılan değer 0 output_type "executable" ise bağlı yürütülebilir dosyaya derleme bilgilerinin eklenip eklenmeyeceği. 1 ise derleme bilgileri her zaman dahil edilir. 0 ise (varsayılan derleme bilgileri her zaman hariç tutulur. -1 ise varsayılan davranışı kullanır. Bu davranış, --[no]stamp işaretiyle geçersiz kılınabilir. Test kuralları için yürütülebilir çıktı oluşturulurken bu değer ayarlanmalı (veya 0 olarak ayarlanmalıdır). |
additional_inputs
|
sequence veya depset;
varsayılan değer [] Bağlantı işlemine yönelik ek girişler için (ör. bağlantı komut dosyaları). |
additional_outputs
|
sequence;
varsayılan olarak unbound şeklindedirBağlantı oluşturma işleminin ek çıkışları için (ör. harita dosyaları). |
merge_compilation_contexts
CompilationContext cc_common.merge_compilation_contexts(compilation_contexts=[])
CompilationContexts
öğesini tek bir öğede 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=[])
Parametreler
Parametre | Açıklama |
---|---|
compilation_outputs
|
varsayılan değer [] |