メンバー
- 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_envtarget_apple_env
- XcodeProperties
- XcodeVersionConfig
apple_host_system_env
dict apple_common.apple_host_system_env(xcode_config)Apple ホストシステムでビルドツールを実行する必要があるアクション(使用すべき Xcode のバージョンなど)に設定する必要がある環境変数の辞書を返します。キーは変数名で、値は対応する値です。
パラメータ
パラメータ | 説明 |
---|---|
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
|
必須 Starlark ルールのコンテキスト。 |
avoid_deps
|
sequence of Targets; or None ;
デフォルト = Noneバイナリの依存関係グラフに存在するが、ライブラリをバイナリにリンクしない Target のリスト。たとえば、バンドル ローダや、このバイナリによって読み込まれる動的なライブラリ/フレームワークなど、実行時に別のイメージに存在する依存関係がこれに該当します。 |
extra_linkopts
|
sequence of strings ;
default = []リンカー アクションに渡される追加のリンクオプション。 |
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
|
default = None バイナリにリンクされている推移的依存関係に関する情報を含む CcInfo。 |
objc
|
required バイナリにリンクされている推移的依存関係に関する情報を含む 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]
プラットフォーム
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
プロバイダのコンストラクタ/キー。