Schema URL https://catalog.lintel.tools/schemas/schemastore/vcpkg-manifest-file/_shared/latest--vcpkg-schema-definitions.schema.json
Parent schema vcpkg-manifest-file

Definitions

artifact-references object

A key/value pair of artifact name to selected artifact version.

artifact-registry object

An artifact registry backed by a git repository.

builtin-registry object
contact object
role required
email string
contacts object
default-registry object
demands object

A set of filters to conditionally apply artifact pieces. Typically contains other 'requires' or similar elements. The keys are platform expressions with identifiers assumed to refer to the host.

dependency identifier | dependency-object

A port dependency fetchable by vcpkg.

dependency-object object

Expanded form of a dependency with explicit features and platform.

name string required

Identifiers used for port and feature names.

All of: variant, variant
host boolean
Default: false
default-features boolean
Default: true
platform string
version>= string

Minimum required version

pattern=^[^#]+(#\d+)?$
dependency-feature-object object

Expanded form of a dependency feature with platform expression.

name string required

Identifiers used for port and feature names.

All of: variant, variant
platform string
dependency-feature identifier | dependency-feature-object

A feature

description-field
exports object
aliases object
defines object
environment object
locations object
msbuild-properties object

Properties written verbatim when generating msbuild props for an activation, with $root$ replaced with the ultimate extraction root for this artifact. $root$ never contains a trailing backslash.

paths object
properties object
tools object
feature object

A package feature that can be selected by consumers.

description string-or-strings required

A string or array of strings containing the description of a package or feature.

dependencies dependency[]

Dependencies used by this feature.

supports string
license string | null

An SPDX license expression at version 3.9.

filesystem-registry object

A port registry backed by a filesystem layout.

info-block object
version string required

A semantic version string. See https://semver.org/

pattern=^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
id string required

Slash identifiers are used for artifact names.

All of: variant, variant
summary string

A shorter description of the artifact.

priority integer
Default: 0
min=0
description string
options string[]
install
install-instance object
unzip
untar
nupkg string
format=uri
git string

The http or ssh remote from which a git repo will be fetched.

git-registry object

A port registry backed by a git repo.

has-one-version object
has-zero-or-one-version object
identifier string

Identifiers used for port and feature names.

license string | null

An SPDX license expression at version 3.9.

maintainers
override

A version override.

package-pattern string

A pattern to match package name.

platform-expression string
port-version integer

A non-negative integer indicating the port revision. If this field doesn't exist, it's assumed to be 0.

registry-array registry-item[]
registry-item object
reserved-name string

Vcpkg reserved identifier names for lowercase.

semantic-version string

A semantic version string. See https://semver.org/

sha1 string
sha256 string
sha512 string
slash-identifier string

Slash identifiers are used for artifact names.

string-or-strings
string-array string[]
string-map object
strings-map object
uri-or-uris