Starlark が Apple ルールの実装の内部にアクセスするための関数。
メンバー
- apple_host_system_env
- apple_toolchain
- AppleDebugOutputs
- AppleDynamicFramework
- AppleExecutableBinary
- dotted_version
- link_multi_arch_binary
- link_multi_arch_static_library
- 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)
パラメータ
パラメータ | 説明 |
---|---|
xcode_config
|
必須 xcode 構成に関する情報を含むプロバイダ。 |
apple_toolchain
apple_toolchain apple_common.apple_toolchain()
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)
パラメータ
パラメータ | 説明 |
---|---|
version
|
必須 DottedVersion の文字列表現。 |
link_multi_arch_binary
struct apple_common.link_multi_arch_binary(ctx, avoid_deps=None, extra_linkopts=[], extra_link_inputs=[], extra_requested_features=[], extra_disabled_features=[], stamp=-1)
apple_binary
ルールのロジックの大部分を構成し、リンク ロジックを rules_apple の Starlark に移行するために存在します。この API は試験運用版であり、随時変更される可能性があります。現時点では、この関数の安定性に依存しないでください。
パラメータ
パラメータ | 説明 |
---|---|
ctx
|
必須 Starlark ルールのコンテキスト。 |
avoid_deps
|
ターゲットのシーケンス、または None 。デフォルトは None 。バイナリの依存関係グラフに含まれるが、ライブラリをバイナリにリンクしない Target のリスト。これは、バンドル ローダーや、このバイナリによって読み込まれる動的ライブラリやフレームワークなど、別のイメージで実行時に検出される依存関係の場合です。
|
extra_linkopts
|
文字列のシーケンス。デフォルトは [] 。リンカー アクションに渡される追加の linkopts。 |
extra_link_inputs
|
ファイルのシーケンス。デフォルトは [] 。リンカー アクションに渡す追加のファイル。 |
extra_requested_features
|
文字列のシーケンス。デフォルトは [] 。リンカー アクションに渡される追加のリクエストされた機能。 |
extra_disabled_features
|
文字列のシーケンス。デフォルトは [] 。リンカー アクションに渡される追加の無効な機能。 |
stamp
|
デフォルトは -1 リンクされたバイナリにビルド情報を含めるかどうか。1 の場合、ビルド情報は常に含まれます。0 の場合、ビルド情報は常に除外されます。-1(デフォルト)の場合、動作は --[no]stamp フラグによって決まります。テストルールの実行可能出力を生成する場合は、0 に設定する必要があります。 |
link_multi_arch_static_library
struct apple_common.link_multi_arch_static_library(ctx)
apple_static_library
ルールロジックの一部を構成し、rules_apple の Starlark へのリンク ロジックの移行を支援するために存在します。この API は試験運用版であり、随時変更される可能性があります。現時点では、この関数の安定性に依存しないでください。
パラメータ
パラメータ | 説明 |
---|---|
ctx
|
必須 Starlark ルールのコンテキスト。 |
new_dynamic_framework_provider
AppleDynamicFramework apple_common.new_dynamic_framework_provider(binary=None, cc_info=None, objc=None, framework_dirs=None, framework_files=None)
パラメータ
パラメータ | 説明 |
---|---|
binary
|
ファイル、または None 。デフォルトは None 。ダイナミック フレームワークの dylib バイナリ アーティファクト。 |
cc_info
|
デフォルトは None バイナリにリンクされた伝播依存関係に関する情報が含まれる CcInfo。 |
objc
|
デフォルトは None バイナリにリンクされた伝播依存関係に関する情報を含む ObjcProvider。 |
framework_dirs
|
文字列の depset、または None 。デフォルトは None 。ダイナミック フレームワークに対してリンクするためにリンク入力として使用されるフレームワーク パス名。 |
framework_files
|
ファイルの depset、または None 。デフォルトは None 。動的なフレームワークに対してリンクするために入力として含める必要があるアーティファクトの完全なセット。 |
new_executable_binary_provider
AppleExecutableBinary apple_common.new_executable_binary_provider(binary=None, cc_info=None, objc=None)
パラメータ
パラメータ | 説明 |
---|---|
binary
|
ファイル、または None (デフォルトは None )実行可能ファイルのバイナリ アーティファクト。 |
cc_info
|
デフォルトは None バイナリにリンクされた伝播依存関係に関する情報が含まれる CcInfo。 |
objc
|
デフォルトは None バイナリにリンクされた伝播依存関係に関する情報を含む ObjcProvider。 |
new_objc_provider
ObjcProvider apple_common.new_objc_provider(**kwargs)
パラメータ
パラメータ | 説明 |
---|---|
kwargs
|
デフォルトは {} 引数の辞書。 |
Objc
Provider apple_common.Objc
Objc
プロバイダのコンストラクタ/キー。ターゲットが Objc
プロバイダを伝播する場合は、このプロバイダを取得するキーとして使用します。(
など)に置き換えます。
dep = ctx.attr.deps[0] p = dep[apple_common.Objc]
プラットフォーム
struct apple_common.platform
ios_device
ios_simulator
macos
tvos_device
tvos_simulator
visionos_device
visionos_simulator
watchos_device
watchos_simulator
これらの値は、プラットフォームを想定するメソッド(XcodeVersionConfig.sdk_version_for_platform など)に渡すことができます。
platform_type
struct apple_common.platform_type
ios
macos
tvos
visionos
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)
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
プロバイダのコンストラクタ/キー。