C++ derleme, bağlama ve komut satırı oluşturma için yardımcı programlar.
Ü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)
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=[], 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
|
gereklifeature_configuration sorgulanması gerekir.
|
cc_toolchain
|
requiredCcToolchainInfo sağlayıcısı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 [] "foo/bar/header.h" gibi tırnak içine alınmış başlıklar için arama yolları. Bu dizinler, yürütme köküne göre göreli veya mutlak olabilir. Genellikle -iquote ile birlikte 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. Her tanım 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ğinde ayarlanan üstbilgilerin erişilebilir olduğu konum, bu özelliğin değerinin depoya göreli yolunun başına eklenmesidir. 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. |
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 özellikler 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ı 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 ö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. 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 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 "ima edebilir". Bağımsız değişkenler:
|
artifact_name_patterns
|
varsayılan değer [] Belirli bir giriş veya çıkış yapıları kategorisine ait bir 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 dahil dizinleri. 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ı dizine göre çözülür. 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
|
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
|
Varsayılan değer [] 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"). Bu dizinler, yürütme köküne göre göreli veya mutlak olabilir. 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 aktarı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 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 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 görevi araç zinciri yazarına aittir. |
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 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ı 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 dizinlerini içeren Depset. |
preprocessor_defines
|
depset; veya None ;
varsayılan değer 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 değer None LTO 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ılmaz. |
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şturur
Parametreler
Parametre | Açıklama |
---|---|
actions
|
requiredactions nesnesi.
|
feature_configuration
|
Varsayılan değer None feature_configuration sorgulanacaktır.
|
cc_toolchain
|
varsayılan olarak None CcToolchainInfo sağlayıcısı kullanılı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 . 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 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 dize;
varsayılan değer None Ek bağlantı işaretleri listesi (linkopts). |
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ğer False Dinamik kitaplık oluşturulurken doğru, yürütülebilir veya statik kitaplık oluşturulurken yanlıştır. 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ı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 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ılır. Kodunuzun yakında kaldırılacak olan özellikle uyumlu olup olmadığını doğrulamak için bu işareti kullanın. LibraryToLink 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 yönteme güvenmeyin. --+incompatible_require_linker_input_cc_api ile devre dışı bırakılır. Kodunuzun yakında kaldırılacak olan özellikle 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 yönteme güvenmeyin. --+incompatible_require_linker_input_cc_api ile devre dışı bırakılır. Kodunuzun yakında kaldırılacak olan özellikle 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
|
requiredactions nesnesi.
|
feature_configuration
|
gereklifeature_configuration sorgulanması gerekir.
|
cc_toolchain
|
requiredCcToolchainInfo sağlayıcısı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 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
|
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
|
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
|
requiredactions nesnesi.
|
feature_configuration
|
gereklifeature_configuration sorgulanması gerekir.
|
cc_toolchain
|
requiredCcToolchainInfo sağlayıcısı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 değer [] Bağlantı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 çıkış oluşturulurken bu ayar kaldırılmalıdır (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 değer unbound Bağ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 [] 'tır. |