Anggota
- sistem_host_apple
- jaringan_apple
- AppleDebugOutputs
- AppleDynamicFramework
- AppleExecutableBinary
- titik_versi
- link_multi_arch_link
- link_multi_arch_static_library
- pemisahan_multi-arch
- penyedia_framework_dinamis baru
- new_executable_binary_provider
- penyedia_objc_baru
- Objc
- platform
- platform_type
- target_apel_env
- XcodeProperties
- XcodeVersionConfig
apple_host_system_id
dict apple_common.apple_host_system_env(xcode_config)Menampilkan dict variabel lingkungan yang harus ditetapkan untuk tindakan yang perlu menjalankan alat build di sistem host Apple, seperti versi Xcode yang harus digunakan. Kunci adalah nama variabel dan nilainya adalah nilai yang sesuai.
Parameter
Parameter | Deskripsi |
---|---|
xcode_config
|
wajib Penyedia yang berisi informasi tentang konfigurasi xcode. |
apple_ Pelajari
apple_toolchain apple_common.apple_toolchain()Utilitas untuk menyelesaikan item dari apple toolchain.
AppleDebugOutput
Provider apple_common.AppleDebugOutputsKonstruktor/kunci untuk penyedia
AppleDebugOutputs
.Jika target menyebarkan penyedia AppleDebugOutputs
, gunakan ini sebagai kunci yang akan digunakan untuk mengambilnya. Contoh:
dep = ctx.attr.deps[0] p = dep[apple_common.AppleDebugOutputs]
AppleDynamicFramework
Provider apple_common.AppleDynamicFrameworkKonstruktor/kunci untuk penyedia
AppleDynamicFramework
.Jika target menyebarkan penyedia AppleDynamicFramework
, gunakan ini sebagai kunci yang akan digunakan untuk mengambilnya. Contoh:
dep = ctx.attr.deps[0] p = dep[apple_common.AppleDynamicFramework]
Biner Apple yang Dapat Dieksekusi
Provider apple_common.AppleExecutableBinaryKonstruktor/kunci untuk penyedia
AppleExecutableBinary
.Jika target menyebarkan penyedia AppleExecutableBinary
, gunakan ini sebagai kunci yang akan digunakan untuk mengambilnya. Contoh:
dep = ctx.attr.deps[0] p = dep[apple_common.AppleExecutableBinary]
titik-titik
DottedVersion apple_common.dotted_version(version)Membuat instance DottedVersion yang baru.
Parameter
Parameter | Deskripsi |
---|---|
version
|
wajib Representasi string DottedVersion. |
link_multi_arch_binary [link_multi_arch_link]
struct apple_common.link_multi_arch_binary(ctx, avoid_deps=None, extra_linkopts=[], extra_link_inputs=[], stamp=-1)Menautkan biner (berpotensi multi-arsitektur) yang menargetkan platform Apple. Metode ini terdiri dari sebagian besar logika aturan
apple_binary
Starlark di domain Rules_apple dan ada untuk membantu migrasi logika penautannya ke Starlark di Rules_apple.
API ini sangat eksperimental dan dapat berubah sewaktu-waktu. Jangan bergantung pada stabilitas fungsi ini untuk saat ini.
Parameter
Parameter | Deskripsi |
---|---|
ctx
|
wajib Konteks aturan Starlark. |
avoid_deps
|
sequence of Targets; or None ;
default = NoneDaftar Target yang ada di grafik dependensi biner, tetapi library-nya tidak boleh ditautkan ke biner. Hal ini berlaku untuk dependensi yang akan ditemukan saat runtime di gambar lain, seperti loader paket atau library/framework dinamis yang akan dimuat oleh biner ini.
|
extra_linkopts
|
sequence of strings ;
default = []Linkopt tambahan akan diteruskan ke tindakan penaut. |
extra_link_inputs
|
sequence of Files ;
default = []File tambahan untuk diteruskan ke tindakan penaut. |
stamp
|
default = -1 Apakah menyertakan informasi build dalam biner tertaut. Jika 1, informasi build selalu disertakan. Jika 0, informasi build selalu dikecualikan. Jika -1 (default), perilaku ditentukan oleh tanda stempel --[no]. Parameter ini harus ditetapkan ke 0 saat menghasilkan output yang dapat dieksekusi untuk aturan pengujian. |
link_multi_arch_static_library
struct apple_common.link_multi_arch_static_library(ctx)Menautkan library statis (berpotensi multi-arsitektur) yang menargetkan platform Apple. Metode ini terdiri dari bagian logika aturan
apple_static_library
Starlark, di domain Rules_apple dan disediakan untuk membantu migrasi logika penautannya ke Starlark dalam rules_apple.
API ini sangat eksperimental dan dapat berubah sewaktu-waktu. Jangan bergantung pada stabilitas fungsi ini untuk saat ini.
Parameter
Parameter | Deskripsi |
---|---|
ctx
|
wajib Konteks aturan Starlark. |
pemisahan_arch_multi
SplitTransitionProviderApi apple_common.multi_arch_splitTransisi konfigurasi untuk atribut aturan guna membuat dependensi di satu atau beberapa platform Apple.
Penggunaan transisi ini mengharuskan atribut string 'platform_type' dan 'minimum_os_version' ditentukan dan diwajibkan pada aturan.
Nilai atribut platform_type akan menentukan arsitektur target yang akan membuat dependensi di sepanjang transisi konfigurasi ini.
Opsi yang tersedia:
ios
: arsitektur yang dikumpulkan dari--ios_multi_cpus
.macos
: arsitektur yang dikumpulkan dari--macos_cpus
.tvos
: arsitektur yang dikumpulkan dari--tvos_cpus
.watchos
: arsitektur yang dikumpulkan dari--watchos_cpus
.
minimum_os_version harus berupa string versi bertitik seperti '7.3', dan digunakan untuk menyetel sistem operasi minimum pada konfigurasi dengan cara yang sama berdasarkan jenis platform. Misalnya, menetapkan platform_type 'ios' dan minimum_os_version '8.0' akan memastikan bahwa dependensi dibuat dengan versi iOS minimum '8.0'.
penyedia_framework_baru
AppleDynamicFramework apple_common.new_dynamic_framework_provider(binary=None, cc_info=None, objc=None, framework_dirs=None, framework_files=None)Membuat instance penyedia AppleDynamicFramework baru.
Parameter
Parameter | Deskripsi |
---|---|
binary
|
File; or None ;
default = NoneArtefak biner dylib dari framework dinamis. |
cc_info
|
default = None CcInfo yang berisi informasi tentang dependensi transitif yang ditautkan ke biner. |
objc
|
default = None ObjcProvider yang berisi informasi tentang dependensi transitif yang ditautkan ke biner. |
framework_dirs
|
depset of strings; or None ;
default = NoneNama jalur framework yang digunakan sebagai input link untuk ditautkan dengan framework dinamis. |
framework_files
|
depset of Files; or None ;
default = NoneKumpulan artefak lengkap yang harus disertakan sebagai input untuk ditautkan dengan framework dinamis |
penyedia_biner_baru_yang_dapat_dijalankan
AppleExecutableBinary apple_common.new_executable_binary_provider(binary=None, cc_info=None, objc=None)Membuat instance penyedia AppleExecutableBinaryInfo baru.
Parameter
Parameter | Deskripsi |
---|---|
binary
|
File; or None ;
default = NoneArtefak biner dari file yang dapat dieksekusi. |
cc_info
|
default = None CcInfo yang berisi informasi tentang dependensi transitif yang ditautkan ke biner. |
objc
|
default = None ObjcProvider yang berisi informasi tentang dependensi transitif yang ditautkan ke biner. |
penyedia_objc_baru
ObjcProvider apple_common.new_objc_provider(**kwargs)Membuat instance ObjcProvider baru.
Parameter
Parameter | Deskripsi |
---|---|
kwargs
|
default = {} Kamus argumen. |
Objc
Provider apple_common.ObjcKonstruktor/kunci untuk penyedia
Objc
.Jika target menyebarkan penyedia Objc
, gunakan ini sebagai kunci yang akan digunakan untuk mengambilnya. Contoh:
dep = ctx.attr.deps[0] p = dep[apple_common.Objc]
platform
struct apple_common.platformStruktur seperti enum yang berisi kolom berikut yang sesuai dengan platform Apple:
ios_device
ios_simulator
macos
tvos_device
tvos_simulator
watchos_device
watchos_simulator
Nilai ini dapat diteruskan ke metode yang mengharapkan platform, seperti XcodeVersionConfig.sdk_version_for_platform.
platform_type
struct apple_common.platform_typeStruktur seperti enum yang berisi kolom berikut yang sesuai dengan jenis platform Apple:
ios
macos
tvos
watchos
Nilai ini dapat diteruskan ke metode yang mengharapkan jenis platform, seperti metode multi_arch_platform fragmen konfigurasi 'apple'.
Contoh:
ctx.fragments.apple.multi_arch_platform(apple_common.platform_type.ios)
en__target_apel
dict apple_common.target_apple_env(xcode_config, platform)Menampilkan
dict
variabel lingkungan yang harus ditetapkan untuk tindakan yang membuat target jenis platform Apple tertentu. Misalnya, kamus ini berisi variabel yang menunjukkan nama platform dan versi SDK yang digunakan untuk mem-build. Kunci adalah nama variabel dan nilainya adalah nilai yang sesuai.
Parameter
Parameter | Deskripsi |
---|---|
xcode_config
|
wajib Penyedia yang berisi informasi tentang konfigurasi xcode. |
platform
|
wajib Platform Apple. |
XcodeProperties
Provider apple_common.XcodePropertiesKonstruktor/kunci untuk penyedia
XcodeVersionProperties
.Jika target menyebarkan penyedia XcodeVersionProperties
, gunakan ini sebagai kunci yang akan digunakan untuk mengambilnya. Contoh:
dep = ctx.attr.deps[0] p = dep[apple_common.XcodeVersionProperties]
XcodeVersionConfig
Provider apple_common.XcodeVersionConfigKonstruktor/kunci untuk penyedia
XcodeVersionConfig
.