ルール
objc_import
ルールソースを表示objc_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)
このルールは、すでにコンパイル済みの静的ライブラリを .a
ファイルの形式でカプセル化します。また、objc_library
でサポートされている同じ属性を使用して、ヘッダーとリソースをエクスポートすることもできます。
引数
属性 | |
---|---|
name |
名前: 必須 このターゲットの名前。 |
deps
|
ラベルのリスト。デフォルトは |
hdrs
|
ラベルのリスト。デフォルトは これらのヘッダーはライブラリの公開インターフェースを記述し、このルールまたは依存するルールのソースによって使用可能になります。このライブラリのクライアントが含める必要のないヘッダーは、代わりに srcs 属性に含める必要があります。 モジュールが有効になっている場合は、ソースとは別にコンパイルされます。 |
alwayslink
|
ブール値。デフォルトは srcs と non_arc_srcs にリストされているファイルのすべてのオブジェクト ファイルをリンクします。バイナリによって参照されるシンボルが含まれていない場合でも同様です。これは、コードがバイナリ内のコードによって明示的に呼び出されない場合(コードがサービスから提供されるコールバックを受け取るように登録されている場合など)に便利です。 |
archives
|
ラベルのリスト(必須) このターゲットに依存する Objective-C ターゲットに提供される.a ファイルのリスト。 |
includes
|
文字列のリスト。デフォルトは #include/#import 検索パスのリスト。これは、#import/#include ステートメントでワークスペース パス全体を指定しないサードパーティ ライブラリとオープンソース ライブラリをサポートするためのものです。
パスはパッケージ ディレクトリを基準に解釈され、実際のクライアント ルートに加えて、genfiles ルートおよび bin ルート( COPTS とは異なり、これらのフラグは、このルールとそれに依存するすべてのルールに追加されます。(注: 依存するルールではありません)。影響が広範囲に及ぶ可能性があるため、十分に注意してください。不明な場合は、代わりに COPTS に「-iquote」フラグを追加します。 |
sdk_dylibs
|
文字列のリスト。デフォルトは |
sdk_frameworks
|
文字列のリスト。デフォルトは 最上位の Apple バイナリをリンクすると、そのバイナリの伝播依存関係グラフにリストされているすべての SDK フレームワークがリンクされます。 |
sdk_includes
|
文字列のリスト。デフォルトは #include/#import 検索パスのリスト。各パスは $(SDKROOT)/usr/include からの相対パスです。 |
textual_hdrs
|
ラベルのリスト。デフォルトは |
weak_sdk_frameworks
|
文字列のリスト。デフォルトは |
objc_library
ルールソースを表示objc_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)
このルールは、指定された Objective-C ソースファイルから静的ライブラリを生成します。
引数
属性 | |
---|---|
name |
名前: 必須 このターゲットの名前。 |
deps
|
ラベルのリスト。デフォルトは |
srcs
|
ラベルのリスト。デフォルトは |
hdrs
|
ラベルのリスト。デフォルトは これらのヘッダーはライブラリの公開インターフェースを記述し、このルールまたは依存するルールのソースによって使用可能になります。このライブラリのクライアントが含める必要のないヘッダーは、代わりに srcs 属性に含める必要があります。 モジュールが有効になっている場合は、ソースとは別にコンパイルされます。 |
alwayslink
|
ブール値。デフォルトは srcs と non_arc_srcs にリストされているファイルのすべてのオブジェクト ファイルをリンクします。バイナリによって参照されるシンボルが含まれていない場合でも同様です。これは、コードがバイナリ内のコードによって明示的に呼び出されない場合(コードがサービスから提供されるコールバックを受け取るように登録されている場合など)に便利です。 |
copts
|
文字列のリスト。デフォルトは 生成された Xcode プロジェクトの場合、copts で「-I」フラグを使用して指定されたディレクトリパスは解析され、相対パスの場合は「$(WORKSPACE_ROOT)/」が先頭に追加され、関連する Xcode ターゲットのヘッダー検索パスに追加されます。 |
defines
|
文字列のリスト。デフォルトは -D フラグ。KEY=VALUE 形式または単純に KEY 形式で、このターゲットのコンパイラ(copts の場合と同様に)だけでなく、このターゲットのすべての objc_ 依存関係にも渡されます。「変数を作成」の置換と Bourne シェルのトークン化の対象となります。 |
enable_modules
|
ブール値。デフォルトは |
implementation_deps
|
ラベルのリスト。デフォルトは deps とは異なり、これらのライブラリのヘッダーとインクルードパス(およびそれらのすべての伝播依存関係)は、このライブラリのコンパイルにのみ使用され、このライブラリに依存するライブラリには使用されません。implementation_deps で指定されたライブラリは、このライブラリに依存するバイナリ ターゲットでも引き続きリンクされます。 |
includes
|
文字列のリスト。デフォルトは #include/#import 検索パスのリスト。これは、#import/#include ステートメントでワークスペース パス全体を指定しないサードパーティ ライブラリとオープンソース ライブラリをサポートするためのものです。
パスはパッケージ ディレクトリを基準に解釈され、実際のクライアント ルートに加えて、genfiles ルートおよび bin ルート( COPTS とは異なり、これらのフラグは、このルールとそれに依存するすべてのルールに追加されます。(注: 依存するルールではありません)。影響が広範囲に及ぶ可能性があるため、十分に注意してください。不明な場合は、代わりに COPTS に「-iquote」フラグを追加します。 |
linkopts
|
文字列のリスト。デフォルトは |
module_map
|
ラベル(デフォルトは |
module_name
|
文字列。デフォルトは |
non_arc_srcs
|
ラベルのリスト。デフォルトは |
pch
|
ラベル(デフォルトは |
sdk_dylibs
|
文字列のリスト。デフォルトは |
sdk_frameworks
|
文字列のリスト。デフォルトは 最上位の Apple バイナリをリンクすると、そのバイナリの伝播依存関係グラフにリストされているすべての SDK フレームワークがリンクされます。 |
sdk_includes
|
文字列のリスト。デフォルトは #include/#import 検索パスのリスト。各パスは $(SDKROOT)/usr/include からの相対パスです。 |
stamp
|
ブール値。デフォルトは |
textual_hdrs
|
ラベルのリスト。デフォルトは |
weak_sdk_frameworks
|
文字列のリスト。デフォルトは |