Ứng dụng Apple và Bazel

Báo cáo sự cố Xem nguồn

Trang này chứa các tài nguyên giúp bạn sử dụng Bazel để xây dựng dự án macOS và iOS. Tài liệu này liên kết đến hướng dẫn, các quy tắc xây dựng và thông tin khác dành riêng cho việc sử dụng Bazel để tạo và kiểm thử cho các nền tảng đó.

Làm việc với Bazel

Các tài nguyên sau đây sẽ giúp bạn hợp tác với Bazel về các dự án macOS và iOS:

Di chuyển đến Bazel

Nếu bạn đang tạo 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 tạo dự án bằng Bazel:

Ứng dụng của Apple và các quy tắc mới

Lưu ý: Việc tạo quy tắc mới là dành cho các trường hợp kiểm thử và xây dựng nâng cao. Bạn không cần đến thông tin 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:

Chọn Xcode

Nếu bản dựng của bạn yêu cầu Xcode, thì Bazel sẽ chọn một phiên bản phù hợp dựa trên cờ --xcode_config--xcode_version. --xcode_config sử dụng tập hợp các phiên bản Xcode có sẵn và đặt phiên bản mặc định nếu --xcode_version không được chuyển. Trạng thái mặc định này sẽ bị cờ --xcode_version ghi đè, miễn là nó được đặt thành một 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 mã 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ó. Điều này phù hợp để thực thi cục bộ.

Nếu đang tạo 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à mục tiêu có thuộc tính default là một trong các mục tiêu này xcode_versions.

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ột 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ột 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 nên sử dụng @local_config_xcode//:host_available_xcodes được tạo tự động. Phiên bản Xcode mặc định là phiên bản mới nhất mà cả hai bên đều có thể sử dụng (nếu có), nếu không thì đây là phiên bản mặc định của mục tiêu local_versions. Nếu muốn sử dụng chế độ mặc định local_versions làm chế độ mặc định, bạn có thể chuyển --experimental_prefer_mutual_default=false.