सदस्य
- apple_host_system_env
- apple_toolchain
- AppleDebugOutputs
- AppleDynamicFramework
- AppleExecutableBinary
- dotted_version
- link_multi_arch_binary
- link_multi_arch_static_library
- multi_arch_split
- new_dynamic_framework_provider
- new_executable_binary_provider
- new_objc_provider
- Objc
- प्लैटफ़ॉर्म
- platform_type
- target_apple_env
- XcodeProperties
- XcodeVersionConfig
apple_host_system_env
dict apple_common.apple_host_system_env(xcode_config)यह एनवायरमेंट वैरिएबल का एक डिक्ट दिखाता है, जिसे उन कार्रवाइयों के लिए सेट किया जाना चाहिए जिन्हें Apple होस्ट सिस्टम पर बिल्ड टूल चलाने की ज़रूरत होती है. जैसे, Xcode का वह वर्शन जिसका इस्तेमाल किया जाना चाहिए. कुंजियां वेरिएबल के नाम होती हैं और वैल्यू, वेरिएबल की वैल्यू होती हैं.
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
xcode_config
|
ज़रूरी है यह एक ऐसी कंपनी है जिसमें Xcode कॉन्फ़िगरेशन की जानकारी होती है. |
apple_toolchain
apple_toolchain apple_common.apple_toolchain()Apple टूलचेन से आइटम हल करने के लिए उपयोगी टूल.
AppleDebugOutputs
Provider apple_common.AppleDebugOutputs
AppleDebugOutputs
प्रोवाइडर के लिए कंस्ट्रक्टर/की.अगर कोई टारगेट, AppleDebugOutputs
की सेवा देने वाली कंपनी को प्रॉपेगेट करता है, तो इसे उस कुंजी के तौर पर इस्तेमाल करें जिससे इसे वापस पाया जा सके. उदाहरण:
dep = ctx.attr.deps[0] p = dep[apple_common.AppleDebugOutputs]
AppleDynamicFramework
Provider apple_common.AppleDynamicFramework
AppleDynamicFramework
की सेवा देने वाली कंपनी का कंस्ट्रक्टर/कुंजी.अगर कोई टारगेट, AppleDynamicFramework
की सेवा देने वाली कंपनी को प्रॉपेगेट करता है, तो इसे उस कुंजी के तौर पर इस्तेमाल करें जिससे इसे वापस पाया जा सके. उदाहरण:
dep = ctx.attr.deps[0] p = dep[apple_common.AppleDynamicFramework]
AppleExecutableBinary
Provider apple_common.AppleExecutableBinary
AppleExecutableBinary
की सेवा देने वाली कंपनी का कंस्ट्रक्टर/कुंजी.अगर कोई टारगेट, AppleExecutableBinary
की सेवा देने वाली कंपनी को प्रॉपेगेट करता है, तो इसे उस कुंजी के तौर पर इस्तेमाल करें जिससे इसे वापस पाया जा सके. उदाहरण:
dep = ctx.attr.deps[0] p = dep[apple_common.AppleExecutableBinary]
dotted_version
DottedVersion apple_common.dotted_version(version)एक नया DottedVersion इंस्टेंस बनाता है.
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
version
|
ज़रूरी है DottedVersion की स्ट्रिंग के तौर पर. |
link_multi_arch_binary
struct apple_common.link_multi_arch_binary(ctx, avoid_deps=None, extra_linkopts=[], extra_link_inputs=[], stamp=-1)Apple के प्लैटफ़ॉर्म को टारगेट करने वाले बाइनरी को लिंक करता है. यह बाइनरी, कई आर्किटेक्चर में हो सकती है. इस तरीके में, rules_apple डोमेन में Starlark
apple_binary
नियम का ज़्यादातर लॉजिक शामिल होता है. यह rules_apple में, लिंकिंग लॉजिक को Starlark में माइग्रेट करने में मदद करने के लिए मौजूद है.
इस एपीआई को बहुत ज़्यादा प्रयोग के तौर पर बनाया गया है और इसमें किसी भी समय बदलाव किया जा सकता है. फ़िलहाल, इस फ़ंक्शन के सही तरीके से काम करने पर भरोसा न करें.
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
ctx
|
ज़रूरी है Starlark नियम का कॉन्टेक्स्ट. |
avoid_deps
|
sequence of Targets; or None ;
default = Noneउन Target की सूची जो बाइनरी के डिपेंडेंसी ग्राफ़ में मौजूद हैं, लेकिन जिनकी लाइब्रेरी को बाइनरी से लिंक नहीं किया जाना चाहिए. ऐसा उन डिपेंडेंसी के लिए होता है जो किसी दूसरी इमेज में रनटाइम के दौरान मिलती हैं. जैसे, बंडल लोडर या ऐसी कोई डाइनैमिक लाइब्रेरी/फ़्रेमवर्क जो इस बाइनरी से लोड की जाएगी.
|
extra_linkopts
|
sequence of strings ;
default = []लिंक करने वाली कार्रवाई में पास किए जाने वाले अतिरिक्त लिंकऑप्ट. |
extra_link_inputs
|
sequence of Files ;
default = []लिंकर ऐक्शन को पास करने के लिए अतिरिक्त फ़ाइलें. |
stamp
|
डिफ़ॉल्ट = -1 लिंक की गई बाइनरी में बिल्ड की जानकारी शामिल करनी है या नहीं. अगर 1 है, तो बिल्ड की जानकारी हमेशा शामिल की जाती है. अगर 0 है, तो बिल्ड की जानकारी हमेशा बाहर रखी जाती है. अगर -1 (डिफ़ॉल्ट) है, तो व्यवहार --[no]स्टैंप फ़्लैग की मदद से तय होता है. टेस्ट नियमों के लिए, लागू किए जा सकने वाले आउटपुट जनरेट करते समय, इसे 0 पर सेट किया जाना चाहिए. |
link_multi_arch_static_library
struct apple_common.link_multi_arch_static_library(ctx)Apple प्लैटफ़ॉर्म को टारगेट करने वाली, संभावित तौर पर कई आर्किटेक्चर वाली स्टैटिक लाइब्रेरी को लिंक करता है. इस तरीके में, rules_apple डोमेन में Starlark
apple_static_library
नियम लॉजिक का एक हिस्सा शामिल होता है. यह rules_apple में, लिंकिंग लॉजिक को Starlark में माइग्रेट करने में मदद करने के लिए मौजूद है.
यह एपीआई पूरी तरह से एक्सपेरिमेंट के तौर पर उपलब्ध है और इसमें कभी भी बदलाव किया जा सकता है. फ़िलहाल, इस सुविधा के सही तरीके से काम करने पर भरोसा न करें.
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
ctx
|
ज़रूरी है Starlark नियम का कॉन्टेक्स्ट. |
multi_arch_split
SplitTransitionProviderApi apple_common.multi_arch_splitएक या एक से ज़्यादा Apple प्लैटफ़ॉर्म में डिपेंडेंसी बनाने के लिए, नियम एट्रिब्यूट के लिए कॉन्फ़िगरेशन ट्रांज़िशन.
इस ट्रांज़िशन का इस्तेमाल करने के लिए, 'platform_type' और 'minimum_os_version' स्ट्रिंग एट्रिब्यूट की वैल्यू तय होनी चाहिए. साथ ही, ये एट्रिब्यूट नियम के लिए ज़रूरी हैं.
Platform_type एट्रिब्यूट की वैल्यू, उस टारगेट आर्किटेक्चर को तय करेगी जिसके लिए इस कॉन्फ़िगरेशन ट्रांज़िशन के साथ डिपेंडेंसी बनाई जाएगी.
इसके विकल्प:
ios
:--ios_multi_cpus
से इकट्ठा की गई आर्किटेक्चर की जानकारी.macos
:--macos_cpus
से इकट्ठा किए गए आर्किटेक्चर.tvos
:--tvos_cpus
से इकट्ठा किए गए आर्किटेक्चर.watchos
:--watchos_cpus
से इकट्ठा की गई आर्किटेक्चर की जानकारी.
minimum_os_version, बिंदु वाली वर्शन स्ट्रिंग होनी चाहिए, जैसे कि '7.3'. इसका इस्तेमाल, प्लैटफ़ॉर्म टाइप के आधार पर कॉन्फ़िगरेशन पर, ऑपरेटिंग सिस्टम का कम से कम वर्शन सेट करने के लिए किया जाता है. उदाहरण के लिए, platform_type 'ios' और minimum_os_version '8.0' की वैल्यू सबमिट करने से यह पक्का होगा कि डिपेंडेंसी, iOS के कम से कम '8.0' वर्शन के साथ काम करेंगी.
new_dynamic_framework_provider
AppleDynamicFramework apple_common.new_dynamic_framework_provider(binary=None, cc_info=None, objc, framework_dirs=None, framework_files=None)नया Apple DynamicFramework प्रोवाइडर का इंस्टेंस बनाता है.
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
binary
|
File; or None ;
डिफ़ॉल्ट = Noneडाइनैमिक फ़्रेमवर्क का dylib बाइनरी आर्टफ़ैक्ट. |
cc_info
|
डिफ़ॉल्ट = None एक CcInfo, जिसमें बाइनरी से जुड़ी ट्रांज़िशन डिपेंडेंसी की जानकारी होती है. |
objc
|
ज़रूरी है एक ObjcProvider, जिसमें बाइनरी से लिंक की गई ट्रांज़िशन डिपेंडेंसी के बारे में जानकारी होती है. |
framework_dirs
|
depset of strings; or None ;
डिफ़ॉल्ट = कोई नहींफ़्रेमवर्क के पाथ के नाम, जो डाइनैमिक फ़्रेमवर्क से लिंक करने के लिए, लिंक इनपुट के तौर पर इस्तेमाल किए जाते हैं. |
framework_files
|
depset of Files; or None ;
डिफ़ॉल्ट = कोई नहींआर्टफ़ैक्ट का पूरा सेट, जिसे डाइनैमिक फ़्रेमवर्क से लिंक करने के लिए, इनपुट के तौर पर शामिल किया जाना चाहिए |
new_executable_binary_provider
AppleExecutableBinary apple_common.new_executable_binary_provider(binary=None, cc_info=None, objc)AppleExecutableBinaryInfo प्रोवाइडर का नया इंस्टेंस बनाता है.
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
binary
|
File; or None ;
डिफ़ॉल्ट = कोई नहींएक्ज़ीक्यूटेबल का बाइनरी आर्टफ़ैक्ट. |
cc_info
|
डिफ़ॉल्ट = None एक CcInfo, जिसमें बाइनरी से जुड़ी ट्रांज़िशन डिपेंडेंसी की जानकारी होती है. |
objc
|
ज़रूरी है एक ObjcProvider, जिसमें बाइनरी से लिंक की गई ट्रांज़िशन डिपेंडेंसी के बारे में जानकारी होती है. |
new_objc_provider
ObjcProvider apple_common.new_objc_provider(**kwargs)नया ObjcProvider इंस्टेंस बनाता है.
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
kwargs
|
default = {} आर्ग्युमेंट की डिक्शनरी. |
Objc
Provider apple_common.Objc
Objc
की सेवा देने वाली कंपनी का कंस्ट्रक्टर/कुंजी.अगर कोई टारगेट, Objc
की सेवा देने वाली कंपनी को प्रॉपेगेट करता है, तो इसे उस कुंजी के तौर पर इस्तेमाल करें जिससे इसे वापस पाया जा सके. उदाहरण:
dep = ctx.attr.deps[0] p = dep[apple_common.Objc]
प्लैटफ़ॉर्म
struct apple_common.platformयह एक ऐसा स्ट्रक्चर है जो Apple प्लैटफ़ॉर्म से जुड़े इन फ़ील्ड को शामिल करता है:
ios_device
ios_simulator
macos
tvos_device
tvos_simulator
watchos_device
watchos_simulator
इन वैल्यू को उन तरीकों में पास किया जा सकता है जिनमें प्लैटफ़ॉर्म की ज़रूरत होती है, जैसे कि XcodeVersionConfig.sdk_version_for_platform.
platform_type
struct apple_common.platform_typeईनम जैसा स्ट्रक्चर, जिसमें Apple प्लैटफ़ॉर्म टाइप के नीचे दिए गए फ़ील्ड शामिल होते हैं:
ios
macos
tvos
watchos
ये वैल्यू, प्लैटफ़ॉर्म टाइप का इस्तेमाल करने वाले तरीकों को भेजी जा सकती हैं. जैसे, 'apple' कॉन्फ़िगरेशन फ़्रैगमेंट का multi_arch_platform तरीका.
उदाहरण:
ctx.fragments.apple.multi_arch_platform(apple_common.platform_type.ios)
target_apple_env
dict apple_common.target_apple_env(xcode_config, platform)यह ऐसे एनवायरमेंट वैरिएबल का
dict
दिखाता है जिन्हें उन ऐक्शन के लिए सेट किया जाना चाहिए जो दिए गए Apple प्लैटफ़ॉर्म टाइप के टारगेट बनाते हैं. उदाहरण के लिए, इस डिक्शनरी में ऐसे वैरिएबल होते हैं जो प्लैटफ़ॉर्म का नाम और SDK टूल के उस वर्शन की जानकारी देते हैं जिसका इस्तेमाल करके ऐप्लिकेशन बनाया जाना है. कुंजियां वेरिएबल के नाम होती हैं और वैल्यू उनकी संबंधित वैल्यू होती हैं.
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
xcode_config
|
ज़रूरी है यह एक ऐसी कंपनी है जिसमें Xcode कॉन्फ़िगरेशन की जानकारी होती है. |
platform
|
ज़रूरी है Apple प्लैटफ़ॉर्म. |
XcodeProperties
Provider apple_common.XcodeProperties
XcodeVersionProperties
की सेवा देने वाली कंपनी का कंस्ट्रक्टर/कुंजी.अगर कोई टारगेट, XcodeVersionProperties
की सेवा देने वाली कंपनी को प्रॉपेगेट करता है, तो इसे उस कुंजी के तौर पर इस्तेमाल करें जिससे इसे वापस पाया जा सके. उदाहरण:
dep = ctx.attr.deps[0] p = dep[apple_common.XcodeVersionProperties]
XcodeVersionConfig
Provider apple_common.XcodeVersionConfig
XcodeVersionConfig
प्रोवाइडर के लिए कंस्ट्रक्टर/की.