Funciones para que Starlark acceda a los elementos internos de las implementaciones de reglas de Apple.
Miembros
- apple_host_system_env
- apple_toolchain
- AppleDebugOutputs
- AppleDynamicFramework
- AppleExecutableBinary
- dotted_version
- link_multi_arch_binary
- link_multi_arch_static_library
- new_dynamic_framework_provider
- new_executable_binary_provider
- new_objc_provider
- Objc
- platform
- platform_type
- target_apple_env
- XcodeProperties
- XcodeVersionConfig
apple_host_system_env
dict apple_common.apple_host_system_env(xcode_config)
Parámetros
Parámetro | Descripción |
---|---|
xcode_config
|
obligatorio Un proveedor que contiene información sobre la configuración de Xcode. |
apple_toolchain
apple_toolchain apple_common.apple_toolchain()
AppleDebugOutputs
Provider apple_common.AppleDebugOutputs
AppleDebugOutputs
.Si un destino propaga el proveedor AppleDebugOutputs
, úsalo como la clave con la que recuperarlo. Ejemplo:
dep = ctx.attr.deps[0] p = dep[apple_common.AppleDebugOutputs]
AppleDynamicFramework
Provider apple_common.AppleDynamicFramework
AppleDynamicFramework
.Si un destino propaga el proveedor AppleDynamicFramework
, úsalo como la clave con la que recuperarlo. Ejemplo:
dep = ctx.attr.deps[0] p = dep[apple_common.AppleDynamicFramework]
AppleExecutableBinary
Provider apple_common.AppleExecutableBinary
AppleExecutableBinary
.Si un destino propaga el proveedor AppleExecutableBinary
, úsalo como la clave con la que recuperarlo. Ejemplo:
dep = ctx.attr.deps[0] p = dep[apple_common.AppleExecutableBinary]
dotted_version
DottedVersion apple_common.dotted_version(version)
Parámetros
Parámetro | Descripción |
---|---|
version
|
obligatorio Es la representación de cadena de DottedVersion. |
link_multi_arch_binary
struct apple_common.link_multi_arch_binary(ctx, avoid_deps=None, extra_linkopts=[], extra_link_inputs=[], extra_requested_features=[], extra_disabled_features=[], stamp=-1)
apple_binary
de Starlark en el dominio rules_apple y existe para ayudar en la migración de su lógica de vinculación a Starlark en rules_apple.
Esta API es altamente experimental y está sujeta a cambios en cualquier momento. Por el momento, no dependas de la estabilidad de esta función.
Parámetros
Parámetro | Descripción |
---|---|
ctx
|
obligatorio Es el contexto de la regla de Starlark. |
avoid_deps
|
Secuencia de objetivos o None ;
El valor predeterminado es None Es una lista de Target que están en el gráfico de dependencias del binario, pero cuyas bibliotecas no deben vincularse en él. Este es el caso de las dependencias que se encontrarán en el tiempo de ejecución en otra imagen, como el cargador de paquetes o cualquier biblioteca o framework dinámico que cargue este binario.
|
extra_linkopts
|
Secuencia de cadenas.
El valor predeterminado es [] . Opciones de vinculación adicionales que se pasarán a la acción del vinculador. |
extra_link_inputs
|
Secuencia de archivos. El valor predeterminado es [] . Son archivos adicionales que se pasan a la acción del vinculador. |
extra_requested_features
|
Secuencia de cadenas.
El valor predeterminado es [] . Son funciones adicionales solicitadas que se pasarán a la acción del vinculador. |
extra_disabled_features
|
Secuencia de cadenas.
El valor predeterminado es [] . Funciones inhabilitadas adicionales que se pasarán a la acción del vinculador. |
stamp
|
El valor predeterminado es -1 Indica si se debe incluir información de compilación en el binario vinculado. Si es 1, siempre se incluye la información de compilación. Si es 0, la información de compilación siempre se excluye. Si es -1 (el valor predeterminado), el comportamiento se determina según la marca --[no]stamp. Se debe establecer en 0 cuando se genera el resultado ejecutable para las reglas de prueba. |
link_multi_arch_static_library
struct apple_common.link_multi_arch_static_library(ctx)
apple_static_library
de Starlark, en el dominio rules_apple, y existe para ayudar en la migración de su lógica de vinculación a Starlark en rules_apple.
Esta API es altamente experimental y está sujeta a cambios en cualquier momento. Por el momento, no dependas de la estabilidad de esta función.
Parámetros
Parámetro | Descripción |
---|---|
ctx
|
obligatorio Es el contexto de la regla de Starlark. |
new_dynamic_framework_provider
AppleDynamicFramework apple_common.new_dynamic_framework_provider(binary=None, cc_info=None, objc=None, framework_dirs=None, framework_files=None)
Parámetros
Parámetro | Descripción |
---|---|
binary
|
Archivo o None ;
el valor predeterminado es None Es el artefacto binario dylib del framework dinámico. |
cc_info
|
El valor predeterminado es None Un CcInfo que contiene información sobre las dependencias transitivas vinculadas al objeto binario. |
objc
|
El valor predeterminado es None Un ObjcProvider que contiene información sobre las dependencias transitivas vinculadas al objeto binario. |
framework_dirs
|
depset de cadenas o None ;
El valor predeterminado es None Son los nombres de ruta del framework que se usan como entradas de vinculación para vincularse con el framework dinámico. |
framework_files
|
depset de File o None ;
El valor predeterminado es None Es el conjunto completo de artefactos que se deben incluir como entradas para vincularse con el framework dinámico. |
new_executable_binary_provider
AppleExecutableBinary apple_common.new_executable_binary_provider(binary=None, cc_info=None, objc=None)
Parámetros
Parámetro | Descripción |
---|---|
binary
|
Archivo o None ;
el valor predeterminado es None Es el artefacto binario del ejecutable. |
cc_info
|
El valor predeterminado es None Un CcInfo que contiene información sobre las dependencias transitivas vinculadas al objeto binario. |
objc
|
El valor predeterminado es None Un ObjcProvider que contiene información sobre las dependencias transitivas vinculadas al objeto binario. |
new_objc_provider
ObjcProvider apple_common.new_objc_provider(**kwargs)
Parámetros
Parámetro | Descripción |
---|---|
kwargs
|
El valor predeterminado es {} . Diccionario de argumentos. |
Objc
Provider apple_common.Objc
Objc
.Si un destino propaga el proveedor Objc
, úsalo como la clave con la que recuperarlo. Ejemplo:
dep = ctx.attr.deps[0] p = dep[apple_common.Objc]
plataforma
struct apple_common.platform
ios_device
ios_simulator
macos
tvos_device
tvos_simulator
visionos_device
visionos_simulator
watchos_device
watchos_simulator
Estos valores se pueden pasar a métodos que esperan una plataforma, como XcodeVersionConfig.sdk_version_for_platform.
platform_type
struct apple_common.platform_type
ios
macos
tvos
visionos
watchos
Estos valores se pueden pasar a métodos que esperan un tipo de plataforma, como el método multi_arch_platform del fragmento de configuración "apple".
Ejemplo:
ctx.fragments.apple.multi_arch_platform(apple_common.platform_type.ios)
target_apple_env
dict apple_common.target_apple_env(xcode_config, platform)
dict
de variables de entorno que se deben establecer para las acciones que compilan destinos del tipo de plataforma de Apple determinado. Por ejemplo, este diccionario contiene variables que denotan el nombre de la plataforma y la versión del SDK con la que se debe compilar. Las claves son nombres de variables y los valores son sus valores correspondientes.
Parámetros
Parámetro | Descripción |
---|---|
xcode_config
|
obligatorio Un proveedor que contiene información sobre la configuración de Xcode. |
platform
|
obligatorio La plataforma de Apple. |
XcodeProperties
Provider apple_common.XcodeProperties
XcodeVersionProperties
.Si un destino propaga el proveedor XcodeVersionProperties
, úsalo como la clave con la que recuperarlo. Ejemplo:
dep = ctx.attr.deps[0] p = dep[apple_common.XcodeVersionProperties]
XcodeVersionConfig
Provider apple_common.XcodeVersionConfig
XcodeVersionConfig
.