इस पेज पर ऐसे संसाधन मौजूद हैं जिनकी मदद से, macOS और iOS प्रोजेक्ट बनाने के लिए Bazel का इस्तेमाल किया जा सकता है. इसमें ट्यूटोरियल, नियम बनाने के तरीके, और उन प्लैटफ़ॉर्म के लिए Bazel का इस्तेमाल करके, ऐप्लिकेशन बनाने और उसकी जांच करने से जुड़ी अन्य जानकारी दी गई है.
Bazel का इस्तेमाल करना
macOS और iOS प्रोजेक्ट पर Bazel का इस्तेमाल करने के लिए, इन संसाधनों का इस्तेमाल करें:
- ट्यूटोरियल: iOS ऐप्लिकेशन बनाना)
- Objective-C के लिए, बिल्ड के नियम
- Apple के सामान्य नियम
- Xcode के साथ इंटिग्रेशन
Bazel पर माइग्रेट करना
अगर फ़िलहाल Xcode की मदद से macOS और iOS प्रोजेक्ट बनाए जा रहे हैं, तो Bazel की मदद से उन्हें बनाने के लिए, माइग्रेशन गाइड में दिया गया यह तरीका अपनाएं:
Apple के ऐप्लिकेशन और नए नियम
ध्यान दें: नए नियम बनाने की सुविधा, ऐडवांस बिल्ड और टेस्ट के लिए उपलब्ध है. Bazel का इस्तेमाल शुरू करने के लिए, इसकी ज़रूरत नहीं होती.
macOS और iOS प्रोजेक्ट बनाते समय, Bazel की क्षमताओं को बढ़ाने में ये मॉड्यूल, कॉन्फ़िगरेशन फ़्रैगमेंट, और प्रोवाइडर आपकी मदद करेंगे:
मॉड्यूल:
कॉन्फ़िगरेशन फ़्रैगमेंट:
सेवा देने वाली कंपनियां:
Xcode का वर्शन चुनना
अगर आपके बिल्ड के लिए Xcode की ज़रूरत है, तो Bazel, --xcode_config
और --xcode_version
फ़्लैग के आधार पर सही वर्शन चुनेगा. --xcode_config
, Xcode के उपलब्ध वर्शन के सेट का इस्तेमाल करता है. साथ ही, अगर --xcode_version
पास नहीं किया जाता है, तो डिफ़ॉल्ट वर्शन सेट करता है. अगर --xcode_version
फ़्लैग को Xcode के ऐसे वर्शन पर सेट किया गया है जो --xcode_config
टारगेट में मौजूद है, तो यह डिफ़ॉल्ट वैल्यू बदल जाएगी.
अगर आपने --xcode_config
पास नहीं किया है, तो Bazel अपने-आप जनरेट हुए XcodeVersionConfig
का इस्तेमाल करेगा. यह आपके होस्ट मशीन पर उपलब्ध Xcode वर्शन को दिखाता है. डिफ़ॉल्ट वर्शन, Xcode का सबसे नया वर्शन होता है. यह स्थानीय तौर पर लागू करने के लिए सही है.
अगर आपको रिमोट बिल्ड करने हैं, तो आपको --xcode_config
को ऐसे xcode_config
टारगेट पर सेट करना चाहिए जिसका versions
एट्रिब्यूट, रिमोट तौर पर उपलब्ध xcode_version
टारगेट की सूची हो और जिसका default
एट्रिब्यूट इनमें से कोई एक xcode_versions
हो.
डाइनैमिक एक्ज़ीक्यूशन का इस्तेमाल करने पर, आपको --xcode_config
को ऐसे xcode_config
टारगेट पर सेट करना चाहिए जिसका remote_versions
एट्रिब्यूट, available_xcodes
टारगेट हो. इस टारगेट में, रिमोट तौर पर उपलब्ध Xcode वर्शन शामिल होते हैं. साथ ही, आपको --xcode_config
को ऐसे available_xcodes
टारगेट पर सेट करना चाहिए जिसका local_versions
एट्रिब्यूट, available_xcodes
टारगेट हो. इस टारगेट में, स्थानीय तौर पर उपलब्ध Xcode वर्शन शामिल होते हैं. local_versions
के लिए, आपको शायद अपने-आप जनरेट होने वाले @local_config_xcode//:host_available_xcodes
का इस्तेमाल करना चाहिए. अगर Xcode का कोई ऐसा वर्शन उपलब्ध है जो दोनों के साथ काम करता है, तो उसे डिफ़ॉल्ट वर्शन के तौर पर सेट किया जाता है. अगर ऐसा कोई वर्शन उपलब्ध नहीं है, तो local_versions
टारगेट के डिफ़ॉल्ट वर्शन को सेट किया जाता है. अगर आपको local_versions
डिफ़ॉल्ट
को डिफ़ॉल्ट के तौर पर इस्तेमाल करना है, तो --experimental_prefer_mutual_default=false
पास करें.