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
- 객체
- 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
|
Target의 sequence 또는 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
|
string의 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
|
기본값은 {} 입니다.인수의 사전입니다. |
객체
Provider apple_common.Objc
Objc
제공자의 생성자/키입니다.타겟이 Objc
제공자를 전파하는 경우 이를 검색할 키로 사용합니다. 예:
dep = ctx.attr.deps[0] p = dep[apple_common.Objc]
platform
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
|
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
제공자의 생성자/키입니다.