Esta página contém recursos que ajudam você a usar o Bazel para criar projetos do macOS e do iOS. Ele tem 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:
- Tutorial: como criar um app iOS
- Regras de build do Objective-C
- Regras gerais da Apple
- Integração com o Xcode
Migrar para o Bazel
Se você cria 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. Não é necessário ao começar a usar o Bazel.
Os módulos, fragmentos de configuração e provedores a seguir vão ajudar você a estender os recursos do Bazel ao criar projetos para macOS e iOS:
Módulos:
Fragmentos de configuração:
Provedores:
Seleção do Xcode
Se a 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 disponíveis do Xcode 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 ela esteja definida como uma versão do Xcode que seja
representada na meta --xcode_config
.
Se você não transmitir --xcode_config
, o Bazel usará o
XcodeVersionConfig
autogerado que representa as
versões do Xcode disponíveis na sua 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 destino xcode_config
cujo atributo versions
seja uma lista de destinos xcode_version
disponíveis remotamente e cujo atributo default
seja um desses xcode_versions
.
Se você estiver usando a execução dinâmica, defina --xcode_config
como um
destino xcode_config
cujo atributo remote_versions
seja um
destino available_xcodes
que contenha as versões do Xcode disponíveis remotamente e cujo
atributo local_versions
seja um
destino available_xcodes
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 mais recente disponível para ambos, se houver uma. Caso contrário, é a padrão do destino local_versions
. Se preferir usar o padrão local_versions
como padrão, transmita --experimental_prefer_mutual_default=false
.