config

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

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

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

회원

부울

BuildSetting config.bool(*, flag=False)

부울 유형의 빌드 설정

매개변수

매개변수 설명
flag 부울, 기본값은 False
이 빌드 설정을 명령줄에서 호출할 수 있는지 여부입니다.

exec

ExecTransitionFactory config.exec(exec_group=None)

실행 전환을 만듭니다.

매개변수

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

int

BuildSetting config.int(*, flag=False)

정수 유형의 빌드 설정

매개변수

매개변수 설명
flag 부울, 기본값은 False
이 빌드 설정을 명령줄에서 호출할 수 있는지 여부입니다.

없음

transition config.none()

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

문자열

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

문자열 유형의 빌드 설정

매개변수

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

string_list

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

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

매개변수

매개변수 설명
flag 부울, 기본값은 False
이 빌드 설정을 명령줄에서 호출할 수 있는지 여부입니다.
repeatable 부울; 기본값은 False
입니다. 설정된 경우 이 플래그는 쉼표로 구분된 값을 예상하는 대신 명령줄에서 여러 번 설정할 수 있으며 각 개별 값은 목록 값에 추가할 단일 문자열로 처리됩니다. 삽입 순서와 반복된 값이 모두 유지됩니다. 다른 동작이 필요한 경우 빌드 설정 구현 함수에서 이 목록을 사후 처리할 수 있습니다.

string_set

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

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

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

매개변수

매개변수 설명
flag 부울, 기본값은 False
이 빌드 설정을 명령줄에서 호출할 수 있는지 여부입니다.
repeatable 부울; 기본값은 False
입니다. 설정된 경우 이 플래그는 쉼표로 구분된 값을 예상하는 대신 명령줄에서 여러 번 설정할 수 있으며 각 개별 값은 집합 값에 추가할 단일 문자열로 처리됩니다. 반복된 값의 단일 인스턴스만 유지되며 삽입 순서는 중요하지 않습니다.

대상

transition config.target()

대상 전환을 만듭니다. 전환 객체가 필요하지만 실제로 아무것도 변경하지 않으려는 경우를 위한 no-op 전환입니다. attr.label()cfg = "target"과 같습니다.