Kurallar
j2objc_library
Kural kaynağını görüntülej2objc_library(name, deps, compatible_with, deprecation, distribs, entry_classes, exec_compatible_with, exec_properties, features, jre_deps, restricted_to, tags, target_compatible_with, testonly, toolchains, visibility)
Bu kural, Java kaynağını çevirmek için J2ObjC kodunu kullanır. dosyalarını Objective-C'ye kopyalayın. Bu dosyalar daha sonra objc_library ve objc_binary bağımlıları olarak kullanılabilir. kurallar. J2ObjC hakkında ayrıntılı bilgi için şu adrese gidin: J2ObjC sitesi
Özel J2ObjC dönüştürme işaretleri, derleme işareti kullanılarak belirtilebilir
--j2objc_translation_flags
komut satırı işaretini kullanabilir.
j2objc_library hedefinde yer alan çevrilmiş dosyaların varsayılan derleme yapılandırması kullanılarak derlenen, özelliklerde derleme seçeneği belirtilmemiş bir objc_library kuralı.
Ayrıca, oluşturulan kod kaynak düzeyinde değil, hedef düzeyde tekilleştirilir. İki aynı Java kaynak dosyalarını içeren farklı Java hedefleri varsa, yinelenen simge hatası bağlantı anında. Bu sorunu çözmenin doğru yolu, paylaşılan Java kaynak dosyalarını bir ortak hedef belirleyin.
Bağımsız değişkenler
Özellikler | |
---|---|
name |
Ad; zorunlu Bu hedef için benzersiz bir ad. |
deps
|
Etiket listesi; varsayılan değer j2objc_library , java_library ,
Şunları içeren java_import ve java_proto_library hedefleri
Objective-C'ye aktarılacak Java dosyaları.
Ulaşılabilecek tüm J2ObjC çevirisi, kaynak Java kaynağının türüne bağlı olarak farklı şekilde çalışır
dosyaları geçişli kapatmaya dahil edilir.
Kullanıcılar, J2ObjC tarafından oluşturulan başlık dosyalarını kodlarına aktarabilir. Şu verilerin içe aktarma yolları:
bu dosyalar, orijinal Java yapılarının köke bağlı yoludur. Örneğin,
proto_library kuralları bu kuralın geçişli kapanışındaysa J2ObjC proto'ları da
ikili düzeyde oluşturulması, derlenmesi ve bağlanmasını sağlamak. Proto için
|
entry_classes
|
Dize listesi; varsayılan değer --j2objc_dead_code_removal
bayrağı açıksa bu özellik gereklidir. Java sınıfları, aşağıdaki gibi standart adlarıyla belirtilmelidir:
Java
Dil Spesifikasyonu.
--j2objc_dead_code_removal işareti belirtildiğinde giriş sınıflarının listesi
geçişli olarak toplanır ve geçersiz kod analizi yapmak için giriş noktaları olarak kullanılır.
Kullanılmayan sınıflar nihai ObjC uygulama paketinden kaldırılır.
|
jre_deps
|
Etiket listesi; varsayılan değer j2objc_library kural. Varsayılan olarak yalnızca temel JRE işlevleri bağlıdır.
|
objc_import
Kural kaynağını görüntüleobjc_import(name, deps, hdrs, alwayslink, archives, compatible_with, deprecation, distribs, exec_compatible_with, exec_properties, features, includes, restricted_to, sdk_dylibs, sdk_frameworks, sdk_includes, tags, target_compatible_with, testonly, textual_hdrs, toolchains, visibility, weak_sdk_frameworks)
Bu kural, önceden derlenmiş bir statik kitaplığı
.a
dosyası yükleyin. Ayrıca aynı
özellikler objc_library
tarafından desteklenir.
Bağımsız değişkenler
Özellikler | |
---|---|
name |
Ad; zorunlu Bu hedef için benzersiz bir ad. |
deps
|
Etiket listesi; varsayılan değer |
hdrs
|
Etiket listesi; varsayılan değer Bu başlıklar kütüphanenin herkese açık arayüzünü tanımlar ve bu kuraldaki kaynaklar tarafından veya bağımlı kurallar. Üstbilgiler, bu kitaplığın bir istemcisi tarafından eklenmek üzere tasarlanmamıştır srcs özelliğinde listelenmesi gerekir. Modüller etkinse bunlar kaynaktan ayrı olarak derlenir. |
alwayslink
|
Boole; varsayılan değer srcs ve non_arc_srcs
iki simgeli dosya biçimi tarafından başvurulmuştur.
Bu, kodunuz yalnızca dil tercihinde kod tarafından
kodu alır. Örneğin, kodunuz bir geri çağırma işlemi almak için kaydedilir
bir hizmet tarafından sağlanır.
|
archives
|
Etiket listesi; zorunlu Objective-C hedeflerine sağlanan.a dosyalarının listesi
bu hedefe bağlıdır.
|
includes
|
Dize listesi; varsayılan değer #include/#import arama yolunun listesi
hedeflere bağlı olarak değişiyor.
Bu, çalışmayan üçüncü taraf ve açık kaynaklı
çalışma alanı yolunun tamamını
#import/#include ifadeleri.
Yollar, paket dizinine göre yorumlanır ve
gendosyaları ve bin kökleri (ör. COPTS'nin aksine, bu işaretler bu kural için eklenir ona bağlı tüm kuralları görebiliriz. (Not: Bu kuralların bağlı olduğu kurallar değildir.) geniş kapsamlı etkileri olabileceği için dikkatli olun. Şüpheye düştüğünüzde "-alıntı" COPTS olarak işaretler. |
sdk_dylibs
|
Dize listesi; varsayılan değer |
sdk_frameworks
|
Dize listesi; varsayılan değer Üst düzey bir Apple ikili programına bağlanırken, söz konusu ikili programın geçişli bağımlılık grafikleri bağlantılıdır. |
sdk_includes
|
Dize listesi; varsayılan değer #include/#import arama yolunun listesi
ve her yolun göreceli olduğu hedeflere bağlı olarak
$(SDKROOT)/usr/include .
|
textual_hdrs
|
Etiket listesi; varsayılan değer |
weak_sdk_frameworks
|
Dize listesi; varsayılan değer |
objc_library
Kural kaynağını görüntüleobjc_library(name, deps, srcs, data, hdrs, alwayslink, compatible_with, copts, defines, deprecation, distribs, enable_modules, exec_compatible_with, exec_properties, features, implementation_deps, includes, linkopts, module_map, module_name, non_arc_srcs, pch, restricted_to, sdk_dylibs, sdk_frameworks, sdk_includes, stamp, tags, target_compatible_with, testonly, textual_hdrs, toolchains, visibility, weak_sdk_frameworks)
Bu kural, belirtilen Objective-C kaynak dosyalarından statik bir kitaplık oluşturur.
Bağımsız değişkenler
Özellikler | |
---|---|
name |
Ad; zorunlu Bu hedef için benzersiz bir ad. |
deps
|
Etiket listesi; varsayılan değer |
srcs
|
Etiket listesi; varsayılan değer |
hdrs
|
Etiket listesi; varsayılan değer Bu başlıklar kütüphanenin herkese açık arayüzünü tanımlar ve bu kuraldaki kaynaklar tarafından veya bağımlı kurallar. Üstbilgiler, bu kitaplığın bir istemcisi tarafından eklenmek üzere tasarlanmamıştır srcs özelliğinde listelenmesi gerekir. Modüller etkinse bunlar kaynaktan ayrı olarak derlenir. |
alwayslink
|
Boole; varsayılan değer srcs ve non_arc_srcs
iki simgeli dosya biçimi tarafından başvurulmuştur.
Bu, kodunuz yalnızca dil tercihinde kod tarafından
kodu alır. Örneğin, kodunuz bir geri çağırma işlemi almak için kaydedilir
bir hizmet tarafından sağlanır.
|
copts
|
Dize listesi; varsayılan değer Oluşturulan Xcode projesi için dizin yollarının "-I" kullanılarak belirtildiğini unutmayın. CANNOT TRANSLATE copt'ler ayrıştırılır, başına "$(WORKSPACE_ROOT)/" eklenir Bunlar göreli yollar olup olmadığı ve eklenen Xcode hedefi için başlık arama yollarına eklenir. |
defines
|
Dize listesi; varsayılan değer -D işaretleri. Bu dillerin
KEY=VALUE veya sadece KEY
yalnızca bu hedef için derleyiciye iletmekle kalmaz (copts olarak
aynı zamanda bu hedefin tüm objc_ bağımlıları için de geçerlidir.
"Değişken yap" değişikliğine tabi ve
Bourne kabuk belirteçleme.
|
enable_modules
|
Boole; varsayılan değer |
implementation_deps
|
Etiket listesi; varsayılan değer deps , üstbilgilerini içerir ve bu kitaplıkların (ve tüm
geçişli dep'ler) yalnızca bu kitaplığın derlenmesi için kullanılır,
ona güvenmeniz gerekir. implementation_deps ile belirtilen kitaplıklar hâlâ bağlı
bu kitaplığa bağımlı ikili hedeflerindedir.
|
includes
|
Dize listesi; varsayılan değer #include/#import arama yolunun listesi
hedeflere bağlı olarak değişiyor.
Bu, çalışmayan üçüncü taraf ve açık kaynaklı
çalışma alanı yolunun tamamını
#import/#include ifadeleri.
Yollar, paket dizinine göre yorumlanır ve
gendosyaları ve bin kökleri (ör. COPTS'nin aksine, bu işaretler bu kural için eklenir ona bağlı tüm kuralları görebiliriz. (Not: Bu kuralların bağlı olduğu kurallar değildir.) geniş kapsamlı etkileri olabileceği için dikkatli olun. Şüpheye düştüğünüzde "-alıntı" COPTS olarak işaretler. |
linkopts
|
Dize listesi; varsayılan değer |
module_map
|
Etiket; varsayılan değer |
module_name
|
String; varsayılan değer |
non_arc_srcs
|
Etiket listesi; varsayılan değer |
pch
|
Etiket; varsayılan değer |
sdk_dylibs
|
Dize listesi; varsayılan değer |
sdk_frameworks
|
Dize listesi; varsayılan değer Üst düzey bir Apple ikili programına bağlanırken, söz konusu ikili programın geçişli bağımlılık grafikleri bağlantılıdır. |
sdk_includes
|
Dize listesi; varsayılan değer #include/#import arama yolunun listesi
ve her yolun göreceli olduğu hedeflere bağlı olarak
$(SDKROOT)/usr/include .
|
stamp
|
Boole; varsayılan değer |
textual_hdrs
|
Etiket listesi; varsayılan değer |
weak_sdk_frameworks
|
Dize listesi; varsayılan değer |