メンバー
- 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_type
- target_apple_env
- XcodeProperties
- XcodeVersionConfig
apple_host_system_env
dict apple_common.apple_host_system_env(xcode_config)Apple ホストシステムでビルドツールを実行する必要があるアクション(使用すべき Xcode のバージョンなど)に設定する必要がある環境変数の辞書を返します。キーは変数名で、値は対応する値です。
パラメータ
パラメータ | 説明 |
---|---|
xcode_config
|
必須 Xcode 構成に関する情報を含むプロバイダ。 |
apple_toolchain
apple_toolchain apple_common.apple_toolchain()Apple ツールチェーンのアイテムを解決するためのユーティリティ。
AppleDebugOutputs
Provider apple_common.AppleDebugOutputs
AppleDebugOutputs
プロバイダのコンストラクタまたはキー。ターゲットが AppleDebugOutputs
プロバイダを伝播する場合は、これを取得用のキーとして使用します。例:
dep = ctx.attr.deps[0] p = dep[apple_common.AppleDebugOutputs]
AppleDynamicFramework
Provider apple_common.AppleDynamicFramework
AppleDynamicFramework
プロバイダのコンストラクタまたはキー。ターゲットが AppleDynamicFramework
プロバイダを伝播する場合は、これを取得用のキーとして使用します。例:
dep = ctx.attr.deps[0] p = dep[apple_common.AppleDynamicFramework]
AppleExecutableBinary
Provider apple_common.AppleExecutableBinary
AppleExecutableBinary
プロバイダのコンストラクタまたはキー。ターゲットが AppleExecutableBinary
プロバイダを伝播する場合は、これを取得用のキーとして使用します。例:
dep = ctx.attr.deps[0] p = dep[apple_common.AppleExecutableBinary]
dotted_version
DottedVersion apple_common.dotted_version(version)新しい DottedVersion インスタンスを作成します。
パラメータ
パラメータ | 説明 |
---|---|
version
|
必須 DottedVersion の文字列表現。 |
link_multi_arch_binary
struct apple_common.link_multi_arch_binary(ctx, avoid_deps=None, extra_linkopts=[], extra_link_inputs=[], stamp=-1)Apple プラットフォームをターゲットとするバイナリ(場合によってはマルチアーキテクチャ)をリンクします。このメソッドは、rules_apple ドメインの Starlark
apple_binary
ルールのロジックの大部分で構成されており、rules_apple の Starlark へのリンクロジックの移行を支援するために存在します。
この API は試験運用版であり、いつでも変更される可能性があります。現時点では、この関数の安定性に依存しないでください。
パラメータ
パラメータ | 説明 |
---|---|
ctx
|
必須 Starlark ルールのコンテキスト。 |
avoid_deps
|
sequence of Targets; or None 、
デフォルト = Noneバイナリの依存関係グラフにあり、ライブラリをバイナリにリンクすべきでない Target のリスト。バンドル ローダや、このバイナリによって読み込まれる動的なライブラリ/フレームワークなど、実行時に別のイメージに存在する依存関係がこれに該当します。
|
extra_linkopts
|
sequence of strings 、
デフォルト = []リンカー アクションに渡される追加の linkopt。 |
extra_link_inputs
|
sequence of Files 、
デフォルト = []リンカー アクションに渡す追加のファイル。 |
stamp
|
デフォルト = -1 リンクされたバイナリにビルド情報を含めるかどうか。1 の場合、ビルド情報は常に含まれます。0 の場合、ビルド情報は常に除外されます。-1(デフォルト)の場合、動作は --[no]stamp フラグによって決まります。テストルールの実行可能出力を生成するときは、0 に設定する必要があります。 |
link_multi_arch_static_library
struct apple_common.link_multi_arch_static_library(ctx)Apple プラットフォームをターゲットとする(場合によってはマルチアーキテクチャの)静的ライブラリをリンクします。このメソッドは、rules_apple ドメインの Starlark
apple_static_library
ルールロジックの一部で構成され、リンクロジックを rules_apple の Starlark に移行するために存在します。
この API は試験運用版であり、いつでも変更される可能性があります。現時点では、この関数の安定性に依存しないでください。
パラメータ
パラメータ | 説明 |
---|---|
ctx
|
必須 Starlark ルールのコンテキスト。 |
multi_arch_split
SplitTransitionProviderApi apple_common.multi_arch_split1 つ以上の Apple プラットフォームで依存関係を構築するためのルール属性の構成の移行。
この移行を使用するには、「platform_type」属性で「minimum_os_version」文字列属性が定義されていて、ルールでは必須です。
platform_type 属性の値により、この構成の遷移に伴う依存関係をビルドするターゲット アーキテクチャが決まります。
次の選択肢があります。
ios
:--ios_multi_cpus
から収集されたアーキテクチャ。macos
:--macos_cpus
から収集されたアーキテクチャ。tvos
:--tvos_cpus
から収集されたアーキテクチャ。watchos
:--watchos_cpus
から収集されたアーキテクチャ。
minimum_os_version には「7.3」などのドット付きバージョン文字列を指定します。プラットフォーム タイプに基づいて、構成で最小オペレーティング システムを設定するためにこれを使用します。たとえば、platform_type に 'ios' を指定して、および minimum_os_version '8.0'これにより、依存関係が最小の iOS バージョン「8.0」でビルドされるようになります。
new_dynamic_framework_provider
AppleDynamicFramework apple_common.new_dynamic_framework_provider(binary=None, cc_info=None, objc, framework_dirs=None, framework_files=None)新しい AppleDynamicFramework プロバイダ インスタンスを作成します。
パラメータ
パラメータ | 説明 |
---|---|
binary
|
File; or None 、
デフォルト = None動的フレームワークの dylib バイナリ アーティファクト。 |
cc_info
|
デフォルト = None バイナリにリンクされている推移的依存関係に関する情報を含む CcInfo。 |
objc
|
必須 バイナリにリンクされている推移的依存関係に関する情報を含む ObjcProvider。 |
framework_dirs
|
depset of strings; or None 、
デフォルト = None動的フレームワークにリンクするためにリンク入力として使用されるフレームワーク パス名。 |
framework_files
|
depset of Files; or None 、
デフォルト = None動的フレームワークにリンクするための入力として含める必要があるアーティファクトの完全なセット |
new_executable_binary_provider
AppleExecutableBinary apple_common.new_executable_binary_provider(binary=None, cc_info=None, objc)新しい AppleExecutableBinaryInfo プロバイダ インスタンスを作成します。
パラメータ
パラメータ | 説明 |
---|---|
binary
|
File; or None 、
デフォルト = None実行可能ファイルのバイナリ アーティファクト。 |
cc_info
|
デフォルト = None バイナリにリンクされている推移的依存関係に関する情報を含む CcInfo。 |
objc
|
必須 バイナリにリンクされている推移的依存関係に関する情報を含む ObjcProvider。 |
new_objc_provider
ObjcProvider apple_common.new_objc_provider(**kwargs)新しい ObjcProvider インスタンスを作成します。
パラメータ
パラメータ | 説明 |
---|---|
kwargs
|
default = {} 引数の辞書。 |
Objc
Provider apple_common.Objc
Objc
プロバイダのコンストラクタまたはキー。ターゲットが Objc
プロバイダを伝播する場合は、これを取得用のキーとして使用します。例:
dep = ctx.attr.deps[0] p = dep[apple_common.Objc]
platform
struct apple_common.platformApple プラットフォームに対応する次のフィールドを含む列挙型のような構造体:
ios_device
ios_simulator
macos
tvos_device
tvos_simulator
watchos_device
watchos_simulator
これらの値は、XcodeVersionConfig.sdk_version_for_platform のように、プラットフォームを想定しているメソッドに渡すことができます。
platform_type
struct apple_common.platform_typeApple のプラットフォーム タイプに対応する次のフィールドを含む列挙型のような構造体:
ios
macos
tvos
watchos
これらの値は、「apple」など、プラットフォーム タイプを必要とするメソッドに渡すことができます。設定フラグメントの multi_arch_platform メソッドに追加してください。
例:
ctx.fragments.apple.multi_arch_platform(apple_common.platform_type.ios)
target_apple_env
dict apple_common.target_apple_env(xcode_config, platform)指定された Apple プラットフォーム タイプのターゲットをビルドするアクションに設定する必要がある環境変数の
dict
を返します。たとえば、このディクショナリには、ビルドに使用するプラットフォーム名と SDK バージョンを示す変数が含まれています。キーは変数名で、値は対応する値です。
パラメータ
パラメータ | 説明 |
---|---|
xcode_config
|
必須 Xcode 構成に関する情報を含むプロバイダ。 |
platform
|
必須 Apple のプラットフォーム。 |
XcodeProperties
Provider apple_common.XcodeProperties
XcodeVersionProperties
プロバイダのコンストラクタまたはキー。ターゲットが XcodeVersionProperties
プロバイダを伝播する場合は、これを取得用のキーとして使用します。例:
dep = ctx.attr.deps[0] p = dep[apple_common.XcodeVersionProperties]
XcodeVersionConfig
Provider apple_common.XcodeVersionConfig
XcodeVersionConfig
プロバイダのコンストラクタまたはキー。