Apps da Apple e Bazel

Esta página contém recursos que ajudam você a usar o Bazel para criar projetos do macOS e iOS. Ela contém um link para um tutorial, regras de build e outras informações específicas sobre o uso do Bazel para criar e testar essas plataformas.

Como trabalhar com o Bazel

Os recursos a seguir ajudam você a trabalhar com o Bazel em projetos do macOS e iOS:

Como migrar para o Bazel

Se você cria projetos do macOS e iOS com o Xcode, siga as etapas no guia de migração para começar a criá-los com o Bazel:

Apps da Apple e novas regras

Observação: a criação de novas regras é para cenários avançados de build e teste. Não é necessário criar novas regras ao começar a usar o Bazel.

Os módulos, fragmentos de configuração e provedores a seguir ajudam a estender os recursos do Bazel ao criar projetos do macOS e iOS:

Seleção do Xcode

Se o build exigir o Xcode, o Bazel vai selecionar uma versão adequada com base em nas flags --xcode_config e --xcode_version. O --xcode_config consome o conjunto de versões do Xcode disponíveis e define uma versão padrão se --xcode_version não for transmitida. Esse padrão é substituído pela --xcode_version flag, desde que ela esteja definida para uma versão do Xcode que esteja representada no --xcode_config destino.

Se você não transmitir --xcode_config, o Bazel vai usar o gerado automaticamente XcodeVersionConfig que representa as versões do Xcode disponíveis na máquina host. A versão padrão é a versão mais recente do Xcode disponível. Isso é adequado para execução local.

Se você estiver realizando builds remotos, defina --xcode_config como um xcode_config destino cujo versions atributo seja uma lista de destinos xcode_version disponíveis remotamente e cujo default atributo seja um desses xcode_versions.

Se você estiver usando a execução dinâmica, defina --xcode_config como um xcode_config destino cujo atributo remote_versions seja um available_xcodes destino que contenha as versões do Xcode disponíveis remotamente e cujo local_versions atributo seja um available_xcodes destino que contenha as versões do Xcode disponíveis localmente. Para local_versions, é recomendável usar o @local_config_xcode//:host_available_xcodes gerado automaticamente. A versão padrão do Xcode é a versão mais recente disponível mutuamente, se houver uma. Caso contrário, o padrão do local_versions destino. Se você preferir usar o local_versions padrão como padrão, transmita --experimental_prefer_mutual_default=false.