Udostępnij przez


vcpkg_from_github

Pobierz i wyodrębnij projekt z usługi GitHub. Włącza obsługę programu install --head.

Działa to również z usługą Gitea, określając serwer Gitea z opcją GITHUB_HOST .

Zastosowanie

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>]
    [USE_TARBALL_API]
)

Parametry

OUT_SOURCE_PATH

Określa zmienną out-, która będzie zawierać wyodrębnionej lokalizacji.

Powinno to być ustawione SOURCE_PATH zgodnie z konwencją.

REPO

Organizacja lub użytkownik i repozytorium w usłudze GitHub.

REF

Stabilne zatwierdzenie git (najlepiej tag lub zatwierdzenie), które nie zmieni zawartości. Nie powinno to być gałąź.

W przypadku repozytoriów bez oficjalnych wydań można ustawić ten identyfikator pełnego zatwierdzenia bieżącego najnowszego wzorca.

Jeśli REF jest określony, SHA512 należy również określić.

SHA512 powiedział:

Skrót SHA512, który powinien być zgodny z archiwum (https://github.com/${REPO}/archive/${REF}.tar.gz).

Jest to najbardziej łatwe do określenia przez ustawienie go 0jako , a następnie próba skompilowania portu. Komunikat o błędzie będzie zawierać pełny skrót, który można skopiować z powrotem do pliku portfile.

HEAD_REF

Niestabilne zatwierdzenie git (najlepiej gałąź) do ściągnięcia dla --head kompilacji.

W przypadku większości projektów powinna to być masterwartość . Wybrana gałąź powinna być zawsze dostępna na wszystkich obsługiwanych platformach.

POPRAWKI

Lista poprawek, które mają być stosowane do wyodrębnionych źródeł.

Ścieżki względne są oparte na katalogu portów.

GITHUB_HOST

Host zastępczy dla wystąpień usługi GitHub przedsiębiorstwa.

To pole powinno zawierać schemat, host i port żądanego adresu URL bez końcowego ukośnika.

AUTHORIZATION_TOKEN

Token do przekazania za pośrednictwem nagłówka HTTP autoryzacji jako "token ${AUTHORIZATION_TOKEN}". Jeśli AUTHORIZATION_TOKEN jest precyzyjnym tokenem dostępu, należy również użyć polecenia USE_TARBALL_API.

FILE_DISAMBIGUATOR

Token umożliwiający unikatową identyfikację wynikowej nazwy pliku, jeśli algorytm SHA512 ulegnie zmianie, mimo że odwołanie git nie zostanie wprowadzone, aby uniknąć przechodzenia na tę samą nazwę pliku.

USE_TARBALL_API

Po określeniu narzędzia vcpkg będzie używać interfejsu API tarball udokumentowanego w interfejsie API REST usługi GitHub , a nie interfejsu API archiwum do pobierania źródeł.

Ta opcja istnieje, a nie jest ustawieniem kontrolowanym globalnie, ponieważ algorytm SHA512 źródeł zwracanych przez interfejs API tarball różni się od zwykłego interfejsu API archiwum.

Notatki

Należy określić co najmniej jeden z REF elementów i HEAD_REF , jednak zaleca się, aby oba te elementy zostały przedstawione.

Spowoduje to wyeksportowanie zmiennej VCPKG_HEAD_VERSION podczas kompilacji głównych.

Przykłady

Źródło

scripts/cmake/vcpkg_from_github.cmake