cc_common

किसी समस्या की शिकायत करें सोर्स देखें Nightly · 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

C++ कोड को कंपाइल करने, लिंक करने, और कमांड लाइन जनरेट करने के लिए उपयोगी टूल.

सदस्य

action_is_enabled

bool cc_common.action_is_enabled(feature_configuration, action_name)

अगर सुविधा के कॉन्फ़िगरेशन में दिया गया action_config चालू है, तो True दिखाता है.

पैरामीटर

पैरामीटर ब्यौरा
feature_configuration FeatureConfiguration; ज़रूरी है
जिस सुविधा के कॉन्फ़िगरेशन के बारे में क्वेरी करनी है.
action_name string; ज़रूरी है
action_config का नाम.

CcToolchainInfo

Provider cc_common.CcToolchainInfo

इस कुंजी का इस्तेमाल, उस प्रोवाइडर को वापस पाने के लिए किया जाता है जिसमें इस्तेमाल किए जा रहे C++ टूलचेन की जानकारी होती है

कंपाइल करना

tuple cc_common.compile(actions, feature_configuration, cc_toolchain, srcs=[], public_hdrs=[], private_hdrs=[], includes=[], quote_includes=[], system_includes=[], framework_includes=[], defines=[], local_defines=[], include_prefix='', strip_include_prefix='', user_compile_flags=[], conly_flags=[], cxx_flags=[], compilation_contexts=[], name, disallow_pic_outputs=False, disallow_nopic_outputs=False, additional_inputs=[], module_interfaces=unbound)

C++ कंपाइलेशन के लिए इस्तेमाल किया जाना चाहिए. (CompilationContext, CcCompilationOutputs) ट्यूपल दिखाता है.

पैरामीटर

पैरामीटर ब्यौरा
actions action; ज़रूरी
actions ऑब्जेक्ट.
feature_configuration FeatureConfiguration;
के लिए ज़रूरी है feature_configuration पर क्वेरी की जा सकती है.
cc_toolchain जानकारी;
CcToolchainInfo की सेवा इस्तेमाल करने के लिए ज़रूरी है.
srcs sequence; डिफ़ॉल्ट []
है उन सोर्स फ़ाइलों की सूची जिन्हें कंपाइल करना है.
public_hdrs क्रम; डिफ़ॉल्ट रूप से []
हेडर की सूची होती है, जो सोर्स को इकट्ठा करने के लिए ज़रूरी होती है. साथ ही, इसमें सभी निर्भर नियमों के ज़रिए ट्रांज़िट को भी शामिल किया जा सकता है.
private_hdrs क्रम; डिफ़ॉल्ट तौर पर []
हेडर की सूची होती है, जो सोर्स को इकट्ठा करने के लिए ज़रूरी है और डिपेंडेंट नियमों में शामिल नहीं किया जाना चाहिए.
includes sequence या depset; डिफ़ॉल्ट तौर पर, []
होता है ऐंगल ब्रैकेट और कोटेशन, दोनों के ज़रिए रेफ़र की गई हेडर फ़ाइलों के लिए खोज पाथ. आम तौर पर, -I के साथ पास किया जाता है. यह डेटा, डिपेंडेंट लोगों के लिए एक जगह से दूसरी जगह पर सीधे तौर पर लागू होता है.
quote_includes sequence; डिफ़ॉल्ट रूप से []
होता है कोटेशन के ज़रिए रेफ़र की गई हेडर फ़ाइलों के लिए खोज के पाथ. उदाहरण के लिए, #include "foo/bar/header.h". ये, exec रूट के हिसाब से या फिर एब्सोलूट हो सकते हैं. आम तौर पर, इसे -iquote के साथ पास किया जाता है. यह ट्रांज़िशन के तौर पर, डिपेंडेंट वैरिएबल में लागू होता है.
system_includes sequence; डिफ़ॉल्ट रूप से []
होता है ऐंगल ब्रैकेट से रेफ़र की गई हेडर फ़ाइलों के लिए खोज पाथ, जैसे कि #include <foo/bar/header.h>. ये, exec रूट के हिसाब से या एब्सोलूट हो सकते हैं. आम तौर पर, -isystem के साथ पास किया जाता है. यह ट्रांज़िशन के तौर पर, डिपेंडेंट वैरिएबल में लागू होता है.
framework_includes sequence; डिफ़ॉल्ट तौर पर, यह []
होता है Apple फ़्रेमवर्क से हेडर फ़ाइलों के लिए पाथ खोजें. ये, exec रूट के हिसाब से या फिर एब्सोलूट हो सकते हैं. आम तौर पर, -F के साथ पास किया जाता है. यह ट्रांज़िशन के तौर पर, डिपेंडेंट वैरिएबल में लागू होता है.
defines sequence; डिफ़ॉल्ट तौर पर, यह []
होता है इस टारगेट को कंपाइल करने के लिए, ज़रूरी डेफ़ाइन का सेट. हर परिभाषा एक स्ट्रिंग होती है. यह ट्रांज़िशन के तौर पर, डिपेंडेंट वैरिएबल में लागू होता है.
local_defines sequence; डिफ़ॉल्ट तौर पर, यह []
होता है इस टारगेट को कंपाइल करने के लिए, ज़रूरी डेफ़ाइन का सेट. हर परिभाषा एक स्ट्रिंग होती है. डिपेंडेंट लोगों को ट्रांज़िशन के तौर पर नहीं भेजा जाता.
include_prefix स्ट्रिंग; डिफ़ॉल्ट तौर पर ''
होता है इस नियम के हेडर के पाथ में जोड़ने के लिए प्रीफ़िक्स. सेट होने पर, इस नियम के hdrs एट्रिब्यूट में मौजूद हेडर को इस एट्रिब्यूट की वैल्यू पर ऐक्सेस किया जा सकता है. यह वैल्यू, उनके रिपॉज़िटरी-रिलेटिव पाथ के आगे जोड़ी जाती है. इस प्रीफ़िक्स को जोड़ने से पहले, strip_include_prefix एट्रिब्यूट में मौजूद प्रीफ़िक्स हटा दिया जाता है.
strip_include_prefix string; डिफ़ॉल्ट वैल्यू ''
है. इस नियम के हेडर के पाथ से स्ट्रिप करने के लिए प्रीफ़िक्स. सेट होने पर, इस नियम के hdrs एट्रिब्यूट में मौजूद हेडर को उनके पाथ पर ऐक्सेस किया जा सकता है. हालांकि, इस पाथ से प्रीफ़िक्स हटा दिया जाता है. अगर यह रिलेटिव पाथ है, तो इसे पैकेज के हिसाब से रिलेटिव पाथ माना जाता है. अगर यह ऐब्सलूट पाथ है, तो इसे रिपॉज़िटरी से रिलेटिव पाथ माना जाता है. इस प्रीफ़िक्स को हटाने के बाद, include_prefix एट्रिब्यूट में प्रीफ़िक्स जोड़ा जाता है.
user_compile_flags sequence; डिफ़ॉल्ट तौर पर []
होता है कंपाइल करने के विकल्पों की अन्य सूची.
conly_flags क्रम; []
सी कंपाइलेशन के लिए कंपाइलेशन के विकल्पों की अतिरिक्त सूची डिफ़ॉल्ट रूप से सेट है.
cxx_flags सीक्वेंस; डिफ़ॉल्ट तौर पर []
C++ कंपाइलेशन के लिए कंपाइलेशन विकल्पों की अतिरिक्त सूची है.
compilation_contexts सीक्वेंस; कंपाइलेशन के लिए इस्तेमाल की गई डिपेंडेंसी से []
हेडर डिफ़ॉल्ट रूप से होते हैं.
name स्ट्रिंग; ज़रूरी है
इसका इस्तेमाल, इस तरीके से बनाई गई कार्रवाइयों के आउटपुट आर्टफ़ैक्ट के नाम देने के लिए किया जाता है. `main_Output` आर्ग्युमेंट भी देखें.
disallow_pic_outputs bool; डिफ़ॉल्ट False है
PIC आउटपुट बनाए जाने चाहिए या नहीं.
disallow_nopic_outputs bool; डिफ़ॉल्ट तौर पर False
होता है यह तय करता है कि NOPIC आउटपुट बनाने हैं या नहीं.
additional_inputs sequence; डिफ़ॉल्ट तौर पर []
होता है srcs को कंपाइल करने के लिए ज़रूरी अतिरिक्त फ़ाइलों की सूची
module_interfaces क्रम; डिफ़ॉल्ट तौर पर unbound
मॉड्यूल इंटरफ़ेस की सोर्स फ़ाइलों की सूची है, जिसे कंपाइल किया जाना है. ध्यान दें: यह सुविधा एक्सपेरिमेंट के तौर पर उपलब्ध है. इसे सिर्फ़ --experimental_cpp_modules के साथ चालू किया जा सकता है

configure_features

FeatureConfiguration cc_common.configure_features(ctx=None, cc_toolchain, language=None, requested_features=[], unsupported_features=[])

सुविधा_कॉन्फ़िगरेशन इंस्टेंस बनाता है. इसके लिए, cpp कॉन्फ़िगरेशन फ़्रैगमेंट की ज़रूरत होती है.

पैरामीटर

पैरामीटर ब्यौरा
ctx ctx; या None; डिफ़ॉल्ट रूप से None
नियम का संदर्भ है.
cc_toolchain जानकारी; ज़रूरी है
cc_toolchain, जिसके लिए हम सुविधाओं को कॉन्फ़िगर करते हैं.
language string या None; डिफ़ॉल्ट None
है कॉन्फ़िगर करने के लिए भाषा: c++ या objc (डिफ़ॉल्ट c++)
requested_features sequence; डिफ़ॉल्ट रूप से []
होता है चालू की जाने वाली सुविधाओं की सूची.
unsupported_features sequence; डिफ़ॉल्ट रूप से []
होता है उन सुविधाओं की सूची जो मौजूदा नियम के साथ काम नहीं करती हैं.

create_cc_toolchain_config_info

CcToolchainConfigInfo cc_common.create_cc_toolchain_config_info(ctx, features=[], action_configs=[], artifact_name_patterns=[], cxx_builtin_include_directories=[], toolchain_identifier, host_system_name=None, target_system_name=None, target_cpu=None, target_libc=None, compiler, abi_version=None, abi_libc_version=None, tool_paths=[], make_variables=[], builtin_sysroot=None)

यह CcToolchainConfigInfo प्रोवाइडर बनाता है

पैरामीटर

पैरामीटर ब्यौरा
ctx ctx; ज़रूरी है
नियम का कॉन्टेक्स्ट.
features क्रम है; []
डिफ़ॉल्ट है. इसमें किसी एक सुविधा के लिए सभी फ़्लैग की विशेषताएं शामिल होती हैं.

तर्क:

name: सुविधा का नाम. Bazel में कोई बदलाव किए बिना भी कोई सुविधा जोड़ी जा सकती है. इसके लिए, टूलचेन में 'सुविधा' सेक्शन जोड़ें और उससे जुड़ी स्ट्रिंग को BUILD फ़ाइल में सुविधा के तौर पर जोड़ें.

enabled: अगर 'सही है' है, तो यह सुविधा तब तक चालू रहती है, जब तक कि किसी नियम के टाइप में, साफ़ तौर पर इसे 'काम नहीं करता' के तौर पर मार्क किया जाता है.

flag_sets: FlagSet की सूची. अगर यह सुविधा चालू है, तो फ़्लैग सेट उन कार्रवाइयों के लिए लागू होंगे जिनके लिए उन्हें तय किया गया है.

env_sets: EnvSet की सूची. अगर यह सुविधा चालू है, तो env सेट उन कार्रवाइयों के लिए लागू होंगे जिनके लिए उन्हें तय किया गया है.

requires: सुविधा के सेट की सूची, जो तय करती है कि यह सुविधा कब टूलचेन में काम करेगी. यह सुविधा तब काम करती है, जब सुविधाओं का कोई सेट पूरी तरह से लागू हो. इसका मतलब है कि सुविधाओं के किसी सेट की सभी सुविधाएं चालू हों. अगर requires को शामिल नहीं किया जाता है, तो यह सुविधा अन्य सुविधाओं के चालू होने पर भी काम करती है. उदाहरण के लिए, चालू किए गए बिल्ड मोड (opt / fastbuild / dbg) के आधार पर फ़्लैग फ़िल्टर करने के लिए, इसका इस्तेमाल करें.

implies: इस सुविधा के चालू होने पर, अपने-आप चालू होने वाली सुविधाओं या कार्रवाई के कॉन्फ़िगरेशन की स्ट्रिंग सूची. अगर पहले से मौजूद किसी सुविधा या कार्रवाई से जुड़े कॉन्फ़िगरेशन को चालू नहीं किया जा सकता, तो यह सुविधा (बिना आवाज़ के) भी चालू नहीं होगी.

provides: उन नामों की सूची जिनके साथ यह सुविधा काम नहीं करती.

किसी सुविधा को इन मामलों में चालू नहीं किया जा सकता:
- provides में उस सुविधा या कार्रवाई कॉन्फ़िगरेशन का नाम है जिसे हमें चालू करना है.
- provides में वह वैल्यू मौजूद है जो किसी अलग सुविधा या कार्रवाई कॉन्फ़िगरेशन में 'उपलब्ध है' के तौर पर है और जिसे हमें चालू करना है. इसका इस्तेमाल करके, यह पक्का करें कि एक ही समय पर काम न करने वाली सुविधाएं गलती से चालू न हों. इससे कंपाइलर की गड़बड़ियों का पता लगाना मुश्किल हो जाता है.
action_configs sequence; डिफ़ॉल्ट तौर पर []
होता है ऐक्शन कॉन्फ़िगरेशन, Bazel ऐक्शन से जुड़ा होता है. साथ ही, चालू की गई सुविधाओं के आधार पर टूल चुनने की अनुमति देता है. कार्रवाई कॉन्फ़िगरेशन को चालू करने के लिए, सुविधाओं की तरह ही सिमेंटिक्स इस्तेमाल किए जाते हैं: किसी सुविधा के लिए, कार्रवाई से जुड़े कॉन्फ़िगरेशन को उसी तरह 'ज़रूरी' या 'लागू' किया जा सकता है जिस तरह यह किसी अन्य सुविधा के लिए होता है.

तर्क:

action_name: उस Bazel ऐक्शन का नाम जिस पर यह कॉन्फ़िगरेशन लागू होता है. जैसे, 'c-compile' या 'c-module-compile'.

enabled: अगर 'सही है' है, तो यह कार्रवाई तब तक चालू रहती है, जब तक कि कोई नियम साफ़ तौर पर इसे 'काम नहीं करता' के तौर पर मार्क करता है.

tools: ऐक्शन पर लागू किया गया टूल, सुविधा के कॉन्फ़िगरेशन से मैच करने वाला सुविधा सेट वाला पहला टूल होगा. अगर कोई टूल, दी गई सुविधा के कॉन्फ़िगरेशन से मेल नहीं खाता है, तो गड़बड़ी का मैसेज दिखेगा. इसलिए, खाली सुविधा सेट वाला डिफ़ॉल्ट टूल देना अच्छा रहेगा.

flag_sets: अगर दिया गया ऐक्शन कॉन्फ़िगरेशन चालू है, तो फ़्लैग सेट उससे जुड़ी कार्रवाई पर लागू हो जाएंगे.

implies: इस ऐक्शन कॉन्फ़िगरेशन के चालू होने पर, अपने-आप चालू होने वाली सुविधाओं या ऐक्शन कॉन्फ़िगरेशन की सूची. अगर किसी भी सुविधा या ऐक्शन कॉन्फ़िगरेशन को चालू नहीं किया जा सकता, तो यह ऐक्शन कॉन्फ़िगरेशन भी (बिना किसी सूचना के) चालू नहीं होगा.

artifact_name_patterns sequence; डिफ़ॉल्ट तौर पर []
होता है किसी ऐक्शन के इनपुट या आउटपुट आर्टफ़ैक्ट की किसी कैटगरी के आर्टफ़ैक्ट का नाम.

तर्क:

category_name: आर्टफ़ैक्ट की वह कैटगरी जिस पर यह विकल्प लागू होता है. इस फ़ील्ड की तुलना, Bazel में तय की गई कैटगरी की सूची से की जाती है. उदाहरण के लिए, "linked_output" या इस विकल्प के लिए आर्टफ़ैक्ट. एक्सटेंशन के साथ इसका इस्तेमाल, टारगेट के नाम के आधार पर आर्टफ़ैक्ट का नाम बनाने के लिए किया जाता है.

extension: इस चुनिंदा डेटा के लिए आर्टफ़ैक्ट बनाने वाला एक्सटेंशन. प्रीफ़िक्स के साथ इसका इस्तेमाल, टारगेट नाम के आधार पर आर्टफ़ैक्ट का नाम बनाने के लिए किया जाता है.

cxx_builtin_include_directories sequence; डिफ़ॉल्ट []
है

C++ कंपाइलेशन के लिए, पहले से मौजूद शामिल डायरेक्ट्री. ये ऐसे सटीक पाथ होने चाहिए जिनका इस्तेमाल कंपाइलर करता है. आम तौर पर, ये पाथ exec रूट के हिसाब से होते हैं.

कंपाइलर के इस्तेमाल किए गए पाथ का पता लगाने के लिए, 'gcc -E -xc++ - -v' का इस्तेमाल किया जा सकता है.

फ़िलहाल, हम C कंपाइलेशन के लिए भी C++ पाथ का इस्तेमाल करते हैं. यह तब तक सुरक्षित है, जब तक C++ और C हेडर फ़ाइलों के नाम में कोई अंतर न हो.

रिलेटिव पाथ, कॉन्फ़िगरेशन फ़ाइल डायरेक्ट्री के हिसाब से हल किए जाते हैं.

अगर कंपाइलर में --sysroot सपोर्ट है, तो इन पाथ को शामिल पाथ के बजाय %sysroot% का इस्तेमाल करना चाहिए और ब्लेज़ को सही रिप्लेसमेंट के लिए ज़रूरी जानकारी देने के लिए sysroot एट्रिब्यूट तय करना चाहिए.

toolchain_identifier string; required

क्रॉसटूल रिलीज़ में टूलचेन का यूनीक आइडेंटिफ़ायर. इसका इस्तेमाल, पाथ में डायरेक्ट्री के नाम के तौर पर किया जा सकता हो.

यह इस रेगुलर एक्सप्रेशन से मेल खाना चाहिए: [a-zA-Z_][\.\- \w]*

host_system_name string; या None; डिफ़ॉल्ट रूप से यह None
अनदेखा किया जाता है.
target_system_name string या None; डिफ़ॉल्ट None
है अब इस्तेमाल नहीं किया जा सकता. GNU सिस्टम का नाम. स्ट्रिंग को CcToolchainInfo.target_gnu_system_name के लिए दिखाया जाता है.
target_cpu string या None; डिफ़ॉल्ट तौर पर None
इस्तेमाल नहीं किया जा सकता: इसके बजाय, सीपीयू पर आधारित पाबंदियों का इस्तेमाल करें. अगर स्ट्रिंग "k8" है, तो रॉ FDO प्रोफ़ाइल डेटा के फ़ाइल नाम से `target_cpu` हटा दिया जाएगा.
target_libc string या None; डिफ़ॉल्ट तौर पर None
इस्तेमाल नहीं किया जा सकता: इसके बजाय, ओएस के हिसाब से पाबंदियों का इस्तेमाल करें. libc वर्शन स्ट्रिंग (उदाहरण के लिए, "glibc-2.2.2"). अगर स्ट्रिंग "macosx" है, तो प्लैटफ़ॉर्म को MacOS माना जाता है. इसके अलावा, Linux. स्ट्रिंग को CcToolchainInfo.libc पर दिखाया जाता है.
compiler string; ज़रूरी है
कंपाइलर स्ट्रिंग (उदाहरण के लिए, "gcc"). मौजूदा टूलचेन का कंपाइलर, फ़्लैग वैल्यू के तौर पर `@bazel_tools//tools/cpp:compiler (compiler_flag)` को दिखाया जाता है. जिन टारगेट को कंपाइल करने के लिए किसी खास फ़्लैग की ज़रूरत होती है वे https://github.com/ba Profilebuild/rules_cc/blob/main/cc/compiler/BUILD स्टेटमेंट में config_settings का इस्तेमाल कर सकते हैं. इसके अलावा, अगर मौजूदा सेटिंग ज़रूरत के मुताबिक नहीं हैं, तो कस्टम config_setting का इस्तेमाल किया जा सकता है.
abi_version string; या None; डिफ़ॉल्ट रूप से None
इस्तेमाल किया जा रहा abi होता है, जो gcc वर्शन है. उदाहरण: "gcc-3.4". स्ट्रिंग को C++ टूलचैन वैरिएबल एबीआई पर सेट किया गया है.
abi_libc_version string या None; डिफ़ॉल्ट तौर पर None
होता है वह glibc वर्शन जिसका इस्तेमाल, इस्तेमाल किए जा रहे abi में किया जाता है. स्ट्रिंग को C++ टूलचैन वैरिएबल ABI_LIBC_VERSION पर सेट किया गया है.
tool_paths क्रम; []
टूल की जगह की जानकारी डिफ़ॉल्ट तौर पर सेट है.

तर्क:

name: टूल का नाम.

path: टूल की जगह; यह ऐब्सलूट पाथ (नॉन-हर्मेटिक टूलचेन के मामले में) या cc_toolchain के पैकेज के हिसाब से पाथ हो सकता है.

make_variables sequence; डिफ़ॉल्ट तौर पर []
होता है यह एक ऐसा मेक वैरिएबल है जिसे नियमों के लिए ऐक्सेस किया जा सकता है.
builtin_sysroot string या None; डिफ़ॉल्ट तौर पर None
पहले से मौजूद sysroot. अगर यह एट्रिब्यूट मौजूद नहीं है, तो Basel अलग सिस्टम का इस्तेमाल करने की अनुमति नहीं देता है. जैसे, --grte_top विकल्प के ज़रिए.

create_compilation_context

CompilationContext cc_common.create_compilation_context(headers=unbound, system_includes=unbound, includes=unbound, quote_includes=unbound, framework_includes=unbound, defines=unbound, local_defines=unbound)

यह CompilationContext का इस्तेमाल करता है.

पैरामीटर

पैरामीटर ब्यौरा
headers डिफ़ॉल्ट वैल्यू unbound है
इस टारगेट को कंपाइल करने के लिए, हेडर का सेट ज़रूरी है
system_includes डिफ़ॉल्ट रूप से unbound
ऐंगल ब्रैकेट से रेफ़र की गई हेडर फ़ाइलों के लिए खोज पाथ का सेट, जैसे कि #include <foo/bar/header.h>. ये, exec रूट के हिसाब से या एब्सोलूट हो सकते हैं. आम तौर पर, -isystem के साथ पास किया जाता है
includes डिफ़ॉल्ट रूप से unbound
ऐंगल ब्रैकेट और कोटेशन, दोनों के ज़रिए रेफ़र की गई हेडर फ़ाइलों के लिए खोज पाथ का सेट.आम तौर पर, -I के साथ पास किया जाता है
quote_includes डिफ़ॉल्ट रूप से unbound
कोटेशन के ज़रिए रेफ़र की गई हेडर फ़ाइलों के लिए खोज पाथ का सेट, जैसे कि #include "foo/bar/header.h". ये, exec रूट के हिसाब से या फिर एब्सोलूट हो सकते हैं. आम तौर पर, -iquote के साथ पास किया जाता है
framework_includes डिफ़ॉल्ट तौर पर unbound
होता है हेडर फ़ाइलों के लिए फ़्रेमवर्क सर्च पाथ का सेट (सिर्फ़ Apple प्लैटफ़ॉर्म के लिए)
defines डिफ़ॉल्ट तौर पर unbound
इस टारगेट को कंपाइल करने के लिए, ज़रूरी डेफ़ाइन का सेट. हर define एक स्ट्रिंग होती है. यह ट्रांज़िटिव तौर पर, डिपेंडेंट लोगों को डिलीवर किया जा सकता है.
local_defines डिफ़ॉल्ट तौर पर unbound
इस टारगेट को कंपाइल करने के लिए, ज़रूरी डेफ़ाइन का सेट. हर define एक स्ट्रिंग होती है. यह ट्रांज़िटिव तरीके से, डिपेंडेंट एलिमेंट में लागू नहीं होता.

create_compilation_outputs

CcCompilationOutputs cc_common.create_compilation_outputs(objects=None, pic_objects=None)

कंपाइलेशन आउटपुट ऑब्जेक्ट बनाएं.

पैरामीटर

पैरामीटर ब्यौरा
objects depset; या None; डिफ़ॉल्ट तौर पर None
ऑब्जेक्ट फ़ाइलों की सूची होती है.
pic_objects depset; या None; डिफ़ॉल्ट रूप से यह None
पिक ऑब्जेक्ट फ़ाइलों की सूची है.

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)

कंपाइलेशन ऐक्शन के लिए इस्तेमाल किए गए वैरिएबल दिखाता है.

पैरामीटर

पैरामीटर ब्यौरा
cc_toolchain जानकारी; ज़रूरी है
cc_toolchain, जिसके लिए हम बिल्ड वैरिएबल बना रहे हैं.
feature_configuration FeatureConfiguration; ज़रूरी है
जिस सुविधा के कॉन्फ़िगरेशन के बारे में क्वेरी करनी है.
source_file डिफ़ॉल्ट तौर पर, None
होता है कंपाइल करने के लिए, ज़रूरी नहीं है कि सोर्स फ़ाइल दी गई हो. कृपया source_file को cc_common.get_memory_inefficient_command_line से जनरेट की गई कमांड लाइन के आखिर में जोड़ने के बजाय, यहां पास करें. ऐसा करने पर, टूलचेन के लेखक के पास कंपाइलर फ़्लैग को सही तरीके से तय करने और उनकी पोज़िशन तय करने का विकल्प होता है.
output_file डिफ़ॉल्ट रूप से None
कंपाइलेशन की वैकल्पिक आउटपुट फ़ाइल. कृपया output_file को cc_common.get_memory_inefficient_command_line से जनरेट की गई कमांड लाइन के आखिर में जोड़ने के बजाय, यहां पास करें. ऐसा करने पर, टूलचेन के लेखक के पास कंपाइलर फ़्लैग को सही तरीके से तय करने और उनकी पोज़िशन तय करने का विकल्प होता है.
user_compile_flags स्ट्रिंग का क्रम या None; डिफ़ॉल्ट तौर पर None
अतिरिक्त कंपाइलेशन फ़्लैग (copts) की सूची.
include_directories depset या None; डिफ़ॉल्ट रूप से None
होता है शामिल की गई डायरेक्ट्री का डेपसेट.
quote_include_directories depset; या None; डिफ़ॉल्ट रूप से None
कोट के डिपसेट में डायरेक्ट्री शामिल होती हैं.
system_include_directories depset या None; डिफ़ॉल्ट रूप से None
सिस्टम की Depset में डायरेक्ट्री शामिल होती हैं.
framework_include_directories depset या None; डिफ़ॉल्ट None
होता है फ़्रेमवर्क के Depset में डायरेक्ट्री शामिल होती हैं.
preprocessor_defines depset; या None; डिफ़ॉल्ट None
प्रीप्रोसेसर तय करता है.
thinlto_index string या None; डिफ़ॉल्ट तौर पर None
LTO इंडेक्स फ़ाइल का पाथ.
thinlto_input_bitcode_file string या None; डिफ़ॉल्ट रूप से None
बिटकोड फ़ाइल, जो LTO बैकएंड में इनपुट होती है.
thinlto_output_object_file string या None; डिफ़ॉल्ट तौर पर None
ऑब्जेक्ट फ़ाइल, जो LTO बैकएंड से आउटपुट होती है.
use_pic bool; डिफ़ॉल्ट रूप से False
पर सेट होता है अगर इसकी वैल्यू 'सही' है, तो कंपाइलेशन में पोज़िशन पर निर्भर न करने वाला कोड जनरेट होगा.
add_legacy_cxx_options bool; डिफ़ॉल्ट False
है इस्तेमाल नहीं किया जाता.
variables_extension dict; डिफ़ॉल्ट रूप से unbound
होता है कंपाइल ऐक्शन में इस्तेमाल किए जाने वाले अन्य वैरिएबल की डिक्शनरी.

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 बनाता है

पैरामीटर

पैरामीटर ब्यौरा
actions
actions ऑब्जेक्ट ज़रूरी है.
feature_configuration डिफ़ॉल्ट रूप से, None
feature_configuration पर क्वेरी की जाती है.
cc_toolchain डिफ़ॉल्ट रूप से, None
CcToolchainInfo सेवा देने वाली कंपनी का इस्तेमाल किया जाना चाहिए.
static_library फ़ाइल या None; डिफ़ॉल्ट रूप से, लिंक की जाने वाली स्टैटिक लाइब्रेरी का None
File होता है.
pic_static_library फ़ाइल या None; डिफ़ॉल्ट रूप से, लिंक की जाने वाली फ़ोटो की स्टैटिक लाइब्रेरी का None
File होता है.
dynamic_library फ़ाइल या None; डिफ़ॉल्ट रूप से, डाइनैमिक लाइब्रेरी की None
File को लिंक किया जाता है. रनटाइम के लिए हमेशा इस्तेमाल किया जाता है. साथ ही, interface_library पास न होने पर लिंक करने के लिए भी इस्तेमाल किया जाता है.
interface_library फ़ाइल या None; लिंक की जाने वाली इंटरफ़ेस लाइब्रेरी का डिफ़ॉल्ट रूप None
File है.
pic_objects फ़ाइल का क्रम; डिफ़ॉल्ट तौर पर unbound
होता है एक्सपेरिमेंट के तौर पर उपलब्ध है, इसका इस्तेमाल न करें
objects फ़ाइल का क्रम; डिफ़ॉल्ट तौर पर unbound
होता है एक्सपेरिमेंट के तौर पर उपलब्ध है, इसका इस्तेमाल न करें
bool; डिफ़ॉल्ट रूप से False
पर सेट होता है --whole_archive ब्लॉक में स्टैटिक लाइब्रेरी/ऑब्जेक्ट को लिंक करना है या नहीं.
स्ट्रिंग; डिफ़ॉल्ट तौर पर, यह ''
होता है solib डायरेक्ट्री में डाइनैमिक लाइब्रेरी लिंक के डिफ़ॉल्ट पाथ को बदलें. डिफ़ॉल्ट इस्तेमाल के लिए खाली स्ट्रिंग.
स्ट्रिंग; डिफ़ॉल्ट तौर पर, यह ''
होता है solib डायरेक्ट्री में इंटरफ़ेस लाइब्रेरी लिंक के डिफ़ॉल्ट पाथ को बदलें. डिफ़ॉल्ट वैल्यू का इस्तेमाल करने के लिए, खाली स्ट्रिंग.

Variables cc_common.create_link_variables(cc_toolchain, feature_configuration, library_search_directories=[], runtime_library_search_directories=[], user_link_flags=[], output_file=None, param_file=None, is_using_linker=True, is_linking_dynamic_library=False, must_keep_debug=True, use_test_only_flags=False, is_static_linking_mode=True)

ऐक्शन लिंक करने के लिए इस्तेमाल किए गए लिंक वैरिएबल दिखाता है.

पैरामीटर

पैरामीटर ब्यौरा
जानकारी; ज़रूरी है
cc_toolchain, जिसके लिए हम बिल्ड वैरिएबल बना रहे हैं.
FeatureConfiguration; ज़रूरी है
जिस सुविधा के कॉन्फ़िगरेशन के बारे में क्वेरी करनी है.
depset; डिफ़ॉल्ट रूप से []
होता है उन डायरेक्ट्री का डेपसेट जहां लिंक करने के समय लिंकर, लाइब्रेरी खोजेगा.
depset; डिफ़ॉल्ट रूप से []
होता है उन डायरेक्ट्री का डेपसेट जहां लोडर, रनटाइम के दौरान लाइब्रेरी खोजेगा.
sequence; डिफ़ॉल्ट तौर पर []
होता है अन्य लिंक फ़्लैग (linkopts) की सूची.
डिफ़ॉल्ट None
आउटपुट फ़ाइल का पाथ. यह वैकल्पिक है.
यह डिफ़ॉल्ट पैरामीटर है None
वैकल्पिक पैरामीटर फ़ाइल पाथ.
bool; डिफ़ॉल्ट रूप से True
पर सेट होती है लिंकर का इस्तेमाल करने पर 'सही' और संग्रहक का इस्तेमाल करने पर 'गलत'. कॉलर को इस बात का ध्यान रखना होगा कि यह इस्तेमाल किए गए ऐक्शन के नाम के साथ सिंक हो. इसकी वजह यह है कि इसकी मदद से, एक्सीक्यूटेबल या डाइनैमिक लाइब्रेरी को लिंक करने के लिए is_using_linker = True और स्टैटिक लाइब्रेरी को संग्रहित करने के लिए is_using_linker = False का इस्तेमाल किया जाता है.
bool; डिफ़ॉल्ट तौर पर False
होता है डाइनैमिक लाइब्रेरी बनाते समय True और एक्सीक्यूटेबल या स्टैटिक लाइब्रेरी बनाते समय False. कॉलर की ज़िम्मेदारी है कि वह इसे इस्तेमाल किए गए ऐक्शन के नाम के साथ सिंक रखे. b/65151735 को ठीक करने के बाद, इस फ़ील्ड को हटा दिया जाएगा.
bool; डिफ़ॉल्ट रूप से True है
'गलत' पर सेट होने पर, बैजल 'strip_debug_simbols' वैरिएबल दिखाया जाता है. आम तौर पर, इसका इस्तेमाल लिंकर का इस्तेमाल करके आउटपुट फ़ाइल से डीबग सिंबल को हटाने के लिए किया जाता है.
bool; डिफ़ॉल्ट तौर पर False
होता है इसे 'सही है' पर सेट करने पर, 'is_cc_test' वैरिएबल सेट हो जाएगा.
bool; डिफ़ॉल्ट रूप से True
इस्तेमाल नहीं किया गया है.

create_linker_input

LinkerInput cc_common.create_linker_input(owner, libraries=None, user_link_flags=None, additional_inputs=None)

LinkerInput बनाता है.

पैरामीटर

पैरामीटर ब्यौरा
owner लेबल; ज़रूरी है
उस टारगेट का लेबल जिसने इस इनपुट में इस्तेमाल की गई सभी फ़ाइलें जनरेट की हैं.
libraries None; या depset; डिफ़ॉल्ट None
LibraryToLink की सूची है.
None; या स्ट्रिंग का डेपसेट; या स्ट्रिंग का सीक्वेंस; डिफ़ॉल्ट तौर पर None
उपयोगकर्ता लिंक के फ़्लैग, स्ट्रिंग के तौर पर पास किए जाते हैं. [String], [[String]] या depset(String) को स्वीकार करता है. हम इस तरीके का सुझाव नहीं देते, क्योंकि इसे सिर्फ़ काम करने के मकसद से रखा जाता है. इसमें डिप्सेट को फ़्लैट कर दिया जाता है. अगर आपको unflattened depsets() के ज़रिए user_link_flags को प्रॉपेगेट करना है, तो उन्हें LinkerInput में लपेटें, ताकि वे आखिर तक फ़्लैट न हों.
additional_inputs None या depset; डिफ़ॉल्ट तौर पर None
लिंक करने की कार्रवाई के लिए अन्य इनपुट के लिए, जैसे कि लिंक करने वाली स्क्रिप्ट.

create_linking_context

LinkingContext cc_common.create_linking_context(linker_inputs=None, libraries_to_link=None, user_link_flags=None, additional_inputs=None)

यह LinkingContext का इस्तेमाल करता है.

पैरामीटर

पैरामीटर ब्यौरा
linker_inputs None या depset; डिफ़ॉल्ट तौर पर None
होता है यह LinkerInput का Depset है.
None; या क्रम; डिफ़ॉल्ट रूप से None
अब काम नहीं करता है. यह पैरामीटर अब काम नहीं करता. इसे जल्द ही हटा दिया जाएगा. कृपया इस पर निर्भर न रहें. --incompatible_require_linker_input_cc_api के साथ, यह बंद है. इस फ़्लैग का इस्तेमाल करके पुष्टि करें कि आपका कोड, जल्द ही हटाए जाने वाले वर्शन के साथ काम करता है.
LibraryToLink की सूची.
None या sequence; डिफ़ॉल्ट None
है अब काम नहीं करता. इस पैरामीटर के इस्तेमाल पर रोक लगा दी गई है और इसे जल्द ही हटा दिया जाएगा. कृपया इस पर भरोसा न करें. यह --incompatible_require_linker_input_cc_api के साथ बंद है. इस फ़्लैग का इस्तेमाल करके, पुष्टि करें कि आपका कोड जल्द ही हटाए जाने के साथ काम करता है.
उपयोगकर्ता लिंक के फ़्लैग की सूची, जिसे स्ट्रिंग के तौर पर पास किया जाता है.
additional_inputs None या sequence; डिफ़ॉल्ट None
है अब काम नहीं करता. यह पैरामीटर अब काम नहीं करता. इसे जल्द ही हटा दिया जाएगा. कृपया इस पर भरोसा न करें. यह --incompatible_require_linker_input_cc_api के साथ बंद है. इस फ़्लैग का इस्तेमाल करके पुष्टि करें कि आपका कोड, जल्द ही हटाए जाने वाले वर्शन के साथ काम करता है.
लिंक करने की कार्रवाई के लिए अतिरिक्त इनपुट के लिए, जैसे: लिंक करने वाली स्क्रिप्ट.

create_linking_context_from_compilation_outputs

tuple cc_common.create_linking_context_from_compilation_outputs(actions, name, feature_configuration, cc_toolchain, language='c++', disallow_static_libraries=False, disallow_dynamic_library=False, compilation_outputs, linking_contexts=[], user_link_flags=[], alwayslink=False, additional_inputs=[], variables_extension=unbound)

इसका इस्तेमाल लाइब्रेरी के ऐसे नियम बनाने के लिए किया जाना चाहिए जो जानकारी को डाउनस्ट्रीम में भेज सकें, ताकि बाद में उसे किसी टॉप लेवल के नियम से लिंक किया जा सके. यह नियम, किसी एक्सीक्यूटेबल या डाइनैमिक लाइब्रेरी बनाने के लिए, ट्रांज़िशन लिंकिंग करता है. (CcLinkingContext, CcLinkingOutputs) ट्यूपल दिखाता है.

पैरामीटर

पैरामीटर ब्यौरा
actions actions; ज़रूरी
actions ऑब्जेक्ट.
name स्ट्रिंग; ज़रूरी है
इसका इस्तेमाल, इस तरीके से बनाई गई कार्रवाइयों के आउटपुट आर्टफ़ैक्ट के नाम देने के लिए किया जाता है.
feature_configuration FeatureConfiguration; पूछे जाने के लिए
feature_configuration ज़रूरी है.
cc_toolchain जानकारी;
CcToolchainInfo के लिए ज़रूरी है.
language string; डिफ़ॉल्ट वैल्यू 'c++' है
फ़िलहाल, सिर्फ़ C++ का इस्तेमाल किया जा सकता है. इस पैरामीटर का इस्तेमाल न करें.
disallow_static_libraries bool; डिफ़ॉल्ट रूप से यह False पर सेट होती है
क्या स्टैटिक लाइब्रेरी बनाई जानी चाहिए.
disallow_dynamic_library bool; डिफ़ॉल्ट रूप से False
होता है क्या डाइनैमिक लाइब्रेरी बनाई जानी चाहिए.
compilation_outputs CcCompilationOutputs; ज़रूरी
कंपाइलेशन आउटपुट, जिनमें लिंक करने के लिए ऑब्जेक्ट फ़ाइलें शामिल हैं.
linking_contexts sequence; डिफ़ॉल्ट रूप से []
होता है डिपेंडेंसी से लाइब्रेरी. इन लाइब्रेरी को link() कॉल के आउटपुट आर्टफ़ैक्ट में लिंक किया जाएगा. भले ही, वह बाइनरी हो या लाइब्रेरी.
sequence; डिफ़ॉल्ट तौर पर []
होता है लिंक करने के विकल्पों की अतिरिक्त सूची.
bool; डिफ़ॉल्ट रूप से False
पर सेट होता है क्या इस लाइब्रेरी को हमेशा लिंक किया जाना चाहिए.
additional_inputs क्रम; []
लिंक करने की कार्रवाई के लिए ज़्यादा इनपुट के लिए डिफ़ॉल्ट वैल्यू है, जैसे कि स्क्रिप्ट लिंक करना.
variables_extension dict; डिफ़ॉल्ट unbound
लिंक कमांड लाइन बनाते समय, टूलचेन कॉन्फ़िगरेशन को पास करने के लिए अन्य वैरिएबल.

create_lto_compilation_context

LtoCompilationContext cc_common.create_lto_compilation_context(objects={})

LTO कंपाइलेशन कॉन्टेक्स्ट बनाना

पैरामीटर

पैरामीटर ब्यौरा
objects dict; डिफ़ॉल्ट {}
है पूरे ऑब्जेक्ट को इंडेक्स ऑब्जेक्ट में मैप करना

do_not_use_tools_cpp_compiler_present

None cc_common.do_not_use_tools_cpp_compiler_present

इस फ़ील्ड का इस्तेमाल न करें. इसका मकसद सिर्फ़ config_setting.values{'compiler') से config_settings.flag_values{'@bazu_tools//tools/cpp:compiler'} पर माइग्रेट करने में मदद करना है

get_environment_variables

dict cc_common.get_environment_variables(feature_configuration, action_name, variables)

किसी कार्रवाई के लिए सेट किए जाने वाले एनवायरमेंट वैरिएबल दिखाता है.

पैरामीटर

पैरामीटर ब्यौरा
feature_configuration FeatureConfiguration; ज़रूरी
सुविधा के कॉन्फ़िगरेशन के बारे में क्वेरी की जानी है.
action_name string; ज़रूरी है
कार्रवाई का नाम. यह नाम, @bazel_tools//tools/build_defs/cc:action_names.bzl (https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl) में मौजूद नामों में से कोई एक होना चाहिए
variables वैरिएबल; ज़रूरी है
टेंप्लेट एक्सपैंशन के लिए इस्तेमाल किए जाने वाले वैरिएबल बनाएं.

get_execution_requirements

sequence cc_common.get_execution_requirements(feature_configuration, action_name)

दी गई कार्रवाई के लिए, एक्ज़ीक्यूशन की ज़रूरी शर्तें दिखाता है.

पैरामीटर

पैरामीटर ब्यौरा
feature_configuration FeatureConfiguration; ज़रूरी
सुविधा के कॉन्फ़िगरेशन के बारे में क्वेरी की जानी है.
action_name string; required
कार्रवाई का नाम. यह नाम, @bazel_tools//tools/build_defs/cc:action_names.bzl (https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl) में मौजूद नामों में से कोई एक होना चाहिए

get_memory_inefficient_command_line

sequence cc_common.get_memory_inefficient_command_line(feature_configuration, action_name, variables)

किसी दी गई कार्रवाई के लिए, फ़्लैट किए गए कमांड-लाइन फ़्लैग दिखाता है. इसके लिए, एक्सपैंशन के लिए दिए गए वैरिएबल का इस्तेमाल किया जाता है. नेस्ट किए गए फ़्लैट सेट का इस्तेमाल न करें या कम से कम आउटलाइव विश्लेषण न करें. कम मेमोरी में काम करने वाले ऐसे फ़ंक्शन पर काम चल रहा है जो आर्ग्युमेंट दिखाता है.

पैरामीटर

पैरामीटर ब्यौरा
feature_configuration FeatureConfiguration; ज़रूरी
सुविधा के कॉन्फ़िगरेशन के बारे में क्वेरी की जानी है.
action_name string; required
कार्रवाई का नाम. यह नाम, @bazel_tools//tools/build_defs/cc:action_names.bzl (https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl) में मौजूद नामों में से कोई एक होना चाहिए
variables वैरिएबल; ज़रूरी है
टेंप्लेट एक्सपैंशन के लिए इस्तेमाल किए जाने वाले वैरिएबल बनाएं.

get_tool_for_action

string cc_common.get_tool_for_action(feature_configuration, action_name)

दी गई कार्रवाई के लिए टूल पाथ दिखाता है.

पैरामीटर

पैरामीटर ब्यौरा
feature_configuration FeatureConfiguration; ज़रूरी
सुविधा के कॉन्फ़िगरेशन के बारे में क्वेरी की जानी है.
action_name string; required
कार्रवाई का नाम. यह नाम, @bazel_tools//tools/build_defs/cc:action_names.bzl (https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl) में मौजूद नामों में से कोई एक होना चाहिए

is_enabled

bool cc_common.is_enabled(feature_configuration, feature_name)

अगर सुविधा के कॉन्फ़िगरेशन में दी गई सुविधा चालू है, तो True दिखाता है.

पैरामीटर

पैरामीटर ब्यौरा
feature_configuration FeatureConfiguration; ज़रूरी
सुविधा के कॉन्फ़िगरेशन के बारे में क्वेरी की जानी है.
feature_name string; ज़रूरी है
सुविधा का नाम.

CcLinkingOutputs cc_common.link(actions, name, feature_configuration, cc_toolchain, language='c++', output_type='executable', link_deps_statically=True, compilation_outputs=None, linking_contexts=[], user_link_flags=[], stamp=0, additional_inputs=[], additional_outputs=[], variables_extension={})

इसका इस्तेमाल C++ ट्रांज़िटिव लिंकिंग के लिए किया जाना चाहिए.

पैरामीटर

पैरामीटर ब्यौरा
actions actions; ज़रूरी
actions ऑब्जेक्ट.
name string; ज़रूरी है
इसका इस्तेमाल, इस तरीके से बनाई गई कार्रवाइयों के आउटपुट आर्टफ़ैक्ट को नाम देने के लिए किया जाता है.
feature_configuration FeatureConfiguration; पूछे जाने के लिए
feature_configuration ज़रूरी है.
cc_toolchain जानकारी; ज़रूरी है
CcToolchainInfo प्रोवाइडर का इस्तेमाल करना है.
language string; डिफ़ॉल्ट 'c++'
है फ़िलहाल, सिर्फ़ C++ के साथ काम करता है. इस पैरामीटर का इस्तेमाल न करें.
output_type string; डिफ़ॉल्ट तौर पर 'executable'
होता है यह 'executable' या 'dynamic_library' हो सकता है.
bool; डिफ़ॉल्ट तौर पर, यह True
पर सेट होती है स्टैटिक तौर पर डिपेंडेंसी लिंक करने के लिए 'सही' और डाइनैमिक तौर पर लिंक करने के लिए 'गलत'.
compilation_outputs CcCompilationOutputs या None; डिफ़ॉल्ट रूप से None
कंपाइलेशन आउटपुट होता है, जिसमें लिंक की जाने वाली ऑब्जेक्ट फ़ाइलें होती हैं.
linking_contexts sequence; डिफ़ॉल्ट तौर पर []
होता है इस नियम से जनरेट किए गए लिंकिंग कॉन्टेक्स्ट में लिंक करने के लिए, डिपेंडेंसी से कॉन्टेक्स्ट लिंक करना.
sequence; डिफ़ॉल्ट []
है लिंकर के विकल्पों की अतिरिक्त सूची.
stamp int; डिफ़ॉल्ट रूप से 0
होता है अगर output_type 'executable' है, तो लिंक किए गए एक्सीक्यूटेबल में बिल्ड की जानकारी शामिल करनी है या नहीं. अगर 1 है, तो बिल्ड की जानकारी हमेशा शामिल की जाती है. अगर 0 है, तो डिफ़ॉल्ट बिल्ड की जानकारी को हमेशा बाहर रखा जाता है. अगर -1 है, तो डिफ़ॉल्ट तरीके का इस्तेमाल किया जाता है. इसे --[no]stamp फ़्लैग से बदला जा सकता है. टेस्ट नियमों के लिए, लागू किए जा सकने वाले आउटपुट जनरेट करते समय, इसे अनसेट (या 0 पर सेट) किया जाना चाहिए.
additional_inputs sequence या depset; डिफ़ॉल्ट तौर पर []
होता है लिंक करने की कार्रवाई के लिए अतिरिक्त इनपुट के लिए, जैसे कि लिंक करने वाली स्क्रिप्ट.
additional_outputs क्रम; लिंक करने की कार्रवाई के अतिरिक्त आउटपुट के लिए, []
डिफ़ॉल्ट तौर पर सेट है, जैसे कि मैप फ़ाइलें.
variables_extension dict; डिफ़ॉल्ट {}
है लिंक कमांड लाइन बनाते समय, टूलचेन कॉन्फ़िगरेशन को पास करने के लिए अतिरिक्त वैरिएबल.

merge_compilation_contexts

CompilationContext cc_common.merge_compilation_contexts(compilation_contexts=[])

एक से ज़्यादा CompilationContexts को एक में मर्ज करता है.

पैरामीटर

पैरामीटर ब्यौरा
compilation_contexts क्रम; डिफ़ॉल्ट तौर पर, []
CompilationContexts की सूची को मर्ज किया जाता है. हर कॉन्टेक्स्ट के हेडर को, लौटाए गए प्रोवाइडर के डायरेक्ट फ़ील्ड से एक्सपोर्ट किया जाएगा.

merge_compilation_outputs

CcCompilationOutputs cc_common.merge_compilation_outputs(compilation_outputs=[])

कंपाइलेशन के आउटपुट मर्ज करें.

पैरामीटर

पैरामीटर ब्यौरा
compilation_outputs sequence; डिफ़ॉल्ट []
है