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 actions; ज़रूरी
actions ऑब्जेक्ट.
feature_configuration FeatureConfiguration;
के लिए ज़रूरी है feature_configuration पर क्वेरी की जा सकती है.
cc_toolchain जानकारी;
CcToolchainInfo की सेवा इस्तेमाल करने के लिए ज़रूरी है.
srcs sequence; डिफ़ॉल्ट []
है उन सोर्स फ़ाइलों की सूची जिन्हें कंपाइल करना है.
public_hdrs sequence; डिफ़ॉल्ट तौर पर []
होता है srcs को कंपाइल करने के लिए ज़रूरी हेडर की सूची. साथ ही, इन हेडर को ट्रांज़िशन के हिसाब से, डिपेंडेंट नियमों में शामिल किया जा सकता है.
private_hdrs sequence; डिफ़ॉल्ट तौर पर []
होता है srcs को कंपाइल करने के लिए ज़रूरी हेडर की सूची. इसे, डिपेंडेंट नियमों में शामिल नहीं किया जाना चाहिए.
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; डिफ़ॉल्ट तौर पर, यह []
होता है इस टारगेट को कंपाइल करने के लिए, ज़रूरी डेफ़ाइन का सेट. हर define एक स्ट्रिंग होती है. यह ट्रांज़िटिव तरीके से, डिपेंडेंट वैरिएबल में लागू होता है.
local_defines sequence; डिफ़ॉल्ट तौर पर, यह []
होता है इस टारगेट को कंपाइल करने के लिए, ज़रूरी डेफ़ाइन का सेट. हर define एक स्ट्रिंग होती है. यह ट्रांज़िटिव तरीके से, डिपेंडेंट के लिए लागू नहीं होता.
include_prefix स्ट्रिंग; डिफ़ॉल्ट तौर पर ''
होता है इस नियम के हेडर के पाथ में जोड़ने के लिए प्रीफ़िक्स. सेट होने पर, इस नियम के hdrs एट्रिब्यूट में मौजूद हेडर को इस एट्रिब्यूट की वैल्यू पर ऐक्सेस किया जा सकता है. यह वैल्यू, उनके रिपॉज़िटरी-रिलेटिव पाथ के आगे जोड़ी जाती है. इस प्रीफ़िक्स को जोड़ने से पहले, strip_include_prefix एट्रिब्यूट में मौजूद प्रीफ़िक्स हटा दिया जाता है.
strip_include_prefix स्ट्रिंग; डिफ़ॉल्ट रूप से ''
होता है इस नियम के हेडर के पाथ से हटाने के लिए प्रीफ़िक्स. सेट होने पर, इस नियम के hdrs एट्रिब्यूट में मौजूद हेडर को उनके पाथ पर ऐक्सेस किया जा सकता है. हालांकि, इस पाथ से प्रीफ़िक्स हटा दिया जाता है. अगर यह रिलेटिव पाथ है, तो इसे पैकेज के हिसाब से रिलेटिव पाथ माना जाता है. अगर यह ऐब्सलूट पाथ है, तो इसे रिपॉज़िटरी से रिलेटिव पाथ माना जाता है. इस प्रीफ़िक्स को हटाने के बाद, include_prefix एट्रिब्यूट में प्रीफ़िक्स जोड़ा जाता है.
user_compile_flags sequence; डिफ़ॉल्ट []
है कंपाइल करने के विकल्पों की अन्य सूची.
conly_flags sequence; डिफ़ॉल्ट []
है C कंपाइल के लिए, कंपाइल करने के विकल्पों की अतिरिक्त सूची.
cxx_flags sequence; डिफ़ॉल्ट तौर पर []
होता है C++ कंपाइल करने के लिए, कंपाइल करने के विकल्पों की अतिरिक्त सूची.
compilation_contexts sequence; डिफ़ॉल्ट तौर पर []
होता है कंपाइलेशन के लिए इस्तेमाल की जाने वाली डिपेंडेंसी के हेडर.
name स्ट्रिंग; ज़रूरी है
इसका इस्तेमाल, इस तरीके से बनाई गई कार्रवाइयों के आउटपुट आर्टफ़ैक्ट के नाम देने के लिए किया जाता है. `main_output` आर्ग्युमेंट भी देखें.
disallow_pic_outputs bool; डिफ़ॉल्ट रूप से False
पर सेट होता है यह तय करता है कि पीआईसी आउटपुट बनाने हैं या नहीं.
disallow_nopic_outputs bool; डिफ़ॉल्ट तौर पर, यह False
होता है यह तय करता है कि NOPIC आउटपुट बनाने हैं या नहीं.
additional_inputs sequence; डिफ़ॉल्ट तौर पर []
होता है srcs को कंपाइल करने के लिए ज़रूरी अतिरिक्त फ़ाइलों की सूची
module_interfaces sequence; डिफ़ॉल्ट unbound
है उन मॉड्यूल इंटरफ़ेस सोर्स फ़ाइलों की सूची जिन्हें कंपाइल करना है. ध्यान दें: यह सुविधा एक्सपेरिमेंट के तौर पर उपलब्ध है. इसे सिर्फ़ --experimental_cpp_modules के साथ चालू किया जा सकता है

configure_features

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

feature_configuration इंस्टेंस बनाता है. इसके लिए, 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 sequence; डिफ़ॉल्ट रूप से []
होता है इसमें किसी सुविधा के लिए, फ़्लैग की सभी खास बातें शामिल होती हैं.

तर्क:

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

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

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

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

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

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

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

किसी सुविधा को तब चालू नहीं किया जा सकता, जब:
- 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 एट्रिब्यूट की जानकारी देनी चाहिए, ताकि blaze सही बदलाव कर सके.

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/bazelbuild/rules_cc/blob/main/cc/compiler/BUILD में select() स्टेटमेंट में 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 sequence; डिफ़ॉल्ट तौर पर []
होता है टूल की जगहें.

तर्क:

name: टूल का नाम.

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

make_variables sequence; डिफ़ॉल्ट तौर पर []
होता है यह एक ऐसा मेक वैरिएबल है जिसे नियमों के लिए ऐक्सेस किया जा सकता है.
builtin_sysroot string या None; डिफ़ॉल्ट तौर पर None
पहले से मौजूद sysroot. अगर यह एट्रिब्यूट मौजूद नहीं है, तो Bazel किसी दूसरे sysroot का इस्तेमाल करने की अनुमति नहीं देता. जैसे, --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
होता है अगर इसे 'गलत है' पर सेट किया जाता है, तो bazel 'strip_debug_symbols' वैरिएबल को एक्सपोज़ करेगा. आम तौर पर, इसका इस्तेमाल आउटपुट फ़ाइल से डीबग सिंबल हटाने के लिए, लिंकर का इस्तेमाल करने के लिए किया जाता है.
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 या sequence; डिफ़ॉल्ट 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 sequence; डिफ़ॉल्ट तौर पर []
होता है लिंक करने की कार्रवाई के लिए अतिरिक्त इनपुट के लिए, जैसे कि लिंक करने वाली स्क्रिप्ट.
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{'@bazel_tools//tools/cpp:compiler'} पर माइग्रेट करने में मदद करना है

get_environment_variables

dict cc_common.get_environment_variables(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_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 स्ट्रिंग; ज़रूरी है
इसका इस्तेमाल, इस तरीके से बनाई गई कार्रवाइयों के आउटपुट आर्टफ़ैक्ट के नाम देने के लिए किया जाता है.
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 sequence; डिफ़ॉल्ट तौर पर []
होता है लिंक करने की कार्रवाई के लिए अन्य आउटपुट के लिए, जैसे कि मैप फ़ाइलें.
variables_extension dict; डिफ़ॉल्ट {}
है लिंक कमांड लाइन बनाते समय, टूलचेन कॉन्फ़िगरेशन को पास करने के लिए अन्य वैरिएबल.

merge_compilation_contexts

CompilationContext cc_common.merge_compilation_contexts(compilation_contexts=[])

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

पैरामीटर

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

merge_compilation_outputs

CcCompilationOutputs cc_common.merge_compilation_outputs(compilation_outputs=[])

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

पैरामीटर

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