Aplikasi Apple dan Bazel

Laporkan masalah Lihat sumber Nightly · 7.4 . 7,3 · 7,2 · 7,1 · 7,0 · 6,5

Halaman ini berisi referensi yang membantu Anda menggunakan Bazel untuk mem-build project macOS dan iOS. Halaman ini tertaut ke tutorial, aturan build, dan informasi lainnya yang khusus untuk menggunakan Bazel untuk mem-build dan menguji untuk platform tersebut.

Bekerja dengan Bazel

Referensi berikut akan membantu Anda menggunakan Bazel di project macOS dan iOS:

Bermigrasi ke Bazel

Jika saat ini Anda membuat project macOS dan iOS dengan Xcode, ikuti langkah-langkahnya dalam panduan migrasi untuk mulai membuatnya dengan Bazel:

Aplikasi Apple dan aturan baru

Catatan: Pembuatan aturan baru ditujukan untuk skenario build dan pengujian lanjutan. Anda tidak memerlukannya saat mulai menggunakan Bazel.

Modul, fragmen konfigurasi, dan penyedia berikut akan membantu Anda meningkatkan kemampuan Bazel saat membuat project macOS dan iOS:

Pilihan Xcode

Jika build Anda memerlukan Xcode, Bazel akan memilih versi yang sesuai berdasarkan flag --xcode_config dan --xcode_version. --xcode_config menggunakan kumpulan versi Xcode yang tersedia dan menetapkan versi default jika --xcode_version tidak diteruskan. Default ini diganti oleh --xcode_version, selama disetel ke versi Xcode yang yang direpresentasikan dalam target --xcode_config.

Jika Anda tidak meneruskan --xcode_config, Bazel akan menggunakan XcodeVersionConfig yang dibuat secara otomatis yang mewakili versi Xcode yang tersedia di mesin host Anda. Versi defaultnya adalah versi Xcode terbaru yang tersedia. Hal ini sesuai untuk eksekusi lokal.

Jika melakukan build jarak jauh, Anda harus menetapkan --xcode_config ke xcode_config target yang atribut versions-nya merupakan daftar fitur yang tersedia dari jarak jauh xcode_version target, dan atribut default-nya merupakan salah satu dari hal berikut xcode_versions.

Jika menggunakan eksekusi dinamis, Anda harus menetapkan --xcode_config ke target xcode_config yang atribut remote_versions-nya adalah target available_xcodes yang berisi versi Xcode yang tersedia dari jarak jauh, dan atribut local_versions-nya adalah target available_xcodes yang berisi versi Xcode yang tersedia secara lokal. Untuk local_versions, Anda mungkin ingin menggunakan ID @local_config_xcode//:host_available_xcodes. Versi Xcode default adalah versi terbaru yang tersedia bersama, jika ada. Jika tidak, akan menjadi default Target local_versions. Jika Anda lebih suka menggunakan default local_versions sebagai default, Anda dapat meneruskan --experimental_prefer_mutual_default=false.