Apple Apps और Bazel

समस्या की शिकायत करें सोर्स देखें Nightly · 8.4 · 8.3 · 8.2 · 8.1 · 8.0 · 7.6

इस पेज पर ऐसे संसाधन मौजूद हैं जिनकी मदद से, macOS और iOS प्रोजेक्ट बनाने के लिए Bazel का इस्तेमाल किया जा सकता है. इसमें ट्यूटोरियल, नियम बनाने के तरीके, और उन प्लैटफ़ॉर्म के लिए Bazel का इस्तेमाल करके, ऐप्लिकेशन बनाने और उसकी जांच करने से जुड़ी अन्य जानकारी दी गई है.

Bazel का इस्तेमाल करना

macOS और iOS प्रोजेक्ट पर Bazel का इस्तेमाल करने के लिए, इन संसाधनों का इस्तेमाल करें:

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 पास करें.