Apps de Apple y Bazel

Informar un problema Ver fuente Nightly · 8.0 . 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

En esta página, se incluyen recursos que te ayudan a usar Bazel para compilar proyectos de macOS y iOS. Incluye vínculos a un instructivo, reglas de compilación y otra información específica para usar Bazel para compilar y probar en esas plataformas.

Cómo trabajar con Bazel

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

Cómo migrar 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 es para situaciones avanzadas de compilación y prueba. No la necesitas cuando comienzas 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 macOS y iOS:

Selección de Xcode

Si tu compilación requiere Xcode, Bazel seleccionará una versión adecuada según 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 este valor predeterminado, siempre y cuando 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 tu máquina host. La versión predeterminada es la versión más reciente de Xcode disponible. Esto es adecuado para la ejecución local.

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

Si usas la ejecución dinámica, debes establecer --xcode_config en un objetivo xcode_config cuyo atributo remote_versions sea un objetivo available_xcodes que contenga las versiones de Xcode disponibles de forma remota y cuyo atributo local_versions sea un objetivo available_xcodes que contenga las versiones de Xcode disponibles de forma local. Para local_versions, es probable que desees 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 de forma mutua, si la hay; de lo contrario, es la predeterminada del destino local_versions. Si prefieres usar el valor predeterminado de local_versions, puedes pasar --experimental_prefer_mutual_default=false.