다음을 통해 공유


vcpkg_from_github

GitHub에서 프로젝트를 다운로드하고 추출합니다. 에 대한 지원을 사용하도록 install --head설정합니다.

이 옵션은 Gitea 서버를 옵션으로 지정하여 Gitea에서도 작동합니다 GITHUB_HOST .

사용

vcpkg_from_github(
    OUT_SOURCE_PATH <SOURCE_PATH>
    REPO <Microsoft/cpprestsdk>
    [REF <v2.0.0>]
    [SHA512 <45d0d7f8cc350...>]
    [HEAD_REF <master>]
    [PATCHES <patch1.patch> <patch2.patch>...]
    [GITHUB_HOST <https://github.com>]
    [AUTHORIZATION_TOKEN <${SECRET_FROM_FILE}>]
    [FILE_DISAMBIGUATOR <N>]
)

매개 변수

OUT_SOURCE_PATH

추출된 위치를 포함할 out 변수를 지정합니다.

규칙에 따라 설정 SOURCE_PATH 해야 합니다.

REPO

GitHub의 조직 또는 사용자 및 리포지토리입니다.

REF

콘텐츠를 변경하지 않는 안정적인 git commit-ish(이상적으로는 태그 또는 커밋)입니다. 분기가 아니어야 합니다.

공식 릴리스가 없는 리포지토리의 경우 현재 최신 마스터의 전체 커밋 ID로 설정할 수 있습니다.

지정한 SHA512 경우 REF 지정해야 합니다.

SHA512

보관 파일과 일치해야 하는 SHA512 해시(https://github.com/${REPO}/archive/${REF}.tar.gz)입니다.

이는 먼저 포트를 설정한 다음 포트를 0빌드하려고 시도하여 가장 쉽게 결정됩니다. 오류 메시지에는 포트파일로 다시 복사할 수 있는 전체 해시가 포함됩니다.

HEAD_REF

빌드를 위해 --head 끌어올 불안정한 git 커밋 틱(이상적으로는 분기)입니다.

대부분의 프로젝트에서는 다음과 여야 master합니다. 선택한 분기는 지원되는 모든 플랫폼에서 항상 빌드할 수 있어야 합니다.

패치

추출된 원본에 적용할 패치 목록입니다.

상대 경로는 포트 디렉터리를 기반으로 합니다.

GITHUB_HOST

엔터프라이즈 GitHub 인스턴스에 대한 대체 호스트입니다.

이 필드는 후행 슬래시 없이 원하는 URL의 체계, 호스트 및 포트를 포함해야 합니다.

AUTHORIZATION_TOKEN

권한 부여 HTTP 헤더를 통해 "토큰 ${AUTHORIZATION_TOKEN}"으로 전달할 토큰입니다.

FILE_DISAMBIGUATOR

GIT ref가 변경되지 않더라도 SHA512가 변경되는 경우 결과 파일 이름을 고유하게 식별하는 토큰으로, 동일한 파일 이름을 밟지 않도록 합니다.

주의

둘 중 REFHEAD_REF 하나 이상을 지정해야 하지만 둘 다 있는 것이 좋습니다.

헤드 빌드 중에 변수를 VCPKG_HEAD_VERSION 내보냅니다.

예제

원본

scripts/cmake/vcpkg_from_github.cmake