Apps da Apple e Bazel

Reportar um problema Ver código-fonte Nightly · 8.0 . 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

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

Como trabalhar com o Bazel

Os recursos a seguir vão ajudar você a trabalhar com o Bazel em projetos para macOS e iOS:

Migrar para o Bazel

Se você cria seus projetos para macOS e iOS com o Xcode, siga as etapas no guia de migração para começar a criar 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. Você não precisa dele para começar a usar o Bazel.

Os módulos, fragmentos de configuração e provedores abaixo vão ajudar você a ampliar os recursos do Bazel ao criar seus projetos 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. 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 transmitido. Esse padrão é substituído pela flag --xcode_version, desde que seja definido como uma versão do Xcode que seja representada no destino --xcode_config.

Se você não transmitir --xcode_config, o Bazel vai usar o XcodeVersionConfig gerado automaticamente 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 atributo versions seja uma lista de destinos xcode_version disponíveis remotamente e cujo atributo default seja um destes xcode_versions.

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