Üyeler
- apple_host_system_env
- apple_toolchain
- AppleDebugOutputs
- AppleDynamicFramework
- AppleExecutableBinary
- dotted_version
- link_multi_arch_binary
- link_multi_arch_static_library
- multi_arch_split
- 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)Apple ana makine sisteminde derleme araçlarını çalıştırması gereken işlemler için ayarlanması gereken ortam değişkenlerinin (ör. kullanılması gereken Xcode sürümü) bir dict değerini döndürür. Anahtarlar değişken adları, değerler ise bunlara karşılık gelen değerlerdir.
Parametreler
Parametre | Açıklama |
---|---|
xcode_config
|
gerekli xcode yapılandırması hakkında bilgi içeren bir sağlayıcı. |
apple_toolchain
apple_toolchain apple_common.apple_toolchain()Öğeleri elma araç zincirinden çözümleyen yardımcı programlar.
AppleDebugOutputs
Provider apple_common.AppleDebugOutputs
AppleDebugOutputs
sağlayıcısı için oluşturucu/anahtar.Bir hedef, AppleDebugOutputs
sağlayıcısını yayarsa bunu almak için kullanılacak 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ı için oluşturucu/anahtar.Bir hedef, AppleDynamicFramework
sağlayıcısını yayarsa bunu almak için kullanılacak 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ı için oluşturucu/anahtar.Bir hedef, AppleExecutableBinary
sağlayıcısını yayarsa bunu almak için kullanılacak anahtar olarak kullanın. Örnek:
dep = ctx.attr.deps[0] p = dep[apple_common.AppleExecutableBinary]
dotted_version
DottedVersion apple_common.dotted_version(version)Yeni bir DottedVersion örneği oluşturur.
Parametreler
Parametre | Açıklama |
---|---|
version
|
gerekli DottedVersion'ın dize gösterimi. |
link_multi_arch_binary
struct apple_common.link_multi_arch_binary(ctx, avoid_deps=None, extra_linkopts=[], extra_link_inputs=[], stamp=-1)Apple platformlarını hedefleyen (potansiyel olarak çok mimarili) bir ikili programı bağlar. Bu yöntem, rules_apple alanındaki Starlark
apple_binary
kuralının bir toplu mantığını içerir ve rules_apple içindeki bağlantı mantığının Starlark'a taşınmasına yardımcı olur.
Bu API son derece deneyseldir ve herhangi bir zamanda değiştirilebilir. Şimdilik bu işlevin kararlılığına güvenmeyin.
Parametreler
Parametre | Açıklama |
---|---|
ctx
|
gerekli Starlark kuralı bağlamı. |
avoid_deps
|
sequence of Targets; or None ;
varsayılan = Yokİkili programın bağımlılık grafiğinde bulunan ancak kitaplıklarının ikili programa bağlanmaması gereken Target listesi. Bu durum, paket yükleyici veya bu ikili program tarafından yüklenecek dinamik kitaplıklar/çerçeveler gibi çalışma zamanında başka bir görüntüde bulunacak bağımlılıklar için geçerlidir.
|
extra_linkopts
|
sequence of strings ;
default = []Bağlayıcı işlemine aktarılacak ekstra linkopt'lar. |
extra_link_inputs
|
sequence of Files ;
default = []Bağlayıcı işlemine iletilecek ekstra dosyalar. |
stamp
|
default = -1 Derleme bilgilerinin bağlı ikili programa eklenip eklenmeyeceğini belirtir. 1 ise derleme bilgileri her zaman dahil edilir. Değer 0 ise derleme bilgileri her zaman hariç tutulur. -1 (varsayılan) ise davranış --[no]stamp işaretiyle 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 platformlarını hedefleyen (potansiyel olarak çok mimarili) bir statik kitaplığı bağlar. Bu yöntem, rules_apple alanındaki Starlark
apple_static_library
kural mantığının bir parçasını içerir ve rules_apple içindeki bağlantı mantığının Starlark'a taşınmasına yardımcı olur.
Bu API son derece deneyseldir ve herhangi bir zamanda değiştirilebilir. Şimdilik bu işlevin kararlılığına güvenmeyin.
Parametreler
Parametre | Açıklama |
---|---|
ctx
|
gerekli Starlark kuralı bağlamı. |
multi_arch_split
SplitTransitionProviderApi apple_common.multi_arch_splitBir veya daha fazla Apple platformunda bağımlılık oluşturmak için kural özelliklerinin yapılandırılmasına yönelik bir yapılandırma geçişi.
Bu geçişin kullanılabilmesi için "platform_type" ve "minimum_os_version" dize özelliklerinin tanımlanması ve kuralda zorunlu tutulması gerekir.
platform_type özelliğinin değeri, bu yapılandırma geçişi boyunca bağımlılıkların derleneceği hedef mimarileri belirler.
Seçenekler şunlardır:
ios
:--ios_multi_cpus
kaynağından toplanan mimariler.macos
:--macos_cpus
kaynağından toplanan mimariler.tvos
:--tvos_cpus
kaynağından toplanan mimariler.watchos
:--watchos_cpus
kaynağından toplanan mimariler.
minimum_os_version, "7.3" gibi noktalı bir sürüm dizesi olmalıdır ve platform türüne göre yapılandırmadaki minimum işletim sistemini benzer şekilde ayarlamak için kullanılır. Örneğin, platform_type "ios" ve minimum_os_version "8.0" belirtilmesi, bağımlılıkların en az iOS "8.0" sürümüyle derlenmesini sağlar.
new_dynamic_framework_provider
AppleDynamicFramework apple_common.new_dynamic_framework_provider(binary=None, cc_info=None, objc, framework_dirs=None, framework_files=None)Yeni bir AppleDynamicFramework sağlayıcı örneği oluşturur.
Parametreler
Parametre | Açıklama |
---|---|
binary
|
File; or None ;
varsayılan = YokDinamik çerçevenin dylib ikili yapısı. |
cc_info
|
default = None İkili dosyaya bağlı geçişli bağımlılıklar hakkında bilgi içeren bir CcInfo. |
objc
|
gerekli İkili dosyaya bağlı geçişli bağımlılıklar hakkında bilgi içeren bir ObjcProvider. |
framework_dirs
|
depset of strings; or None ;
varsayılan = YokDinamik çerçeveye karşı bağlantı oluşturmak için bağlantı girişleri olarak kullanılan çerçeve yolu adları. |
framework_files
|
depset of Files; or None ;
varsayılan = YokDinamik çerçeveye bağlanmak için giriş olarak eklenmesi gereken tam yapı grubu |
new_executable_binary_provider
AppleExecutableBinary apple_common.new_executable_binary_provider(binary=None, cc_info=None, objc)Yeni bir AppleExecutableBinaryInfo sağlayıcı örneği oluşturur.
Parametreler
Parametre | Açıklama |
---|---|
binary
|
File; or None ;
varsayılan = YokYürütülebilir dosyanın ikili yapısı. |
cc_info
|
default = None İkili dosyaya bağlı geçişli bağımlılıklar hakkında bilgi içeren bir CcInfo. |
objc
|
gerekli İkili dosyaya bağlı geçişli bağımlılıklar hakkında bilgi içeren bir ObjcProvider. |
new_objc_provider
ObjcProvider apple_common.new_objc_provider(**kwargs)Yeni bir ObjcProvider örneği oluşturur.
Parametreler
Parametre | Açıklama |
---|---|
kwargs
|
default = {} Bağımsız değişkenler sözlüğü. |
Objc
Provider apple_common.Objc
Objc
sağlayıcısı için oluşturucu/anahtar.Bir hedef, Objc
sağlayıcısını yayarsa bunu almak için kullanılacak anahtar olarak kullanın. Örnek:
dep = ctx.attr.deps[0] p = dep[apple_common.Objc]
platform
struct apple_common.platformApple platformlarına karşılık gelen aşağıdaki alanları içeren enum benzeri bir struct:
ios_device
ios_simulator
macos
tvos_device
tvos_simulator
watchos_device
watchos_simulator
Bu değerler, XcodeVersionConfig.sdk_version_for_platform gibi bir platform bekleyen yöntemlere aktarılabilir.
platform_type
struct apple_common.platform_typeApple platform türlerine karşılık gelen aşağıdaki alanları içeren enum benzeri bir struct:
ios
macos
tvos
watchos
Bu değerler, "apple" yapılandırma parçasının multi_arch_platform yöntemi gibi bir platform türü bekleyen yöntemlere aktarılabilir.
Örnek:
ctx.fragments.apple.multi_arch_platform(apple_common.platform_type.ios)
target_apple_env
dict apple_common.target_apple_env(xcode_config, platform)Belirli bir Apple platform türünde hedefler oluşturan işlemler için ayarlanması gereken ortam değişkenlerinin
dict
değerini döndürür. Örneğin, bu sözlükte derleme yapılacak platform adını ve SDK sürümünü belirten değişkenler bulunmaktadır. Anahtarlar değişken adları, değerler ise bunlara karşılık gelen değerlerdir.
Parametreler
Parametre | Açıklama |
---|---|
xcode_config
|
gerekli xcode yapılandırması hakkında bilgi içeren bir sağlayıcı. |
platform
|
gerekli Apple platformu. |
XcodeProperties
Provider apple_common.XcodeProperties
XcodeVersionProperties
sağlayıcısı için oluşturucu/anahtar.Bir hedef, XcodeVersionProperties
sağlayıcısını yayarsa bunu almak için kullanılacak 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ı için oluşturucu/anahtar.