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
|
gerekli 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=[], 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
|
requiredactions nesnesi.
|
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 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ı. Bu dizinler, yürütme köküne göre göreli veya mutlak olabilir. 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. Tanımların her biri bir dizedir. Bağımlılara geçişli olarak aktarılmaz. |
include_prefix
|
varsayılan değer '' Bu kuralın üstbilgilerinin yollarına eklenecek ön ek. 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 ayar: [] Ek derleme seçenekleri listesi. |
compilation_contexts
|
varsayılan değer [] Derleme için kullanılan bağımlılıklardaki başlıklar. |
name
|
gereklidir Bu yöntem tarafından 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 [] Geç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ısı oluşturur
Parametreler
Parametre | Açıklama |
---|---|
ctx
|
required Kural bağlamı. |
features
|
varsayılan değer [] Bir özellik için tüm bayrak ö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 , farklı bir özellik veya işlem yapılandırmasındaki "sağla" ile aynı değeri içeriyor. Uyumlu olmayan özelliklerin yanlışlıkla aynı anda etkinleştirilmesini ve derleyici hatalarının teşhis edilmesini zorlaştırmasını önlemek için bu seçeneği kullanın.
|
action_configs
|
varsayılan olarak [] şeklindedirİş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ı 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. C++ ve C üstbilgi dosyaları arasında ad çakışması olmadığı sürece bu güvenli bir işlemdir. Göreli yollar, yapılandırma dosyası dizinine göre çözümlenir. Derleyicide --sysroot desteği varsa bu yollarda, dahil etme yolu yerine %sysroot% kullanılmalıdır ve doğru değiştirmeleri yapmak için blaze'a gerekli bilgileri vermek üzere sysroot özelliği belirtilmelidir. |
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. Aşağıdaki normal ifadeyle eşleşmelidir: [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
|
required Hedef mimari dizesi. |
target_libc
|
zorunlu libc sürüm dizesi (ör. "glibc-2.2.2"). |
compiler
|
gerekli 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ın erişimine açık hale getirilen bir make değişkeni. |
builtin_sysroot
|
dize veya None ;
varsayılan değer None Yerleşik sysroot. Bu özellik mevcut değilse Bazel, farklı bir sysroot kullanılmasına (ör. --grte_top seçeneğiyle) izin vermez. |
cc_target_os
|
dize veya None ;
varsayılan değer None Yalnızca şirket içi kullanım içindir, 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 Başlık 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 yayıldı. |
local_defines
|
varsayılan değer unbound Bu hedefi derlemek için gereken tanımlar grubu. Tanımların her biri 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 'dir.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 değer None Derleme 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ı. Lütfen output_file parametresini cc_common.get_memory_inefficient_command_line işlevinden oluşturulan komut satırının sonuna eklemek yerine buraya göndermeyi tercih edin. Bu durumda, derleyici işaretlerini doğru şekilde belirtme ve konumlandırma işlemi, araç zinciri yazarının yetkisinde olur. |
user_compile_flags
|
dize'lerin dizi veya None ;
varsayılan değer None Ek derleme işaretlerinin (copt'ler) 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ı dizinlerini içeren depset. |
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 olarak None şeklindedirLTO 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 değer False Doğru olduğunda 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 değer unbound Derleme işlemlerinin kullandığı ek değişkenler 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='')
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 bağlanacak statik kitaplığın None File kadarıdır.
|
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 . 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
|
Dosya veya None ;
varsayılan olarak bağlanacak arayüz kitaplığının None File kadarıdır.
|
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 dizinindeki dinamik kitaplık bağlantısının varsayılan yolunu geçersiz kıl. Varsayılanı 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 olarak None şeklindedirYükleyicinin çalışma zamanında kitaplıkları arayacağı dizinler. |
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 yolu. |
is_using_linker
|
Varsayılan değer True Bağlantılayıcı kullanıldığında doğru, arşivleyici kullanıldığında yanlıştır. Ç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ış değerine ayarlandığında bazel, genellikle çıkış dosyasından hata ayıklama simgelerini çıkarmak için bağlayıcıyı kullanmak üzere kullanılan '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ılmaz. |
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 olarak None Desteği sonlandırıldı. Bu parametrenin desteği sonlandırılmıştır ve yakında kaldırılacaktır. Lütfen bu yönteme güvenmeyin. --+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 listesi.
|
user_link_flags
|
None ; veya sequence;
varsayılan olarak None Desteği sonlandırıldı. Bu parametrenin desteği sonlandırıldı ve yakında kaldırılacak. Lütfen bu yönteme güvenmeyin. --+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şaretlerinin 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 yönteme güvenmeyin. --+incompatible_require_linker_input_cc_api ile devre dışı bırakıldı. Kodunuzun, kaldırılma olasılığı yüksek olan içerikle uyumlu olduğunu 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
|
requiredactions nesnesi.
|
feature_configuration
|
gerekenfeature_configuration .
|
cc_toolchain
|
requiredCcToolchainInfo sağlayıcının kullanılması gerekir.
|
compilation_outputs
|
zorunlu Bağlanacak nesne dosyalarını içeren derleme çıkışları. |
user_link_flags
|
varsayılan değer [] Bağlantı seçeneklerinin ek 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 ayar False şeklindedirBu kitaplığın her zaman bağlı olup olmayacağı. |
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
|
required 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ş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
|
required 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
|
required 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
|
required 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
|
gerekli 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
|
requiredactions nesnesi.
|
feature_configuration
|
gerekenfeature_configuration .
|
cc_toolchain
|
requiredCcToolchainInfo sağlayıcının kullanılması gerekir.
|
compilation_outputs
|
CcCompilationOutputs; veya None ;
varsayılan değer None Bağlanacak nesne dosyalarını içeren derleme çıkışları. |
user_link_flags
|
varsayılan ayar [] şeklindedirBağlayıcı seçeneklerinin ek listesi. |
linking_contexts
|
varsayılan değer [] Bağımlılıklardan bu kural tarafından oluşturulan bağlantı bağlamına bağlanacak bağlamları bağlama. |
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. |
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 olarak [] şeklindedirBağlama işlemine yapılan ek girişler için (ör. komut dosyalarını bağlama). |
additional_outputs
|
sequence;
varsayılan değer unbound Bağlantı oluşturma işleminin ek çıkışları için (ör. eşleme 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 [] şeklindedirBirleş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 [] 'tır. |