config

구성 전환과 규칙이 어떤 종류의 빌드 설정인지 설명하는 빌드 설정 설명자를 만드는 최상위 모듈입니다.

예: 다음 규칙은 rule() 함수의 build_setting 매개변수를 설정하여 빌드 설정으로 표시됩니다. 특히 int 유형의 빌드 설정이며 flag이므로 이 빌드 설정은 명령줄에서 호출할 수 있습니다.

  my_rule = rule(
    implementation = _impl,
    build_setting = config.int(flag = True),
    ...
  )

회원

bool

BuildSetting config.bool(*, flag=False)

불리언 유형 빌드 설정

매개변수

매개변수 설명
flag bool; default is False
이 빌드 설정이 명령줄에서 호출 가능한지 여부입니다.

exec

ExecTransitionFactory config.exec(exec_group=None)

실행 전환을 만듭니다.

매개변수

매개변수 설명
exec_group string 또는 None; 기본값은 None
입니다. 이 전환에서 사용할 실행 플랫폼의 실행 그룹 이름입니다. 제공되지 않으면 이 exec 전환은 타겟의 기본 실행 플랫폼을 사용합니다.

int

BuildSetting config.int(*, flag=False)

정수 유형 빌드 설정

매개변수

매개변수 설명
flag bool; default is False
이 빌드 설정이 명령줄에서 호출 가능한지 여부입니다.

없음

transition config.none()

모든 구성을 삭제하고 모든 플래그를 설정 해제하는 전환을 만듭니다. 종속 항목이 데이터 전용이고 빌드해야 하는 코드가 포함되어 있지 않지만 한 번만 분석해야 하는 경우에 사용됩니다.

문자열

BuildSetting config.string(*, flag=False, allow_multiple=False)

문자열 유형 빌드 설정

매개변수

매개변수 설명
flag bool; default is False
이 빌드 설정이 명령줄에서 호출 가능한지 여부입니다.
allow_multiple bool; default is False
지원 중단되었습니다. 대신 repeatable = True가 포함된 string_list 설정을 사용하세요. 설정된 경우 이 플래그는 명령줄에서 여러 번 설정할 수 있습니다. 전환 및 빌드 설정 구현 함수에서 액세스하는 플래그 값은 문자열 목록입니다. 삽입 순서와 반복된 값은 모두 유지됩니다. 다른 동작이 필요한 경우 빌드 설정 구현 함수에서 이 목록을 후처리할 수 있습니다.

string_list

BuildSetting config.string_list(*, flag=False, repeatable=False)

문자열 목록 유형 빌드 설정입니다. 명령줄에서 --//my/setting=foo,bar와 같이 쉼표로 구분된 값을 사용하여 목록을 전달합니다.

매개변수

매개변수 설명
flag bool; default is False
이 빌드 설정이 명령줄에서 호출 가능한지 여부입니다.
repeatable bool; default is False
If set, instead of expecting a comma-separated value, this flag is allowed to be set multiple times on the command line with each individual value treated as a single string to add to the list value. 삽입 순서와 반복된 값은 모두 유지됩니다. 다른 동작이 필요한 경우 빌드 설정 구현 함수에서 이 목록을 후처리할 수 있습니다.

string_set

BuildSetting config.string_set(*, flag=False, repeatable=False)

문자열 집합 유형 빌드 설정입니다. 이 설정의 값은 Starlark의 문자열 세트입니다. 명령줄에서 --//my/setting=foo,bar와 같이 쉼표로 구분된 값을 사용하여 집합을 전달합니다.

string_list와 달리 요소의 순서는 중요하지 않으며 각 요소의 단일 인스턴스만 유지됩니다. 이러한 속성이 필요하지 않은 플래그에는 string_list보다 이 방법을 사용하는 것이 좋습니다. 불필요한 구성 포크를 방지하여 빌드 성능을 개선할 수 있기 때문입니다.

매개변수

매개변수 설명
flag bool; default is False
이 빌드 설정이 명령줄에서 호출 가능한지 여부입니다.
repeatable bool; default is False
If set, instead of expecting a comma-separated value, this flag is allowed to be set multiple times on the command line with each individual value treated as a single string to add to the set value. 반복되는 값의 단일 인스턴스만 유지되며 삽입 순서는 중요하지 않습니다.

target

transition config.target()

타겟 전환을 만듭니다. 이는 전환 객체가 필요하지만 실제로 아무것도 변경하지 않으려는 경우를 위한 작업 없음 전환입니다. attr.label()cfg = "target"과 같습니다.