Trang này chứa các tài nguyên giúp bạn sử dụng Bazel để xây dựng các dự án macOS và iOS. Tài liệu này liên kết đến thông tin hướng dẫn, các quy tắc lập trình và thông tin khác dành riêng cho việc sử dụng Bazel để xây dựng và kiểm thử cho các nền tảng đó.
Làm việc trên Bazel
Các tài nguyên sau đây sẽ giúp bạn sử dụng Bazel hiệu quả cho các dự án macOS và iOS:
- Hướng dẫn: Xây dựng ứng dụng iOS
- Quy tắc xây dựng Objective-C
- Quy tắc chung của Apple
- Tích hợp với Xcode
Di chuyển sang Bazel
Nếu hiện đang xây dựng các dự án macOS và iOS bằng Xcode, hãy làm theo các bước trong hướng dẫn di chuyển để bắt đầu xây dựng các dự án đó bằng Bazel:
Ứng dụng Apple và quy tắc mới
Lưu ý: Việc tạo quy tắc mới dành cho các tình huống kiểm thử và xây dựng nâng cao. Bạn không cần quy tắc này khi bắt đầu sử dụng Bazel.
Các mô-đun, mảnh cấu hình và nhà cung cấp sau đây sẽ giúp bạn mở rộng khả năng của Bazel khi xây dựng các dự án macOS và iOS:
Mô-đun:
Mảnh cấu hình:
Nhà cung cấp:
Lựa chọn Xcode
Nếu bản dựng của bạn yêu cầu Xcode, Bazel sẽ chọn một phiên bản thích hợp dựa trên
các cờ --xcode_config và --xcode_version. --xcode_config sử dụng
tập hợp các phiên bản Xcode hiện có và đặt phiên bản mặc định nếu
--xcode_version không được truyền. Cờ
--xcode_version sẽ ghi đè giá trị mặc định này, miễn là cờ này được đặt thành phiên bản Xcode được
biểu thị trong mục tiêu --xcode_config.
Nếu bạn không truyền --xcode_config, Bazel sẽ sử dụng
XcodeVersionConfig được tạo tự động, đại diện cho các phiên bản
Xcode có trên máy chủ của bạn. Phiên bản mặc định là
phiên bản Xcode mới nhất hiện có. Phiên bản này phù hợp để thực thi cục bộ.
Nếu đang thực hiện các bản dựng từ xa, bạn nên đặt --xcode_config thành mục tiêu
xcode_config
có thuộc tính versions là danh sách các mục tiêu
xcode_version
có sẵn từ xa và thuộc tính default là một trong các
xcode_versionsnày.
Nếu đang sử dụng tính năng thực thi động, bạn nên đặt --xcode_config thành mục tiêu
xcode_config
có thuộc tính remote_versions là mục tiêu
available_xcodes
chứa các phiên bản Xcode có sẵn từ xa và có thuộc tính
local_versions là mục tiêu
available_xcodes
chứa các phiên bản Xcode có sẵn cục bộ. Đối với local_versions,
bạn có thể muốn sử dụng được tạo tự động
@local_config_xcode//:host_available_xcodes. Phiên bản Xcode mặc định là phiên bản
mới nhất có sẵn cho cả hai, nếu có, nếu không thì là phiên bản mặc định của
local_versions mục tiêu. Nếu muốn sử dụng giá trị mặc định local_versions làm giá trị mặc định, bạn có thể truyền --experimental_prefer_mutual_default=false.