회원
- action_is_enabled
- CcToolchainInfo
- 컴파일
- configure_features
- create_cc_toolchain_config_info
- create_compilation_context
- create_compilation_outputs
- create_compile_variables
- create_library_to_link
- create_link_variables
- create_linker_input
- create_linking_context
- create_linking_context_from_compilation_outputs
- do_not_use_tools_cpp_compiler_present
- get_environment_variables
- get_execution_requirements
- get_memory_inefficient_command_line
- get_tool_for_action
- is_enabled
- 링크
- merge_cc_infos
- merge_compilation_contexts
- merge_compilation_outputs
action_is_enabled
bool cc_common.action_is_enabled(feature_configuration, action_name)
매개변수
매개변수 | 설명 |
---|---|
feature_configuration
|
필수 쿼리할 기능 구성입니다. |
action_name
|
필수 action_config의 이름입니다. |
CcToolchainInfo
Provider cc_common.CcToolchainInfo
compile
tuple cc_common.compile(actions, feature_configuration, cc_toolchain, srcs=[], public_hdrs=[], private_hdrs=[], includes=[], quote_includes=[], system_includes=[], framework_includes=[], defines=[], local_defines=[], include_prefix='', strip_include_prefix='', user_compile_flags=[], compilation_contexts=[], name, disallow_pic_outputs=False, disallow_nopic_outputs=False, additional_inputs=[], grep_includes=None)
CompilationContext
, CcCompilationOutputs
)의 튜플을 반환합니다.
<ph type="x-smartling-placeholder"></ph>
매개변수
매개변수 | 설명 |
---|---|
actions
|
필수actions 객체.
|
feature_configuration
|
필수 쿼리될 feature_configuration 입니다.
|
cc_toolchain
|
필수 사용할 CcToolchainInfo 제공자.
|
srcs
|
기본값 = [] 컴파일할 소스 파일의 목록입니다. |
public_hdrs
|
기본값 = [] srcs 컴파일에 필요한 헤더 목록이며 종속 규칙에 의해 전이적으로 포함될 수 있습니다. |
private_hdrs
|
기본값 = [] src를 컴파일하는 데 필요한 헤더 목록이며 종속 규칙에 의해 포함되지 않아야 합니다. |
includes
|
기본값 = [] 꺾쇠괄호와 따옴표로 모두 참조되는 헤더 파일의 검색 경로입니다. 보통 -I로 전달됩니다. 종속 항목에 전이적으로 전파됩니다. |
quote_includes
|
기본값 = [] 따옴표로 참조되는 헤더 파일의 검색 경로(예: #include "foo/bar/header.h". 실행 루트를 기준으로 하거나 절대값을 기준으로 할 수 있습니다. 일반적으로 -iquote와 함께 전달됩니다. 종속 항목에 전이적으로 전파됩니다. |
system_includes
|
기본값 = [] 꺾쇠괄호로 참조되는 헤더 파일의 검색 경로(예: #include <foo/bar/header.h>. 실행 루트를 기준으로 하거나 절대값을 기준으로 할 수 있습니다. 일반적으로 -isystem을 사용하여 전달됩니다. 종속 항목에 전이적으로 전파됩니다. |
framework_includes
|
기본값 = [] Apple 프레임워크의 헤더 파일 경로를 검색합니다. 실행 루트를 기준으로 하거나 절대값을 기준으로 할 수 있습니다. 일반적으로 -F로 전달됩니다. 종속 항목에 전이적으로 전파됩니다. |
defines
|
기본값 = [] 이 타겟을 컴파일하는 데 필요한 정의 세트입니다. 각 정의는 문자열입니다. 종속 항목에 전이적으로 전파됩니다. |
local_defines
|
기본값 = [] 이 타겟을 컴파일하는 데 필요한 정의 세트입니다. 각 정의는 문자열입니다. 종속 항목에 전이적으로 전파되지 않습니다. |
include_prefix
|
기본값 = '' 이 규칙의 헤더 경로에 추가할 프리픽스입니다. 설정하면 이 규칙의 hdrs 속성에 있는 헤더에 저장소 상대 경로 앞에 추가된 이 속성 값으로 액세스할 수 있습니다. trip_include_prefix 속성의 접두사는 이 접두사가 추가되기 전에 삭제됩니다. |
strip_include_prefix
|
기본값 = '' 이 규칙의 헤더 경로에서 제거할 프리픽스입니다. 설정되면 이 규칙의 hdrs 속성에 있는 헤더는 해당 경로에서 이 접두어가 잘린 상태로 액세스할 수 있습니다. 상대 경로인 경우 패키지에 상대적인 경로로 간주됩니다. 절대 경로인 경우 저장소 상대 경로로 간주됩니다. include_prefix 속성의 접두사는 이 접두사가 제거된 후에 추가됩니다. |
user_compile_flags
|
기본값 = [] 컴파일 옵션의 추가 목록입니다. |
compilation_contexts
|
기본값 = [] 컴파일에 사용되는 종속 항목의 헤더 |
name
|
필수 이 메서드로 만든 작업의 출력 아티팩트 이름을 지정하는 데 사용됩니다. `main_output` 인수도 참고하세요. |
disallow_pic_outputs
|
기본값 = False PIC 출력을 생성해야 하는지 여부입니다. |
disallow_nopic_outputs
|
기본값 = False NOPIC 출력을 생성해야 하는지 여부입니다. |
additional_inputs
|
기본값 = [] src 컴파일에 필요한 추가 파일 목록 |
grep_includes
|
File; or None
기본값 = 없음 |
configure_features
FeatureConfiguration cc_common.configure_features(ctx=None, cc_toolchain, language=None, requested_features=[], unsupported_features=[])
매개변수
매개변수 | 설명 |
---|---|
ctx
|
ctx; or None
기본값 = 없음규칙 컨텍스트입니다. |
cc_toolchain
|
필수 cc_툴체인의 근간을 이룹니다. |
language
|
string; or None
기본값 = 없음구성할 언어: c++ 또는 objc (기본 C++) |
requested_features
|
기본값 = [] 사용 설정할 기능의 목록입니다. |
unsupported_features
|
기본값 = [] 현재 규칙에서 지원하지 않는 기능의 목록입니다. |
create_cc_toolchain_config_info
CcToolchainConfigInfo cc_common.create_cc_toolchain_config_info(ctx, features=[], action_configs=[], artifact_name_patterns=[], cxx_builtin_include_directories=[], toolchain_identifier, host_system_name=None, target_system_name, target_cpu, target_libc, compiler, abi_version=None, abi_libc_version=None, tool_paths=[], make_variables=[], builtin_sysroot=None, cc_target_os=None)
CcToolchainConfigInfo
제공자 만들기
매개변수
매개변수 | 설명 |
---|---|
ctx
|
필수 규칙 컨텍스트입니다. |
features
|
기본값 = [] 하나의 기능에 대한 모든 플래그 사양을 포함합니다. 인수: name: 지형지물의 이름입니다. 'feature'를 추가하여 Bazel을 변경하지 않고도 기능을 도입할 수 있습니다. 섹션을 도구 모음에 추가하고 해당 문자열을 BUILD 파일에 기능으로 추가하는 방법 자세히 알아보기 enabled: 'True'인 경우 규칙 유형에서 지원되지 않는 것으로 명시적으로 표시되지 않는 한 이 기능이 사용 설정됩니다. 플래그 세트: 플래그 세트 목록 - 특정 기능이 사용 설정되면 지정된 작업에 플래그 세트가 적용됩니다. env_sets: EnvSet 목록 - 지정된 기능을 사용할 경우 환경 세트가 지정된 작업에 적용됩니다. 필수: 도구 모음에서 이 기능을 지원하는 시기를 정의하는 기능 세트의 목록입니다. 특성 세트 중 하나라도 완전히 적용되는 경우, 즉 특성 세트의 모든 지형지물이 사용 설정되어 있을 때 기능이 지원됩니다. '필요'에 해당하는 경우 생략된 경우 이 기능은 사용 설정된 다른 기능과 관계없이 지원됩니다. 예를 들어 이 메서드를 사용하여 사용 설정된 빌드 모드 (opt / fastbuild / dbg)에 따라 플래그를 필터링합니다. 의미: 이 기능이 사용 설정되면 자동으로 사용 설정되는 기능 또는 작업 구성의 문자열 목록입니다. 암시적 기능 또는 작업 구성을 사용 설정할 수 없는 경우 이 기능도 자동으로 사용 설정되지 않습니다. 제공: 이 지형지물과 충돌하는 이름의 목록입니다. 다음과 같은 경우 기능을 사용 설정할 수 없습니다.- '제공' 사용 설정할 다른 기능 또는 작업 구성의 이름이 포함되어 있습니다. - '제공' '제공'과 동일한 값 포함 작업 구성을 선택해야 합니다 호환되지 않는 기능이 실수로 동시에 활성화되어 컴파일러 오류를 진단하기 어렵게 하려면 이 메서드를 사용하세요. |
action_configs
|
기본값 = [] 작업 구성은 Bazel 작업에 해당하며 활성화된 기능에 따라 도구를 선택할 수 있게 해줍니다. 작업 구성 활성화는 기능과 동일한 시맨틱스로 발생합니다. 기능이 '필요'할 수 있습니다. 또는 '암시적' 다른 기능과 동일한 방식으로 작업 구성을 생성할 수 있습니다. 인수: action_name: 이 구성이 적용되는 Bazel 작업의 이름입니다. 예: 'c-compile' 또는 'c-module-compile'과 같이 지정할 수 있습니다. enabled: 'True'인 경우 규칙 유형에서 지원되지 않는 것으로 명시적으로 표시하지 않는 한 이 작업이 사용 설정됩니다. 도구: 작업에 적용되는 도구가 기능 구성과 일치하는 기능 세트를 가진 첫 번째 도구가 됩니다. 제공된 기능 구성과 일치하는 도구가 없으면 오류가 발생합니다. 따라서 빈 특성 세트가 있는 기본 도구를 제공하는 것이 좋습니다. 플래그 세트: 지정된 작업 구성이 사용 설정되면 플래그 세트가 해당 작업에 적용됩니다. 의미: 이 작업 구성을 사용 설정하면 자동으로 사용 설정되는 기능 또는 작업 구성의 목록입니다. 암시적 기능이나 작업 구성을 사용 설정할 수 없는 경우 이 작업 구성도 자동으로 사용 설정되지 않습니다. |
artifact_name_patterns
|
기본값 = [] 작업에 대한 특정 입력 또는 출력 아티팩트 카테고리의 아티팩트 이름입니다. 인수: category_name: 이 선택 항목이 적용되는 아티팩트의 카테고리입니다. 이 필드는 Bazel에 정의된 카테고리 목록과 비교됩니다. 카테고리 예로는 'linked_output'이 있습니다. 아티팩트를 선택해야 합니다. 확장 프로그램과 함께 대상 이름을 기반으로 아티팩트 이름을 만드는 데 사용됩니다. 확장자: 선택한 항목의 아티팩트를 만들기 위한 확장 프로그램입니다. 접두사와 함께 대상 이름을 기반으로 아티팩트 이름을 만드는 데 사용됩니다. |
cxx_builtin_include_directories
|
기본값 = [] C++ 컴파일을 위해 내장된 include 디렉터리. 이러한 경로는 컴파일러가 사용하는 정확한 경로여야 하며 일반적으로 exec 루트를 기준으로 합니다. 컴파일러에서 사용하는 경로는 'gcc -E -xc++ - -v'로 결정할 수 있습니다. 현재 C++를 컴파일할 때도 C++ 경로를 사용하는데, 이는 C++ 헤더 파일과 C 헤더 파일 간에 이름 충돌이 없는 한 안전합니다. 상대 경로는 구성 파일 디렉터리를 기준으로 확인됩니다. 컴파일러가 --sysroot를 지원하는 경우 이러한 경로는 include 경로 대신 %sysroot% 를 사용하고, sysroot 속성을 지정하여 올바른 대체를 수행하는 데 필요한 정보를 Blaze에 제공해야 합니다. |
toolchain_identifier
|
필수 Crosstool 출시에 있는 도구 모음의 고유 식별자입니다. 경로의 디렉터리 이름으로 이 이름을 사용할 수 있어야 합니다. [a-zA-Z_][\.\- \w]* 정규식과 일치해야 합니다. |
host_system_name
|
string; or None
기본값 = 없음무시되었습니다. |
target_system_name
|
필수 GNU 시스템 이름입니다. |
target_cpu
|
필수 대상 아키텍처 문자열입니다. |
target_libc
|
필수 libc 버전 문자열입니다 (예: 'glibc-2.2.2'). |
compiler
|
필수 컴파일러 버전 문자열입니다 (예: 'gcc-4.1.1'). |
abi_version
|
string; or None
기본값 = 없음사용 중인 abi로, gcc 버전입니다. 예: 'gcc-3.4' |
abi_libc_version
|
string; or None
기본값 = 없음사용 중인 ABI에서 사용하는 glibc 버전 |
tool_paths
|
기본값 = [] 도구 위치. 인수: name: 도구의 이름입니다. path: 도구의 위치입니다. 절대 경로 (밀폐 도구 모음의 경우) 또는 cc_Tools의 패키지에 대한 상대 경로일 수 있습니다. |
make_variables
|
기본값 = [] 규칙에서 액세스할 수 있는 make 변수입니다. |
builtin_sysroot
|
string; or None
기본값 = 없음내장 sysroot. 이 속성이 없으면 Bazel은 다른 sysroot를 사용할 수 없습니다(즉, --grte_top 옵션을 통해). |
cc_target_os
|
string; or None
기본값 = 없음내부용이며 사용해서는 안 됩니다. |
create_compilation_context
CompilationContext cc_common.create_compilation_context(headers=unbound, system_includes=unbound, includes=unbound, quote_includes=unbound, framework_includes=unbound, defines=unbound, local_defines=unbound)
CompilationContext
를 만듭니다.
매개변수
매개변수 | 설명 |
---|---|
headers
|
기본값 = 결합 해제됨 이 타겟을 컴파일하는 데 필요한 헤더 세트 |
system_includes
|
기본값 = 결합 해제됨 꺾쇠괄호로 참조되는 헤더 파일의 검색 경로 집합입니다(예: #include <foo/bar/header.h>). 실행 루트를 기준으로 하거나 절대값을 기준으로 할 수 있습니다. 일반적으로 -isystem을 사용하여 전달됨 |
includes
|
기본값 = 결합 해제됨 꺾쇠괄호와 따옴표로 모두 참조되는 헤더 파일의 검색 경로 집합입니다. 일반적으로 -I와 함께 전달됩니다. |
quote_includes
|
기본값 = 결합 해제됨 따옴표로 참조되는 헤더 파일의 검색 경로 집합입니다(예: #include "foo/bar/header.h"). 실행 루트를 기준으로 하거나 절대값을 기준으로 할 수 있습니다. 일반적으로 -iquote와 함께 전달됨 |
framework_includes
|
기본값 = 결합 해제됨 헤더 파일의 프레임워크 검색 경로 집합 (Apple 플랫폼만 해당) |
defines
|
기본값 = 결합 해제됨 이 타겟을 컴파일하는 데 필요한 정의 세트입니다. 각 정의는 문자열입니다. 종속 항목에 전이적으로 전파됩니다. |
local_defines
|
기본값 = 결합 해제됨 이 타겟을 컴파일하는 데 필요한 정의 세트입니다. 각 정의는 문자열입니다. 종속 항목에 전이적으로 전파되지 않습니다. |
create_compilation_outputs
CcCompilationOutputs cc_common.create_compilation_outputs(objects=None, pic_objects=None)
매개변수
매개변수 | 설명 |
---|---|
objects
|
depset; or None
기본값 = 없음객체 파일의 목록입니다. |
pic_objects
|
depset; or None
기본값 = 없음pic 객체 파일의 목록입니다. |
create_compile_variables
Variables cc_common.create_compile_variables(cc_toolchain, feature_configuration, source_file=None, output_file=None, user_compile_flags=None, include_directories=None, quote_include_directories=None, system_include_directories=None, framework_include_directories=None, preprocessor_defines=None, thinlto_index=None, thinlto_input_bitcode_file=None, thinlto_output_object_file=None, use_pic=False, add_legacy_cxx_options=False, variables_extension=unbound)
매개변수
매개변수 | 설명 |
---|---|
cc_toolchain
|
필수 cc_tools를 추가하는 것이 좋습니다. |
feature_configuration
|
필수 쿼리할 기능 구성입니다. |
source_file
|
기본값 = 없음 컴파일을 위한 선택적 소스 파일입니다. cc_common.get_memory_in 관리_명령어에서 생성된 명령줄 끝에 source_file을 추가하는 것보다 여기에 source_file을 전달하는 것이 좋습니다. 이렇게 하면 도구 모음 작성자가 컴파일러 플래그를 올바르게 지정하고 배치해야 하기 때문입니다. |
output_file
|
기본값 = 없음 컴파일의 출력 파일(선택사항)입니다. cc_common.get_memory_in 아이콘의 끝에 출력 파일을 추가하는 것보다 여기에 output_file을 전달하는 것이 좋습니다. 이렇게 하면 도구 모음 작성자가 컴파일러 플래그를 적절하게 지정하고 배치해야 하기 때문입니다. |
user_compile_flags
|
sequence of strings; or None
기본값 = 없음추가 컴파일 플래그 (copt) 목록입니다. |
include_directories
|
depset; or None
기본값 = 없음include 디렉터리의 종속 항목. |
quote_include_directories
|
depset; or None
기본값 = 없음인용 포함 디렉터리의 종속 항목입니다. |
system_include_directories
|
depset; or None
기본값 = 없음시스템 포함 디렉터리의 종속 항목. |
framework_include_directories
|
depset; or None
기본값 = 없음프레임워크 include 디렉터리의 종속 항목 |
preprocessor_defines
|
depset; or None
기본값 = 없음전처리기의 종속 항목이 정의합니다. |
thinlto_index
|
string; or None
기본값 = 없음LTO 색인 파일 경로입니다. |
thinlto_input_bitcode_file
|
string; or None
기본값 = 없음LTO 백엔드에 입력되는 비트코드 파일입니다. |
thinlto_output_object_file
|
string; or None
기본값 = 없음LTO 백엔드에서 출력하는 객체 파일입니다. |
use_pic
|
기본값 = False true인 경우 컴파일은 위치에 독립적인 코드를 생성합니다. |
add_legacy_cxx_options
|
기본값 = False 사용되지 않음. |
variables_extension
|
dict
기본값 = 결합 해제됨컴파일 작업에서 사용하는 추가 변수의 사전입니다. |
create_library_to_link
LibraryToLink cc_common.create_library_to_link(actions, feature_configuration=None, cc_toolchain=None, static_library=None, pic_static_library=None, dynamic_library=None, interface_library=None, pic_objects=unbound, objects=unbound, alwayslink=False, dynamic_library_symlink_path='', interface_library_symlink_path='')
LibraryToLink
생성
매개변수
매개변수 | 설명 |
---|---|
actions
|
필수actions 객체.
|
feature_configuration
|
기본값 = 없음 쿼리될 feature_configuration 입니다.
|
cc_toolchain
|
기본값 = 없음 사용할 CcToolchainInfo 제공자.
|
static_library
|
File; or None
기본값 = 없음연결할 정적 라이브러리의 File 입니다.
|
pic_static_library
|
File; or None
기본값 = 없음연결할 사진 정적 라이브러리 File 입니다.
|
dynamic_library
|
File; or None
기본값 = 없음동적 라이브러리의 File 가 연결됩니다. 항상 런타임에 사용되며 interface_library 가 전달되지 않은 경우 연결에 사용됩니다.
|
interface_library
|
File; or None
기본값 = 없음연결할 인터페이스 라이브러리의 File 입니다.
|
pic_objects
|
sequence of Files
기본값 = 결합 해제됨실험용, 사용 금지 |
objects
|
sequence of Files
기본값 = 결합 해제됨실험용, 사용 금지 |
alwayslink
|
기본값 = False --whole_archive 블록에서 정적 라이브러리/객체를 연결할지 여부입니다. |
dynamic_library_symlink_path
|
string
기본값 = ''solib 디렉터리에 있는 동적 라이브러리 링크의 기본 경로를 재정의합니다. 기본값을 사용하려면 빈 문자열입니다. |
interface_library_symlink_path
|
기본값 = '' solib 디렉터리에 있는 인터페이스 라이브러리 링크의 기본 경로를 재정의합니다. 기본값을 사용하려면 빈 문자열입니다. |
create_link_variables
Variables cc_common.create_link_variables(cc_toolchain, feature_configuration, library_search_directories=None, runtime_library_search_directories=None, user_link_flags=None, output_file=None, param_file=None, def_file=None, is_using_linker=True, is_linking_dynamic_library=False, must_keep_debug=True, use_test_only_flags=False, is_static_linking_mode=True)
매개변수
매개변수 | 설명 |
---|---|
cc_toolchain
|
필수 cc_tools를 추가하는 것이 좋습니다. |
feature_configuration
|
필수 쿼리할 기능 구성입니다. |
library_search_directories
|
None; or depset
기본값 = 없음연결 시 링커가 라이브러리를 찾는 디렉터리의 종속 항목입니다. |
runtime_library_search_directories
|
None; or depset
기본값 = 없음로더가 런타임 시 라이브러리를 찾을 디렉터리의 종속 항목입니다. |
user_link_flags
|
None; or sequence
기본값 = 없음추가 링크 플래그 (linkopts) 목록입니다. |
output_file
|
기본값 = 없음 선택적 출력 파일 경로입니다. |
param_file
|
기본값 = 없음 선택적 매개변수 파일 경로입니다. |
def_file
|
기본값 = 없음 선택사항인 .def 파일 경로입니다. |
is_using_linker
|
기본값 = True 링커 사용 시 True, 보관처리 시 False입니다. 호출자는 이를 사용된 작업 이름과 동기화해야 합니다 (실행 가능 또는 동적 라이브러리를 연결하는 경우 is_using_linker = True, 정적 라이브러리를 보관처리하는 경우 is_using_linker = False). |
is_linking_dynamic_library
|
기본값 = False 동적 라이브러리를 만들 때는 true, 실행 또는 정적 라이브러리인 경우 False입니다. 호출자는 사용된 작업 이름과 동기화 상태를 유지해야 합니다. b/65151735가 수정되면 이 필드는 삭제됩니다. |
must_keep_debug
|
기본값 = True True로 설정하면 bazel이 'strip_debug_symbols'를 노출합니다. 변수의 값을 지정합니다. 이 변수는 일반적으로 출력 파일에서 디버그 기호를 삭제하기 위해 링커를 사용하는 데 사용됩니다. |
use_test_only_flags
|
기본값 = False true로 설정하면 'is_cc_test' 변수가 설정됩니다 |
is_static_linking_mode
|
기본값 = True 사용되지 않음. |
create_linker_input
LinkerInput cc_common.create_linker_input(owner, libraries=None, user_link_flags=None, additional_inputs=None)
LinkerInput
를 만듭니다.
매개변수
매개변수 | 설명 |
---|---|
owner
|
필수 이 입력에 사용된 모든 파일을 생성한 대상의 라벨입니다. |
libraries
|
None; or depset
기본값 = 없음LibraryToLink 의 목록입니다.
|
user_link_flags
|
None; or depset of strings; or sequence of strings
기본값 = 없음사용자 링크 플래그가 문자열로 전달됩니다. [String], [[String]] 또는 depset(String)을 허용합니다. 후자는 호환성 목적으로만 유지되므로 사용하지 않는 것이 좋습니다. depset은 평면화됩니다. unFlattened depsets()를 통해 user_link_flags를 전파하려면 끝까지 평면화되지 않도록 LinkerInput에 래핑합니다. |
additional_inputs
|
None; or depset
기본값 = 없음연결 작업에 대한 추가 입력(예: 연결 스크립트)입니다. |
create_linking_context
LinkingContext cc_common.create_linking_context(linker_inputs=None, libraries_to_link=None, user_link_flags=None, additional_inputs=None)
LinkingContext
를 만듭니다.
매개변수
매개변수 | 설명 |
---|---|
linker_inputs
|
None; or depset
기본값 = 없음LinkerInput 의 종속.
|
libraries_to_link
|
None; or sequence
기본값 = 없음지원 중단되었습니다. 이 매개변수는 지원 중단되었으며 곧 삭제됩니다. 여기에 의존하지 마세요. --+incompatible_require_linker_input_cc_api 로 사용 중지됩니다. 이 플래그를 사용하여 코드가 곧 삭제되는 것과 호환되는지 확인합니다. LibraryToLink 의 목록
|
user_link_flags
|
None; or sequence
기본값 = 없음지원 중단되었습니다. 이 매개변수는 지원 중단되었으며 곧 삭제됩니다. 여기에 의존하지 마세요. --+incompatible_require_linker_input_cc_api 로 사용 중지됩니다. 이 플래그를 사용하여 코드가 곧 삭제되는 것과 호환되는지 확인합니다. 문자열로 전달된 사용자 링크 플래그의 목록입니다. |
additional_inputs
|
None; or sequence
기본값 = 없음지원 중단되었습니다. 이 매개변수는 지원 중단되었으며 곧 삭제됩니다. 여기에 의존하지 마세요. --+incompatible_require_linker_input_cc_api 로 사용 중지됩니다. 이 플래그를 사용하여 코드가 곧 삭제되는 것과 호환되는지 확인합니다. 연결 작업에 대한 추가 입력(예: 연결 스크립트)입니다. |
create_linking_context_from_compilation_outputs
tuple cc_common.create_linking_context_from_compilation_outputs(actions, feature_configuration, cc_toolchain, compilation_outputs, user_link_flags=[], linking_contexts=[], name, language='c++', alwayslink=False, additional_inputs=[], disallow_static_libraries=False, disallow_dynamic_library=False, grep_includes=None)
CcLinkingContext
, CcLinkingOutputs
)의 튜플을 반환합니다.
<ph type="x-smartling-placeholder"></ph>
매개변수
매개변수 | 설명 |
---|---|
actions
|
필수actions 객체.
|
feature_configuration
|
필수 쿼리될 feature_configuration 입니다.
|
cc_toolchain
|
필수 사용할 CcToolchainInfo 제공자.
|
compilation_outputs
|
필수 연결할 객체 파일이 포함된 컴파일 출력 |
user_link_flags
|
기본값 = [] 연결 옵션의 추가 목록입니다. |
linking_contexts
|
기본값 = [] 종속 항목의 라이브러리 이러한 라이브러리는 바이너리 또는 라이브러리인 link() 호출의 출력 아티팩트에 연결됩니다. |
name
|
필수 이 메서드로 만든 작업의 출력 아티팩트 이름을 지정하는 데 사용됩니다. |
language
|
기본값 = 'c++' 현재 C++만 지원됩니다. 이 매개변수를 사용하지 마세요. |
alwayslink
|
기본값 = False 이 라이브러리를 항상 연결해야 하는지 여부입니다. |
additional_inputs
|
기본값 = [] 연결 작업에 대한 추가 입력(예: 연결 스크립트)입니다. |
disallow_static_libraries
|
기본값 = False 정적 라이브러리의 생성 여부입니다. |
disallow_dynamic_library
|
기본값 = False 동적 라이브러리 생성 여부입니다. |
grep_includes
|
File; or None
기본값 = 없음 |
do_not_use_tools_cpp_compiler_present
None cc_common.do_not_use_tools_cpp_compiler_present
get_environment_variables
dict cc_common.get_environment_variables(feature_configuration, action_name, variables)
매개변수
매개변수 | 설명 |
---|---|
feature_configuration
|
필수 쿼리할 기능 구성입니다. |
action_name
|
필수 작업의 이름입니다. @bazel_tools//tools/build_defs/cc:action_names.bzl (https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl)의 이름 중 하나여야 합니다. |
variables
|
필수 템플릿 확장에 사용할 변수를 빌드합니다. |
get_execution_requirements
sequence cc_common.get_execution_requirements(feature_configuration, action_name)
매개변수
매개변수 | 설명 |
---|---|
feature_configuration
|
필수 쿼리할 기능 구성입니다. |
action_name
|
필수 작업의 이름입니다. @bazel_tools//tools/build_defs/cc:action_names.bzl (https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl)의 이름 중 하나여야 합니다. |
get_memory_inefficient_command_line
sequence cc_common.get_memory_inefficient_command_line(feature_configuration, action_name, variables)
매개변수
매개변수 | 설명 |
---|---|
feature_configuration
|
필수 쿼리할 기능 구성입니다. |
action_name
|
필수 작업의 이름입니다. @bazel_tools//tools/build_defs/cc:action_names.bzl (https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl)의 이름 중 하나여야 합니다. |
variables
|
필수 템플릿 확장에 사용할 변수를 빌드합니다. |
get_tool_for_action
string cc_common.get_tool_for_action(feature_configuration, action_name)
매개변수
매개변수 | 설명 |
---|---|
feature_configuration
|
필수 쿼리할 기능 구성입니다. |
action_name
|
필수 작업의 이름입니다. @bazel_tools//tools/build_defs/cc:action_names.bzl (https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl)의 이름 중 하나여야 합니다. |
is_enabled
bool cc_common.is_enabled(feature_configuration, feature_name)
매개변수
매개변수 | 설명 |
---|---|
feature_configuration
|
필수 쿼리할 기능 구성입니다. |
feature_name
|
필수 기능의 이름입니다. |
링크
CcLinkingOutputs cc_common.link(actions, feature_configuration, cc_toolchain, compilation_outputs=None, user_link_flags=[], linking_contexts=[], name, language='c++', output_type='executable', link_deps_statically=True, stamp=0, additional_inputs=[], grep_includes=None, additional_outputs=unbound)
매개변수
매개변수 | 설명 |
---|---|
actions
|
필수actions 객체.
|
feature_configuration
|
필수 쿼리될 feature_configuration 입니다.
|
cc_toolchain
|
필수 사용할 CcToolchainInfo 제공자.
|
compilation_outputs
|
CcCompilationOutputs; or None
기본값 = 없음연결할 객체 파일이 포함된 컴파일 출력 |
user_link_flags
|
기본값 = [] 링커 옵션의 추가 목록입니다. |
linking_contexts
|
기본값 = [] 이 규칙에서 생성된 연결 컨텍스트에 연결할 종속 항목의 컨텍스트를 연결합니다. |
name
|
필수 이 메서드로 만든 작업의 출력 아티팩트 이름을 지정하는 데 사용됩니다. |
language
|
기본값 = 'c++' 현재 C++만 지원됩니다. 이 매개변수를 사용하지 마세요. |
output_type
|
기본값 = '실행 가능' '실행 가능'하거나 또는 'dynamic_library'. |
link_deps_statically
|
기본값 = True 종속 항목을 정적으로 연결하려면 True, 동적인 경우 False입니다. |
stamp
|
기본값 = 0 output_type이 'executable'인 경우 연결된 실행 파일에 빌드 정보를 포함할지 여부입니다. 1인 경우 빌드 정보가 항상 포함됩니다. 0인 경우 (기본 빌드 정보가 항상 제외됩니다. -1인 경우 기본 동작을 사용하며, --[no]stamp 플래그로 재정의할 수 있습니다. 테스트 규칙의 실행 가능한 출력을 생성할 때 이 속성을 설정 해제하거나 0으로 설정해야 합니다. |
additional_inputs
|
sequence; or depset
기본값 = []연결 작업에 대한 추가 입력(예: 연결 스크립트)입니다. |
grep_includes
|
File; or None
기본값 = 없음 |
additional_outputs
|
sequence
기본값 = 결합 해제됨연결 작업에 관한 추가 출력(예: 지도 파일)입니다. |
merge_cc_infos
CcInfo cc_common.merge_cc_infos(direct_cc_infos=[], cc_infos=[])
CcInfo
를 하나로 병합합니다.
매개변수
매개변수 | 설명 |
---|---|
direct_cc_infos
|
기본값 = [] 병합할 CcInfo 목록으로, 반환된 제공업체의 직접 필드를 통해 헤더를 내보냅니다.
|
cc_infos
|
기본값 = [] 병합할 CcInfo 목록으로, 반환된 제공업체의 직접 필드로는 헤더를 내보내지 않습니다.
|
merge_compilation_contexts
CompilationContext cc_common.merge_compilation_contexts(compilation_contexts=[])
CompilationContexts
를 하나로 병합합니다.
매개변수
매개변수 | 설명 |
---|---|
compilation_contexts
|
기본값 = [] 병합할 CompilationContexts 목록입니다. 각 컨텍스트의 헤더는 반환된 제공업체의 직접 필드를 통해 내보내집니다.
|
merge_compilation_outputs
CcCompilationOutputs cc_common.merge_compilation_outputs(compilation_outputs=[])
매개변수
매개변수 | 설명 |
---|---|
compilation_outputs
|
기본값 = [] |