규칙
objc_import
규칙 소스 보기objc_import(name, deps, hdrs, alwayslink, archives, compatible_with, deprecation, distribs, exec_compatible_with, exec_properties, features, includes, restricted_to, sdk_dylibs, sdk_frameworks, sdk_includes, tags, target_compatible_with, testonly, textual_hdrs, toolchains, visibility, weak_sdk_frameworks)
이 규칙은 이미 컴파일된 정적 라이브러리를 .a
파일 형식으로 캡슐화합니다. 또한 objc_library
에서 지원하는 것과 동일한 속성을 사용하여 헤더와 리소스를 내보낼 수 있습니다.
인수
속성 | |
---|---|
name |
이름: 필수사항 이 타겟의 고유한 이름입니다. |
deps
|
라벨 목록입니다. 기본값은 |
hdrs
|
라벨 목록입니다. 기본값은 이러한 헤더는 라이브러리의 공개 인터페이스를 설명하며 이 규칙 또는 종속 규칙의 소스에서 포함할 수 있습니다. 이 라이브러리의 클라이언트에서 포함하지 않아야 하는 헤더는 대신 srcs 속성에 나열해야 합니다. 모듈이 사용 설정된 경우 소스와 별도로 컴파일됩니다. |
alwayslink
|
불리언. 기본값은 srcs 및 non_arc_srcs 에 나열된 파일의 모든 객체 파일을 링크합니다. 일부 파일에 바이너리에서 참조하는 기호가 포함되어 있지 않더라도 마찬가지입니다.
이는 코드가 바이너리의 코드에 의해 명시적으로 호출되지 않는 경우에 유용합니다. 예를 들어 코드가 서비스에서 제공하는 콜백을 수신하도록 등록하는 경우입니다.
|
archives
|
라벨 목록(필수) 이 타겟에 종속된 Objective-C 타겟에 제공된.a 파일 목록입니다.
|
includes
|
문자열 목록입니다. 기본값은 #include/#import 검색 경로의 목록입니다.
이는 #import/#include 문에 전체 워크스페이스 경로를 지정하지 않는 서드 파티 및 오픈소스 라이브러리를 지원하기 위한 것입니다.
경로는 패키지 디렉터리에 대해 상대적으로 해석되며 실제 클라이언트 루트 외에도 genfiles 및 bin 루트 (예: COPTS와 달리 이러한 플래그는 이 규칙과 이 규칙에 종속된 모든 규칙에 추가됩니다. (참고: 종속되는 규칙이 아닙니다.) 광범위한 영향을 미칠 수 있으므로 매우 주의해야 합니다. 확실하지 않다면 COPTS에 '-iquote' 플래그를 추가하세요. |
sdk_dylibs
|
문자열 목록입니다. 기본값은 |
sdk_frameworks
|
문자열 목록입니다. 기본값은 최상위 Apple 바이너리를 연결하면 해당 바이너리의 전이 종속 항목 그래프에 나열된 모든 SDK 프레임워크가 연결됩니다. |
sdk_includes
|
문자열 목록입니다. 기본값은 #include/#import 검색 경로 목록으로, 각 경로는 $(SDKROOT)/usr/include 를 기준으로 합니다.
|
textual_hdrs
|
라벨 목록입니다. 기본값은 |
weak_sdk_frameworks
|
문자열 목록입니다. 기본값은 |
objc_library
규칙 소스 보기objc_library(name, deps, srcs, data, hdrs, alwayslink, compatible_with, copts, defines, deprecation, distribs, enable_modules, exec_compatible_with, exec_properties, features, implementation_deps, includes, linkopts, module_map, module_name, non_arc_srcs, pch, restricted_to, sdk_dylibs, sdk_frameworks, sdk_includes, stamp, tags, target_compatible_with, testonly, textual_hdrs, toolchains, visibility, weak_sdk_frameworks)
이 규칙은 지정된 Objective-C 소스 파일에서 정적 라이브러리를 생성합니다.
인수
속성 | |
---|---|
name |
이름: 필수사항 이 타겟의 고유한 이름입니다. |
deps
|
라벨 목록입니다. 기본값은 |
srcs
|
라벨 목록입니다. 기본값은 |
hdrs
|
라벨 목록입니다. 기본값은 이러한 헤더는 라이브러리의 공개 인터페이스를 설명하며 이 규칙 또는 종속 규칙의 소스에서 포함할 수 있습니다. 이 라이브러리의 클라이언트에서 포함하지 않아야 하는 헤더는 대신 srcs 속성에 나열해야 합니다. 모듈이 사용 설정된 경우 소스와 별도로 컴파일됩니다. |
alwayslink
|
불리언. 기본값은 srcs 및 non_arc_srcs 에 나열된 파일의 모든 객체 파일을 링크합니다. 일부 파일에 바이너리에서 참조하는 기호가 포함되어 있지 않더라도 마찬가지입니다.
이는 코드가 바이너리의 코드에 의해 명시적으로 호출되지 않는 경우에 유용합니다. 예를 들어 코드가 서비스에서 제공하는 콜백을 수신하도록 등록하는 경우입니다.
|
copts
|
문자열 목록입니다. 기본값은 생성된 Xcode 프로젝트의 경우 copts에서 '-I' 플래그를 사용하여 지정된 디렉터리 경로가 파싱되고, 상대 경로인 경우 '$(WORKSPACE_ROOT)/'이 앞에 추가되며, 연결된 Xcode 타겟의 헤더 검색 경로에 추가됩니다. |
defines
|
문자열 목록입니다. 기본값은 -D 플래그입니다. KEY=VALUE 또는 KEY 형식이어야 하며 이 대상의 컴파일러뿐만 아니라 (copts 와 마찬가지로) 이 대상의 모든 objc_ 종속 항목에도 전달됩니다.
'Make 변수' 대체 및 Bourne 셸 토큰화가 적용됩니다.
|
enable_modules
|
불리언. 기본값은 |
implementation_deps
|
라벨 목록입니다. 기본값은 deps 와 달리 이러한 라이브러리의 헤더 및 포함 경로 (및 모든 전이 종속 항목)는 이 라이브러리에 종속된 라이브러리가 아닌 이 라이브러리의 컴파일에만 사용됩니다. implementation_deps 로 지정된 라이브러리는 이 라이브러리에 종속된 바이너리 타겟에서 여전히 연결됩니다.
|
includes
|
문자열 목록입니다. 기본값은 #include/#import 검색 경로의 목록입니다.
이는 #import/#include 문에 전체 워크스페이스 경로를 지정하지 않는 서드 파티 및 오픈소스 라이브러리를 지원하기 위한 것입니다.
경로는 패키지 디렉터리에 대해 상대적으로 해석되며 실제 클라이언트 루트 외에도 genfiles 및 bin 루트 (예: COPTS와 달리 이러한 플래그는 이 규칙과 이 규칙에 종속된 모든 규칙에 추가됩니다. (참고: 종속되는 규칙이 아닙니다.) 광범위한 영향을 미칠 수 있으므로 매우 주의해야 합니다. 확실하지 않다면 COPTS에 '-iquote' 플래그를 추가하세요. |
linkopts
|
문자열 목록입니다. 기본값은 |
module_map
|
라벨: 기본값은 |
module_name
|
문자열, 기본값은 |
non_arc_srcs
|
라벨 목록입니다. 기본값은 |
pch
|
라벨: 기본값은 |
sdk_dylibs
|
문자열 목록입니다. 기본값은 |
sdk_frameworks
|
문자열 목록입니다. 기본값은 최상위 Apple 바이너리를 연결하면 해당 바이너리의 전이 종속 항목 그래프에 나열된 모든 SDK 프레임워크가 연결됩니다. |
sdk_includes
|
문자열 목록입니다. 기본값은 #include/#import 검색 경로 목록으로, 각 경로는 $(SDKROOT)/usr/include 를 기준으로 합니다.
|
stamp
|
불리언. 기본값은 |
textual_hdrs
|
라벨 목록입니다. 기본값은 |
weak_sdk_frameworks
|
문자열 목록입니다. 기본값은 |