Starlark'ın, Apple kural uygulamalarının iç kısımlarına erişmesi için işlevler.
Üyeler
- 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)
Parametreler
Parametre | Açıklama |
---|---|
xcode_config
|
zorunlu Xcode yapılandırması hakkında bilgi içeren bir sağlayıcı. |
apple_toolchain
apple_toolchain apple_common.apple_toolchain()
AppleDebugOutputs
Provider apple_common.AppleDebugOutputs
AppleDebugOutputs
sağlayıcısının kurucusu/anahtarı.Bir hedef AppleDebugOutputs
sağlayıcısını yayıyorsa bunu, sağlayıcıyı almak için kullanacağınız anahtar olarak kullanın. Örnek:
dep = ctx.attr.deps[0] p = dep[apple_common.AppleDebugOutputs]
AppleDynamicFramework
Provider apple_common.AppleDynamicFramework
AppleDynamicFramework
sağlayıcısının kurucusu/anahtarı.Bir hedef AppleDynamicFramework
sağlayıcısını yayıyorsa bunu, sağlayıcıyı almak için kullanacağınız anahtar olarak kullanın. Örnek:
dep = ctx.attr.deps[0] p = dep[apple_common.AppleDynamicFramework]
AppleExecutableBinary
Provider apple_common.AppleExecutableBinary
AppleExecutableBinary
sağlayıcısının kurucusu/anahtarı.Bir hedef AppleExecutableBinary
sağlayıcısını yayıyorsa bunu, sağlayıcıyı almak için kullanacağınız anahtar olarak kullanın. Örnek:
dep = ctx.attr.deps[0] p = dep[apple_common.AppleExecutableBinary]
dotted_version
DottedVersion apple_common.dotted_version(version)
Parametreler
Parametre | Açıklama |
---|---|
version
|
required DottedVersion değerinin dize gösterimi. |
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
kuralının mantığının büyük bir kısmını içerir ve bağlantı mantığının rules_apple'daki Starlark'a taşınmasına yardımcı olmak için kullanılır.
Bu API çok deneysel olup herhangi bir zamanda değiştirilebilir. Bu işlevin şu anda kararlı olduğunu varsaymayın.
Parametreler
Parametre | Açıklama |
---|---|
ctx
|
required Starlark kural bağlamı. |
avoid_deps
|
Hedef dizisi veya None ;
varsayılan değer None İkilinin bağımlılık grafiğinde bulunan ancak kitaplıkları ikiliye bağlanmaması gereken Target 'lerin listesi. Bu durum, paket yükleyici veya bu ikili tarafından yüklenecek dinamik kitaplıklar/çerçeveler gibi başka bir resimde çalışma zamanında bulunacak bağımlılıklar için geçerlidir.
|
extra_linkopts
|
Dize dizisi;
varsayılan değer [] Bağlantılayıcı işlemine iletilecek ek bağlantı seçenekleri. |
extra_link_inputs
|
Dosya dizisi;
varsayılan değer [] Bağlantılayıcı işlemine iletilecek ek dosyalar. |
extra_requested_features
|
Dize dizisi;
varsayılan değer [] Bağlantı oluşturucu işlemine iletilecek ek istenen özellikler. |
extra_disabled_features
|
Dize dizisi;
varsayılan değer [] Bağlantılayıcı işlemine iletilecek ek devre dışı bırakılmış özellikler. |
stamp
|
varsayılan ayar -1 Bağlı ikili dosyaya derleme bilgilerinin dahil edilip edilmeyeceği. 1 ise derleme bilgileri her zaman dahil edilir. 0 ise derleme bilgileri her zaman hariç tutulur. Değer -1 ise (varsayılan) davranış, --[no]stamp işaretine göre belirlenir. Test kuralları için yürütülebilir çıkış oluşturulurken bu değer 0 olarak ayarlanmalıdır. |
link_multi_arch_static_library
struct apple_common.link_multi_arch_static_library(ctx)
apple_static_library
kural mantığının bir bölümünü içerir ve bağlantı mantığının rules_apple'daki Starlark'a taşınmasına yardımcı olmak için mevcuttur.
Bu API çok deneysel olup herhangi bir zamanda değiştirilebilir. Bu işlevin şu anda kararlı olduğunu varsaymayın.
Parametreler
Parametre | Açıklama |
---|---|
ctx
|
required Starlark kural bağlamı. |
new_dynamic_framework_provider
AppleDynamicFramework apple_common.new_dynamic_framework_provider(binary=None, cc_info=None, objc=None, framework_dirs=None, framework_files=None)
Parametreler
Parametre | Açıklama |
---|---|
binary
|
Dosya veya None ;
varsayılan değer None Dinamik çerçevenin dylib ikili yapısını belirtir. |
cc_info
|
varsayılan değer None İkiliye bağlı geçişli bağımlılıklarla ilgili bilgileri içeren bir CcInfo. |
objc
|
varsayılan değer None İkiliye bağlı geçişli bağımlılıklarla ilgili bilgileri içeren bir ObjcProvider. |
framework_dirs
|
Dize depset veya None ;
varsayılan değer None Dinamik çerçeveye bağlantı oluşturmak için bağlantı girişi olarak kullanılan çerçeve yolu adları. |
framework_files
|
Dosya depset veya None ;
varsayılan değer None Dinamik çerçeveye bağlanmak için giriş olarak dahil edilmesi gereken tüm yapıların kümesi |
new_executable_binary_provider
AppleExecutableBinary apple_common.new_executable_binary_provider(binary=None, cc_info=None, objc=None)
Parametreler
Parametre | Açıklama |
---|---|
binary
|
Dosya veya None ;
varsayılan değer None Yürütülebilir dosyanın ikili yapısı. |
cc_info
|
varsayılan değer None İkiliye bağlı geçişli bağımlılıklarla ilgili bilgileri içeren bir CcInfo. |
objc
|
varsayılan değer None İkiliye bağlı geçişli bağımlılıklarla ilgili bilgileri içeren bir ObjcProvider. |
new_objc_provider
ObjcProvider apple_common.new_objc_provider(**kwargs)
Parametreler
Parametre | Açıklama |
---|---|
kwargs
|
varsayılan değer {} Parametre dizini. |
Objc
Provider apple_common.Objc
Objc
sağlayıcısının kurucusu/anahtarı.Bir hedef Objc
sağlayıcısını yayıyorsa bunu, sağlayıcıyı almak için kullanacağınız anahtar olarak kullanın. Örnek:
dep = ctx.attr.deps[0] p = dep[apple_common.Objc]
platform
struct apple_common.platform
ios_device
ios_simulator
macos
tvos_device
tvos_simulator
visionos_device
visionos_simulator
watchos_device
watchos_simulator
Bu değerler, XcodeVersionConfig.sdk_version_for_platform gibi bir platform bekleyen yöntemlere iletilebilir.
platform_type
struct apple_common.platform_type
ios
macos
tvos
visionos
watchos
Bu değerler, "apple" yapılandırma parçasının multi_arch_platform yöntemi gibi bir platform türü bekleyebilecek yöntemlere iletilebilir.
Örnek:
ctx.fragments.apple.multi_arch_platform(apple_common.platform_type.ios)
target_apple_env
dict apple_common.target_apple_env(xcode_config, platform)
dict
döndürür. Örneğin, bu sözlükte derleme işleminde kullanılacak platform adını ve SDK sürümünü belirten değişkenler bulunur. Anahtarlar değişken adları, değerler ise bu değişkenlere karşılık gelen değerlerdir.
Parametreler
Parametre | Açıklama |
---|---|
xcode_config
|
zorunlu Xcode yapılandırması hakkında bilgi içeren bir sağlayıcı. |
platform
|
required Apple platformu. |
XcodeProperties
Provider apple_common.XcodeProperties
XcodeVersionProperties
sağlayıcısının kurucusu/anahtarı.Bir hedef XcodeVersionProperties
sağlayıcısını yayıyorsa bunu, sağlayıcıyı almak için kullanacağınız anahtar olarak kullanın. Örnek:
dep = ctx.attr.deps[0] p = dep[apple_common.XcodeVersionProperties]
XcodeVersionConfig
Provider apple_common.XcodeVersionConfig
XcodeVersionConfig
sağlayıcısının kurucusu/anahtarı.