Apps da Apple e Bazel

Esta página contém recursos que ajudam 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:

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 para 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 nas flags --xcode_config e --xcode_version. A flag --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 flag --xcode_version, desde que ela esteja definida para uma versão do Xcode representada no destino --xcode_config.

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 mais recente disponível do Xcode. 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 destino local_versions. Se você preferir usar o padrão local_versions como padrão, transmita --experimental_prefer_mutual_default=false.