Esta página contém recursos que ajudam você a usar o Bazel para criar projetos para macOS e iOS. Ele é vinculado a um tutorial, regras de build e outras informações específicas do usando o Bazel para criar e testar para essas plataformas.
Como trabalhar com o Bazel
Os recursos abaixo ajudam você a trabalhar com o Bazel em projetos para macOS e iOS:
- Tutorial: como criar um app iOS
- Regras de criação do Objective-C
- Regras gerais da Apple
- Integração com o Xcode
Como migrar para o Bazel
Se você atualmente cria seus projetos para 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. Ele não é necessário para começar a usar o Bazel.
Os módulos, fragmentos de configuração e provedores a seguir vão ajudar você ampliar os recursos do Bazel ao criar projetos para macOS e iOS:
Módulos:
Fragmentos de configuração:
Provedores:
Seleção do Xcode
Se o build exigir o Xcode, o Bazel vai selecionar uma versão adequada com base no
as sinalizações --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 pelo
sinalização --xcode_version
, desde que ela esteja definida para uma versão do Xcode que seja
representado no destino --xcode_config
.
Se você não transmitir --xcode_config
, o Bazel vai usar a
XcodeVersionConfig
que representa
Versões do Xcode disponíveis na máquina host. A versão padrão é
para a versão mais recente disponível do Xcode. Isso é apropriado 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
.