Funções do Starlark para acessar os componentes internos das implementações das regras da Apple
Membros
- 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
- plataforma
- platform_type
- target_apple_env
- XcodeProperties
- XcodeVersionConfig
apple_host_system_env
dict apple_common.apple_host_system_env(xcode_config)
Parâmetros
Parâmetro | Descrição |
---|---|
xcode_config
|
obrigatório Um provedor que contém informações sobre a configuração do Xcode. |
apple_toolchain
apple_toolchain apple_common.apple_toolchain()
AppleDebugOutputs
Provider apple_common.AppleDebugOutputs
AppleDebugOutputs
.Se um destino propagar o provedor AppleDebugOutputs
, use-o como a chave para recuperá-lo. Exemplo:
dep = ctx.attr.deps[0] p = dep[apple_common.AppleDebugOutputs]
AppleDynamicFramework
Provider apple_common.AppleDynamicFramework
AppleDynamicFramework
.Se um destino propagar o provedor AppleDynamicFramework
, use-o como a chave para recuperá-lo. Exemplo:
dep = ctx.attr.deps[0] p = dep[apple_common.AppleDynamicFramework]
AppleExecutableBinary
Provider apple_common.AppleExecutableBinary
AppleExecutableBinary
.Se um destino propagar o provedor AppleExecutableBinary
, use-o como a chave para recuperá-lo. Exemplo:
dep = ctx.attr.deps[0] p = dep[apple_common.AppleExecutableBinary]
dotted_version
DottedVersion apple_common.dotted_version(version)
Parâmetros
Parâmetro | Descrição |
---|---|
version
|
obrigatório A representação da string 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
do Starlark no domínio rules_apple e existe para ajudar na migração da lógica de vinculação para o Starlark no rules_apple.
Essa API é altamente experimental e está sujeita a mudanças a qualquer momento. Não dependa da estabilidade desta função neste momento.
Parâmetros
Parâmetro | Descrição |
---|---|
ctx
|
obrigatório O contexto da regra Starlark. |
avoid_deps
|
sequência de destinos; ou None ;
o padrão é None Uma lista de Target s que estão no gráfico de dependências do binário, mas cujas bibliotecas não devem ser vinculadas ao binário. Isso se aplica a dependências que serão encontradas durante a execução em outra imagem, como o carregador de pacotes ou quaisquer bibliotecas/frameworks dinâmicos que serão carregados por esse binário.
|
extra_linkopts
|
sequência de strings
o padrão é [] Linkopts extras que são transmitidos para a ação do vinculador. |
extra_link_inputs
|
Sequência de Files;
o padrão é [] Arquivos extras a serem passados para a ação do vinculador. |
extra_requested_features
|
sequência de strings
o padrão é [] Recursos adicionais solicitados a serem transmitidos para a ação do vinculador. |
extra_disabled_features
|
sequência de strings
o padrão é [] Recursos extras desativados a serem passados para a ação do vinculador. |
stamp
|
o padrão é -1 Indica se as informações de build precisam ser incluídas no binário vinculado. Se 1, as informações da versão serão sempre incluídas. Se 0, as informações da versão serão sempre excluídas. Se for -1 (o padrão), o comportamento será determinado pela sinalização --[no]stamp. Ele precisa ser definido como 0 ao gerar a saída executável para regras de teste. |
link_multi_arch_static_library
struct apple_common.link_multi_arch_static_library(ctx)
apple_static_library
do Starlark, no domínio rules_apple, e existe para ajudar na migração da lógica de vinculação para o Starlark no rules_apple.
Essa API é altamente experimental e está sujeita a mudanças a qualquer momento. Não dependa da estabilidade desta função neste momento.
Parâmetros
Parâmetro | Descrição |
---|---|
ctx
|
obrigatório O contexto da regra 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 | Descrição |
---|---|
binary
|
Arquivo ou None
o padrão é None O artefato binário dylib do framework dinâmico. |
cc_info
|
o padrão é None Um CcInfo que contém informações sobre as dependências transitivas vinculadas ao binário. |
objc
|
o padrão é None Um ObjcProvider que contém informações sobre as dependências transitivas vinculadas ao binário. |
framework_dirs
|
depset de strings; ou None ;
o padrão é None Os nomes de caminho do framework usados como entradas de link para vinculação ao framework dinâmico. |
framework_files
|
depset de Files; ou None ;
o padrão é None O conjunto completo de artefatos que precisa ser incluído como entradas para vincular ao 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 | Descrição |
---|---|
binary
|
Arquivo ou None
o padrão é None O artefato binário do executável. |
cc_info
|
o padrão é None Um CcInfo que contém informações sobre as dependências transitivas vinculadas ao binário. |
objc
|
o padrão é None Um ObjcProvider que contém informações sobre as dependências transitivas vinculadas ao binário. |
new_objc_provider
ObjcProvider apple_common.new_objc_provider(**kwargs)
Parâmetros
Parâmetro | Descrição |
---|---|
kwargs
|
o padrão é {} Dicionário de argumentos. |
Objc
Provider apple_common.Objc
Objc
.Se um destino propagar o provedor Objc
, use-o como a chave para recuperá-lo. Exemplo:
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
Esses valores podem ser transmitidos para métodos que esperam uma plataforma, como XcodeVersionConfig.sdk_version_for_platform.
platform_type
struct apple_common.platform_type
ios
macos
tvos
visionos
watchos
Esses valores podem ser passados para métodos que esperam um tipo de plataforma, como o "apple" do fragmento de configuração do método multi_arch_platform.
Exemplo:
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 variáveis de ambiente que precisam ser definidas para ações que criam destinos do tipo de plataforma da Apple especificado. Por exemplo, esse dicionário contém variáveis que indicam o nome da plataforma e a versão do SDK a serem usados no build. As chaves são nomes de variáveis e os valores são seus valores correspondentes.
Parâmetros
Parâmetro | Descrição |
---|---|
xcode_config
|
obrigatório Um provedor que contém informações sobre a configuração do Xcode. |
platform
|
obrigatório A plataforma Apple. |
XcodeProperties
Provider apple_common.XcodeProperties
XcodeVersionProperties
.Se um destino propagar o provedor XcodeVersionProperties
, use-o como a chave para recuperá-lo. Exemplo:
dep = ctx.attr.deps[0] p = dep[apple_common.XcodeVersionProperties]
XcodeVersionConfig
Provider apple_common.XcodeVersionConfig
XcodeVersionConfig
.