Partager via


vcpkg_from_github

Téléchargez et extrayez un projet à partir de GitHub. Active la prise en charge de install --head.

Cela fonctionne également avec Egalea en spécifiant le serveur Runtimea avec l’option GITHUB_HOST .

Utilisation

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

Paramètres

OUT_SOURCE_PATH

Spécifie la variable out qui contiendra l’emplacement extrait.

Cela doit être défini SOURCE_PATH par convention.

REPO

Organisation ou utilisateur et référentiel sur GitHub.

REF

Un git commit-ish stable (idéalement une balise ou une validation) qui ne modifie pas le contenu. Il ne doit pas s’agir d’une branche.

Pour les référentiels sans versions officielles, il peut être défini sur l’ID de validation complet du dernier maître actuel.

Si REF est spécifié, SHA512 doit également être spécifié.

SHA512

Hachage SHA512 qui doit correspondre à l’archive (https://github.com/${REPO}/archive/${REF}.tar.gz).

Cela est le plus facilement déterminé en le définissant 0d’abord sur , puis en essayant de générer le port. Le message d’erreur contient le hachage complet, qui peut être copié dans le fichier de port.

HEAD_REF

Git commit-ish instable (idéalement une branche) à extraire pour les --head builds.

Pour la plupart des projets, cela doit être master. La branche choisie doit être une branche qui doit toujours être générée sur toutes les plateformes prises en charge.

CORRECTIFS

Liste des correctifs à appliquer aux sources extraites.

Les chemins relatifs sont basés sur le répertoire de port.

GITHUB_HOST

Hôte de remplacement pour les instances GitHub d’entreprise.

Ce champ doit contenir le schéma, l’hôte et le port de l’URL souhaitée sans barre oblique de fin.

AUTHORIZATION_TOKEN

Jeton à transmettre via l’en-tête HTTP d’autorisation en tant que « jeton ${AUTHORIZATION_TOKEN} ».

FILE_DISAMo IGUATOR

Jeton permettant d’identifier de manière unique le nom de fichier résultant si l’élément SHA512 change même si une référence git ne le fait pas, pour éviter de passer à pas sur le même nom de fichier.

Notes

Au moins un des REF éléments HEAD_REF et doit être spécifié, mais il est préférable que les deux soient présents.

Cela exporte la variable pendant les VCPKG_HEAD_VERSION builds de tête.

Exemples

Source

scripts/cmake/vcpkg_from_github.cmake