メンバー
- 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 ホストシステムでビルドツールを実行する必要があるアクション(使用する Xcode のバージョンなど)に設定する必要がある環境変数の dict を返します。キーは変数名で、値は対応する値です。
パラメータ
パラメータ | 説明 |
---|---|
xcode_config
|
required 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
|
required 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
|
required Starlark ルールのコンテキスト。 |
avoid_deps
|
sequence of Targets; or None ;
default = Noneバイナリの依存関係グラフには存在するものの、そのライブラリをバイナリにリンクすべきでない Target のリスト。これは、実行時に別のイメージで検出される依存関係(バンドル ローダーや、このバイナリによって読み込まれる動的ライブラリ/フレームワークなど)に該当します。
|
extra_linkopts
|
sequence of strings ;
default = []リンカー アクションに渡される追加の linkopt です。 |
extra_link_inputs
|
sequence of Files ;
default = []リンカー アクションに渡す追加のファイル。 |
stamp
|
default = -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
|
required 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 ;
default = None動的フレームワークの dylib バイナリ アーティファクト。 |
cc_info
|
default = None バイナリにリンクされている推移的依存関係に関する情報を含む CcInfo。 |
objc
|
required バイナリにリンクされた推移的依存関係に関する情報を含む ObjcProvider。 |
framework_dirs
|
depset of strings; or None ;
default = None動的フレームワークにリンクするため、リンク入力として使用されるフレームワーク パス名。 |
framework_files
|
depset of Files; or None ;
default = None動的フレームワークにリンクする入力として含める必要があるアーティファクトの完全なセット |
new_executable_binary_provider
AppleExecutableBinary apple_common.new_executable_binary_provider(binary=None, cc_info=None, objc)新しい AppleExecutableBinaryInfo プロバイダ インスタンスを作成します。
パラメータ
パラメータ | 説明 |
---|---|
binary
|
File; or None ;
default = None実行可能ファイルのバイナリ アーティファクト。 |
cc_info
|
default = None バイナリにリンクされている推移的依存関係に関する情報を含む CcInfo。 |
objc
|
required バイナリにリンクされた推移的依存関係に関する情報を含む ObjcProvider。 |
new_objc_provider
ObjcProvider apple_common.new_objc_provider(**kwargs)新しい ObjcProvider インスタンスを作成します。
パラメータ
パラメータ | 説明 |
---|---|
kwargs
|
default = {} 引数の辞書。 |
オブジェクト
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
|
required xcode 構成に関する情報を含むプロバイダ。 |
platform
|
required Apple のプラットフォーム。 |
XcodeProperties
Provider apple_common.XcodeProperties
XcodeVersionProperties
プロバイダのコンストラクタまたはキー。ターゲットが XcodeVersionProperties
プロバイダを伝播する場合は、これを取得するキーとして使用します。例:
dep = ctx.attr.deps[0] p = dep[apple_common.XcodeVersionProperties]
XcodeVersionConfig
Provider apple_common.XcodeVersionConfig
XcodeVersionConfig
プロバイダのコンストラクタとキー。