Apps de Apple y Bazel

Informar un problema Ver fuente

En esta página, encontrarás recursos que te ayudarán a usar Bazel para compilar proyectos de iOS y macOS. Vincula a un instructivo, las reglas de compilación y otra información específica sobre el uso de Bazel para compilar y realizar pruebas en esas plataformas.

Cómo trabajar con Bazel

Los siguientes recursos te ayudarán a trabajar con Bazel en proyectos de iOS y macOS:

Migra a Bazel

Si actualmente compilas tus proyectos de macOS y iOS con Xcode, sigue los pasos de la guía de migración para comenzar a compilarlos con Bazel:

Apps para Apple y nuevas reglas

Nota: La creación de reglas nuevas está destinada a situaciones avanzadas de compilación y prueba. No lo necesitas para comenzar a usar Bazel.

Los siguientes módulos, fragmentos de configuración y proveedores te ayudarán a extender las capacidades de Bazel cuando compiles tus proyectos de iOS y macOS:

Selección de Xcode

Si tu compilación requiere Xcode, Bazel seleccionará una versión adecuada en función de las marcas --xcode_config y --xcode_version. --xcode_config consume el conjunto de versiones de Xcode disponibles y establece una versión predeterminada si no se pasa --xcode_version. La marca --xcode_version anula esta configuración predeterminada, siempre que se configure en una versión de Xcode que se represente en el destino --xcode_config.

Si no pasas --xcode_config, Bazel usará el XcodeVersionConfig generado automáticamente que representa las versiones de Xcode disponibles en la máquina anfitrión. La versión predeterminada es la versión de Xcode disponible más reciente. Esto es apropiado para la ejecución local.

Si realizas compilaciones remotas, debes establecer --xcode_config en un destino xcode_config cuyo atributo versions es una lista de destinos xcode_version disponibles de forma remota y cuyo atributo default es uno de estos xcode_versions.

Si usas la ejecución dinámica, debes configurar --xcode_config en un destino xcode_config cuyo atributo remote_versions sea un destino available_xcodes que contenga las versiones de Xcode disponibles de forma remota y cuyo atributo local_versions sea un destino available_xcodes que contenga las versiones de Xcode disponibles de forma local. Para local_versions, es probable que quieras usar el @local_config_xcode//:host_available_xcodes generado automáticamente. La versión predeterminada de Xcode es la versión más reciente disponible para ambas partes, si existe. De lo contrario, es la predeterminada del destino local_versions. Si prefieres usar el valor predeterminado local_versions, puedes pasar --experimental_prefer_mutual_default=false.