aboutsummaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authornicole mazzuca <mazzucan@outlook.com>2020-06-30 10:40:18 -0700
committerGitHub <noreply@github.com>2020-06-30 10:40:18 -0700
commit1d8f0acc9c3085d18152a3f639077a28109196b6 (patch)
tree1daa4780e0d5f51844217dc61dbf275433153abf /scripts
parent67ab6130b64cce6701c5a95ca3b9bdc4d949cb8a (diff)
downloadvcpkg-1d8f0acc9c3085d18152a3f639077a28109196b6.tar.gz
vcpkg-1d8f0acc9c3085d18152a3f639077a28109196b6.zip
[vcpkg manifest] Manifest Implementation (#11757)
==== Changes Related to manifests ==== * Add the `manifests` feature flag * This only says whether we look for a `vcpkg.json` in the cwd, not whether we support parsing manifests (for ports, for example) * Changes to the manifests RFC * `"authors"` -> `"maintainers"` * `--x-classic-mode` -> `-manifests` \in `vcpkg_feature_flags` * reserve `"core"` in addition to `"default"`, since that's already reserved for features * Add a small helper note about what identifiers must look like * `<license-string>`: SPDX v3.8 -> v3.9 * `"feature"."description"` is allowed to be an array of strings as well * `"version"` -> `"version-string"` for forward-compat with versions RFC * Add the `--feature-flags` option * Add the ability to turn off feature flags via passing `-<feature-flag>` to `VCPKG_FEATURE_FLAGS` or `--feature-flags` * Add CMake toolchain support for manifests * Requires either: * a feature flag of `manifests` in either `Env{VCPKG_FEATURE_FLAGS}` or `VCPKG_FEATURE_FLAGS` * Passing the `VCPKG_ENABLE_MANIFESTS` option * The toolchain will install your packages to `${VCPKG_MANIFEST_DIR}/vcpkg_installed`. * Add MSBuild `vcpkg integrate install` support for manifests * Requires `VcpkgEnableManifest` to be true * `vcpkg create` creates a port that has a `vcpkg.json` instead of a `CONTROL` * argparse, abseil, 3fd, and avisynthplus ports switched to manifest from CONTROL * Add support for `--x-manifest-root`, as well as code for finding it if not passed * Add support for parsing manifests! * Add a filesystem lock! ==== Important Changes which are somewhat unrelated to manifests ==== * Rename `logicexpression.{h,cpp}` to `platform-expression.{h,cpp}` * Add `PlatformExpression` type which takes the place of the old logic expression * Split the parsing of platform expressions from checking whether they're true or not * Eagerly parse PlatformExpressions as opposed to leaving them as strings * Add checking for feature flag consistency * i.e., if `-binarycaching` is passed, you shouldn't be passing `--binarysource` * Add the `Json::Reader` type which, with the help of user-defined visitors, converts JSON to your internal type * VcpkgArgParser: place the switch names into a constant as opposed to using magic constants * In general update the parsing code so that this ^ works * Add `Port-Version` fields to CONTROL files * This replaces the existing practice of `Version: <my-version>-<port-version>` ==== Smaller changes ==== * small drive-by cleanups to some CMake * `${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}` -> `${CURRENT_INSTALLED_DIR}` * Remove `-analyze` when compiling with clang-cl, since that's not a supported flag (vcpkg's build system) * Add a message about which compiler is detected by vcpkg's build system machinery * Fix `Expected::then` * Convert `""` to `{}` for `std::string` and `fs::path`, to avoid a `strlen` (additionally, `.empty()` instead of `== ""`, and `.clear()`) * Add `Strings::strto` which converts strings to numeric types * Support built-in arrays and `StringView` for `Strings::join` * Add `operator<` and friends to `StringView` * Add `substr` to `StringView` * SourceParagraphParser gets some new errors
Diffstat (limited to 'scripts')
-rw-r--r--scripts/Generate-SpdxLicenseList.ps163
-rw-r--r--scripts/buildsystems/msbuild/vcpkg-general.xml42
-rw-r--r--scripts/buildsystems/msbuild/vcpkg.props10
-rw-r--r--scripts/buildsystems/msbuild/vcpkg.targets43
-rw-r--r--scripts/buildsystems/vcpkg.cmake84
-rw-r--r--scripts/ci.baseline.txt4042
-rw-r--r--scripts/cmake/vcpkg_build_msbuild.cmake1
-rw-r--r--scripts/cmake/vcpkg_configure_cmake.cmake1
-rw-r--r--scripts/cmake/vcpkg_fixup_pkgconfig.cmake44
-rw-r--r--scripts/cmake/vcpkg_install_msbuild.cmake1
-rw-r--r--scripts/ports.cmake40
-rw-r--r--scripts/templates/CONTROL.in10
-rw-r--r--scripts/templates/vcpkg.json.in16
13 files changed, 2301 insertions, 2096 deletions
diff --git a/scripts/Generate-SpdxLicenseList.ps1 b/scripts/Generate-SpdxLicenseList.ps1
new file mode 100644
index 000000000..4710747eb
--- /dev/null
+++ b/scripts/Generate-SpdxLicenseList.ps1
@@ -0,0 +1,63 @@
+<#
+#>
+[CmdletBinding(PositionalBinding=$False)]
+Param(
+ [Parameter(Mandatory=$True)]
+ [string]$Commit,
+
+ [Parameter()]
+ [string]$GithubRepository = "spdx/license-list-data",
+
+ [Parameter()]
+ [string]$LicensesOutFile = "$PSScriptRoot/../toolsrc/src/vcpkg/spdx-licenses.inc",
+
+ [Parameter()]
+ [string]$ExceptionsOutFile = "$PSScriptRoot/../toolsrc/src/vcpkg/spdx-exceptions.inc"
+)
+
+function Transform-JsonFile {
+ [CmdletBinding()]
+ Param(
+ [string]$Uri,
+ [string]$OutFile,
+ [string]$OuterName,
+ [string]$Id
+ )
+
+ $req = Invoke-WebRequest -Uri $Uri
+
+ if ($req.StatusCode -ne 200)
+ {
+ Write-Error "Failed to GET $Uri"
+ return
+ }
+
+ $json = $req.Content | ConvertFrom-Json -Depth 10
+ Write-Verbose "Writing output to $OutFile"
+
+ $fileContent = @(
+ "// Data downloaded from $Uri",
+ "// Generated by scripts/Generate-SpdxLicenseList.ps1",
+ "{")
+ $json.$OuterName | ForEach-Object {
+ $fileContent += " `"$($_.$Id)`","
+ }
+ $fileContent += "}"
+
+ $fileContent -join "`n" | Out-File -FilePath $OutFile -Encoding 'utf8'
+}
+
+$baseUrl = "https://raw.githubusercontent.com/$GithubRepository/$Commit/json"
+Write-Verbose "Getting json files from $baseUrl"
+
+Transform-JsonFile `
+ -Uri "$baseUrl/licenses.json" `
+ -OutFile $LicensesOutFile `
+ -OuterName 'licenses' `
+ -Id 'licenseId'
+
+Transform-JsonFile `
+ -Uri "$baseUrl/exceptions.json" `
+ -OutFile $ExceptionsOutFile `
+ -OuterName 'exceptions' `
+ -Id 'licenseExceptionId'
diff --git a/scripts/buildsystems/msbuild/vcpkg-general.xml b/scripts/buildsystems/msbuild/vcpkg-general.xml
index 2ee5599be..55d5a736b 100644
--- a/scripts/buildsystems/msbuild/vcpkg-general.xml
+++ b/scripts/buildsystems/msbuild/vcpkg-general.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Rule
- Name="VcpkgGeneral"
+ Name="VcpkgOptions"
DisplayName="Vcpkg"
PageTemplate="generic"
Description="Vcpkg"
@@ -11,16 +11,28 @@
<Rule.DataSource>
<DataSource Persistence="ProjectFile" Label="Vcpkg" HasConfigurationCondition="true" />
</Rule.DataSource>
- <BoolProperty Name="VcpkgEnabled"
- DisplayName="Use Vcpkg"
- Description="Use Vcpkg for includes and libraries."
- Category="General"
+ <BoolProperty Name="VcpkgEnabled"
+ DisplayName="Use Vcpkg"
+ Description="Use Vcpkg for includes and libraries."
+ Category="General"
+ Default="true">
+ </BoolProperty>
+ <BoolProperty Name="VcpkgEnableManifest"
+ DisplayName="Use Vcpkg Manifest"
+ Description="Use the vcpkg manifest file to define your dependencies."
+ Category="General"
+ Default="false">
+ </BoolProperty>
+ <BoolProperty Name="VcpkgManifestInstall"
+ DisplayName="Install vcpkg dependencies"
+ Description="Install dependencies from the vcpkg manifest."
+ Category="General"
Default="true">
</BoolProperty>
- <BoolProperty Name="VcpkgUseStatic"
- DisplayName="Use static libraries"
- Description="Vcpkg can build static libraries (e.g. x64-windows-static). This options changes the default triplet to use these static libraries by appending -static to $(VcpkgTriplet). This will not be shown in the evaluation of the Triplet within the UI."
- Category="General"
+ <BoolProperty Name="VcpkgUseStatic"
+ DisplayName="Use static libraries"
+ Description="Vcpkg can build static libraries (e.g. x64-windows-static). This options changes the default triplet to use these static libraries by appending -static to $(VcpkgTriplet). This will not be shown in the evaluation of the Triplet within the UI."
+ Category="General"
Default="false">
</BoolProperty>
<BoolProperty Name="VcpkgAutoLink"
@@ -42,11 +54,19 @@
Subtype="folder"
Visible="false">
</StringProperty>
+ <StringProperty Name="VcpkgManifestRoot"
+ DisplayName="Vcpkg Manifest Root"
+ Description="The path to the directory which contains the manifest file, and the vcpkg_installed directory."
+ Category="General"
+ Subtype="folder"
+ Visible="false">
+ </StringProperty>
<StringProperty Name="VcpkgCurrentInstalledDir"
DisplayName="Package install directory"
Description="Defines the direct path to the installed Vcpkg packages. Only change this if you know what you are doing!"
Category="General"
- Subtype="folder">
+ Subtype="folder"
+ Visible="false">
</StringProperty>
<EnumProperty Name="VcpkgConfiguration" DisplayName="Vcpkg Configuration" Description="Specifies if release or debug libraries build with vcpkg should be used." Category="General">
<EnumValue Name="Release" Switch="Release" DisplayName="Release" Description="Uses release libraries">
@@ -54,4 +74,4 @@
<EnumValue Name="Debug" Switch="Debug" DisplayName="Debug" Description="Uses debug libraries">
</EnumValue>
</EnumProperty>
-</Rule> \ No newline at end of file
+</Rule>
diff --git a/scripts/buildsystems/msbuild/vcpkg.props b/scripts/buildsystems/msbuild/vcpkg.props
index a9b97348f..f9db4fc58 100644
--- a/scripts/buildsystems/msbuild/vcpkg.props
+++ b/scripts/buildsystems/msbuild/vcpkg.props
@@ -25,11 +25,17 @@
<VcpkgPlatformTarget Condition="'$(VcpkgPlatformTarget)' == ''">$(Platform)</VcpkgPlatformTarget>
</PropertyGroup>
+ <!-- Manifest files -->
+ <PropertyGroup>
+ <VcpkgEnableManifest Condition="'$(VcpkgEnableManifest)' == ''">false</VcpkgEnableManifest>
+ <VcpkgManifestInstall Condition="'$(VcpkgManifestInstall)' == ''">true</VcpkgManifestInstall>
+ <VcpkgManifestRoot>$([MSbuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), vcpkg.json))</VcpkgManifestRoot>
+ </PropertyGroup>
+
<!-- Set other defaults-->
<PropertyGroup>
<VcpkgUserTriplet Condition="'$(VcpkgUserTriplet)' == ''">$(VcpkgPlatformTarget)-$(VcpkgOSTarget)</VcpkgUserTriplet>
<VcpkgTriplet Condition="'$(VcpkgTriplet)' == ''">$(VcpkgUserTriplet)</VcpkgTriplet>
- <VcpkgCurrentInstalledDir Condition="'$(VcpkgCurrentInstalledDir)' == ''">$(VcpkgRoot)\installed\$(VcpkgTriplet)\</VcpkgCurrentInstalledDir>
<VcpkgPageSchema>$(VcpkgRoot)\scripts\buildsystems\msbuild\vcpkg-general.xml</VcpkgPageSchema>
- </PropertyGroup>
+ </PropertyGroup>
</Project>
diff --git a/scripts/buildsystems/msbuild/vcpkg.targets b/scripts/buildsystems/msbuild/vcpkg.targets
index 626e72228..0f562a876 100644
--- a/scripts/buildsystems/msbuild/vcpkg.targets
+++ b/scripts/buildsystems/msbuild/vcpkg.targets
@@ -7,6 +7,9 @@
<VcpkgRoot Condition="'$(VcpkgRoot)' == ''">$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), .vcpkg-root))</VcpkgRoot>
<VcpkgConfiguration Condition="'$(VcpkgConfiguration)' == ''">$(Configuration)</VcpkgConfiguration>
<VcpkgPageSchema Condition="'$(VcpkgPageSchema)' == ''">$(VcpkgRoot)\scripts\buildsystems\msbuild\vcpkg-general.xml</VcpkgPageSchema>
+ <VcpkgEnableManifest Condition="'$(VcpkgEnableManifest)' == ''">false</VcpkgEnableManifest>
+ <VcpkgManifestInstall Condition="'$(VcpkgManifestInstall)' == ''">true</VcpkgManifestInstall>
+ <VcpkgManifestRoot>$([MSbuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), vcpkg.json))</VcpkgManifestRoot>
</PropertyGroup>
<!-- Set default OS Target-->
@@ -22,7 +25,7 @@
<VcpkgUserTriplet Condition="'$(VcpkgUserTriplet)' == ''">$(PlatformTarget)-$(VcpkgOSTarget)</VcpkgUserTriplet>
<VcpkgTriplet Condition="'$(VcpkgTriplet)' == ''">$(VcpkgUserTriplet)</VcpkgTriplet>
<VcpkgCurrentInstalledDir Condition="'$(VcpkgCurrentInstalledDir)' == ''">$(VcpkgRoot)\installed\$(VcpkgTriplet)\</VcpkgCurrentInstalledDir>
- </PropertyGroup>
+ </PropertyGroup>
<!--Import property page for vcpkg -->
<ItemGroup Condition="'$(VcpkgPageSchema)' != '' ">
@@ -31,19 +34,24 @@
</PropertyPageSchema>
</ItemGroup>
+ <!-- Update properties if manifests are enabled or disabled -->
+ <PropertyGroup Condition="'$(VcpkgEnableManifest)' == 'true'">
+ <VcpkgInstalledDir>$(VcpkgManifestRoot)\vcpkg_installed\</VcpkgInstalledDir>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(VcpkgEnableManifest)' != 'true'">
+ <VcpkgInstalledDir>$(VcpkgRoot)\installed\</VcpkgInstalledDir>
+ </PropertyGroup>
+
<!-- Update properties if using static libs-->
<PropertyGroup Condition="'$(VcpkgUseStatic)' == 'true'">
- <VcpkgTripletTmp>$(VcpkgUserTriplet)</VcpkgTripletTmp>
- <VcpkgTriplet>$(VcpkgTripletTmp)-static</VcpkgTriplet>
- <VcpkgCurrentInstalledDir Condition="'$(VcpkgCurrentInstalledDir)' == '$(VcpkgRoot)\installed\$(VcpkgTripletTmp)\'">$(VcpkgRoot)\installed\$(VcpkgTriplet)\</VcpkgCurrentInstalledDir>
- <VcpkgTripletTmp />
+ <VcpkgTriplet>$(VcpkgUserTriplet)-static</VcpkgTriplet>
</PropertyGroup>
-
<PropertyGroup Condition="'$(VcpkgUseStatic)' != 'true'">
- <VcpkgTripletTmp>$(VcpkgTriplet)</VcpkgTripletTmp>
- <VcpkgTriplet Condition="'$(VcpkgTriplet)'!='$(VcpkgUserTriplet)'">$(VcpkgUserTriplet)</VcpkgTriplet>
- <VcpkgCurrentInstalledDir Condition="'$(VcpkgCurrentInstalledDir)' == '$(VcpkgRoot)\installed\$(VcpkgTripletTmp)\'">$(VcpkgRoot)\installed\$(VcpkgUserTriplet)\</VcpkgCurrentInstalledDir>
- <VcpkgTripletTmp />
+ <VcpkgTriplet>$(VcpkgUserTriplet)</VcpkgTriplet>
+ </PropertyGroup>
+
+ <PropertyGroup Condition="'$(VcpkgCurrentInstalledDir)' == ''">
+ <VcpkgCurrentInstalledDir>$(VcpkgInstalledDir)$(VcpkgTriplet)</VcpkgCurrentInstalledDir>
</PropertyGroup>
<PropertyGroup Condition="'$(VcpkgEnabled)' == 'true'">
@@ -51,8 +59,9 @@
<VcpkgNormalizedConfiguration Condition="$(VcpkgConfiguration.StartsWith('Release')) or '$(VcpkgConfiguration)' == 'RelWithDebInfo' or '$(VcpkgConfiguration)' == 'MinSizeRel'">Release</VcpkgNormalizedConfiguration>
<VcpkgRoot Condition="!$(VcpkgRoot.EndsWith('\'))">$(VcpkgRoot)\</VcpkgRoot>
<VcpkgCurrentInstalledDir Condition="!$(VcpkgCurrentInstalledDir.EndsWith('\'))">$(VcpkgCurrentInstalledDir)\</VcpkgCurrentInstalledDir>
+ <VcpkgManifestRoot Condition="!$(VcpkgManifestRoot.EndsWith('\'))">$(VcpkgManifestRoot)\</VcpkgManifestRoot>
<VcpkgApplocalDeps Condition="'$(VcpkgApplocalDeps)' == ''">true</VcpkgApplocalDeps>
- <!-- Deactivate Autolinking if lld is used as a linker. (Until a better way to solve the problem is found!).
+ <!-- Deactivate Autolinking if lld is used as a linker. (Until a better way to solve the problem is found!).
Tried to add /lib as a parameter to the linker call but was unable to find a way to pass it as the first parameter. -->
<VcpkgAutoLink Condition="'$(UseLldLink)' == 'true' and '$(VcpkgAutoLink)' == ''">false</VcpkgAutoLink>
</PropertyGroup>
@@ -72,12 +81,22 @@
</ResourceCompile>
</ItemDefinitionGroup>
+ <Target Name="VcpkgCheckManifestRoot" Condition="'$(VcpkgEnabled)' == 'true'" BeforeTargets="VcpkgInstallManifestDependencies">
+ <Error Text="The Vcpkg manifest was enabled, but we couldn't find a manifest file (vcpkg.json) in any directories above $(MSBuildProjectDirectory). Please add a manifest, disable manifests in your properties page, or pass /p:VcpkgEnableManifest=false." Condition="'$(VcpkgEnableManifest)' == 'true' and '$(VcpkgManifestRoot)' == ''" />
+ <Message Text="The Vcpkg manifest was disabled, but we found a manifest file in $(VcpkgManifestRoot). You may want to enable vcpkg manifests in your properties page or pass /p:VcpkgEnableManifest=true to the msbuild invocation." Importance="High" Condition="'$(VcpkgEnableManifest)' != 'true' and '$(VcpkgManifestRoot)' != ''" />
+ </Target>
+
<Target Name="VcpkgTripletSelection" BeforeTargets="ClCompile">
<Message Text="Using triplet &quot;$(VcpkgTriplet)&quot; from &quot;$(VcpkgCurrentInstalledDir)&quot;" Importance="High" Condition="'$(VcpkgEnabled)' == 'true'"/>
<Message Text="Not using Vcpkg because VcpkgEnabled is &quot;$(VcpkgEnabled)&quot;" Importance="High" Condition="'$(VcpkgEnabled)' != 'true'"/>
<Message Text="Vcpkg is unable to link because we cannot decide between Release and Debug libraries. Please define the property VcpkgConfiguration to be 'Release' or 'Debug' (currently '$(VcpkgConfiguration)')." Importance="High" Condition="'$(VcpkgEnabled)' == 'true' and '$(VcpkgNormalizedConfiguration)' == ''"/>
</Target>
+ <Target Name="VcpkgInstallManifestDependencies" Condition="'$(VcpkgEnabled)' == 'true' and '$(VcpkgEnableManifest)' == 'true' and '$(VcpkgManifestInstall)' == 'true'" BeforeTargets="ClCompile">
+ <Message Text="Installing vcpkg dependencies" Importance="High" />
+ <Exec Command="%22$(VcpkgRoot)vcpkg.exe%22 install --triplet %22$(VcpkgTriplet)%22 --vcpkg-root %22$(VcpkgRoot)\%22 %22--x-manifest-root=$(VcpkgManifestRoot)\%22 %22--x-install-root=$(VcpkgInstalledDir)\%22 --binarycaching" StandardOutputImportance="High" />
+ </Target>
+
<Target Name="AppLocalFromInstalled" AfterTargets="CopyFilesToOutputDirectory" BeforeTargets="CopyLocalFilesOutputGroup;RegisterOutput" Condition="'$(VcpkgEnabled)' == 'true' and '$(VcpkgApplocalDeps)' == 'true'">
<WriteLinesToFile
File="$(TLogLocation)$(ProjectName).write.1u.tlog"
@@ -98,4 +117,4 @@
<ReferenceCopyLocalPaths Include="@(VcpkgAppLocalDLLs)" />
</ItemGroup>
</Target>
-</Project> \ No newline at end of file
+</Project>
diff --git a/scripts/buildsystems/vcpkg.cmake b/scripts/buildsystems/vcpkg.cmake
index 03926336b..10be7a423 100644
--- a/scripts/buildsystems/vcpkg.cmake
+++ b/scripts/buildsystems/vcpkg.cmake
@@ -5,6 +5,46 @@ mark_as_advanced(CMAKE_TOOLCHAIN_FILE)
option(VCPKG_VERBOSE "Enables messages from the VCPKG toolchain for debugging purposes." OFF)
mark_as_advanced(VCPKG_VERBOSE)
+function(_vcpkg_get_directory_name_of_file_above OUT DIRECTORY FILENAME)
+ if(DEFINED ${OUT})
+ return()
+ endif()
+
+ set(_vcpkg_get_dir_candidate ${DIRECTORY})
+ while(IS_DIRECTORY ${_vcpkg_get_dir_candidate} AND NOT DEFINED _vcpkg_get_dir_out)
+ if(EXISTS ${_vcpkg_get_dir_candidate}/${FILENAME})
+ set(_vcpkg_get_dir_out ${_vcpkg_get_dir_candidate})
+ else()
+ get_filename_component(_vcpkg_get_dir_candidate_tmp ${_vcpkg_get_dir_candidate} DIRECTORY)
+ if(_vcpkg_get_dir_candidate STREQUAL _vcpkg_get_dir_candidate_tmp) # we've reached the root
+ set(_vcpkg_get_dir_out "${OUT}-NOTFOUND")
+ else()
+ set(_vcpkg_get_dir_candidate ${_vcpkg_get_dir_candidate_tmp})
+ endif()
+ endif()
+ endwhile()
+
+ set(${OUT} ${_vcpkg_get_dir_out} CACHE INTERNAL "_vcpkg_get_directory_name_of_file_above: ${OUT}")
+endfunction()
+
+_vcpkg_get_directory_name_of_file_above(_VCPKG_MANIFEST_DIR ${CMAKE_CURRENT_SOURCE_DIR} "vcpkg.json")
+if(_VCPKG_MANIFEST_DIR)
+ set(_VCPKG_MANIFEST_MODE_DEFAULT ON)
+else()
+ set(_VCPKG_MANIFEST_MODE_DEFAULT OFF)
+endif()
+
+option(VCPKG_MANIFEST_MODE "Set vcpkg to manifest mode" ${_VCPKG_MANIFEST_MODE_DEFAULT})
+
+if(NOT _VCPKG_MANIFEST_DIR AND VCPKG_MANIFEST_MODE)
+ message(FATAL_ERROR
+ "vcpkg manifest mode was enabled, but we couldn't find a manifest file (vcpkg.json) "
+ "in any directories above ${CMAKE_CURRENT_SOURCE_DIR}. Please add a manifest, or "
+ "disable manifests by turning off VCPKG_MANIFEST_MODE.")
+endif()
+
+option(VCPKG_MANIFEST_INSTALL "Install packages from the manifest" ON)
+
# Determine whether the toolchain is loaded during a try-compile configuration
get_property(_CMAKE_IN_TRY_COMPILE GLOBAL PROPERTY IN_TRY_COMPILE)
@@ -144,19 +184,28 @@ if(NOT DEFINED _VCPKG_ROOT_DIR)
while(IS_DIRECTORY ${_VCPKG_ROOT_DIR_CANDIDATE} AND NOT EXISTS "${_VCPKG_ROOT_DIR_CANDIDATE}/.vcpkg-root")
get_filename_component(_VCPKG_ROOT_DIR_TEMP ${_VCPKG_ROOT_DIR_CANDIDATE} DIRECTORY)
if (_VCPKG_ROOT_DIR_TEMP STREQUAL _VCPKG_ROOT_DIR_CANDIDATE) # If unchanged, we have reached the root of the drive
- message(FATAL_ERROR "Could not find .vcpkg-root")
else()
SET(_VCPKG_ROOT_DIR_CANDIDATE ${_VCPKG_ROOT_DIR_TEMP})
endif()
endwhile()
set(_VCPKG_ROOT_DIR ${_VCPKG_ROOT_DIR_CANDIDATE} CACHE INTERNAL "Vcpkg root directory")
endif()
-if (NOT DEFINED _VCPKG_INSTALLED_DIR)
- set(_VCPKG_INSTALLED_DIR ${_VCPKG_ROOT_DIR}/installed)
+
+_vcpkg_get_directory_name_of_file_above(_VCPKG_ROOT_DIR ${CMAKE_CURRENT_LIST_DIR} ".vcpkg-root")
+if(NOT _VCPKG_ROOT_DIR)
+ message(FATAL_ERROR "Could not find .vcpkg-root")
endif()
-if(NOT EXISTS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}" AND NOT _CMAKE_IN_TRY_COMPILE AND NOT VCPKG_SUPPRESS_INSTALLED_LIBRARIES_WARNING)
- message(WARNING "There are no libraries installed for the Vcpkg triplet ${VCPKG_TARGET_TRIPLET}.")
+if (NOT DEFINED _VCPKG_INSTALLED_DIR)
+ if(_VCPKG_MANIFEST_DIR)
+ set(_VCPKG_INSTALLED_DIR ${_VCPKG_MANIFEST_DIR}/vcpkg_installed)
+ else()
+ set(_VCPKG_INSTALLED_DIR ${_VCPKG_ROOT_DIR}/installed)
+ endif()
+
+ set(_VCPKG_INSTALLED_DIR ${_VCPKG_INSTALLED_DIR}
+ CACHE PATH
+ "The directory which contains the installed libraries for each triplet")
endif()
if(CMAKE_BUILD_TYPE MATCHES "^[Dd][Ee][Bb][Uu][Gg]$" OR NOT DEFINED CMAKE_BUILD_TYPE) #Debug build: Put Debug paths before Release paths.
@@ -218,6 +267,31 @@ foreach(_VCPKG_TOOLS_DIR ${_VCPKG_TOOLS_DIRS})
endif()
endforeach()
+
+# CMAKE_EXECUTABLE_SUFFIX is not yet defined
+if (CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows")
+ set(_VCPKG_EXECUTABLE_SUFFIX ".exe")
+else()
+ set(_VCPKG_EXECUTABLE_SUFFIX "")
+endif()
+
+if(VCPKG_MANIFEST_MODE AND VCPKG_MANIFEST_INSTALL AND NOT _CMAKE_IN_TRY_COMPILE)
+ execute_process(
+ COMMAND "${_VCPKG_ROOT_DIR}/vcpkg${_VCPKG_EXECUTABLE_SUFFIX}" install
+ --triplet ${VCPKG_TARGET_TRIPLET}
+ --vcpkg-root ${_VCPKG_ROOT_DIR}
+ --x-manifest-root=${_VCPKG_MANIFEST_DIR}
+ --x-install-root=${_VCPKG_INSTALLED_DIR}
+ --binarycaching
+ RESULT_VARIABLE _VCPKG_INSTALL_RESULT)
+ if (NOT _VCPKG_INSTALL_RESULT EQUAL 0)
+ message(FATAL_ERROR "vcpkg install failed")
+ endif()
+ set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS
+ "${_VCPKG_MANIFEST_DIR}/vcpkg.json"
+ "${_VCPKG_INSTALLED_DIR}/vcpkg/status")
+endif()
+
option(VCPKG_APPLOCAL_DEPS "Automatically copy dependencies into the output directory for executables." ON)
function(add_executable name)
_add_executable(${ARGV})
diff --git a/scripts/ci.baseline.txt b/scripts/ci.baseline.txt
index e77a6c4cd..ab8ea0e60 100644
--- a/scripts/ci.baseline.txt
+++ b/scripts/ci.baseline.txt
@@ -1,2021 +1,2021 @@
-###########################################################################
-## This file defines the current expected build state of ports in CI.
-##
-## States
-## pass - (default) the port builds in the CI system. If a port is
-## missing from this file then it is assumed to build.
-## fail - the port does not build in the CI system.
-## This is not necessarily the same as if a port is expected to build
-## on a developers machine because it may fail due to the machine
-## configuration. When set to fail the CI system will still attempt
-## to build the port and will report a CI failure until this file is updated.
-## skip - Do not build this port in the CI system.
-## This is added to ports that may be flaky or conflict with other
-## ports. Please comment for why a port is skipped so it can be
-## removed when the issue is resolved.
-## ignore - attempt to build the port, but do not fail the CI test if the
-## port does not build. Any ignored build failures will be reported
-## in the test summary.
-##
-##
-## CI tested triplets:
-## arm64-windows
-## arm-uwp
-## x64-linux
-## x64-osx
-## x64-uwp
-## x64-windows
-## x64-windows-static
-## x86-windows
-##
-
-
-# Add new items alphabetically
-
-3fd:arm64-windows=fail
-3fd:arm-uwp=fail
-3fd:x64-linux=fail
-3fd:x64-osx=fail
-3fd:x64-windows=fail
-3fd:x64-windows-static=fail
-3fd:x86-windows=ignore
-7zip:arm64-windows=fail
-7zip:arm-uwp=fail
-7zip:x64-linux=fail
-7zip:x64-osx=fail
-7zip:x64-uwp=fail
-activemq-cpp:x64-linux=fail
-activemq-cpp:x64-osx=fail
-akali:x64-uwp=fail
-akali:arm-uwp=fail
-akali:arm64-windows=fail
-alac:arm-uwp=fail
-alac:x64-uwp=fail
-alembic:x64-osx=fail
-alembic:x64-windows-static=fail
-aliyun-oss-c-sdk:x64-linux=fail
-aliyun-oss-c-sdk:x64-osx=fail
-ampl-mp:arm64-windows=fail
-ampl-mp:arm-uwp=fail
-ampl-mp:x64-uwp=fail
-amqpcpp:arm-uwp=fail
-amqpcpp:x64-uwp=fail
-angelscript:arm64-windows=fail
-angelscript:arm-uwp=fail
-antlr4:arm-uwp=fail
-antlr4:x64-uwp=fail
-anyrpc:arm-uwp=ignore
-anyrpc:x86-windows=ignore
-anyrpc:x64-windows-static=ignore
-apr:arm-uwp=fail
-apr:x64-uwp=fail
-# Cross compiling CI machine cannot run gen_test_char to generate apr_escape_test_char.h
-apr:arm64-windows=fail
-argtable2:arm-uwp=fail
-argtable2:x64-uwp=fail
-arrow:arm64-windows=fail
-arrow:x86-windows=fail
-asiosdk:x64-linux=fail
-asiosdk:x64-osx=fail
-asiosdk:x64-uwp=fail
-asiosdk:arm64-windows=fail
-asiosdk:arm-uwp=fail
-asmjit:arm64-windows=fail
-asmjit:arm-uwp=fail
-asyncplusplus:arm-uwp=fail
-asyncplusplus:x64-uwp=fail
-atk:x64-osx=fail
-atk:arm64-windows=fail
-atkmm:x64-linux=fail
-atlmfc:x64-linux=fail
-atlmfc:x64-osx=fail
-aubio:x64-linux=fail
-aubio:x64-osx=fail
-avisynthplus:x64-linux=fail
-avisynthplus:x64-windows-static=fail
-avro-c:arm-uwp=fail
-avro-c:x64-osx=fail
-avro-c:x64-uwp=fail
-aws-c-common:arm64-windows=fail
-aws-c-common:arm-uwp=fail
-aws-c-common:x64-uwp=fail
-aws-checksums:arm64-windows=fail
-aws-lambda-cpp:arm64-windows=fail
-aws-lambda-cpp:arm-uwp=fail
-aws-lambda-cpp:x64-uwp=fail
-aws-lambda-cpp:x64-windows=fail
-aws-lambda-cpp:x64-windows-static=fail
-aws-lambda-cpp:x86-windows=fail
-aws-lambda-cpp:x64-osx=fail
-aws-sdk-cpp:x64-linux=ignore
-azure-c-shared-utility:arm-uwp=fail
-azure-c-shared-utility:x64-uwp=fail
-basisu:x64-linux=ignore
-bde:arm64-windows=fail
-bde:arm-uwp=fail
-bde:x64-uwp=fail
-bde:x64-windows=fail
-bde:x64-windows-static=fail
-bde:x86-windows=fail
-benchmark:arm64-windows=fail
-benchmark:arm-uwp=fail
-benchmark:x64-uwp=fail
-berkeleydb:arm-uwp=fail
-berkeleydb:x64-linux=fail
-berkeleydb:x64-osx=fail
-berkeleydb:x64-uwp=fail
-bitserializer-rapidyaml:arm-uwp=skip
-bitserializer-rapidyaml:arm64-windows=skip
-bitserializer-rapidyaml:x64-osx=skip
-bitserializer:arm-uwp=skip
-bitserializer:arm64-windows=skip
-bitserializer:x64-osx=skip
-blaze:x64-windows=fail
-blaze:x64-windows-static=fail
-blaze:x86-windows=fail
-blend2d:arm64-windows=fail
-blend2d:arm-uwp=fail
-blend2d:x64-uwp=fail
-blitz:x64-uwp=fail
-blitz:arm64-windows=fail
-blitz:arm-uwp=fail
-blosc:arm64-windows=fail
-blosc:arm-uwp=fail
-blosc:x64-uwp=fail
-bond:arm-uwp=fail
-bond:x64-osx=fail
-bond:x64-uwp=fail
-boost-coroutine:arm-uwp=fail
-boost-coroutine:arm64-windows=fail
-boost-fiber:arm-uwp=fail
-boost-fiber:arm64-windows=fail
-boost-fiber:x64-osx=fail
-boost-fiber:x64-uwp=fail
-boost-fiber:x64-linux=ignore
-boost-filesystem:arm-uwp=fail
-boost-filesystem:x64-uwp=fail
-boost-iostreams:arm-uwp=fail
-boost-iostreams:x64-uwp=fail
-boost-locale:arm-uwp=fail
-boost-locale:x64-uwp=fail
-boost-log:arm-uwp=fail
-boost-log:x64-uwp=fail
-boost-stacktrace:arm-uwp=fail
-boost-stacktrace:x64-uwp=fail
-boost-test:arm-uwp=fail
-boost-test:x64-uwp=fail
-boost-wave:arm-uwp=fail
-boost-wave:x64-uwp=fail
-botan:arm64-windows=fail
-botan:arm-uwp=fail
-botan:x64-uwp=fail
-box2d:x64-uwp=fail
-box2d:arm-uwp=fail
-breakpad:arm64-windows=fail
-bullet3:arm64-windows=fail
-bullet3:arm-uwp=fail
-bullet3:x64-uwp=fail
-butteraugli:x64-linux=ignore
-caf:arm-uwp=fail
-caf:arm64-windows=fail
-caf:x64-uwp=fail
-caf:x64-linux=ignore
-caffe2:x86-windows=fail
-caffe2:arm64-windows=fail
-cairomm:x64-linux=fail
-capnproto:arm64-windows=fail
-capnproto:arm-uwp=fail
-capnproto:x64-uwp=fail
-c-ares:arm-uwp=fail
-c-ares:x64-uwp=fail
-cartographer:x64-osx=fail
-casclib:arm-uwp=fail
-casclib:x64-uwp=fail
-catch-classic:arm64-windows = skip
-catch-classic:arm-uwp = skip
-catch-classic:x64-linux = skip
-catch-classic:x64-osx = skip
-catch-classic:x64-uwp = skip
-catch-classic:x64-windows = skip
-catch-classic:x64-windows-static = skip
-catch-classic:x86-windows = skip
-ccd:arm-uwp=fail
-ccd:x64-uwp=fail
-cello:arm-uwp=fail
-cello:x64-uwp=fail
-cfitsio:arm-uwp=fail
-cfitsio:x64-uwp=fail
-cgicc:arm-uwp=fail
-cgicc:x64-uwp=fail
-chakracore:arm64-windows=fail
-chakracore:arm-uwp=fail
-chakracore:x64-linux=fail
-chakracore:x64-osx=fail
-chakracore:x64-uwp=fail
-chakracore:x64-windows-static=fail
-# DCMTK currently has a vendored copy of libcharls.a, which causes conflicts with charls (TODO: use charls' copy)
-charls:arm64-windows=skip
-charls:arm-uwp=skip
-charls:x64-linux=skip
-charls:x64-osx=skip
-charls:x64-uwp=skip
-charls:x64-windows=skip
-charls:x64-windows-static=skip
-charls:x86-windows=skip
-chartdir:arm64-windows=fail
-chartdir:arm-uwp=fail
-chartdir:x64-uwp=fail
-chartdir:x64-windows-static=fail
-chipmunk:arm64-windows=fail
-chipmunk:arm-uwp=fail
-chipmunk:x64-linux=fail
-chipmunk:x64-osx=fail
-chipmunk:x64-uwp=fail
-chmlib:arm-uwp=fail
-chmlib:x64-uwp=fail
-civetweb:arm64-windows = skip
-civetweb:arm-uwp = skip
-civetweb:x64-uwp = skip
-clapack:x64-uwp=fail
-clblas:arm64-windows=fail
-clblast:x64-osx=ignore
-clblast:x64-linux=fail
-clblast:x64-windows-static=fail
-clockutils:x64-linux=fail
-clockutils:x64-osx=fail
-cmark:x64-windows-static=fail
-cmcstl2:arm64-windows = skip
-cmcstl2:arm-uwp = skip
-cmcstl2:x64-linux = skip
-cmcstl2:x64-osx = skip
-cmcstl2:x64-uwp = skip
-cmcstl2:x64-windows = skip
-cmcstl2:x64-windows-static = skip
-cmcstl2:x86-windows = skip
-coin:arm64-windows=fail
-coin:arm-uwp=fail
-coin:x64-uwp=fail
-collada-dom:x64-windows-static=fail
-coolprop:arm-uwp=fail
-coolprop:x64-linux=fail
-coolprop:x64-osx=fail
-coolprop:x64-uwp=fail
-coroutine:arm-uwp=fail
-coroutine:x64-linux=fail
-coroutine:x64-uwp=fail
-corrade:arm-uwp=fail
-corrade:x64-uwp=fail
-cppcms:x64-linux=fail
-cppcms:x64-osx=fail
-cppcms:x64-windows-static=fail
-cppfs:arm-uwp=fail
-cppfs:x64-uwp=fail
-cppgraphqlgen:arm-uwp=ignore
-cppgraphqlgen:x64-uwp=ignore
-cppkafka:x64-linux=ignore
-cppmicroservices:arm64-windows=fail
-cppmicroservices:arm-uwp=fail
-cppmicroservices:x64-uwp=fail
-cpp-netlib:arm-uwp=fail
-cpp-netlib:x64-uwp=fail
-cpp-netlib:x64-linux=ignore
-cpp-taskflow:x64-osx=fail
-cppcoro:x64-linux=fail
-cppcoro:arm-uwp=fail
-cppcoro:x64-uwp=fail
-cppunit:arm64-windows=fail
-cppunit:arm-uwp=fail
-cppunit:x64-linux=fail
-cppunit:x64-osx=fail
-cppunit:x64-uwp=fail
-cpr:x64-linux=ignore
-cpuinfo:arm64-windows=ignore
-crashpad:arm64-windows=fail
-crashpad:arm-uwp=fail
-crashpad:x64-linux=fail
-crashpad:x64-uwp=fail
-crashpad:x86-windows=fail
-crfsuite:arm-uwp=fail
-crfsuite:x64-uwp=fail
-crossguid:x64-osx=fail
-cspice:arm-uwp=fail
-cspice:x64-uwp=fail
-ctemplate:arm64-windows=fail
-ctemplate:arm-uwp=fail
-ctemplate:x64-linux=fail
-ctemplate:x64-osx=fail
-cuda:x64-osx=fail
-cudnn:arm64-windows=fail
-cudnn:arm-uwp=fail
-cudnn:x64-uwp=fail
-cudnn:x64-windows-static=fail
-cudnn:x86-windows=fail
-dbow2:x64-osx=fail
-dcmtk:arm-uwp=fail
-dcmtk:arm64-windows=fail
-dcmtk:x64-uwp=fail
-detours:x64-linux=fail
-detours:x64-osx=fail
-devicenameresolver:arm-uwp=fail
-devicenameresolver:x64-linux=fail
-devicenameresolver:x64-osx=fail
-devicenameresolver:x64-uwp=fail
-devicenameresolver:x64-windows-static=fail
-dimcli:arm-uwp=fail
-dimcli:x64-osx=fail
-dimcli:x64-uwp=fail
-directxmesh:x64-linux=fail
-directxmesh:x64-osx=fail
-directxmesh:x64-windows-static=fail
-directxtex:x64-linux=fail
-directxtex:x64-osx=fail
-directxtex:x64-windows-static=fail
-directxtk:x64-linux=fail
-directxtk:x64-osx=fail
-directxtk:x64-windows-static=fail
-directxtk12:x64-linux=fail
-directxtk12:x64-osx=fail
-directxtk12:x64-windows-static=fail
-discord-game-sdk:x64-windows-static=fail
-discord-rpc:arm-uwp=fail
-discord-rpc:x64-uwp=fail
-dlfcn-win32:arm-uwp=fail
-dlfcn-win32:x64-linux=fail
-dlfcn-win32:x64-osx=fail
-dlfcn-win32:x64-uwp=fail
-dmlc:arm-uwp=fail
-dmlc:arm64-windows=ignore
-dmlc:x64-uwp=fail
-dmlc:x64-windows-static=ignore
-dmlc:x86-windows=ignore
-dpdk:arm-uwp=fail
-dpdk:arm64-windows=fail
-dpdk:x64-linux=fail
-dpdk:x64-osx=fail
-dpdk:x64-uwp=fail
-dpdk:x64-windows-static=fail
-dpdk:x64-windows=fail
-dpdk:x86-windows=fail
-duckx:arm64-windows = skip
-duckx:arm-uwp = skip
-duckx:x64-linux = skip
-duckx:x64-osx = skip
-duckx:x64-uwp = skip
-duckx:x64-windows = skip
-duckx:x64-windows-static = skip
-duckx:x86-windows = skip
-duilib:arm-uwp=fail
-duilib:x64-linux=fail
-duilib:x64-osx=fail
-duilib:x64-uwp=fail
-
-# requires python@2 from brew, but that no longer exists
-# python2 EOL yay!
-duktape:x64-osx=skip
-
-dxut:arm64-windows=fail
-dxut:arm-uwp=fail
-dxut:x64-linux=fail
-dxut:x64-osx=fail
-dxut:x64-windows-static=fail
-eastl:arm-uwp=fail
-easyhook:arm64-windows=fail
-easyhook:arm-uwp=fail
-easyhook:x64-linux=fail
-easyhook:x64-osx=fail
-easyhook:x64-uwp=fail
-easyhook:x64-windows-static=fail
-easyloggingpp:arm-uwp=fail
-easyloggingpp:x64-uwp=fail
-eathread:arm64-windows=fail
-eathread:arm-uwp=fail
-eathread:x64-uwp=fail
-eathread:x86-windows=fail
-ebml:arm-uwp=fail
-ebml:x64-uwp=fail
-ecm:arm64-windows = skip
-ecm:arm-uwp = skip
-ecm:x64-linux = skip
-ecm:x64-osx = skip
-ecm:x64-uwp = skip
-ecm:x64-windows = skip
-ecm:x64-windows-static = skip
-ecm:x86-windows = skip
-ecsutil:arm64-windows=fail
-ecsutil:arm-uwp=fail
-ecsutil:x64-linux=fail
-ecsutil:x64-osx=fail
-ecsutil:x64-uwp=fail
-embree2:x64-linux=fail
-embree2:x64-osx=fail
-embree2:x64-windows-static=fail
-enet:arm-uwp=fail
-enet:x64-uwp=fail
-epsilon:x64-windows-static=fail
-epsilon:arm-uwp=fail
-epsilon:x64-linux=fail
-epsilon:x64-osx=fail
-epsilon:x64-uwp=fail
-evpp:x64-osx=fail
-expat:arm-uwp=fail
-expat:x64-uwp=fail
-faad2:x64-linux=fail
-faad2:x64-osx=fail
-fann:arm-uwp=fail
-fann:x64-linux=fail
-fann:x64-osx=fail
-fann:x64-uwp=fail
-fann:x64-windows-static=fail
-farmhash:arm64-windows=fail
-farmhash:arm-uwp=fail
-farmhash:x64-uwp=fail
-farmhash:x64-windows=fail
-farmhash:x64-windows-static=fail
-farmhash:x86-windows=fail
-fastcdr:x64-linux=fail
-fastrtps:arm-uwp=fail
-fastrtps:x64-linux=fail
-fastrtps:x64-osx=fail
-fastrtps:x64-uwp=fail
-fastrtps:x64-windows-static=fail
-fdk-aac:arm64-windows=fail
-fdk-aac:arm-uwp=fail
-fdk-aac:x64-uwp=fail
-fdlibm:arm-uwp=fail
-fdlibm:x64-uwp=fail
-fftw3:arm-uwp=fail
-fftw3:x64-uwp=fail
-flint:x64-linux=fail
-flint:x64-osx=fail
-fltk:arm-uwp=fail
-fltk:x64-uwp=fail
-fluidsynth:x64-linux=fail
-fluidsynth:x64-osx=fail
-fmem:arm-uwp=fail
-fmem:x64-uwp=fail
-fmi4cpp:arm-uwp=fail
-fmi4cpp:x64-uwp=fail
-fmilib:arm64-windows=fail
-fmilib:arm-uwp=fail
-fmilib:x64-linux=ignore
-fmilib:x64-uwp=fail
-fmilib:x64-windows=ignore
-fmilib:x64-windows-static=ignore
-fmilib:x86-windows=ignore
-foonathan-memory:arm64-windows=fail
-foonathan-memory:arm-uwp=fail
-foonathan-memory:x64-uwp=fail
-forge:x86-windows=fail
-freeglut:arm64-windows=fail
-freeglut:arm-uwp=fail
-freeglut:x64-uwp=fail
-freeglut:x64-osx=fail
-freerdp:arm64-windows=fail
-freerdp:arm-uwp=fail
-freerdp:x64-osx=fail
-freerdp:x64-uwp=fail
-freetds:arm-uwp=fail
-freetds:x64-linux=fail
-freetds:x64-osx=fail
-freetds:x64-uwp=fail
-freetype-gl:x64-uwp=fail
-freexl:arm-uwp=fail
-freexl:arm64-windows=ignore
-freexl:x64-uwp=fail
-freexl:x86-windows=ignore
-freexl:x64-windows=ignore
-freexl:x64-windows-static=ignore
-fribidi:arm64-windows=fail
-fribidi:arm-uwp=fail
-fribidi:x64-linux=fail
-fribidi:x64-osx=fail
-fribidi:x64-uwp=fail
-ftgl:x64-uwp=fail
-fuzzylite:arm-uwp=fail
-fuzzylite:x64-linux=fail
-fuzzylite:x64-osx=fail
-fuzzylite:x64-uwp=fail
-g3log:arm64-windows=fail
-g3log:arm-uwp=fail
-g3log:x64-uwp=fail
-gainput:arm-uwp=fail
-gainput:x64-linux=fail
-gainput:x64-uwp=fail
-gamma:x64-linux=fail
-gamma:x64-osx=fail
-gasol:arm64-windows=fail
-gasol:arm-uwp=fail
-gasol:x64-uwp=fail
-gdcm:arm64-windows=fail
-gdcm:x64-linux = skip
-geographiclib:x64-linux=ignore
-geos:arm-uwp=fail
-geos:x64-uwp=fail
-getopt:arm-uwp=fail
-getopt:x64-uwp=fail
-getopt-win32:arm64-windows=fail
-getopt-win32:arm-uwp=fail
-getopt-win32:x64-linux=fail
-getopt-win32:x64-osx=fail
-getopt-win32:x64-uwp=fail
-getopt-win32:x64-windows-static=fail
-gflags:arm-uwp=fail
-gflags:x64-uwp=fail
-
-# Conflicts with libevent
-gherkin-c:arm64-windows = skip
-gherkin-c:arm-uwp = skip
-gherkin-c:x64-linux=fail
-gherkin-c:x64-osx=fail
-gherkin-c:x64-uwp = skip
-gherkin-c:x64-windows = skip
-gherkin-c:x64-windows-static = skip
-gherkin-c:x86-windows = skip
-gl3w:arm64-windows=fail
-gl3w:arm-uwp=fail
-glew:arm64-windows=fail
-glew:arm-uwp=fail
-glfw3:arm-uwp=fail
-glfw3:x64-uwp=fail
-glib:x64-uwp=fail
-glib:x64-windows-static=fail
-glib:x64-osx=fail
-globjects:x64-linux=ignore
-gmmlib:arm64-windows=fail
-gmmlib:arm-uwp=fail
-gmmlib:x64-osx=fail
-gmmlib:x64-uwp=fail
-gmmlib:x64-windows=fail
-gmmlib:x64-windows-static=fail
-gmmlib:x86-windows=fail
-google-cloud-cpp:arm64-windows=fail
-google-cloud-cpp:arm-uwp=fail
-google-cloud-cpp:x64-uwp=fail
-gppanel:x64-osx=fail
-gperf:x64-uwp=fail
-gperf:arm-uwp=fail
-gperftools:arm64-windows=fail
-gperftools:x64-uwp=fail
-gperftools:arm-uwp=fail
-graphicsmagick:arm-uwp=fail
-graphicsmagick:x64-uwp=fail
-graphite2:arm-uwp=fail
-graphite2:x64-uwp=fail
-graphqlparser:arm-uwp=fail
-graphqlparser:x64-uwp=fail
-gsl:arm-uwp=fail
-gsl:x64-uwp=fail
-# https://github.com/microsoft/vcpkg/pull/11048
-gsoap:x64-linux=fail
-gsoap:x64-osx=fail
-gsoap:x64-uwp=fail
-gtk:x64-linux=fail
-gtk:x86-windows=ignore
-guetzli:x64-osx=fail
-h3:arm64-windows=fail
-h3:arm-uwp=fail
-h3:x64-uwp=fail
-halide:x64-windows-static=fail
-hdf5:arm64-windows=fail
-hdf5:arm-uwp=fail
-hdf5:x64-uwp=fail
-healpix:x86-windows=fail
-healpix:x64-windows=fail
-healpix:x64-windows-static=fail
-healpix:x64-uwp=fail
-healpix:arm64-windows=fail
-healpix:arm-uwp=fail
-healpix:x64-osx=fail
-hidapi:arm64-windows=fail
-hidapi:arm-uwp=fail
-hidapi:x64-linux=fail
-hidapi:x64-osx=fail
-hidapi:x64-uwp=fail
-hiredis:arm-uwp=fail
-hiredis:x64-uwp=fail
-hpx:x64-windows-static=fail
-hpx:x64-linux=fail
-hwloc:arm64-windows=fail
-hwloc:arm-uwp=fail
-hwloc:x64-uwp=fail
-hyperscan:x64-linux=ignore
-# hypre has a conflict with 'superlu' port
-hypre:x64-linux=skip
-hypre:x64-osx=skip
-icu:arm64-windows=fail
-icu:arm-uwp=fail
-icu:x64-uwp=fail
-idevicerestore:x64-linux=fail
-idevicerestore:x64-osx=fail
-ignition-common1:x64-linux=fail
-ignition-msgs1:arm64-windows=fail
-ignition-msgs1:arm-uwp=fail
-ignition-msgs1:x64-uwp=fail
-ignition-msgs5:x64-linux=fail
-ignition-msgs5:arm64-windows=fail
-ignition-msgs5:arm-uwp=fail
-ignition-msgs5:x64-uwp=fail
-ignition-msgs5:x64-osx=skip
-imgui-sfml:x64-linux=ignore
-intel-ipsec:arm64-windows=fail
-intel-ipsec:arm-uwp=fail
-intel-ipsec:x64-osx=fail
-intel-ipsec:x64-uwp=fail
-intel-ipsec:x64-windows=fail
-intel-ipsec:x64-windows-static=fail
-intel-ipsec:x86-windows=fail
-intel-mkl:arm64-windows=fail
-intel-mkl:arm-uwp=fail
-intel-mkl:x64-linux=fail
-intel-mkl:x64-osx=fail
-intel-mkl:x64-uwp=fail
-intel-mkl:x64-windows=fail
-intel-mkl:x64-windows-static=fail
-intel-mkl:x86-windows=fail
-intelrdfpmathlib:arm-uwp=fail
-intelrdfpmathlib:x64-linux=fail
-intelrdfpmathlib:x64-uwp=fail
-irrlicht:arm64-windows=fail
-irrlicht:arm-uwp=fail
-irrlicht:x64-osx=fail
-irrlicht:x64-uwp=fail
-isal:arm64-windows=fail
-isal:arm-uwp=fail
-isal:x64-osx=fail
-isal:x64-uwp=fail
-isal:x64-windows=fail
-isal:x64-windows-static=fail
-isal:x86-windows=fail
-itk:x64-windows=fail
-itk:x64-windows-static=fail
-itk:x86-windows=fail
-ixwebsocket:x64-linux=ignore
-jack2:arm-uwp=fail
-jack2:x64-uwp=fail
-jaeger-client-cpp:arm64-windows=fail
-jbig2dec:arm-uwp=fail
-jbig2dec:x64-uwp=fail
-jemalloc:arm64-windows=fail
-jemalloc:arm-uwp=fail
-jemalloc:x64-linux=fail
-jemalloc:x64-osx=fail
-jemalloc:x64-uwp=fail
-jemalloc:x64-windows-static=fail
-jinja2cpplight:arm-uwp=fail
-jinja2cpplight:x64-uwp=fail
-keystone:arm-uwp=fail
-keystone:x64-uwp=fail
-kinectsdk1:arm64-windows=fail
-kinectsdk1:arm-uwp=fail
-kinectsdk1:x64-linux=fail
-kinectsdk1:x64-osx=fail
-kinectsdk2:arm64-windows=fail
-kinectsdk2:arm-uwp=fail
-kinectsdk2:x64-linux=fail
-kinectsdk2:x64-osx=fail
-lastools:arm-uwp=fail
-lastools:x64-uwp=fail
-laszip:arm-uwp=fail
-laszip:x64-uwp=fail
-lcm:x64-linux=fail
-lcm:x64-osx=fail
-leptonica:x64-uwp=fail
-leptonica:arm-uwp=fail
-leveldb:arm-uwp=fail
-leveldb:x64-uwp=fail
-libaiff:x64-linux=fail
-libarchive:arm-uwp=fail
-libass:x64-windows-static=fail
-libb2:x86-windows=fail
-libb2:x64-windows=fail
-libb2:x64-windows-static=fail
-libb2:x64-uwp=fail
-libb2:arm64-windows=fail
-libb2:arm-uwp=fail
-libbf:arm64-windows=fail
-libbf:arm-uwp=fail
-libbf:x64-uwp=fail
-libbf:x64-windows=fail
-libbf:x64-windows-static=fail
-libbf:x86-windows=fail
-libbson:arm-uwp=fail
-libbson:x64-uwp=fail
-libcds:arm64-windows=fail
-libcds:arm-uwp=fail
-libcds:x64-uwp=fail
-libconfig:x64-osx=fail
-libcopp:arm64-windows=fail
-libcopp:arm-uwp=fail
-libcopp:x64-windows-static=fail
-libcrafter:x86-windows=fail
-libcrafter:x64-windows=fail
-cpuid:arm-uwp=fail
-cpuid:x64-uwp=fail
-cpuid:arm64-windows=fail
-libdatrie:x64-linux=fail
-libdatrie:x64-osx=fail
-libdisasm:arm-uwp=fail
-libdisasm:x64-uwp=fail
-libdshowcapture:arm-uwp=fail
-libdshowcapture:x64-linux=fail
-libdshowcapture:x64-osx=fail
-libdshowcapture:x64-uwp=fail
-libepoxy:arm64-windows=fail
-libepoxy:arm-uwp=fail
-libepoxy:x64-osx=fail
-libepoxy:x64-uwp=fail
-libepoxy:x64-windows-static=fail
-libevent:arm-uwp=fail
-libevent:x64-uwp=fail
-libevhtp:x86-windows=fail
-libevhtp:x64-windows=fail
-libevhtp:x64-windows-static=fail
-libevhtp:x64-uwp=fail
-libevhtp:arm64-windows=fail
-libevhtp:arm-uwp=fail
-libexif:arm-uwp=fail
-libexif:x64-uwp=fail
-libfabric:arm-uwp=fail
-libfabric:x64-linux=fail
-libfabric:x64-osx=fail
-libfabric:x64-uwp=fail
-libfabric:x64-windows=ignore
-libfabric:x64-windows-static=fail
-libfreenect2:arm64-windows=fail
-libgd:x64-linux=ignore
-libgit2:arm-uwp=fail
-libgit2:x64-uwp=fail
-libgo:arm-uwp=fail
-libgo:x64-uwp=fail
-libgo:arm64-windows=fail
-libgo:x64-windows=fail
-libgo:x86-windows=fail
-libgpod:arm64-windows=fail
-libgpod:arm-uwp=fail
-libgpod:x64-uwp=fail
-libgpod:x64-windows=fail
-libgpod:x64-windows-static=fail
-libgpod:x86-windows=fail
-libhdfs3:arm64-windows=fail
-libhdfs3:arm-uwp=fail
-libhdfs3:x64-uwp=fail
-libhdfs3:x64-windows=fail
-libhdfs3:x64-windows-static=fail
-libhdfs3:x86-windows=fail
-libhdfs3:x64-linux=fail
-libhydrogen:arm64-windows=fail
-libics:arm-uwp=fail
-libics:x64-uwp=fail
-libidn2:x64-linux=fail
-libidn2:x64-osx=fail
-libigl:arm64-windows=fail
-libigl:arm-uwp=fail
-libigl:x64-uwp=fail
-liblemon:arm-uwp=fail
-liblemon:x64-uwp=fail
-liblinear:arm-uwp=fail
-liblinear:x64-uwp=fail
-liblo:arm-uwp=fail
-liblo:x64-linux=fail
-liblo:x64-osx=fail
-liblo:x64-uwp=fail
-liblsl:arm64-windows=fail
-liblsl:arm-uwp=fail
-liblsl:x64-linux=fail
-liblsl:x64-osx=fail
-liblsl:x64-uwp=fail
-libmad:arm-uwp=fail
-libmad:x64-uwp=fail
-libmagic:x86-windows=fail
-libmagic:x64-windows=fail
-libmagic:x64-windows-static=fail
-libmagic:x64-uwp=fail
-libmagic:arm64-windows=fail
-libmagic:arm-uwp=fail
-libmariadb:arm64-windows = skip
-libmariadb:arm-uwp = skip
-libmariadb:x64-linux = skip
-libmariadb:x64-osx = skip
-libmariadb:x64-uwp = skip
-libmariadb:x64-windows = skip
-libmariadb:x64-windows-static = skip
-libmariadb:x86-windows = skip
-# libmesh installs tons of problematic files that conflict with other ports (boost, eigen, etc)
-libmesh:arm64-windows=skip
-libmesh:arm-uwp=skip
-libmesh:x64-uwp=skip
-libmesh:x64-windows=skip
-libmesh:x64-windows-static=skip
-libmesh:x86-windows=skip
-libmesh:x64-osx=skip
-libmesh:x64-linux=skip
-libmodbus:arm-uwp=fail
-libmodbus:x64-uwp=fail
-libmodman:arm-uwp=fail
-libmodman:x64-uwp=fail
-libmodman:x64-windows-static=fail
-libmodplug:arm-uwp=fail
-libmodplug:x64-uwp=fail
-libmpeg2:arm-uwp=fail
-libmpeg2:x64-linux=fail
-libmpeg2:x64-osx=fail
-libmpeg2:x64-uwp=fail
-libmupdf:x64-osx=fail
-libmysql:x86-windows=fail
-libnice:x64-linux=fail
-libnice:x64-osx=fail
-libodb-boost:x64-linux=ignore
-libodb-pgsql:x64-linux=ignore
-libodb-pgsql:x64-windows=ignore
-libopenmpt:x64-linux=fail
-libopenmpt:x64-osx=fail
-libopusenc:arm-uwp=fail
-libopusenc:x64-linux=fail
-libopusenc:x64-osx=fail
-libopusenc:x64-uwp=fail
-libosip2:arm64-windows=fail
-libosip2:arm-uwp=fail
-libosip2:x64-uwp=fail
-libosip2:x64-windows=fail
-libosip2:x64-windows-static=fail
-libosip2:x86-windows=fail
-libp7-baical:arm64-windows = skip
-libp7-baical:arm-uwp = skip
-libp7-baical:x64-linux = skip
-libp7-baical:x64-osx = skip
-libp7-baical:x64-uwp = skip
-libp7-baical:x64-windows = skip
-libp7-baical:x64-windows-static = skip
-libp7-baical:x86-windows = skip
-libp7client:arm64-windows=fail
-libp7client:arm-uwp=fail
-libp7client:x64-linux=fail
-libp7client:x64-osx=fail
-libp7client:x64-uwp=fail
-libpcap:arm64-windows=fail
-libpcap:arm-uwp=fail
-libpcap:x64-osx=fail
-libpcap:x64-uwp=fail
-libpcap:x64-windows-static=fail
-libpff:arm-uwp=fail
-libpff:x64-linux=fail
-libpff:x64-osx=fail
-libpff:x64-uwp=fail
-libpff:x64-windows-static=fail
-libplist:x64-windows-static=fail
-libpng-apng:arm64-windows = skip
-libpng-apng:arm-uwp = skip
-libpng-apng:x64-linux = skip
-libpng-apng:x64-osx = skip
-libpng-apng:x64-uwp = skip
-libpng-apng:x64-windows = skip
-libpng-apng:x64-windows-static = skip
-libpng-apng:x86-windows = skip
-libpq:arm-uwp=fail
-libpq:x64-uwp=fail
-libqcow:arm-uwp=fail
-libqcow:x64-uwp=fail
-libqcow:x64-windows-static=fail
-librabbitmq:x64-linux=ignore
-libraqm:x64-windows-static=fail
-librdkafka:arm-uwp=fail
-librdkafka:x64-uwp=fail
-
-# Conflicts with openssl
-boringssl:arm64-windows = skip
-boringssl:arm-uwp = skip
-boringssl:x64-linux = skip
-boringssl:x64-osx = skip
-boringssl:x64-uwp = skip
-boringssl:x64-windows = skip
-boringssl:x64-windows-static = skip
-boringssl:x86-windows = skip
-libressl:arm64-windows = skip
-libressl:arm-uwp = skip
-libressl:x64-linux = skip
-libressl:x64-osx = skip
-libressl:x64-uwp = skip
-libressl:x64-windows = skip
-libressl:x64-windows-static = skip
-libressl:x86-windows = skip
-librsync:arm-uwp=fail
-librsync:x64-uwp=fail
-libsamplerate:arm64-windows=fail
-libsamplerate:arm-uwp=fail
-libsamplerate:x64-osx=fail
-libsoundio:arm64-windows=fail
-libsoundio:arm-uwp=fail
-libsoundio:x64-uwp=fail
-libsrt:arm-uwp=fail
-libsrt:x64-uwp=fail
-libssh:arm64-windows=fail
-libssh:arm-uwp=fail
-libssh:x64-uwp=fail
-libstk:arm-uwp=fail
-libstk:x64-uwp=fail
-libtins:arm-uwp=fail
-libtins:x64-uwp=fail
-libtomcrypt:arm64-windows=fail
-libtomcrypt:arm-uwp=fail
-libtorrent:arm-uwp=fail
-libtorrent:x64-uwp=fail
-libudis86:arm-uwp=fail
-libudis86:x64-linux=fail
-libudis86:x64-osx=fail
-libudis86:x64-uwp=fail
-libudns:arm64-windows=fail
-libudns:arm-uwp=fail
-libudns:x64-uwp=fail
-libudns:x64-windows=fail
-libudns:x64-windows-static=fail
-libudns:x86-windows=fail
-libudns:x64-osx=fail
-libui:arm-uwp=fail
-libui:x64-linux=fail
-libui:x64-uwp=fail
-libusb:arm-uwp=fail
-libusb:x64-linux=fail
-libusb:x64-osx=fail
-libusb:x64-uwp=fail
-libusbmuxd:arm-uwp=fail
-libusbmuxd:x64-uwp=fail
-libusbmuxd:x64-linux=fail
-libusbmuxd:x64-osx=fail
-libusb-win32:arm-uwp=fail
-libusb-win32:x64-linux=fail
-libusb-win32:x64-osx=fail
-libusb-win32:x64-uwp=fail
-libuuid:arm64-windows=fail
-libuuid:arm-uwp=fail
-
-# Causes build failures in vxl and podofo on osx
-# Conflicts with Darwin kernel sdk uuid.h (has missing definitions)
-libuuid:x64-osx = skip
-libuuid:x64-uwp=fail
-libuuid:x64-windows=fail
-libuuid:x64-windows-static=fail
-libuuid:x86-windows=fail
-libuv:arm-uwp=fail
-libuv:x64-uwp=fail
-libvmdk:arm-uwp=fail
-libvmdk:x64-uwp=fail
-libwandio:x86-windows=fail
-libwandio:x64-windows=fail
-libwandio:x64-windows-static=fail
-libwandio:x64-uwp=fail
-libwandio:arm64-windows=fail
-libwandio:arm-uwp=fail
-libwebsockets:arm-uwp=fail
-libwebsockets:x64-uwp=fail
-libxmp-lite:x64-linux=fail
-libxmp-lite:x64-osx=fail
-libxslt:arm-uwp=fail
-libxslt:x64-osx=fail
-libxslt:x64-uwp=fail
-libyuv:arm-uwp=fail
-libyuv:x64-uwp=fail
-libzippp:x64-linux=ignore
-licensepp:arm-uwp=fail
-licensepp:x64-uwp=fail
-linenoise-ng:arm-uwp=fail
-linenoise-ng:x64-uwp=fail
-live555:arm64-windows=fail
-live555:arm-uwp=fail
-live555:x64-linux=fail
-live555:x64-osx=fail
-live555:x64-uwp=fail
-live555:x64-windows=fail
-live555:x64-windows-static=fail
-live555:x86-windows=fail
-llgl:arm-uwp=fail
-llgl:x64-uwp=fail
-llvm:arm-uwp=fail
-llvm:arm64-windows=fail
-llvm:x64-uwp=fail
-lmdb:arm-uwp=fail
-lmdb:x64-uwp=fail
-log4cplus:arm-uwp=fail
-log4cplus:x64-uwp=fail
-log4cpp:arm-uwp=fail
-log4cpp:x64-uwp=fail
-log4cxx:arm64-windows=fail
-log4cxx:arm-uwp=fail
-log4cxx:x64-linux=fail
-log4cxx:x64-uwp=fail
-log4cxx:x64-windows-static=fail
-log4cxx:x64-osx=fail
-lua:arm-uwp=fail
-lua:x64-uwp=fail
-luajit:arm64-windows = skip
-luajit:arm-uwp = skip
-luajit:x64-linux = skip
-luajit:x64-osx = skip
-luajit:x64-uwp = skip
-luajit:x64-windows = skip
-luajit:x64-windows-static = skip
-luajit:x86-windows = skip
-luasocket:x64-linux=fail
-luasocket:x64-osx=fail
-lzfse:arm-uwp=fail
-magnum:arm64-windows=skip
-marl:arm-uwp=fail
-marl:x64-uwp=fail
-mathgl:x64-osx=fail
-mathgl:x64-uwp=fail
-mathgl:x64-linux=ignore
-matio:x64-linux=fail
-matio:x64-osx=fail
-mbedtls:arm-uwp=fail
-mbedtls:x64-uwp=fail
-mdnsresponder:arm64-windows=fail
-mdnsresponder:arm-uwp=fail
-mdnsresponder:x64-linux=fail
-mdnsresponder:x64-osx=fail
-mdnsresponder:x64-uwp=fail
-mecab:arm64-windows = skip
-mecab:arm-uwp = skip
-mecab:x64-linux = skip
-mecab:x64-uwp = skip
-mecab:x64-windows = skip
-mecab:x64-windows-static = skip
-mecab:x86-windows = skip
-memorymodule:arm-uwp=fail
-memorymodule:x64-linux=fail
-memorymodule:x64-osx=fail
-memorymodule:x64-uwp=fail
-meschach:arm-uwp=fail
-meschach:x64-linux=fail
-meschach:x64-osx=fail
-meschach:x64-uwp=fail
-metis:arm-uwp=fail
-metis:x64-uwp=fail
-metrohash:arm-uwp=fail
-metrohash:x64-uwp=fail
-metrohash:x86-windows=fail
-metrohash:arm64-windows=fail
-mhook:arm64-windows=fail
-mhook:arm-uwp=fail
-mhook:x64-linux=fail
-mhook:x64-osx=fail
-mhook:x64-uwp=fail
-milerius-sfml-imgui:x64-osx=fail
-milerius-sfml-imgui:x64-windows-static=fail
-milerius-sfml-imgui:x64-linux=ignore
-mimalloc:arm64-windows=fail
-mimalloc:arm-uwp=fail
-mimalloc:x64-uwp=fail
-minhook:arm64-windows=fail
-minhook:arm-uwp=fail
-minhook:x64-linux=fail
-minhook:x64-osx=fail
-minhook:x64-uwp=fail
-minifb:arm-uwp=fail
-minifb:x64-uwp=fail
-minisat-master-keying:arm-uwp=fail
-minisat-master-keying:x64-uwp=fail
-miniupnpc:arm-uwp=fail
-miniupnpc:x64-uwp=fail
-minizip:arm-uwp=fail
-minizip:x64-uwp=fail
-# Conflicts with signalrclient
-microsoft-signalr:arm64-windows=skip
-microsoft-signalr:arm-uwp=skip
-microsoft-signalr:x64-linux=skip
-microsoft-signalr:x64-osx=skip
-microsoft-signalr:x64-uwp=skip
-microsoft-signalr:x64-windows=skip
-microsoft-signalr:x64-windows-static=skip
-microsoft-signalr:x86-windows=skip
-mman:x64-linux=fail
-mman:x64-osx=fail
-mmloader:arm64-windows=fail
-mmloader:arm-uwp=fail
-mmloader:x64-linux=fail
-mmloader:x64-osx=fail
-mmloader:x64-uwp=fail
-mmloader:x64-windows=fail
-mmloader:x86-windows=fail
-# mmx installs many problematic headers, such as `json.h` and `sched.h`
-mmx:x64-windows=skip
-mmx:x64-windows-static=skip
-mmx:x86-windows=skip
-mmx:x64-linux=skip
-mmx:x64-osx=skip
-mmx:arm-uwp=skip
-mmx:x64-uwp=skip
-mmx:arm64-windows=skip
-# Flaky strange linker error
-mongo-c-driver:x64-osx=skip
-mongoose:arm-uwp=fail
-mongoose:x64-uwp=fail
-monkeys-audio:arm64-windows=fail
-monkeys-audio:arm-uwp=fail
-monkeys-audio:x64-linux=fail
-monkeys-audio:x64-osx=fail
-monkeys-audio:x64-uwp=fail
-monkeys-audio:x64-windows-static=fail
-moos-core:arm-uwp=fail
-moos-core:x64-uwp=fail
-moos-core:x64-windows=ignore
-moos-core:x64-windows-static=fail
-moos-core:x86-windows=ignore
-moos-essential:arm64-windows=fail
-moos-essential:x64-windows=fail
-moos-essential:x86-windows=fail
-moos-essential:x64-linux=ignore
-mozjpeg:arm64-windows = skip
-mozjpeg:arm-uwp = skip
-mozjpeg:x64-linux = skip
-mozjpeg:x64-osx = skip
-mozjpeg:x64-uwp = skip
-mozjpeg:x64-windows = skip
-mozjpeg:x64-windows-static = skip
-mozjpeg:x86-windows = skip
-# mpir conflicts with gmp
-# see https://github.com/microsoft/vcpkg/issues/11756
-mpir:x86-windows=skip
-mpir:x64-windows=skip
-mpir:x64-windows-static=skip
-mpir:arm64-windows=skip
-mpir:arm-uwp=skip
-mpir:x64-uwp=skip
-mpir:x64-osx=skip
-mpir:x64-linux=skip
-msix:x64-linux=fail
-msix:x64-osx=fail
-msix:x64-windows-static=fail
-msmpi:arm64-windows=fail
-msmpi:arm-uwp=fail
-msmpi:x64-linux=fail
-msmpi:x64-osx=fail
-msmpi:x64-uwp=fail
-munit:arm-uwp=fail
-munit:arm64-windows=fail
-munit:x64-uwp=fail
-# Though `vcpkg_configure_meson` and `vcpkg_install_meson` support
-# `x64-linux` and `x64-osx` now, it still failed on these targets.
-# See: https://github.com/microsoft/vcpkg/pull/6780
-munit:x64-linux=fail
-munit:x64-osx=fail
-muparser:arm-uwp=fail
-muparser:x64-uwp=fail
-murmurhash:arm-uwp=fail
-murmurhash:x64-uwp=fail
-murmurhash:arm64-windows=fail
-nana:arm-uwp=fail
-nana:x64-linux=fail
-nana:x64-osx=fail
-nana:x64-uwp=fail
-nanodbc:arm-uwp=fail
-nanodbc:x64-osx=fail
-nanodbc:x64-uwp=fail
-nanodbc:x64-linux=skip
-nanogui:arm64-windows=fail
-nanorange:arm64-windows=fail
-nanorange:arm-uwp=fail
-nanorange:x64-linux=fail
-nanorange:x64-osx=fail
-nanorange:x64-uwp=fail
-nanorange:x64-windows=fail
-nanorange:x64-windows-static=fail
-nanorange:x86-windows=fail
-nanovg:arm-uwp=fail
-nanovg:arm64-windows=ignore
-nanovg:x64-uwp=fail
-nanovg:x64-linux=ignore
-nanovg:x64-windows=ignore
-nanovg:x64-windows-static=ignore
-nanovg:x86-windows=skip
-nativefiledialog:arm-uwp=fail
-nativefiledialog:x64-uwp=fail
-netcdf-cxx4:x64-linux=ignore
-nethost:x64-uwp=fail
-nethost:arm-uwp=fail
-nettle:x64-windows-static=skip
-nettle:x64-windows=skip
-nettle:x64-osx=fail
-networkdirect-sdk:arm64-windows=fail
-networkdirect-sdk:arm-uwp=fail
-networkdirect-sdk:x64-linux=fail
-networkdirect-sdk:x64-osx=fail
-networkdirect-sdk:x64-uwp=fail
-networkdirect-sdk:x86-windows=fail
-nmslib:arm64-windows=fail
-nmslib:arm-uwp=fail
-nmslib:x64-uwp=fail
-nng:arm-uwp=fail
-nng:x64-uwp=fail
-nrf-ble-driver:arm-uwp=fail
-nrf-ble-driver:x64-uwp=fail
-nrf-ble-driver:x64-linux=ignore
-numactl:arm64-windows=fail
-numactl:arm-uwp=fail
-numactl:x64-osx=fail
-numactl:x64-uwp=fail
-numactl:x64-windows=fail
-numactl:x64-windows-static=fail
-numactl:x86-windows=fail
-nvtt:arm64-windows=fail
-nvtt:arm-uwp=fail
-nvtt:x64-uwp=fail
-ocilib:arm64-windows=fail
-ocilib:arm-uwp=fail
-ocilib:x64-uwp=fail
-ocilib:x64-windows-static=fail
-octomap:arm-uwp=fail
-octomap:x64-uwp=fail
-ode:arm64-windows=fail
-ode:arm-uwp=fail
-ode:x64-uwp=fail
-ode:x64-linux=ignore
-offscale-libetcd-cpp:arm64-windows=fail
-offscale-libetcd-cpp:arm-uwp=fail
-offscale-libetcd-cpp:x64-uwp=fail
-ogdf:arm64-windows = skip
-ogdf:arm-uwp = skip
-ogdf:x64-osx=fail
-ogdf:x64-uwp = skip
-ogdf:x64-windows = skip
-ogdf:x64-windows-static = skip
-ogdf:x86-windows = skip
-ogre:x64-osx=fail
-# Conflicts with ogre
-ogre-next:arm64-windows = skip
-ogre-next:arm-uwp = skip
-ogre-next:x64-osx = skip
-ogre-next:x64-linux = skip
-ogre-next:x64-uwp = skip
-ogre-next:x64-windows = skip
-ogre-next:x64-windows-static = skip
-ogre-next:x86-windows = skip
-ois:arm64-windows=fail
-ois:arm-uwp=fail
-ois:x64-uwp=fail
-open62541:arm-uwp=fail
-open62541:x64-uwp=fail
-openal-soft:arm-uwp=fail
-openal-soft:x64-uwp=fail
-openblas:arm64-windows=fail
-openblas:arm-uwp=fail
-# opencc/deps/rapidjson-1.1.0/rapidjson.h: Unknown machine endianess detected
-opencc:arm64-windows=fail
-# opencc/deps/marisa-0.2.5/lib/marisa/grimoire/io/mapper.cc currently doesn't support UWP.
-opencc:arm-uwp=fail
-opencc:x64-uwp=fail
-opencensus-cpp:arm64-windows=fail
-opencensus-cpp:x64-windows=fail
-opencensus-cpp:x64-windows-static=fail
-opencensus-cpp:x86-windows=fail
-opencensus-cpp:x64-uwp=fail
-opencl:arm-uwp=fail
-opencl:x64-uwp=fail
-opencolorio:x64-linux=ignore
-opencsg:x64-uwp=fail
-opencv2:arm64-windows = skip
-opencv2:arm-uwp = skip
-opencv2:x64-linux = skip
-opencv2:x64-osx = skip
-opencv2:x64-uwp = skip
-opencv2:x64-windows = skip
-opencv2:x64-windows-static = skip
-opencv2:x86-windows = skip
-opencv3:arm64-windows = skip
-opencv3:arm-uwp = skip
-opencv3:x64-linux = skip
-opencv3:x64-osx = skip
-opencv3:x64-uwp = skip
-opencv3:x64-windows = skip
-opencv3:x64-windows-static = skip
-opencv3:x86-windows = skip
-opendnp3:x64-uwp=fail
-opendnp3:arm-uwp=fail
-openexr:arm64-windows=fail
-openexr:arm-uwp=fail
-openexr:x64-uwp=fail
-opengl:arm64-windows=fail
-opengl:arm-uwp=fail
-openimageio:x64-linux=ignore
-openmama:x64-windows=ignore
-openmama:x86-windows=ignore
-openmama:x64-linux=fail
-openmama:x64-osx=fail
-openmesh:arm64-windows=fail
-openmesh:arm-uwp=fail
-openmesh:x64-uwp=fail
-openmpi:arm64-windows=fail
-openmpi:arm-uwp=fail
-openmpi:x64-uwp=fail
-openmpi:x64-windows=fail
-openmpi:x64-windows-static=fail
-openmpi:x86-windows=fail
-openmvg:x64-linux=ignore
-openmvs:x64-linux=fail
-openni2:x64-uwp=fail
-openni2:x64-windows-static=fail
-openscap:x64-linux=fail
-openssl-unix:arm64-windows=fail
-openssl-unix:arm-uwp=fail
-openssl-unix:x64-uwp=fail
-openssl-unix:x64-windows=fail
-openssl-unix:x64-windows-static=fail
-openssl-unix:x86-windows=fail
-openssl-uwp:arm64-windows=fail
-openssl-uwp:x64-linux=fail
-openssl-uwp:x64-osx=fail
-openssl-uwp:x64-windows=fail
-openssl-uwp:x64-windows-static=fail
-openssl-uwp:x86-windows=fail
-openssl-windows:arm-uwp=fail
-openssl-windows:x64-linux=fail
-openssl-windows:x64-osx=fail
-openssl-windows:x64-uwp=fail
-opentracing:arm-uwp=fail
-opentracing:x64-uwp=fail
-openvdb:x64-linux=ignore
-openvdb:x64-osx=fail
-#openvdb:x64-windows-static=fail # https://github.com/microsoft/vcpkg/pull/10816#issuecomment-613784827
-openvpn3:x64-osx=fail
-openvr:arm64-windows=fail
-openvr:arm-uwp=fail
-openvr:x64-osx=fail
-openvr:x64-uwp=fail
-openxr-loader:arm64-windows=fail
-openxr-loader:arm-uwp=fail
-openxr-loader:x64-osx=fail
-openxr-loader:x64-uwp=fail
-optional-bare:arm64-windows = skip
-optional-bare:arm-uwp = skip
-optional-bare:x64-linux = skip
-optional-bare:x64-osx = skip
-optional-bare:x64-uwp = skip
-optional-bare:x64-windows = skip
-optional-bare:x64-windows-static = skip
-optional-bare:x86-windows = skip
-opusfile:arm-uwp=fail
-opusfile:x64-uwp=fail
-orc:x64-linux=ignore
-orocos-kdl:arm-uwp=fail
-orocos-kdl:x64-uwp=fail
-osg:x86-windows=skip
-osg:x64-windows=skip
-osgearth:x64-osx=fail
-osgearth:x64-linux=fail
-osgearth:x64-windows-static=fail
-osg-qt:x64-windows-static=fail
-otl:x64-windows=ignore
-otl:x64-windows-static=ignore
-otl:x64-uwp=ignore
-otl:x64-linux=ignore
-otl:x86-windows=ignore
-paho-mqtt:arm-uwp=fail
-paho-mqtt:x64-uwp=fail
-pangolin:x64-linux=fail
-pangolin:x64-osx=fail
-pangolin:x64-uwp=fail
-pangolin:x64-windows-static=fail
-pangomm:x64-osx=fail
-pangomm:x64-windows=ignore
-pangomm:x86-windows=ignore
-pangomm:arm64-windows=fail
-parmetis:x64-linux=fail
-parmetis:x64-osx=fail
-pcre2:arm-uwp=fail
-pdal:x64-linux=fail
-pdal:x64-osx=fail
-pdal-c:x64-windows-static=fail
-pdcurses:arm-uwp=fail
-pdcurses:x64-linux=fail
-pdcurses:x64-osx=fail
-pdcurses:x64-uwp=fail
-pdcurses:x64-windows-static=fail
-pfring:arm64-windows=fail
-pfring:arm-uwp=fail
-pfring:x64-uwp=fail
-pfring:x64-windows=fail
-pfring:x64-windows-static=fail
-pfring:x86-windows=fail
-pfring:x64-osx=fail
-# pfring on Linux currently fails because its build scripts enable warnings as
-# errors, and warnings trigger with the Linux kernel headers in the Azure images.
-pfring:x64-linux=fail
-physfs:arm64-windows=fail
-physx:arm64-windows=fail
-physx:x64-linux=fail
-physx:x64-osx=fail
-piex:x64-osx=fail
-pistache:arm64-windows=fail
-pistache:arm-uwp=fail
-pistache:x64-osx=fail
-pistache:x64-uwp=fail
-pistache:x64-windows=fail
-pistache:x64-windows-static=fail
-pistache:x86-windows=fail
-pixel:x64-uwp=fail
-pixel:x64-windows=fail
-pixel:x64-windows-static=fail
-pixel:x86-windows=fail
-pixel:x64-linux=ignore
-platform-folders:arm-uwp=fail
-platform-folders:x64-uwp=fail
-plib:arm-uwp=fail
-plib:x64-osx=fail
-plib:x64-uwp=fail
-plibsys:arm-uwp=fail
-plibsys:x64-uwp=fail
-plplot:arm64-windows=fail
-plplot:arm-uwp=fail
-plplot:x64-uwp=fail
-pmdk:arm-uwp=fail
-pmdk:arm64-windows=fail
-pmdk:x64-linux=fail
-pmdk:x64-osx=fail
-pmdk:x64-uwp=fail
-pmdk:x64-windows-static=fail
-pmdk:x86-windows=fail
-pngwriter:arm-uwp=fail
-pngwriter:x64-uwp=fail
-pngwriter:x64-linux=ignore
-polyhook2:arm64-windows=fail
-polyhook2:arm-uwp=fail
-polyhook2:x64-linux=fail
-polyhook2:x64-uwp=fail
-polyhook2:x64-osx=fail
-portable-snippets:arm-uwp=fail
-# Portaudio was broken by Ninja 1.9.0 https://github.com/ninja-build/ninja/pull/1406
-portaudio:arm-uwp=fail
-portaudio:arm64-windows=fail
-portaudio:x64-uwp=fail
-portaudio:x64-windows-static=fail
-portaudio:x64-windows=fail
-portaudio:x86-windows=fail
-portmidi:arm-uwp=fail
-portmidi:x64-linux=fail
-portmidi:x64-osx=fail
-portmidi:x64-uwp=fail
-ppconsul:x64-linux=ignore
-pqp:arm-uwp=fail
-pqp:x64-uwp=fail
-proj4:arm64-windows=fail
-proj4:arm-uwp=fail
-proj4:x64-uwp=fail
-protobuf:x64-uwp=ignore
-protobuf:arm64-windows=ignore
-protobuf:arm-uwp=ignore
-protobuf-c:x86-windows=fail
-protobuf-c:x64-windows=fail
-protobuf-c:x64-windows-static=fail
-protobuf-c:x64-uwp=fail
-protobuf-c:arm64-windows=fail
-protobuf-c:arm-uwp=fail
-# proxygen fails with "Target 'Windows' not supported by proxygen!"
-proxygen:x64-windows=fail
-proxygen:x64-windows-static=fail
-ptex:arm-uwp=fail
-ptex:x64-linux=fail
-ptex:x64-osx=fail
-ptex:x64-uwp=fail
-pthreads:arm64-windows=fail
-pthreads:arm-uwp=fail
-pthreads:x64-uwp=fail
-python2:arm64-windows=fail
-python2:arm-uwp=fail
-python2:x64-linux=fail
-python2:x64-osx=fail
-python2:x64-uwp=fail
-python3:arm64-windows=fail
-python3:arm-uwp=fail
-python3:x64-uwp=fail
-qca:x64-linux=fail
-qca:x64-osx=fail
-qca:x64-windows-static=fail
-qhull:arm-uwp=ignore
-qhull:x64-windows-static=ignore
-qhull:x64-uwp=ignore
-qpid-proton:arm-uwp=fail
-qpid-proton:x64-uwp=fail
-qpid-proton:x64-windows-static=fail
-qt5-activeqt:x64-linux=fail
-qt5-activeqt:x64-osx=fail
-qt5-macextras:x64-linux=fail
-qt5-macextras:x64-windows=fail
-qt5-macextras:x64-windows-static=fail
-qt5-macextras:x86-windows=fail
-# Missing system libraries
-qt5-wayland:x64-osx=fail
-# Missing libraries
-qt5-wayland:x86-windows=fail
-qt5-wayland:x64-windows=fail
-qt5-wayland:x64-windows-static=fail
-qt5-winextras:x64-linux=fail
-qt5-winextras:x64-osx=fail
-# Too big for CI.
-qt5-webengine:x64-windows=skip
-qt5-webengine:x86-windows=skip
-# Missing prerequisites for CI success
-qt5-webengine:x64-linux=fail
-qt5-webengine:x64-osx=fail
-# Static builds of qt5-webengine are not supported by the port itself
-qt5-webengine:x64-windows-static=skip
-# Missing system libraries
-qt5-x11extras:x64-osx=fail
-# Missing libraries
-qt5-x11extras:x86-windows=fail
-qt5-x11extras:x64-windows=fail
-qt5-x11extras:x64-windows-static=fail
-# Broken by VS2019 16.6 and throws a ton of dialogs attempting to build
-# fixed by https://github.com/microsoft/vcpkg/pull/11596
-qt5-translations:x64-windows-static=skip
-quickfast:x64-linux=ignore
-quickfix:x64-linux=ignore
-quickfix:x64-windows=ignore
-quickfix:x64-windows-static=ignore
-quickfix:x86-windows=ignore
-quickfix:x64-uwp=fail
-quickfix:arm-uwp=fail
-quill:arm64-windows=fail
-quill:arm-uwp=fail
-quill:x64-uwp=fail
-quirc:arm64-windows = skip
-quirc:arm-uwp = skip
-quirc:x64-linux = skip
-quirc:x64-osx = skip
-quirc:x64-uwp = skip
-quirc:x64-windows = skip
-quirc:x64-windows-static = skip
-quirc:x86-windows = skip
-qwt:x64-osx=ignore
-rabit:x64-osx=fail
-rabit:x64-linux=ignore
-ragel:arm-uwp=fail
-ragel:x64-uwp=fail
-range-v3-vs2015:arm64-windows = skip
-range-v3-vs2015:arm-uwp = skip
-range-v3-vs2015:x64-linux = skip
-range-v3-vs2015:x64-osx = skip
-range-v3-vs2015:x64-uwp = skip
-range-v3-vs2015:x64-windows = skip
-range-v3-vs2015:x64-windows-static = skip
-range-v3-vs2015:x86-windows = skip
-rapidstring:arm64-windows=fail
-rapidstring:arm-uwp=fail
-rapidstring:x64-linux=fail
-rapidstring:x64-uwp=fail
-rapidstring:x64-windows=fail
-rapidstring:x64-windows-static=fail
-rapidstring:x86-windows=fail
-raylib:arm64-windows=fail
-raylib:arm-uwp=fail
-raylib:x64-uwp=fail
-readline:arm-uwp=fail
-readline:x64-uwp=fail
-readline-win32:arm-uwp=fail
-readline-win32:x64-linux=fail
-readline-win32:x64-osx=fail
-readline-win32:x64-uwp=fail
-readosm:x64-linux=fail
-readosm:x64-osx=fail
-realsense2:arm64-windows=fail
-realsense2:arm-uwp=fail
-realsense2:x64-linux=fail
-realsense2:x64-uwp=fail
-redis-plus-plus:x86-windows=fail
-redis-plus-plus:x64-windows=fail
-redis-plus-plus:x64-windows-static=fail
-redis-plus-plus:arm64-windows=fail
-replxx:arm-uwp=fail
-replxx:x64-uwp=fail
-reproc:arm-uwp=fail
-reproc:x64-uwp=fail
-restbed:arm-uwp=fail
-restbed:x64-uwp=fail
-rhash:arm64-windows=fail
-rhash:arm-uwp=fail
-rhash:x64-uwp=fail
-rocksdb:arm-uwp=fail
-rocksdb:x64-uwp=fail
-rocksdb:x64-linux=ignore
-rpclib:arm64-windows=fail
-rpclib:arm-uwp=fail
-rpclib:x64-uwp=fail
-rpclib:x64-windows=ignore
-rpclib:x86-windows=ignore
-rpclib:x64-windows-static=ignore
-rtlsdr:x64-uwp=fail
-rtlsdr:arm64-windows=fail
-rtlsdr:arm-uwp=fail
-rtlsdr:x64-linux=fail
-rtlsdr:x64-osx=fail
-rttr:arm-uwp=fail
-rttr:x64-uwp=fail
-rxspencer:x64-uwp=fail
-rxspencer:arm-uwp=fail
-ryml:arm-uwp=fail
-ryml:arm64-windows=fail
-ryml:x64-osx=fail
-ryu:arm-uwp=fail
-ryu:x64-uwp=fail
-ryu:x64-windows-static=fail
-ryu:x86-windows=fail
-ryu::arm64-windows=fail
-scintilla:arm-uwp=fail
-scintilla:x64-linux=fail
-scintilla:x64-osx=fail
-scintilla:x64-uwp=fail
-scintilla:x64-windows-static=fail
-sciter:arm64-windows=fail
-sciter:arm-uwp=fail
-sciter:x64-uwp=fail
-sciter:x64-windows-static=fail
-scnlib:arm-uwp=fail
-scnlib:x64-uwp=fail
-scylla-wrapper:arm-uwp=fail
-scylla-wrapper:x64-linux=fail
-scylla-wrapper:x64-osx=fail
-scylla-wrapper:x64-uwp=fail
-scylla-wrapper:x64-windows-static=fail
-sdformat6:arm64-windows=fail
-sdformat6:arm-uwp=fail
-sdformat6:x64-uwp=fail
-sdformat6:x64-linux=ignore
-sdformat9:x64-linux=fail
-sdformat9:arm-uwp=fail
-sdformat9:x64-uwp=fail
-sdl1:arm-uwp=fail
-sdl1:x64-uwp=fail
-sdl1:x64-osx=fail
-sdl2-image:arm-uwp=fail
-sdl2-image:x64-uwp=fail
-sdl2-mixer:arm-uwp=fail
-sdl2-mixer:x64-uwp=fail
-sdl2-net:arm-uwp=fail
-sdl2-net:x64-uwp=fail
-# https://github.com/microsoft/vcpkg/issues/10918
-seal:arm-uwp=fail
-seal:x64-uwp=fail
-secp256k1:x64-linux=fail
-secp256k1:x64-osx=fail
-selene:x64-linux=ignore
-sentencepiece:arm64-windows=fail
-sentencepiece:arm-uwp=fail
-sentencepiece:x64-uwp=fail
-sentencepiece:x64-windows=fail
-sentencepiece:x86-windows=fail
-septag-sx:arm64-windows=fail
-septag-sx:arm-uwp=fail
-septag-sx:x64-uwp=fail
-sfgui:x64-linux=ignore
-sfml:arm64-windows=fail
-shapelib:arm-uwp=fail
-shapelib:x64-uwp=fail
-shiva:x64-windows-static=fail
-shiva-sfml:x64-linux=fail
-shiva-sfml:x64-osx=fail
-shiva-sfml:x86-windows=fail
-shiva-sfml:x64-windows=fail
-shogun:arm64-windows = skip
-shogun:arm-uwp = skip
-shogun:x64-osx = skip
-shogun:x64-uwp = skip
-shogun:x64-windows = skip
-shogun:x64-windows-static = skip
-shogun:x86-windows = skip
-signalrclient:x64-uwp=fail
-signalrclient:arm-uwp=fail
-simdjson:arm-uwp=fail
-simdjson:x86-windows=fail
-skia:arm64-windows=fail
-skia:arm-uwp=fail
-skia:x64-linux=fail
-skia:x64-uwp=fail
-skia:x86-windows=fail
-slikenet:arm-uwp=fail
-slikenet:x64-uwp=fail
-smpeg2:arm-uwp=fail
-smpeg2:x64-linux=fail
-smpeg2:x64-uwp=fail
-soci:arm-uwp=fail
-soci:x64-uwp=fail
-sockpp:arm-uwp=fail
-sockpp:x64-uwp=fail
-soem:x64-uwp=fail
-soem:arm-uwp=fail
-soil:arm-uwp=fail
-soil:x64-uwp=fail
-soil2:arm-uwp=fail
-soil2:x64-uwp=fail
-sophus:x64-linux=fail
-soqt:arm64-windows=fail
-soqt:arm-uwp=fail
-soqt:x64-uwp=fail
-soundtouch:arm-uwp=fail
-soundtouch:x64-linux=ignore
-soundtouch:x64-uwp=fail
-soundtouch:x64-windows-static=fail
-spaceland:arm64-windows=fail
-spaceland:arm-uwp=fail
-spaceland:x64-uwp=fail
-spaceland:x64-linux=ignore
-spdk:x64-linux=fail
-spdk-dpdk:arm64-windows=fail
-spdk-dpdk:arm-uwp=fail
-spdk-dpdk:x64-osx=fail
-spdk-dpdk:x64-uwp=fail
-spdk-dpdk:x64-windows=fail
-spdk-dpdk:x64-windows-static=fail
-spdk-dpdk:x86-windows=fail
-spdk-ipsec:arm64-windows=fail
-spdk-ipsec:arm-uwp=fail
-spdk-ipsec:x64-osx=fail
-spdk-ipsec:x64-uwp=fail
-spdk-ipsec:x64-windows=fail
-spdk-ipsec:x64-windows-static=fail
-spdk-ipsec:x86-windows=fail
-spdk-isal:arm64-windows=fail
-spdk-isal:arm-uwp=fail
-spdk-isal:x64-osx=fail
-spdk-isal:x64-uwp=fail
-spdk-isal:x64-windows=fail
-spdk-isal:x64-windows-static=fail
-spdk-isal:x86-windows=fail
-speex:x64-linux=fail
-speex:x64-osx=fail
-speexdsp:x64-linux=fail
-speexdsp:x64-osx=fail
-spirv-tools:arm-uwp=fail
-spirv-tools:x64-uwp=fail
-stormlib:arm-uwp=fail
-stormlib:x64-uwp=fail
-stxxl:arm-uwp=fail
-stxxl:x64-uwp=fail
-# Sundials was broken by Ninja 1.9.0 https://github.com/ninja-build/ninja/pull/1406
-sundials:arm64-windows=fail
-sundials:x64-windows=fail
-sundials:x86-windows=fail
-# Conflicts between ports:
-#The following files are already installed in C:/agent/_work/1/s/installed/x64-windows-static
-# and are in conflict with superlu:x64-windows-static
-#
-#Installed by hypre:x64-windows-static
-# include/slu_Cnames.h
-# include/slu_cdefs.h
-# include/slu_dcomplex.h
-# include/slu_ddefs.h
-# include/slu_scomplex.h
-# include/slu_sdefs.h
-# include/slu_util.h
-# include/slu_zdefs.h
-# include/supermatrix.h
-superlu:arm-uwp=skip
-superlu:arm-windows=skip
-superlu:arm64-windows=skip
-superlu:x64-uwp=skip
-superlu:x64-windows-static=skip
-superlu:x64-windows=skip
-systemc:arm64-windows=fail
-systemc:arm-uwp=fail
-systemc:x64-uwp=fail
-taglib:x64-linux=ignore
-tbb:arm64-windows=fail
-tbb:arm-uwp=fail
-tbb:x64-uwp=fail
-tcl:arm-uwp=ignore
-tcl:arm64-windows=ignore
-tcl:x64-uwp=ignore
-tcl:x64-linux=ignore
-tcl:x64-osx=ignore
-teemo:x64-uwp=fail
-teemo:arm-uwp=fail
-teemo:arm64-windows=fail
-teemo:x64-osx=fail
-telnetpp:arm-uwp=fail
-telnetpp:x64-uwp=fail
-tensorflow-cc:arm64-windows=fail
-tensorflow-cc:x64-linux=skip
-tensorflow-cc:x64-osx=skip
-tensorflow-cc:x64-windows=fail
-tensorflow-cc:x64-windows-static=fail
-tensorflow-cc:x86-windows=fail
-tesseract:x64-windows=ignore
-tesseract:x64-windows-static=ignore
-tesseract:x86-windows=ignore
-tesseract:arm64-windows=fail
-tfhe:x86-windows=fail
-tfhe:x64-windows=fail
-tfhe:x64-windows-static=fail
-tfhe:x64-uwp=fail
-tfhe:arm64-windows=fail
-tfhe:arm-uwp=fail
-theia:arm64-windows = skip
-theia:arm-uwp = skip
-theia:x64-uwp = skip
-theia:x64-windows = skip
-theia:x64-windows-static = skip
-theia:x86-windows = skip
-thor:x64-linux=fail
-thor:x64-osx=fail
-tidy-html5:arm-uwp=fail
-tidy-html5:x64-uwp=fail
-tinkerforge:arm-uwp=fail
-tinkerforge:x64-uwp=fail
-tinyexif:arm-uwp=fail
-tinyexif:x64-uwp=fail
-tinyfiledialogs:arm-uwp=fail
-tinyfiledialogs:x64-uwp=fail
-tinynpy:x64-linux=ignore
-tiny-process-library:arm-uwp=fail
-tiny-process-library:x64-uwp=fail
-tinyutf8:arm64-windows=fail
-tinyutf8:arm-uwp=fail
-tinyutf8:x64-uwp=fail
-
-#Flaky on windows only due to error PRI210: 0x80070020 - File move failed
-tmx:arm64-windows = skip
-tmx:arm-uwp = skip
-tmx:x64-uwp = skip
-tmx:x64-windows = skip
-tmx:x64-windows-static = skip
-tmx:x86-windows = skip
-tmxlite:arm-uwp=fail
-tmxlite:x64-uwp=fail
-tmxparser:arm64-windows=fail
-tmxparser:arm-uwp=fail
-tmxparser:x64-uwp=fail
-tmxparser:x64-windows=fail
-tmxparser:x64-windows-static=fail
-tmxparser:x86-windows=fail
-torch-th:arm64-windows=fail
-torch-th:arm-uwp=fail
-torch-th:x64-uwp=fail
-torch-th:x64-windows-static=fail
-tre:x64-osx=fail
-treehopper:x64-windows-static=fail
-turbobase64:arm64-windows=fail
-turbobase64:arm-uwp=fail
-turbobase64:x64-uwp=fail
-turbobase64:x64-windows=fail
-turbobase64:x64-windows-static=fail
-turbobase64:x86-windows=fail
-unicorn:arm64-windows=fail
-unicorn:arm-uwp=fail
-unicorn:x64-linux=fail
-unicorn:x64-osx=fail
-unicorn:x64-uwp=fail
-unicorn-lib:x64-uwp=fail
-unittest-cpp:arm64-windows=fail
-unittest-cpp:arm-uwp=fail
-unittest-cpp:x64-uwp=fail
-unixodbc:arm64-windows=fail
-unixodbc:arm-uwp=fail
-unixodbc:x64-uwp=fail
-unixodbc:x64-windows=fail
-unixodbc:x64-windows-static=fail
-unixodbc:x86-windows=fail
-unrar:arm64-windows=fail
-unrar:arm-uwp=fail
-unrar:x64-linux=fail
-unrar:x64-osx=fail
-unrar:x64-uwp=fail
-unrar:x64-windows-static=fail
-urdfdom:x64-windows-static=fail
-usd:x86-windows=fail
-usrsctp:arm-uwp=fail
-usrsctp:x64-uwp=fail
-uthenticode:arm-uwp=fail
-uthenticode:x64-uwp=fail
-uvatlas:arm64-windows=fail
-uvatlas:arm-uwp=fail
-uvatlas:x64-linux=fail
-uvatlas:x64-osx=fail
-uvatlas:x64-windows-static=fail
-vectorclass:arm64-windows=fail
-vectorclass:arm-uwp=fail
-vlpp:x64-osx=fail
-vulkan:arm64-windows=fail
-vulkan:arm-uwp=fail
-vulkan:x64-linux=fail
-vulkan:x64-osx=fail
-vulkan:x64-uwp=fail
-vulkan:x64-windows=fail
-vulkan:x64-windows-static=fail
-vulkan:x86-windows=fail
-# Conflicts with latest openjpeg port (vxl ships with an old version of openjpeg)
-# conflicts with qt5-location
-vxl:arm64-windows = skip
-vxl:arm-uwp = skip
-vxl:x64-linux = skip
-vxl:x64-osx = skip
-vxl:x64-uwp = skip
-vxl:x64-windows = skip
-vxl:x64-windows-static = skip
-vxl:x86-windows = skip
-wampcc:arm64-windows=fail
-wampcc:x64-linux=ignore
-wangle:x64-linux=ignore
-wavpack:arm64-windows=fail
-wavpack:x64-linux=fail
-wavpack:x64-osx=fail
-wepoll:arm-uwp=ignore
-wepoll:x64-uwp=ignore
-wepoll:x64-linux=ignore
-wepoll:x64-osx=ignore
-wildmidi:x64-osx=fail
-wincrypt:x64-linux=fail
-wincrypt:x64-osx=fail
-winpcap:arm64-windows = skip
-winpcap:arm-uwp = skip
-winpcap:x64-linux=fail
-winpcap:x64-osx=fail
-winpcap:x64-uwp = skip
-winpcap:x64-windows = skip
-winpcap:x64-windows-static = skip
-winpcap:x86-windows = skip
-winreg:x64-linux=fail
-winreg:x64-osx=fail
-winsock2:x64-linux=fail
-winsock2:x64-osx=fail
-wintoast:arm-uwp=fail
-wintoast:x64-linux=fail
-wintoast:x64-osx=fail
-wintoast:x64-uwp=fail
-woff2:x64-linux=fail
-woff2:x64-osx=fail
-woff2:x64-windows-static=fail
-wpilib:arm64-windows=fail
-wpilib:x64-osx=fail
-wxchartdir:x64-osx=fail
-wxwidgets:x64-linux=fail
-x264:arm64-windows=fail
-x264:arm-uwp=fail
-x264:x64-uwp=ignore
-x264:x64-osx=fail
-x264:x86-windows=ignore
-x264:x64-windows=ignore
-x264:x64-windows-static=ignore
-x265:arm64-windows=fail
-x265:arm-uwp=fail
-x265:x64-uwp=fail
-xalan-c:x64-windows-static=fail
-xalan-c:arm64-windows=fail
-xbyak:arm64-windows=fail
-xbyak:arm-uwp=fail
-xbyak:x64-uwp=fail
-xerces-c:arm-uwp=fail
-xerces-c:x64-uwp=fail
-xeus:x64-linux=ignore
-xmlsec:arm-uwp=fail
-xmlsec:x64-uwp=fail
-# The xmsh upstream repository is gone, if we find no replacement before
-# 2021-01-01 we will remove the port outright.
-xmsh:arm-uwp=skip
-xmsh:arm64-windows=skip
-xmsh:x64-linux=skip
-xmsh:x64-osx=skip
-xmsh:x64-uwp=skip
-xmsh:x64-windows-static=skip
-xmsh:x64-windows=skip
-xmsh:x86-windows=skip
-xtensor-io:x64-uwp=ignore
-x-plane:arm64-windows=fail
-x-plane:arm-uwp=fail
-x-plane:x64-linux=fail
-x-plane:x86-windows=fail
-yajl:arm-uwp=fail
-yajl:x64-uwp=fail
-yara:arm-uwp=fail
-yara:x64-uwp=fail
-yasm:arm64-windows=fail
-yasm:arm-uwp=fail
-yasm:x64-linux=fail
-yasm:x64-osx=fail
-yasm:x64-uwp=fail
-yato:arm64-windows=fail
-yato:arm-uwp=fail
-yato:x64-uwp=fail
-z3:arm64-windows=fail
-z3:arm-uwp=fail
-z3:x64-uwp=fail
-zeromq:arm64-windows=fail
-zeromq:arm-uwp=fail
-zeromq:x64-uwp=fail
-zkpp:x86-windows=fail
-zkpp:x64-windows=fail
-zkpp:x64-windows-static=fail
-zkpp:arm64-windows=fail
-zkpp:x64-uwp=fail
-zkpp:arm-uwp=fail
-c4core:arm-uwp=fail
-c4core:arm64-windows=fail
-c4core:x64-osx=fail
-
-# Official downloading server of CTP library is only guaranteed to be available during trading hours of China futures market
-# Skip CI to avoid random failures
-ctp:arm64-windows=skip
-ctp:arm-uwp=skip
-ctp:x64-linux=skip
-ctp:x64-osx=skip
-ctp:x64-uwp=skip
-ctp:x64-windows=skip
-ctp:x64-windows-static=skip
-ctp:x86-windows=skip
-protozero:arm-uwp=fail
-protozero:x64-uwp=fail
+###########################################################################
+## This file defines the current expected build state of ports in CI.
+##
+## States
+## pass - (default) the port builds in the CI system. If a port is
+## missing from this file then it is assumed to build.
+## fail - the port does not build in the CI system.
+## This is not necessarily the same as if a port is expected to build
+## on a developers machine because it may fail due to the machine
+## configuration. When set to fail the CI system will still attempt
+## to build the port and will report a CI failure until this file is updated.
+## skip - Do not build this port in the CI system.
+## This is added to ports that may be flaky or conflict with other
+## ports. Please comment for why a port is skipped so it can be
+## removed when the issue is resolved.
+## ignore - attempt to build the port, but do not fail the CI test if the
+## port does not build. Any ignored build failures will be reported
+## in the test summary.
+##
+##
+## CI tested triplets:
+## arm64-windows
+## arm-uwp
+## x64-linux
+## x64-osx
+## x64-uwp
+## x64-windows
+## x64-windows-static
+## x86-windows
+##
+
+
+# Add new items alphabetically
+
+3fd:arm64-windows=fail
+3fd:arm-uwp=fail
+3fd:x64-linux=fail
+3fd:x64-osx=fail
+3fd:x64-windows=fail
+3fd:x64-windows-static=fail
+3fd:x86-windows=ignore
+7zip:arm64-windows=fail
+7zip:arm-uwp=fail
+7zip:x64-linux=fail
+7zip:x64-osx=fail
+7zip:x64-uwp=fail
+activemq-cpp:x64-linux=fail
+activemq-cpp:x64-osx=fail
+akali:x64-uwp=fail
+akali:arm-uwp=fail
+akali:arm64-windows=fail
+alac:arm-uwp=fail
+alac:x64-uwp=fail
+alembic:x64-osx=fail
+alembic:x64-windows-static=fail
+aliyun-oss-c-sdk:x64-linux=fail
+aliyun-oss-c-sdk:x64-osx=fail
+ampl-mp:arm64-windows=fail
+ampl-mp:arm-uwp=fail
+ampl-mp:x64-uwp=fail
+amqpcpp:arm-uwp=fail
+amqpcpp:x64-uwp=fail
+angelscript:arm64-windows=fail
+angelscript:arm-uwp=fail
+antlr4:arm-uwp=fail
+antlr4:x64-uwp=fail
+anyrpc:arm-uwp=ignore
+anyrpc:x86-windows=ignore
+anyrpc:x64-windows-static=ignore
+apr:arm-uwp=fail
+apr:x64-uwp=fail
+# Cross compiling CI machine cannot run gen_test_char to generate apr_escape_test_char.h
+apr:arm64-windows=fail
+argtable2:arm-uwp=fail
+argtable2:x64-uwp=fail
+arrow:arm64-windows=fail
+arrow:x86-windows=fail
+asiosdk:x64-linux=fail
+asiosdk:x64-osx=fail
+asiosdk:x64-uwp=fail
+asiosdk:arm64-windows=fail
+asiosdk:arm-uwp=fail
+asmjit:arm64-windows=fail
+asmjit:arm-uwp=fail
+asyncplusplus:arm-uwp=fail
+asyncplusplus:x64-uwp=fail
+atk:x64-osx=fail
+atk:arm64-windows=fail
+atkmm:x64-linux=fail
+atlmfc:x64-linux=fail
+atlmfc:x64-osx=fail
+aubio:x64-linux=fail
+aubio:x64-osx=fail
+avisynthplus:x64-linux=fail
+avisynthplus:x64-windows-static=fail
+avro-c:arm-uwp=fail
+avro-c:x64-osx=fail
+avro-c:x64-uwp=fail
+aws-c-common:arm64-windows=fail
+aws-c-common:arm-uwp=fail
+aws-c-common:x64-uwp=fail
+aws-checksums:arm64-windows=fail
+aws-lambda-cpp:arm64-windows=fail
+aws-lambda-cpp:arm-uwp=fail
+aws-lambda-cpp:x64-uwp=fail
+aws-lambda-cpp:x64-windows=fail
+aws-lambda-cpp:x64-windows-static=fail
+aws-lambda-cpp:x86-windows=fail
+aws-lambda-cpp:x64-osx=fail
+aws-sdk-cpp:x64-linux=ignore
+azure-c-shared-utility:arm-uwp=fail
+azure-c-shared-utility:x64-uwp=fail
+basisu:x64-linux=ignore
+bde:arm64-windows=fail
+bde:arm-uwp=fail
+bde:x64-uwp=fail
+bde:x64-windows=fail
+bde:x64-windows-static=fail
+bde:x86-windows=fail
+benchmark:arm64-windows=fail
+benchmark:arm-uwp=fail
+benchmark:x64-uwp=fail
+berkeleydb:arm-uwp=fail
+berkeleydb:x64-linux=fail
+berkeleydb:x64-osx=fail
+berkeleydb:x64-uwp=fail
+bitserializer-rapidyaml:arm-uwp=skip
+bitserializer-rapidyaml:arm64-windows=skip
+bitserializer-rapidyaml:x64-osx=skip
+bitserializer:arm-uwp=skip
+bitserializer:arm64-windows=skip
+bitserializer:x64-osx=skip
+blaze:x64-windows=fail
+blaze:x64-windows-static=fail
+blaze:x86-windows=fail
+blend2d:arm64-windows=fail
+blend2d:arm-uwp=fail
+blend2d:x64-uwp=fail
+blitz:x64-uwp=fail
+blitz:arm64-windows=fail
+blitz:arm-uwp=fail
+blosc:arm64-windows=fail
+blosc:arm-uwp=fail
+blosc:x64-uwp=fail
+bond:arm-uwp=fail
+bond:x64-osx=fail
+bond:x64-uwp=fail
+boost-coroutine:arm-uwp=fail
+boost-coroutine:arm64-windows=fail
+boost-fiber:arm-uwp=fail
+boost-fiber:arm64-windows=fail
+boost-fiber:x64-osx=fail
+boost-fiber:x64-uwp=fail
+boost-fiber:x64-linux=ignore
+boost-filesystem:arm-uwp=fail
+boost-filesystem:x64-uwp=fail
+boost-iostreams:arm-uwp=fail
+boost-iostreams:x64-uwp=fail
+boost-locale:arm-uwp=fail
+boost-locale:x64-uwp=fail
+boost-log:arm-uwp=fail
+boost-log:x64-uwp=fail
+boost-stacktrace:arm-uwp=fail
+boost-stacktrace:x64-uwp=fail
+boost-test:arm-uwp=fail
+boost-test:x64-uwp=fail
+boost-wave:arm-uwp=fail
+boost-wave:x64-uwp=fail
+botan:arm64-windows=fail
+botan:arm-uwp=fail
+botan:x64-uwp=fail
+box2d:x64-uwp=fail
+box2d:arm-uwp=fail
+breakpad:arm64-windows=fail
+bullet3:arm64-windows=fail
+bullet3:arm-uwp=fail
+bullet3:x64-uwp=fail
+butteraugli:x64-linux=ignore
+caf:arm-uwp=fail
+caf:arm64-windows=fail
+caf:x64-uwp=fail
+caf:x64-linux=ignore
+caffe2:x86-windows=fail
+caffe2:arm64-windows=fail
+cairomm:x64-linux=fail
+capnproto:arm64-windows=fail
+capnproto:arm-uwp=fail
+capnproto:x64-uwp=fail
+c-ares:arm-uwp=fail
+c-ares:x64-uwp=fail
+cartographer:x64-osx=fail
+casclib:arm-uwp=fail
+casclib:x64-uwp=fail
+catch-classic:arm64-windows = skip
+catch-classic:arm-uwp = skip
+catch-classic:x64-linux = skip
+catch-classic:x64-osx = skip
+catch-classic:x64-uwp = skip
+catch-classic:x64-windows = skip
+catch-classic:x64-windows-static = skip
+catch-classic:x86-windows = skip
+ccd:arm-uwp=fail
+ccd:x64-uwp=fail
+cello:arm-uwp=fail
+cello:x64-uwp=fail
+cfitsio:arm-uwp=fail
+cfitsio:x64-uwp=fail
+cgicc:arm-uwp=fail
+cgicc:x64-uwp=fail
+chakracore:arm64-windows=fail
+chakracore:arm-uwp=fail
+chakracore:x64-linux=fail
+chakracore:x64-osx=fail
+chakracore:x64-uwp=fail
+chakracore:x64-windows-static=fail
+# DCMTK currently has a vendored copy of libcharls.a, which causes conflicts with charls (TODO: use charls' copy)
+charls:arm64-windows=skip
+charls:arm-uwp=skip
+charls:x64-linux=skip
+charls:x64-osx=skip
+charls:x64-uwp=skip
+charls:x64-windows=skip
+charls:x64-windows-static=skip
+charls:x86-windows=skip
+chartdir:arm64-windows=fail
+chartdir:arm-uwp=fail
+chartdir:x64-uwp=fail
+chartdir:x64-windows-static=fail
+chipmunk:arm64-windows=fail
+chipmunk:arm-uwp=fail
+chipmunk:x64-linux=fail
+chipmunk:x64-osx=fail
+chipmunk:x64-uwp=fail
+chmlib:arm-uwp=fail
+chmlib:x64-uwp=fail
+civetweb:arm64-windows = skip
+civetweb:arm-uwp = skip
+civetweb:x64-uwp = skip
+clapack:x64-uwp=fail
+clblas:arm64-windows=fail
+clblast:x64-osx=ignore
+clblast:x64-linux=fail
+clblast:x64-windows-static=fail
+clockutils:x64-linux=fail
+clockutils:x64-osx=fail
+cmark:x64-windows-static=fail
+cmcstl2:arm64-windows = skip
+cmcstl2:arm-uwp = skip
+cmcstl2:x64-linux = skip
+cmcstl2:x64-osx = skip
+cmcstl2:x64-uwp = skip
+cmcstl2:x64-windows = skip
+cmcstl2:x64-windows-static = skip
+cmcstl2:x86-windows = skip
+coin:arm64-windows=fail
+coin:arm-uwp=fail
+coin:x64-uwp=fail
+collada-dom:x64-windows-static=fail
+coolprop:arm-uwp=fail
+coolprop:x64-linux=fail
+coolprop:x64-osx=fail
+coolprop:x64-uwp=fail
+coroutine:arm-uwp=fail
+coroutine:x64-linux=fail
+coroutine:x64-uwp=fail
+corrade:arm-uwp=fail
+corrade:x64-uwp=fail
+cppcms:x64-linux=fail
+cppcms:x64-osx=fail
+cppcms:x64-windows-static=fail
+cppfs:arm-uwp=fail
+cppfs:x64-uwp=fail
+cppgraphqlgen:arm-uwp=ignore
+cppgraphqlgen:x64-uwp=ignore
+cppkafka:x64-linux=ignore
+cppmicroservices:arm64-windows=fail
+cppmicroservices:arm-uwp=fail
+cppmicroservices:x64-uwp=fail
+cpp-netlib:arm-uwp=fail
+cpp-netlib:x64-uwp=fail
+cpp-netlib:x64-linux=ignore
+cpp-taskflow:x64-osx=fail
+cppcoro:x64-linux=fail
+cppcoro:arm-uwp=fail
+cppcoro:x64-uwp=fail
+cppunit:arm64-windows=fail
+cppunit:arm-uwp=fail
+cppunit:x64-linux=fail
+cppunit:x64-osx=fail
+cppunit:x64-uwp=fail
+cpr:x64-linux=ignore
+cpuinfo:arm64-windows=ignore
+crashpad:arm64-windows=fail
+crashpad:arm-uwp=fail
+crashpad:x64-linux=fail
+crashpad:x64-uwp=fail
+crashpad:x86-windows=fail
+crfsuite:arm-uwp=fail
+crfsuite:x64-uwp=fail
+crossguid:x64-osx=fail
+cspice:arm-uwp=fail
+cspice:x64-uwp=fail
+ctemplate:arm64-windows=fail
+ctemplate:arm-uwp=fail
+ctemplate:x64-linux=fail
+ctemplate:x64-osx=fail
+cuda:x64-osx=fail
+cudnn:arm64-windows=fail
+cudnn:arm-uwp=fail
+cudnn:x64-uwp=fail
+cudnn:x64-windows-static=fail
+cudnn:x86-windows=fail
+dbow2:x64-osx=fail
+dcmtk:arm-uwp=fail
+dcmtk:arm64-windows=fail
+dcmtk:x64-uwp=fail
+detours:x64-linux=fail
+detours:x64-osx=fail
+devicenameresolver:arm-uwp=fail
+devicenameresolver:x64-linux=fail
+devicenameresolver:x64-osx=fail
+devicenameresolver:x64-uwp=fail
+devicenameresolver:x64-windows-static=fail
+dimcli:arm-uwp=fail
+dimcli:x64-osx=fail
+dimcli:x64-uwp=fail
+directxmesh:x64-linux=fail
+directxmesh:x64-osx=fail
+directxmesh:x64-windows-static=fail
+directxtex:x64-linux=fail
+directxtex:x64-osx=fail
+directxtex:x64-windows-static=fail
+directxtk:x64-linux=fail
+directxtk:x64-osx=fail
+directxtk:x64-windows-static=fail
+directxtk12:x64-linux=fail
+directxtk12:x64-osx=fail
+directxtk12:x64-windows-static=fail
+discord-game-sdk:x64-windows-static=fail
+discord-rpc:arm-uwp=fail
+discord-rpc:x64-uwp=fail
+dlfcn-win32:arm-uwp=fail
+dlfcn-win32:x64-linux=fail
+dlfcn-win32:x64-osx=fail
+dlfcn-win32:x64-uwp=fail
+dmlc:arm-uwp=fail
+dmlc:arm64-windows=ignore
+dmlc:x64-uwp=fail
+dmlc:x64-windows-static=ignore
+dmlc:x86-windows=ignore
+dpdk:arm-uwp=fail
+dpdk:arm64-windows=fail
+dpdk:x64-linux=fail
+dpdk:x64-osx=fail
+dpdk:x64-uwp=fail
+dpdk:x64-windows-static=fail
+dpdk:x64-windows=fail
+dpdk:x86-windows=fail
+duckx:arm64-windows = skip
+duckx:arm-uwp = skip
+duckx:x64-linux = skip
+duckx:x64-osx = skip
+duckx:x64-uwp = skip
+duckx:x64-windows = skip
+duckx:x64-windows-static = skip
+duckx:x86-windows = skip
+duilib:arm-uwp=fail
+duilib:x64-linux=fail
+duilib:x64-osx=fail
+duilib:x64-uwp=fail
+
+# requires python@2 from brew, but that no longer exists
+# python2 EOL yay!
+duktape:x64-osx=skip
+
+dxut:arm64-windows=fail
+dxut:arm-uwp=fail
+dxut:x64-linux=fail
+dxut:x64-osx=fail
+dxut:x64-windows-static=fail
+eastl:arm-uwp=fail
+easyhook:arm64-windows=fail
+easyhook:arm-uwp=fail
+easyhook:x64-linux=fail
+easyhook:x64-osx=fail
+easyhook:x64-uwp=fail
+easyhook:x64-windows-static=fail
+easyloggingpp:arm-uwp=fail
+easyloggingpp:x64-uwp=fail
+eathread:arm64-windows=fail
+eathread:arm-uwp=fail
+eathread:x64-uwp=fail
+eathread:x86-windows=fail
+ebml:arm-uwp=fail
+ebml:x64-uwp=fail
+ecm:arm64-windows = skip
+ecm:arm-uwp = skip
+ecm:x64-linux = skip
+ecm:x64-osx = skip
+ecm:x64-uwp = skip
+ecm:x64-windows = skip
+ecm:x64-windows-static = skip
+ecm:x86-windows = skip
+ecsutil:arm64-windows=fail
+ecsutil:arm-uwp=fail
+ecsutil:x64-linux=fail
+ecsutil:x64-osx=fail
+ecsutil:x64-uwp=fail
+embree2:x64-linux=fail
+embree2:x64-osx=fail
+embree2:x64-windows-static=fail
+enet:arm-uwp=fail
+enet:x64-uwp=fail
+epsilon:x64-windows-static=fail
+epsilon:arm-uwp=fail
+epsilon:x64-linux=fail
+epsilon:x64-osx=fail
+epsilon:x64-uwp=fail
+evpp:x64-osx=fail
+expat:arm-uwp=fail
+expat:x64-uwp=fail
+faad2:x64-linux=fail
+faad2:x64-osx=fail
+fann:arm-uwp=fail
+fann:x64-linux=fail
+fann:x64-osx=fail
+fann:x64-uwp=fail
+fann:x64-windows-static=fail
+farmhash:arm64-windows=fail
+farmhash:arm-uwp=fail
+farmhash:x64-uwp=fail
+farmhash:x64-windows=fail
+farmhash:x64-windows-static=fail
+farmhash:x86-windows=fail
+fastcdr:x64-linux=fail
+fastrtps:arm-uwp=fail
+fastrtps:x64-linux=fail
+fastrtps:x64-osx=fail
+fastrtps:x64-uwp=fail
+fastrtps:x64-windows-static=fail
+fdk-aac:arm64-windows=fail
+fdk-aac:arm-uwp=fail
+fdk-aac:x64-uwp=fail
+fdlibm:arm-uwp=fail
+fdlibm:x64-uwp=fail
+fftw3:arm-uwp=fail
+fftw3:x64-uwp=fail
+flint:x64-linux=fail
+flint:x64-osx=fail
+fltk:arm-uwp=fail
+fltk:x64-uwp=fail
+fluidsynth:x64-linux=fail
+fluidsynth:x64-osx=fail
+fmem:arm-uwp=fail
+fmem:x64-uwp=fail
+fmi4cpp:arm-uwp=fail
+fmi4cpp:x64-uwp=fail
+fmilib:arm64-windows=fail
+fmilib:arm-uwp=fail
+fmilib:x64-linux=ignore
+fmilib:x64-uwp=fail
+fmilib:x64-windows=ignore
+fmilib:x64-windows-static=ignore
+fmilib:x86-windows=ignore
+foonathan-memory:arm64-windows=fail
+foonathan-memory:arm-uwp=fail
+foonathan-memory:x64-uwp=fail
+forge:x86-windows=fail
+freeglut:arm64-windows=fail
+freeglut:arm-uwp=fail
+freeglut:x64-uwp=fail
+freeglut:x64-osx=fail
+freerdp:arm64-windows=fail
+freerdp:arm-uwp=fail
+freerdp:x64-osx=fail
+freerdp:x64-uwp=fail
+freetds:arm-uwp=fail
+freetds:x64-linux=fail
+freetds:x64-osx=fail
+freetds:x64-uwp=fail
+freetype-gl:x64-uwp=fail
+freexl:arm-uwp=fail
+freexl:arm64-windows=ignore
+freexl:x64-uwp=fail
+freexl:x86-windows=ignore
+freexl:x64-windows=ignore
+freexl:x64-windows-static=ignore
+fribidi:arm64-windows=fail
+fribidi:arm-uwp=fail
+fribidi:x64-linux=fail
+fribidi:x64-osx=fail
+fribidi:x64-uwp=fail
+ftgl:x64-uwp=fail
+fuzzylite:arm-uwp=fail
+fuzzylite:x64-linux=fail
+fuzzylite:x64-osx=fail
+fuzzylite:x64-uwp=fail
+g3log:arm64-windows=fail
+g3log:arm-uwp=fail
+g3log:x64-uwp=fail
+gainput:arm-uwp=fail
+gainput:x64-linux=fail
+gainput:x64-uwp=fail
+gamma:x64-linux=fail
+gamma:x64-osx=fail
+gasol:arm64-windows=fail
+gasol:arm-uwp=fail
+gasol:x64-uwp=fail
+gdcm:arm64-windows=fail
+gdcm:x64-linux = skip
+geographiclib:x64-linux=ignore
+geos:arm-uwp=fail
+geos:x64-uwp=fail
+getopt:arm-uwp=fail
+getopt:x64-uwp=fail
+getopt-win32:arm64-windows=fail
+getopt-win32:arm-uwp=fail
+getopt-win32:x64-linux=fail
+getopt-win32:x64-osx=fail
+getopt-win32:x64-uwp=fail
+getopt-win32:x64-windows-static=fail
+gflags:arm-uwp=fail
+gflags:x64-uwp=fail
+
+# Conflicts with libevent
+gherkin-c:arm64-windows = skip
+gherkin-c:arm-uwp = skip
+gherkin-c:x64-linux=fail
+gherkin-c:x64-osx=fail
+gherkin-c:x64-uwp = skip
+gherkin-c:x64-windows = skip
+gherkin-c:x64-windows-static = skip
+gherkin-c:x86-windows = skip
+gl3w:arm64-windows=fail
+gl3w:arm-uwp=fail
+glew:arm64-windows=fail
+glew:arm-uwp=fail
+glfw3:arm-uwp=fail
+glfw3:x64-uwp=fail
+glib:x64-uwp=fail
+glib:x64-windows-static=fail
+glib:x64-osx=fail
+globjects:x64-linux=ignore
+gmmlib:arm64-windows=fail
+gmmlib:arm-uwp=fail
+gmmlib:x64-osx=fail
+gmmlib:x64-uwp=fail
+gmmlib:x64-windows=fail
+gmmlib:x64-windows-static=fail
+gmmlib:x86-windows=fail
+google-cloud-cpp:arm64-windows=fail
+google-cloud-cpp:arm-uwp=fail
+google-cloud-cpp:x64-uwp=fail
+gppanel:x64-osx=fail
+gperf:x64-uwp=fail
+gperf:arm-uwp=fail
+gperftools:arm64-windows=fail
+gperftools:x64-uwp=fail
+gperftools:arm-uwp=fail
+graphicsmagick:arm-uwp=fail
+graphicsmagick:x64-uwp=fail
+graphite2:arm-uwp=fail
+graphite2:x64-uwp=fail
+graphqlparser:arm-uwp=fail
+graphqlparser:x64-uwp=fail
+gsl:arm-uwp=fail
+gsl:x64-uwp=fail
+# https://github.com/microsoft/vcpkg/pull/11048
+gsoap:x64-linux=fail
+gsoap:x64-osx=fail
+gsoap:x64-uwp=fail
+gtk:x64-linux=fail
+gtk:x86-windows=ignore
+guetzli:x64-osx=fail
+h3:arm64-windows=fail
+h3:arm-uwp=fail
+h3:x64-uwp=fail
+halide:x64-windows-static=fail
+hdf5:arm64-windows=fail
+hdf5:arm-uwp=fail
+hdf5:x64-uwp=fail
+healpix:x86-windows=fail
+healpix:x64-windows=fail
+healpix:x64-windows-static=fail
+healpix:x64-uwp=fail
+healpix:arm64-windows=fail
+healpix:arm-uwp=fail
+healpix:x64-osx=fail
+hidapi:arm64-windows=fail
+hidapi:arm-uwp=fail
+hidapi:x64-linux=fail
+hidapi:x64-osx=fail
+hidapi:x64-uwp=fail
+hiredis:arm-uwp=fail
+hiredis:x64-uwp=fail
+hpx:x64-windows-static=fail
+hpx:x64-linux=fail
+hwloc:arm64-windows=fail
+hwloc:arm-uwp=fail
+hwloc:x64-uwp=fail
+hyperscan:x64-linux=ignore
+# hypre has a conflict with 'superlu' port
+hypre:x64-linux=skip
+hypre:x64-osx=skip
+icu:arm64-windows=fail
+icu:arm-uwp=fail
+icu:x64-uwp=fail
+idevicerestore:x64-linux=fail
+idevicerestore:x64-osx=fail
+ignition-common1:x64-linux=fail
+ignition-msgs1:arm64-windows=fail
+ignition-msgs1:arm-uwp=fail
+ignition-msgs1:x64-uwp=fail
+ignition-msgs5:x64-linux=fail
+ignition-msgs5:arm64-windows=fail
+ignition-msgs5:arm-uwp=fail
+ignition-msgs5:x64-uwp=fail
+ignition-msgs5:x64-osx=skip
+imgui-sfml:x64-linux=ignore
+intel-ipsec:arm64-windows=fail
+intel-ipsec:arm-uwp=fail
+intel-ipsec:x64-osx=fail
+intel-ipsec:x64-uwp=fail
+intel-ipsec:x64-windows=fail
+intel-ipsec:x64-windows-static=fail
+intel-ipsec:x86-windows=fail
+intel-mkl:arm64-windows=fail
+intel-mkl:arm-uwp=fail
+intel-mkl:x64-linux=fail
+intel-mkl:x64-osx=fail
+intel-mkl:x64-uwp=fail
+intel-mkl:x64-windows=fail
+intel-mkl:x64-windows-static=fail
+intel-mkl:x86-windows=fail
+intelrdfpmathlib:arm-uwp=fail
+intelrdfpmathlib:x64-linux=fail
+intelrdfpmathlib:x64-uwp=fail
+irrlicht:arm64-windows=fail
+irrlicht:arm-uwp=fail
+irrlicht:x64-osx=fail
+irrlicht:x64-uwp=fail
+isal:arm64-windows=fail
+isal:arm-uwp=fail
+isal:x64-osx=fail
+isal:x64-uwp=fail
+isal:x64-windows=fail
+isal:x64-windows-static=fail
+isal:x86-windows=fail
+itk:x64-windows=fail
+itk:x64-windows-static=fail
+itk:x86-windows=fail
+ixwebsocket:x64-linux=ignore
+jack2:arm-uwp=fail
+jack2:x64-uwp=fail
+jaeger-client-cpp:arm64-windows=fail
+jbig2dec:arm-uwp=fail
+jbig2dec:x64-uwp=fail
+jemalloc:arm64-windows=fail
+jemalloc:arm-uwp=fail
+jemalloc:x64-linux=fail
+jemalloc:x64-osx=fail
+jemalloc:x64-uwp=fail
+jemalloc:x64-windows-static=fail
+jinja2cpplight:arm-uwp=fail
+jinja2cpplight:x64-uwp=fail
+keystone:arm-uwp=fail
+keystone:x64-uwp=fail
+kinectsdk1:arm64-windows=fail
+kinectsdk1:arm-uwp=fail
+kinectsdk1:x64-linux=fail
+kinectsdk1:x64-osx=fail
+kinectsdk2:arm64-windows=fail
+kinectsdk2:arm-uwp=fail
+kinectsdk2:x64-linux=fail
+kinectsdk2:x64-osx=fail
+lastools:arm-uwp=fail
+lastools:x64-uwp=fail
+laszip:arm-uwp=fail
+laszip:x64-uwp=fail
+lcm:x64-linux=fail
+lcm:x64-osx=fail
+leptonica:x64-uwp=fail
+leptonica:arm-uwp=fail
+leveldb:arm-uwp=fail
+leveldb:x64-uwp=fail
+libaiff:x64-linux=fail
+libarchive:arm-uwp=fail
+libass:x64-windows-static=fail
+libb2:x86-windows=fail
+libb2:x64-windows=fail
+libb2:x64-windows-static=fail
+libb2:x64-uwp=fail
+libb2:arm64-windows=fail
+libb2:arm-uwp=fail
+libbf:arm64-windows=fail
+libbf:arm-uwp=fail
+libbf:x64-uwp=fail
+libbf:x64-windows=fail
+libbf:x64-windows-static=fail
+libbf:x86-windows=fail
+libbson:arm-uwp=fail
+libbson:x64-uwp=fail
+libcds:arm64-windows=fail
+libcds:arm-uwp=fail
+libcds:x64-uwp=fail
+libconfig:x64-osx=fail
+libcopp:arm64-windows=fail
+libcopp:arm-uwp=fail
+libcopp:x64-windows-static=fail
+libcrafter:x86-windows=fail
+libcrafter:x64-windows=fail
+cpuid:arm-uwp=fail
+cpuid:x64-uwp=fail
+cpuid:arm64-windows=fail
+libdatrie:x64-linux=fail
+libdatrie:x64-osx=fail
+libdisasm:arm-uwp=fail
+libdisasm:x64-uwp=fail
+libdshowcapture:arm-uwp=fail
+libdshowcapture:x64-linux=fail
+libdshowcapture:x64-osx=fail
+libdshowcapture:x64-uwp=fail
+libepoxy:arm64-windows=fail
+libepoxy:arm-uwp=fail
+libepoxy:x64-osx=fail
+libepoxy:x64-uwp=fail
+libepoxy:x64-windows-static=fail
+libevent:arm-uwp=fail
+libevent:x64-uwp=fail
+libevhtp:x86-windows=fail
+libevhtp:x64-windows=fail
+libevhtp:x64-windows-static=fail
+libevhtp:x64-uwp=fail
+libevhtp:arm64-windows=fail
+libevhtp:arm-uwp=fail
+libexif:arm-uwp=fail
+libexif:x64-uwp=fail
+libfabric:arm-uwp=fail
+libfabric:x64-linux=fail
+libfabric:x64-osx=fail
+libfabric:x64-uwp=fail
+libfabric:x64-windows=ignore
+libfabric:x64-windows-static=fail
+libfreenect2:arm64-windows=fail
+libgd:x64-linux=ignore
+libgit2:arm-uwp=fail
+libgit2:x64-uwp=fail
+libgo:arm-uwp=fail
+libgo:x64-uwp=fail
+libgo:arm64-windows=fail
+libgo:x64-windows=fail
+libgo:x86-windows=fail
+libgpod:arm64-windows=fail
+libgpod:arm-uwp=fail
+libgpod:x64-uwp=fail
+libgpod:x64-windows=fail
+libgpod:x64-windows-static=fail
+libgpod:x86-windows=fail
+libhdfs3:arm64-windows=fail
+libhdfs3:arm-uwp=fail
+libhdfs3:x64-uwp=fail
+libhdfs3:x64-windows=fail
+libhdfs3:x64-windows-static=fail
+libhdfs3:x86-windows=fail
+libhdfs3:x64-linux=fail
+libhydrogen:arm64-windows=fail
+libics:arm-uwp=fail
+libics:x64-uwp=fail
+libidn2:x64-linux=fail
+libidn2:x64-osx=fail
+libigl:arm64-windows=fail
+libigl:arm-uwp=fail
+libigl:x64-uwp=fail
+liblemon:arm-uwp=fail
+liblemon:x64-uwp=fail
+liblinear:arm-uwp=fail
+liblinear:x64-uwp=fail
+liblo:arm-uwp=fail
+liblo:x64-linux=fail
+liblo:x64-osx=fail
+liblo:x64-uwp=fail
+liblsl:arm64-windows=fail
+liblsl:arm-uwp=fail
+liblsl:x64-linux=fail
+liblsl:x64-osx=fail
+liblsl:x64-uwp=fail
+libmad:arm-uwp=fail
+libmad:x64-uwp=fail
+libmagic:x86-windows=fail
+libmagic:x64-windows=fail
+libmagic:x64-windows-static=fail
+libmagic:x64-uwp=fail
+libmagic:arm64-windows=fail
+libmagic:arm-uwp=fail
+libmariadb:arm64-windows = skip
+libmariadb:arm-uwp = skip
+libmariadb:x64-linux = skip
+libmariadb:x64-osx = skip
+libmariadb:x64-uwp = skip
+libmariadb:x64-windows = skip
+libmariadb:x64-windows-static = skip
+libmariadb:x86-windows = skip
+# libmesh installs tons of problematic files that conflict with other ports (boost, eigen, etc)
+libmesh:arm64-windows=skip
+libmesh:arm-uwp=skip
+libmesh:x64-uwp=skip
+libmesh:x64-windows=skip
+libmesh:x64-windows-static=skip
+libmesh:x86-windows=skip
+libmesh:x64-osx=skip
+libmesh:x64-linux=skip
+libmodbus:arm-uwp=fail
+libmodbus:x64-uwp=fail
+libmodman:arm-uwp=fail
+libmodman:x64-uwp=fail
+libmodman:x64-windows-static=fail
+libmodplug:arm-uwp=fail
+libmodplug:x64-uwp=fail
+libmpeg2:arm-uwp=fail
+libmpeg2:x64-linux=fail
+libmpeg2:x64-osx=fail
+libmpeg2:x64-uwp=fail
+libmupdf:x64-osx=fail
+libmysql:x86-windows=fail
+libnice:x64-linux=fail
+libnice:x64-osx=fail
+libodb-boost:x64-linux=ignore
+libodb-pgsql:x64-linux=ignore
+libodb-pgsql:x64-windows=ignore
+libopenmpt:x64-linux=fail
+libopenmpt:x64-osx=fail
+libopusenc:arm-uwp=fail
+libopusenc:x64-linux=fail
+libopusenc:x64-osx=fail
+libopusenc:x64-uwp=fail
+libosip2:arm64-windows=fail
+libosip2:arm-uwp=fail
+libosip2:x64-uwp=fail
+libosip2:x64-windows=fail
+libosip2:x64-windows-static=fail
+libosip2:x86-windows=fail
+libp7-baical:arm64-windows = skip
+libp7-baical:arm-uwp = skip
+libp7-baical:x64-linux = skip
+libp7-baical:x64-osx = skip
+libp7-baical:x64-uwp = skip
+libp7-baical:x64-windows = skip
+libp7-baical:x64-windows-static = skip
+libp7-baical:x86-windows = skip
+libp7client:arm64-windows=fail
+libp7client:arm-uwp=fail
+libp7client:x64-linux=fail
+libp7client:x64-osx=fail
+libp7client:x64-uwp=fail
+libpcap:arm64-windows=fail
+libpcap:arm-uwp=fail
+libpcap:x64-osx=fail
+libpcap:x64-uwp=fail
+libpcap:x64-windows-static=fail
+libpff:arm-uwp=fail
+libpff:x64-linux=fail
+libpff:x64-osx=fail
+libpff:x64-uwp=fail
+libpff:x64-windows-static=fail
+libplist:x64-windows-static=fail
+libpng-apng:arm64-windows = skip
+libpng-apng:arm-uwp = skip
+libpng-apng:x64-linux = skip
+libpng-apng:x64-osx = skip
+libpng-apng:x64-uwp = skip
+libpng-apng:x64-windows = skip
+libpng-apng:x64-windows-static = skip
+libpng-apng:x86-windows = skip
+libpq:arm-uwp=fail
+libpq:x64-uwp=fail
+libqcow:arm-uwp=fail
+libqcow:x64-uwp=fail
+libqcow:x64-windows-static=fail
+librabbitmq:x64-linux=ignore
+libraqm:x64-windows-static=fail
+librdkafka:arm-uwp=fail
+librdkafka:x64-uwp=fail
+
+# Conflicts with openssl
+boringssl:arm64-windows = skip
+boringssl:arm-uwp = skip
+boringssl:x64-linux = skip
+boringssl:x64-osx = skip
+boringssl:x64-uwp = skip
+boringssl:x64-windows = skip
+boringssl:x64-windows-static = skip
+boringssl:x86-windows = skip
+libressl:arm64-windows = skip
+libressl:arm-uwp = skip
+libressl:x64-linux = skip
+libressl:x64-osx = skip
+libressl:x64-uwp = skip
+libressl:x64-windows = skip
+libressl:x64-windows-static = skip
+libressl:x86-windows = skip
+librsync:arm-uwp=fail
+librsync:x64-uwp=fail
+libsamplerate:arm64-windows=fail
+libsamplerate:arm-uwp=fail
+libsamplerate:x64-osx=fail
+libsoundio:arm64-windows=fail
+libsoundio:arm-uwp=fail
+libsoundio:x64-uwp=fail
+libsrt:arm-uwp=fail
+libsrt:x64-uwp=fail
+libssh:arm64-windows=fail
+libssh:arm-uwp=fail
+libssh:x64-uwp=fail
+libstk:arm-uwp=fail
+libstk:x64-uwp=fail
+libtins:arm-uwp=fail
+libtins:x64-uwp=fail
+libtomcrypt:arm64-windows=fail
+libtomcrypt:arm-uwp=fail
+libtorrent:arm-uwp=fail
+libtorrent:x64-uwp=fail
+libudis86:arm-uwp=fail
+libudis86:x64-linux=fail
+libudis86:x64-osx=fail
+libudis86:x64-uwp=fail
+libudns:arm64-windows=fail
+libudns:arm-uwp=fail
+libudns:x64-uwp=fail
+libudns:x64-windows=fail
+libudns:x64-windows-static=fail
+libudns:x86-windows=fail
+libudns:x64-osx=fail
+libui:arm-uwp=fail
+libui:x64-linux=fail
+libui:x64-uwp=fail
+libusb:arm-uwp=fail
+libusb:x64-linux=fail
+libusb:x64-osx=fail
+libusb:x64-uwp=fail
+libusbmuxd:arm-uwp=fail
+libusbmuxd:x64-uwp=fail
+libusbmuxd:x64-linux=fail
+libusbmuxd:x64-osx=fail
+libusb-win32:arm-uwp=fail
+libusb-win32:x64-linux=fail
+libusb-win32:x64-osx=fail
+libusb-win32:x64-uwp=fail
+libuuid:arm64-windows=fail
+libuuid:arm-uwp=fail
+
+# Causes build failures in vxl and podofo on osx
+# Conflicts with Darwin kernel sdk uuid.h (has missing definitions)
+libuuid:x64-osx = skip
+libuuid:x64-uwp=fail
+libuuid:x64-windows=fail
+libuuid:x64-windows-static=fail
+libuuid:x86-windows=fail
+libuv:arm-uwp=fail
+libuv:x64-uwp=fail
+libvmdk:arm-uwp=fail
+libvmdk:x64-uwp=fail
+libwandio:x86-windows=fail
+libwandio:x64-windows=fail
+libwandio:x64-windows-static=fail
+libwandio:x64-uwp=fail
+libwandio:arm64-windows=fail
+libwandio:arm-uwp=fail
+libwebsockets:arm-uwp=fail
+libwebsockets:x64-uwp=fail
+libxmp-lite:x64-linux=fail
+libxmp-lite:x64-osx=fail
+libxslt:arm-uwp=fail
+libxslt:x64-osx=fail
+libxslt:x64-uwp=fail
+libyuv:arm-uwp=fail
+libyuv:x64-uwp=fail
+libzippp:x64-linux=ignore
+licensepp:arm-uwp=fail
+licensepp:x64-uwp=fail
+linenoise-ng:arm-uwp=fail
+linenoise-ng:x64-uwp=fail
+live555:arm64-windows=fail
+live555:arm-uwp=fail
+live555:x64-linux=fail
+live555:x64-osx=fail
+live555:x64-uwp=fail
+live555:x64-windows=fail
+live555:x64-windows-static=fail
+live555:x86-windows=fail
+llgl:arm-uwp=fail
+llgl:x64-uwp=fail
+llvm:arm-uwp=fail
+llvm:arm64-windows=fail
+llvm:x64-uwp=fail
+lmdb:arm-uwp=fail
+lmdb:x64-uwp=fail
+log4cplus:arm-uwp=fail
+log4cplus:x64-uwp=fail
+log4cpp:arm-uwp=fail
+log4cpp:x64-uwp=fail
+log4cxx:arm64-windows=fail
+log4cxx:arm-uwp=fail
+log4cxx:x64-linux=fail
+log4cxx:x64-uwp=fail
+log4cxx:x64-windows-static=fail
+log4cxx:x64-osx=fail
+lua:arm-uwp=fail
+lua:x64-uwp=fail
+luajit:arm64-windows = skip
+luajit:arm-uwp = skip
+luajit:x64-linux = skip
+luajit:x64-osx = skip
+luajit:x64-uwp = skip
+luajit:x64-windows = skip
+luajit:x64-windows-static = skip
+luajit:x86-windows = skip
+luasocket:x64-linux=fail
+luasocket:x64-osx=fail
+lzfse:arm-uwp=fail
+magnum:arm64-windows=skip
+marl:arm-uwp=fail
+marl:x64-uwp=fail
+mathgl:x64-osx=fail
+mathgl:x64-uwp=fail
+mathgl:x64-linux=ignore
+matio:x64-linux=fail
+matio:x64-osx=fail
+mbedtls:arm-uwp=fail
+mbedtls:x64-uwp=fail
+mdnsresponder:arm64-windows=fail
+mdnsresponder:arm-uwp=fail
+mdnsresponder:x64-linux=fail
+mdnsresponder:x64-osx=fail
+mdnsresponder:x64-uwp=fail
+mecab:arm64-windows = skip
+mecab:arm-uwp = skip
+mecab:x64-linux = skip
+mecab:x64-uwp = skip
+mecab:x64-windows = skip
+mecab:x64-windows-static = skip
+mecab:x86-windows = skip
+memorymodule:arm-uwp=fail
+memorymodule:x64-linux=fail
+memorymodule:x64-osx=fail
+memorymodule:x64-uwp=fail
+meschach:arm-uwp=fail
+meschach:x64-linux=fail
+meschach:x64-osx=fail
+meschach:x64-uwp=fail
+metis:arm-uwp=fail
+metis:x64-uwp=fail
+metrohash:arm-uwp=fail
+metrohash:x64-uwp=fail
+metrohash:x86-windows=fail
+metrohash:arm64-windows=fail
+mhook:arm64-windows=fail
+mhook:arm-uwp=fail
+mhook:x64-linux=fail
+mhook:x64-osx=fail
+mhook:x64-uwp=fail
+milerius-sfml-imgui:x64-osx=fail
+milerius-sfml-imgui:x64-windows-static=fail
+milerius-sfml-imgui:x64-linux=ignore
+mimalloc:arm64-windows=fail
+mimalloc:arm-uwp=fail
+mimalloc:x64-uwp=fail
+minhook:arm64-windows=fail
+minhook:arm-uwp=fail
+minhook:x64-linux=fail
+minhook:x64-osx=fail
+minhook:x64-uwp=fail
+minifb:arm-uwp=fail
+minifb:x64-uwp=fail
+minisat-master-keying:arm-uwp=fail
+minisat-master-keying:x64-uwp=fail
+miniupnpc:arm-uwp=fail
+miniupnpc:x64-uwp=fail
+minizip:arm-uwp=fail
+minizip:x64-uwp=fail
+# Conflicts with signalrclient
+microsoft-signalr:arm64-windows=skip
+microsoft-signalr:arm-uwp=skip
+microsoft-signalr:x64-linux=skip
+microsoft-signalr:x64-osx=skip
+microsoft-signalr:x64-uwp=skip
+microsoft-signalr:x64-windows=skip
+microsoft-signalr:x64-windows-static=skip
+microsoft-signalr:x86-windows=skip
+mman:x64-linux=fail
+mman:x64-osx=fail
+mmloader:arm64-windows=fail
+mmloader:arm-uwp=fail
+mmloader:x64-linux=fail
+mmloader:x64-osx=fail
+mmloader:x64-uwp=fail
+mmloader:x64-windows=fail
+mmloader:x86-windows=fail
+# mmx installs many problematic headers, such as `json.h` and `sched.h`
+mmx:x64-windows=skip
+mmx:x64-windows-static=skip
+mmx:x86-windows=skip
+mmx:x64-linux=skip
+mmx:x64-osx=skip
+mmx:arm-uwp=skip
+mmx:x64-uwp=skip
+mmx:arm64-windows=skip
+# Flaky strange linker error
+mongo-c-driver:x64-osx=skip
+mongoose:arm-uwp=fail
+mongoose:x64-uwp=fail
+monkeys-audio:arm64-windows=fail
+monkeys-audio:arm-uwp=fail
+monkeys-audio:x64-linux=fail
+monkeys-audio:x64-osx=fail
+monkeys-audio:x64-uwp=fail
+monkeys-audio:x64-windows-static=fail
+moos-core:arm-uwp=fail
+moos-core:x64-uwp=fail
+moos-core:x64-windows=ignore
+moos-core:x64-windows-static=fail
+moos-core:x86-windows=ignore
+moos-essential:arm64-windows=fail
+moos-essential:x64-windows=fail
+moos-essential:x86-windows=fail
+moos-essential:x64-linux=ignore
+mozjpeg:arm64-windows = skip
+mozjpeg:arm-uwp = skip
+mozjpeg:x64-linux = skip
+mozjpeg:x64-osx = skip
+mozjpeg:x64-uwp = skip
+mozjpeg:x64-windows = skip
+mozjpeg:x64-windows-static = skip
+mozjpeg:x86-windows = skip
+# mpir conflicts with gmp
+# see https://github.com/microsoft/vcpkg/issues/11756
+mpir:x86-windows=skip
+mpir:x64-windows=skip
+mpir:x64-windows-static=skip
+mpir:arm64-windows=skip
+mpir:arm-uwp=skip
+mpir:x64-uwp=skip
+mpir:x64-osx=skip
+mpir:x64-linux=skip
+msix:x64-linux=fail
+msix:x64-osx=fail
+msix:x64-windows-static=fail
+msmpi:arm64-windows=fail
+msmpi:arm-uwp=fail
+msmpi:x64-linux=fail
+msmpi:x64-osx=fail
+msmpi:x64-uwp=fail
+munit:arm-uwp=fail
+munit:arm64-windows=fail
+munit:x64-uwp=fail
+# Though `vcpkg_configure_meson` and `vcpkg_install_meson` support
+# `x64-linux` and `x64-osx` now, it still failed on these targets.
+# See: https://github.com/microsoft/vcpkg/pull/6780
+munit:x64-linux=fail
+munit:x64-osx=fail
+muparser:arm-uwp=fail
+muparser:x64-uwp=fail
+murmurhash:arm-uwp=fail
+murmurhash:x64-uwp=fail
+murmurhash:arm64-windows=fail
+nana:arm-uwp=fail
+nana:x64-linux=fail
+nana:x64-osx=fail
+nana:x64-uwp=fail
+nanodbc:arm-uwp=fail
+nanodbc:x64-osx=fail
+nanodbc:x64-uwp=fail
+nanodbc:x64-linux=skip
+nanogui:arm64-windows=fail
+nanorange:arm64-windows=fail
+nanorange:arm-uwp=fail
+nanorange:x64-linux=fail
+nanorange:x64-osx=fail
+nanorange:x64-uwp=fail
+nanorange:x64-windows=fail
+nanorange:x64-windows-static=fail
+nanorange:x86-windows=fail
+nanovg:arm-uwp=fail
+nanovg:arm64-windows=ignore
+nanovg:x64-uwp=fail
+nanovg:x64-linux=ignore
+nanovg:x64-windows=ignore
+nanovg:x64-windows-static=ignore
+nanovg:x86-windows=skip
+nativefiledialog:arm-uwp=fail
+nativefiledialog:x64-uwp=fail
+netcdf-cxx4:x64-linux=ignore
+nethost:x64-uwp=fail
+nethost:arm-uwp=fail
+nettle:x64-windows-static=skip
+nettle:x64-windows=skip
+nettle:x64-osx=fail
+networkdirect-sdk:arm64-windows=fail
+networkdirect-sdk:arm-uwp=fail
+networkdirect-sdk:x64-linux=fail
+networkdirect-sdk:x64-osx=fail
+networkdirect-sdk:x64-uwp=fail
+networkdirect-sdk:x86-windows=fail
+nmslib:arm64-windows=fail
+nmslib:arm-uwp=fail
+nmslib:x64-uwp=fail
+nng:arm-uwp=fail
+nng:x64-uwp=fail
+nrf-ble-driver:arm-uwp=fail
+nrf-ble-driver:x64-uwp=fail
+nrf-ble-driver:x64-linux=ignore
+numactl:arm64-windows=fail
+numactl:arm-uwp=fail
+numactl:x64-osx=fail
+numactl:x64-uwp=fail
+numactl:x64-windows=fail
+numactl:x64-windows-static=fail
+numactl:x86-windows=fail
+nvtt:arm64-windows=fail
+nvtt:arm-uwp=fail
+nvtt:x64-uwp=fail
+ocilib:arm64-windows=fail
+ocilib:arm-uwp=fail
+ocilib:x64-uwp=fail
+ocilib:x64-windows-static=fail
+octomap:arm-uwp=fail
+octomap:x64-uwp=fail
+ode:arm64-windows=fail
+ode:arm-uwp=fail
+ode:x64-uwp=fail
+ode:x64-linux=ignore
+offscale-libetcd-cpp:arm64-windows=fail
+offscale-libetcd-cpp:arm-uwp=fail
+offscale-libetcd-cpp:x64-uwp=fail
+ogdf:arm64-windows = skip
+ogdf:arm-uwp = skip
+ogdf:x64-osx=fail
+ogdf:x64-uwp = skip
+ogdf:x64-windows = skip
+ogdf:x64-windows-static = skip
+ogdf:x86-windows = skip
+ogre:x64-osx=fail
+# Conflicts with ogre
+ogre-next:arm64-windows = skip
+ogre-next:arm-uwp = skip
+ogre-next:x64-osx = skip
+ogre-next:x64-linux = skip
+ogre-next:x64-uwp = skip
+ogre-next:x64-windows = skip
+ogre-next:x64-windows-static = skip
+ogre-next:x86-windows = skip
+ois:arm64-windows=fail
+ois:arm-uwp=fail
+ois:x64-uwp=fail
+open62541:arm-uwp=fail
+open62541:x64-uwp=fail
+openal-soft:arm-uwp=fail
+openal-soft:x64-uwp=fail
+openblas:arm64-windows=fail
+openblas:arm-uwp=fail
+# opencc/deps/rapidjson-1.1.0/rapidjson.h: Unknown machine endianess detected
+opencc:arm64-windows=fail
+# opencc/deps/marisa-0.2.5/lib/marisa/grimoire/io/mapper.cc currently doesn't support UWP.
+opencc:arm-uwp=fail
+opencc:x64-uwp=fail
+opencensus-cpp:arm64-windows=fail
+opencensus-cpp:x64-windows=fail
+opencensus-cpp:x64-windows-static=fail
+opencensus-cpp:x86-windows=fail
+opencensus-cpp:x64-uwp=fail
+opencl:arm-uwp=fail
+opencl:x64-uwp=fail
+opencolorio:x64-linux=ignore
+opencsg:x64-uwp=fail
+opencv2:arm64-windows = skip
+opencv2:arm-uwp = skip
+opencv2:x64-linux = skip
+opencv2:x64-osx = skip
+opencv2:x64-uwp = skip
+opencv2:x64-windows = skip
+opencv2:x64-windows-static = skip
+opencv2:x86-windows = skip
+opencv3:arm64-windows = skip
+opencv3:arm-uwp = skip
+opencv3:x64-linux = skip
+opencv3:x64-osx = skip
+opencv3:x64-uwp = skip
+opencv3:x64-windows = skip
+opencv3:x64-windows-static = skip
+opencv3:x86-windows = skip
+opendnp3:x64-uwp=fail
+opendnp3:arm-uwp=fail
+openexr:arm64-windows=fail
+openexr:arm-uwp=fail
+openexr:x64-uwp=fail
+opengl:arm64-windows=fail
+opengl:arm-uwp=fail
+openimageio:x64-linux=ignore
+openmama:x64-windows=ignore
+openmama:x86-windows=ignore
+openmama:x64-linux=fail
+openmama:x64-osx=fail
+openmesh:arm64-windows=fail
+openmesh:arm-uwp=fail
+openmesh:x64-uwp=fail
+openmpi:arm64-windows=fail
+openmpi:arm-uwp=fail
+openmpi:x64-uwp=fail
+openmpi:x64-windows=fail
+openmpi:x64-windows-static=fail
+openmpi:x86-windows=fail
+openmvg:x64-linux=ignore
+openmvs:x64-linux=fail
+openni2:x64-uwp=fail
+openni2:x64-windows-static=fail
+openscap:x64-linux=fail
+openssl-unix:arm64-windows=fail
+openssl-unix:arm-uwp=fail
+openssl-unix:x64-uwp=fail
+openssl-unix:x64-windows=fail
+openssl-unix:x64-windows-static=fail
+openssl-unix:x86-windows=fail
+openssl-uwp:arm64-windows=fail
+openssl-uwp:x64-linux=fail
+openssl-uwp:x64-osx=fail
+openssl-uwp:x64-windows=fail
+openssl-uwp:x64-windows-static=fail
+openssl-uwp:x86-windows=fail
+openssl-windows:arm-uwp=fail
+openssl-windows:x64-linux=fail
+openssl-windows:x64-osx=fail
+openssl-windows:x64-uwp=fail
+opentracing:arm-uwp=fail
+opentracing:x64-uwp=fail
+openvdb:x64-linux=ignore
+openvdb:x64-osx=fail
+#openvdb:x64-windows-static=fail # https://github.com/microsoft/vcpkg/pull/10816#issuecomment-613784827
+openvpn3:x64-osx=fail
+openvr:arm64-windows=fail
+openvr:arm-uwp=fail
+openvr:x64-osx=fail
+openvr:x64-uwp=fail
+openxr-loader:arm64-windows=fail
+openxr-loader:arm-uwp=fail
+openxr-loader:x64-osx=fail
+openxr-loader:x64-uwp=fail
+optional-bare:arm64-windows = skip
+optional-bare:arm-uwp = skip
+optional-bare:x64-linux = skip
+optional-bare:x64-osx = skip
+optional-bare:x64-uwp = skip
+optional-bare:x64-windows = skip
+optional-bare:x64-windows-static = skip
+optional-bare:x86-windows = skip
+opusfile:arm-uwp=fail
+opusfile:x64-uwp=fail
+orc:x64-linux=ignore
+orocos-kdl:arm-uwp=fail
+orocos-kdl:x64-uwp=fail
+osg:x86-windows=skip
+osg:x64-windows=skip
+osgearth:x64-osx=fail
+osgearth:x64-linux=fail
+osgearth:x64-windows-static=fail
+osg-qt:x64-windows-static=fail
+otl:x64-windows=ignore
+otl:x64-windows-static=ignore
+otl:x64-uwp=ignore
+otl:x64-linux=ignore
+otl:x86-windows=ignore
+paho-mqtt:arm-uwp=fail
+paho-mqtt:x64-uwp=fail
+pangolin:x64-linux=fail
+pangolin:x64-osx=fail
+pangolin:x64-uwp=fail
+pangolin:x64-windows-static=fail
+pangomm:x64-osx=fail
+pangomm:x64-windows=ignore
+pangomm:x86-windows=ignore
+pangomm:arm64-windows=fail
+parmetis:x64-linux=fail
+parmetis:x64-osx=fail
+pcre2:arm-uwp=fail
+pdal:x64-linux=fail
+pdal:x64-osx=fail
+pdal-c:x64-windows-static=fail
+pdcurses:arm-uwp=fail
+pdcurses:x64-linux=fail
+pdcurses:x64-osx=fail
+pdcurses:x64-uwp=fail
+pdcurses:x64-windows-static=fail
+pfring:arm64-windows=fail
+pfring:arm-uwp=fail
+pfring:x64-uwp=fail
+pfring:x64-windows=fail
+pfring:x64-windows-static=fail
+pfring:x86-windows=fail
+pfring:x64-osx=fail
+# pfring on Linux currently fails because its build scripts enable warnings as
+# errors, and warnings trigger with the Linux kernel headers in the Azure images.
+pfring:x64-linux=fail
+physfs:arm64-windows=fail
+physx:arm64-windows=fail
+physx:x64-linux=fail
+physx:x64-osx=fail
+piex:x64-osx=fail
+pistache:arm64-windows=fail
+pistache:arm-uwp=fail
+pistache:x64-osx=fail
+pistache:x64-uwp=fail
+pistache:x64-windows=fail
+pistache:x64-windows-static=fail
+pistache:x86-windows=fail
+pixel:x64-uwp=fail
+pixel:x64-windows=fail
+pixel:x64-windows-static=fail
+pixel:x86-windows=fail
+pixel:x64-linux=ignore
+platform-folders:arm-uwp=fail
+platform-folders:x64-uwp=fail
+plib:arm-uwp=fail
+plib:x64-osx=fail
+plib:x64-uwp=fail
+plibsys:arm-uwp=fail
+plibsys:x64-uwp=fail
+plplot:arm64-windows=fail
+plplot:arm-uwp=fail
+plplot:x64-uwp=fail
+pmdk:arm-uwp=fail
+pmdk:arm64-windows=fail
+pmdk:x64-linux=fail
+pmdk:x64-osx=fail
+pmdk:x64-uwp=fail
+pmdk:x64-windows-static=fail
+pmdk:x86-windows=fail
+pngwriter:arm-uwp=fail
+pngwriter:x64-uwp=fail
+pngwriter:x64-linux=ignore
+polyhook2:arm64-windows=fail
+polyhook2:arm-uwp=fail
+polyhook2:x64-linux=fail
+polyhook2:x64-uwp=fail
+polyhook2:x64-osx=fail
+portable-snippets:arm-uwp=fail
+# Portaudio was broken by Ninja 1.9.0 https://github.com/ninja-build/ninja/pull/1406
+portaudio:arm-uwp=fail
+portaudio:arm64-windows=fail
+portaudio:x64-uwp=fail
+portaudio:x64-windows-static=fail
+portaudio:x64-windows=fail
+portaudio:x86-windows=fail
+portmidi:arm-uwp=fail
+portmidi:x64-linux=fail
+portmidi:x64-osx=fail
+portmidi:x64-uwp=fail
+ppconsul:x64-linux=ignore
+pqp:arm-uwp=fail
+pqp:x64-uwp=fail
+proj4:arm64-windows=fail
+proj4:arm-uwp=fail
+proj4:x64-uwp=fail
+protobuf:x64-uwp=ignore
+protobuf:arm64-windows=ignore
+protobuf:arm-uwp=ignore
+protobuf-c:x86-windows=fail
+protobuf-c:x64-windows=fail
+protobuf-c:x64-windows-static=fail
+protobuf-c:x64-uwp=fail
+protobuf-c:arm64-windows=fail
+protobuf-c:arm-uwp=fail
+# proxygen fails with "Target 'Windows' not supported by proxygen!"
+proxygen:x64-windows=fail
+proxygen:x64-windows-static=fail
+ptex:arm-uwp=fail
+ptex:x64-linux=fail
+ptex:x64-osx=fail
+ptex:x64-uwp=fail
+pthreads:arm64-windows=fail
+pthreads:arm-uwp=fail
+pthreads:x64-uwp=fail
+python2:arm64-windows=fail
+python2:arm-uwp=fail
+python2:x64-linux=fail
+python2:x64-osx=fail
+python2:x64-uwp=fail
+python3:arm64-windows=fail
+python3:arm-uwp=fail
+python3:x64-uwp=fail
+qca:x64-linux=fail
+qca:x64-osx=fail
+qca:x64-windows-static=fail
+qhull:arm-uwp=ignore
+qhull:x64-windows-static=ignore
+qhull:x64-uwp=ignore
+qpid-proton:arm-uwp=fail
+qpid-proton:x64-uwp=fail
+qpid-proton:x64-windows-static=fail
+qt5-activeqt:x64-linux=fail
+qt5-activeqt:x64-osx=fail
+qt5-macextras:x64-linux=fail
+qt5-macextras:x64-windows=fail
+qt5-macextras:x64-windows-static=fail
+qt5-macextras:x86-windows=fail
+# Missing system libraries
+qt5-wayland:x64-osx=fail
+# Missing libraries
+qt5-wayland:x86-windows=fail
+qt5-wayland:x64-windows=fail
+qt5-wayland:x64-windows-static=fail
+qt5-winextras:x64-linux=fail
+qt5-winextras:x64-osx=fail
+# Too big for CI.
+qt5-webengine:x64-windows=skip
+qt5-webengine:x86-windows=skip
+# Missing prerequisites for CI success
+qt5-webengine:x64-linux=fail
+qt5-webengine:x64-osx=fail
+# Static builds of qt5-webengine are not supported by the port itself
+qt5-webengine:x64-windows-static=skip
+# Missing system libraries
+qt5-x11extras:x64-osx=fail
+# Missing libraries
+qt5-x11extras:x86-windows=fail
+qt5-x11extras:x64-windows=fail
+qt5-x11extras:x64-windows-static=fail
+# Broken by VS2019 16.6 and throws a ton of dialogs attempting to build
+# fixed by https://github.com/microsoft/vcpkg/pull/11596
+qt5-translations:x64-windows-static=skip
+quickfast:x64-linux=ignore
+quickfix:x64-linux=ignore
+quickfix:x64-windows=ignore
+quickfix:x64-windows-static=ignore
+quickfix:x86-windows=ignore
+quickfix:x64-uwp=fail
+quickfix:arm-uwp=fail
+quill:arm64-windows=fail
+quill:arm-uwp=fail
+quill:x64-uwp=fail
+quirc:arm64-windows = skip
+quirc:arm-uwp = skip
+quirc:x64-linux = skip
+quirc:x64-osx = skip
+quirc:x64-uwp = skip
+quirc:x64-windows = skip
+quirc:x64-windows-static = skip
+quirc:x86-windows = skip
+qwt:x64-osx=ignore
+rabit:x64-osx=fail
+rabit:x64-linux=ignore
+ragel:arm-uwp=fail
+ragel:x64-uwp=fail
+range-v3-vs2015:arm64-windows = skip
+range-v3-vs2015:arm-uwp = skip
+range-v3-vs2015:x64-linux = skip
+range-v3-vs2015:x64-osx = skip
+range-v3-vs2015:x64-uwp = skip
+range-v3-vs2015:x64-windows = skip
+range-v3-vs2015:x64-windows-static = skip
+range-v3-vs2015:x86-windows = skip
+rapidstring:arm64-windows=fail
+rapidstring:arm-uwp=fail
+rapidstring:x64-linux=fail
+rapidstring:x64-uwp=fail
+rapidstring:x64-windows=fail
+rapidstring:x64-windows-static=fail
+rapidstring:x86-windows=fail
+raylib:arm64-windows=fail
+raylib:arm-uwp=fail
+raylib:x64-uwp=fail
+readline:arm-uwp=fail
+readline:x64-uwp=fail
+readline-win32:arm-uwp=fail
+readline-win32:x64-linux=fail
+readline-win32:x64-osx=fail
+readline-win32:x64-uwp=fail
+readosm:x64-linux=fail
+readosm:x64-osx=fail
+realsense2:arm64-windows=fail
+realsense2:arm-uwp=fail
+realsense2:x64-linux=fail
+realsense2:x64-uwp=fail
+redis-plus-plus:x86-windows=fail
+redis-plus-plus:x64-windows=fail
+redis-plus-plus:x64-windows-static=fail
+redis-plus-plus:arm64-windows=fail
+replxx:arm-uwp=fail
+replxx:x64-uwp=fail
+reproc:arm-uwp=fail
+reproc:x64-uwp=fail
+restbed:arm-uwp=fail
+restbed:x64-uwp=fail
+rhash:arm64-windows=fail
+rhash:arm-uwp=fail
+rhash:x64-uwp=fail
+rocksdb:arm-uwp=fail
+rocksdb:x64-uwp=fail
+rocksdb:x64-linux=ignore
+rpclib:arm64-windows=fail
+rpclib:arm-uwp=fail
+rpclib:x64-uwp=fail
+rpclib:x64-windows=ignore
+rpclib:x86-windows=ignore
+rpclib:x64-windows-static=ignore
+rtlsdr:x64-uwp=fail
+rtlsdr:arm64-windows=fail
+rtlsdr:arm-uwp=fail
+rtlsdr:x64-linux=fail
+rtlsdr:x64-osx=fail
+rttr:arm-uwp=fail
+rttr:x64-uwp=fail
+rxspencer:x64-uwp=fail
+rxspencer:arm-uwp=fail
+ryml:arm-uwp=fail
+ryml:arm64-windows=fail
+ryml:x64-osx=fail
+ryu:arm-uwp=fail
+ryu:x64-uwp=fail
+ryu:x64-windows-static=fail
+ryu:x86-windows=fail
+ryu::arm64-windows=fail
+scintilla:arm-uwp=fail
+scintilla:x64-linux=fail
+scintilla:x64-osx=fail
+scintilla:x64-uwp=fail
+scintilla:x64-windows-static=fail
+sciter:arm64-windows=fail
+sciter:arm-uwp=fail
+sciter:x64-uwp=fail
+sciter:x64-windows-static=fail
+scnlib:arm-uwp=fail
+scnlib:x64-uwp=fail
+scylla-wrapper:arm-uwp=fail
+scylla-wrapper:x64-linux=fail
+scylla-wrapper:x64-osx=fail
+scylla-wrapper:x64-uwp=fail
+scylla-wrapper:x64-windows-static=fail
+sdformat6:arm64-windows=fail
+sdformat6:arm-uwp=fail
+sdformat6:x64-uwp=fail
+sdformat6:x64-linux=ignore
+sdformat9:x64-linux=fail
+sdformat9:arm-uwp=fail
+sdformat9:x64-uwp=fail
+sdl1:arm-uwp=fail
+sdl1:x64-uwp=fail
+sdl1:x64-osx=fail
+sdl2-image:arm-uwp=fail
+sdl2-image:x64-uwp=fail
+sdl2-mixer:arm-uwp=fail
+sdl2-mixer:x64-uwp=fail
+sdl2-net:arm-uwp=fail
+sdl2-net:x64-uwp=fail
+# https://github.com/microsoft/vcpkg/issues/10918
+seal:arm-uwp=fail
+seal:x64-uwp=fail
+secp256k1:x64-linux=fail
+secp256k1:x64-osx=fail
+selene:x64-linux=ignore
+sentencepiece:arm64-windows=fail
+sentencepiece:arm-uwp=fail
+sentencepiece:x64-uwp=fail
+sentencepiece:x64-windows=fail
+sentencepiece:x86-windows=fail
+septag-sx:arm64-windows=fail
+septag-sx:arm-uwp=fail
+septag-sx:x64-uwp=fail
+sfgui:x64-linux=ignore
+sfml:arm64-windows=fail
+shapelib:arm-uwp=fail
+shapelib:x64-uwp=fail
+shiva:x64-windows-static=fail
+shiva-sfml:x64-linux=fail
+shiva-sfml:x64-osx=fail
+shiva-sfml:x86-windows=fail
+shiva-sfml:x64-windows=fail
+shogun:arm64-windows = skip
+shogun:arm-uwp = skip
+shogun:x64-osx = skip
+shogun:x64-uwp = skip
+shogun:x64-windows = skip
+shogun:x64-windows-static = skip
+shogun:x86-windows = skip
+signalrclient:x64-uwp=fail
+signalrclient:arm-uwp=fail
+simdjson:arm-uwp=fail
+simdjson:x86-windows=fail
+skia:arm64-windows=fail
+skia:arm-uwp=fail
+skia:x64-linux=fail
+skia:x64-uwp=fail
+skia:x86-windows=fail
+slikenet:arm-uwp=fail
+slikenet:x64-uwp=fail
+smpeg2:arm-uwp=fail
+smpeg2:x64-linux=fail
+smpeg2:x64-uwp=fail
+soci:arm-uwp=fail
+soci:x64-uwp=fail
+sockpp:arm-uwp=fail
+sockpp:x64-uwp=fail
+soem:x64-uwp=fail
+soem:arm-uwp=fail
+soil:arm-uwp=fail
+soil:x64-uwp=fail
+soil2:arm-uwp=fail
+soil2:x64-uwp=fail
+sophus:x64-linux=fail
+soqt:arm64-windows=fail
+soqt:arm-uwp=fail
+soqt:x64-uwp=fail
+soundtouch:arm-uwp=fail
+soundtouch:x64-linux=ignore
+soundtouch:x64-uwp=fail
+soundtouch:x64-windows-static=fail
+spaceland:arm64-windows=fail
+spaceland:arm-uwp=fail
+spaceland:x64-uwp=fail
+spaceland:x64-linux=ignore
+spdk:x64-linux=fail
+spdk-dpdk:arm64-windows=fail
+spdk-dpdk:arm-uwp=fail
+spdk-dpdk:x64-osx=fail
+spdk-dpdk:x64-uwp=fail
+spdk-dpdk:x64-windows=fail
+spdk-dpdk:x64-windows-static=fail
+spdk-dpdk:x86-windows=fail
+spdk-ipsec:arm64-windows=fail
+spdk-ipsec:arm-uwp=fail
+spdk-ipsec:x64-osx=fail
+spdk-ipsec:x64-uwp=fail
+spdk-ipsec:x64-windows=fail
+spdk-ipsec:x64-windows-static=fail
+spdk-ipsec:x86-windows=fail
+spdk-isal:arm64-windows=fail
+spdk-isal:arm-uwp=fail
+spdk-isal:x64-osx=fail
+spdk-isal:x64-uwp=fail
+spdk-isal:x64-windows=fail
+spdk-isal:x64-windows-static=fail
+spdk-isal:x86-windows=fail
+speex:x64-linux=fail
+speex:x64-osx=fail
+speexdsp:x64-linux=fail
+speexdsp:x64-osx=fail
+spirv-tools:arm-uwp=fail
+spirv-tools:x64-uwp=fail
+stormlib:arm-uwp=fail
+stormlib:x64-uwp=fail
+stxxl:arm-uwp=fail
+stxxl:x64-uwp=fail
+# Sundials was broken by Ninja 1.9.0 https://github.com/ninja-build/ninja/pull/1406
+sundials:arm64-windows=fail
+sundials:x64-windows=fail
+sundials:x86-windows=fail
+# Conflicts between ports:
+#The following files are already installed in C:/agent/_work/1/s/installed/x64-windows-static
+# and are in conflict with superlu:x64-windows-static
+#
+#Installed by hypre:x64-windows-static
+# include/slu_Cnames.h
+# include/slu_cdefs.h
+# include/slu_dcomplex.h
+# include/slu_ddefs.h
+# include/slu_scomplex.h
+# include/slu_sdefs.h
+# include/slu_util.h
+# include/slu_zdefs.h
+# include/supermatrix.h
+superlu:arm-uwp=skip
+superlu:arm-windows=skip
+superlu:arm64-windows=skip
+superlu:x64-uwp=skip
+superlu:x64-windows-static=skip
+superlu:x64-windows=skip
+systemc:arm64-windows=fail
+systemc:arm-uwp=fail
+systemc:x64-uwp=fail
+taglib:x64-linux=ignore
+tbb:arm64-windows=fail
+tbb:arm-uwp=fail
+tbb:x64-uwp=fail
+tcl:arm-uwp=ignore
+tcl:arm64-windows=ignore
+tcl:x64-uwp=ignore
+tcl:x64-linux=ignore
+tcl:x64-osx=ignore
+teemo:x64-uwp=fail
+teemo:arm-uwp=fail
+teemo:arm64-windows=fail
+teemo:x64-osx=fail
+telnetpp:arm-uwp=fail
+telnetpp:x64-uwp=fail
+tensorflow-cc:arm64-windows=fail
+tensorflow-cc:x64-linux=skip
+tensorflow-cc:x64-osx=skip
+tensorflow-cc:x64-windows=fail
+tensorflow-cc:x64-windows-static=fail
+tensorflow-cc:x86-windows=fail
+tesseract:x64-windows=ignore
+tesseract:x64-windows-static=ignore
+tesseract:x86-windows=ignore
+tesseract:arm64-windows=fail
+tfhe:x86-windows=fail
+tfhe:x64-windows=fail
+tfhe:x64-windows-static=fail
+tfhe:x64-uwp=fail
+tfhe:arm64-windows=fail
+tfhe:arm-uwp=fail
+theia:arm64-windows = skip
+theia:arm-uwp = skip
+theia:x64-uwp = skip
+theia:x64-windows = skip
+theia:x64-windows-static = skip
+theia:x86-windows = skip
+thor:x64-linux=fail
+thor:x64-osx=fail
+tidy-html5:arm-uwp=fail
+tidy-html5:x64-uwp=fail
+tinkerforge:arm-uwp=fail
+tinkerforge:x64-uwp=fail
+tinyexif:arm-uwp=fail
+tinyexif:x64-uwp=fail
+tinyfiledialogs:arm-uwp=fail
+tinyfiledialogs:x64-uwp=fail
+tinynpy:x64-linux=ignore
+tiny-process-library:arm-uwp=fail
+tiny-process-library:x64-uwp=fail
+tinyutf8:arm64-windows=fail
+tinyutf8:arm-uwp=fail
+tinyutf8:x64-uwp=fail
+
+#Flaky on windows only due to error PRI210: 0x80070020 - File move failed
+tmx:arm64-windows = skip
+tmx:arm-uwp = skip
+tmx:x64-uwp = skip
+tmx:x64-windows = skip
+tmx:x64-windows-static = skip
+tmx:x86-windows = skip
+tmxlite:arm-uwp=fail
+tmxlite:x64-uwp=fail
+tmxparser:arm64-windows=fail
+tmxparser:arm-uwp=fail
+tmxparser:x64-uwp=fail
+tmxparser:x64-windows=fail
+tmxparser:x64-windows-static=fail
+tmxparser:x86-windows=fail
+torch-th:arm64-windows=fail
+torch-th:arm-uwp=fail
+torch-th:x64-uwp=fail
+torch-th:x64-windows-static=fail
+tre:x64-osx=fail
+treehopper:x64-windows-static=fail
+turbobase64:arm64-windows=fail
+turbobase64:arm-uwp=fail
+turbobase64:x64-uwp=fail
+turbobase64:x64-windows=fail
+turbobase64:x64-windows-static=fail
+turbobase64:x86-windows=fail
+unicorn:arm64-windows=fail
+unicorn:arm-uwp=fail
+unicorn:x64-linux=fail
+unicorn:x64-osx=fail
+unicorn:x64-uwp=fail
+unicorn-lib:x64-uwp=fail
+unittest-cpp:arm64-windows=fail
+unittest-cpp:arm-uwp=fail
+unittest-cpp:x64-uwp=fail
+unixodbc:arm64-windows=fail
+unixodbc:arm-uwp=fail
+unixodbc:x64-uwp=fail
+unixodbc:x64-windows=fail
+unixodbc:x64-windows-static=fail
+unixodbc:x86-windows=fail
+unrar:arm64-windows=fail
+unrar:arm-uwp=fail
+unrar:x64-linux=fail
+unrar:x64-osx=fail
+unrar:x64-uwp=fail
+unrar:x64-windows-static=fail
+urdfdom:x64-windows-static=fail
+usd:x86-windows=fail
+usrsctp:arm-uwp=fail
+usrsctp:x64-uwp=fail
+uthenticode:arm-uwp=fail
+uthenticode:x64-uwp=fail
+uvatlas:arm64-windows=fail
+uvatlas:arm-uwp=fail
+uvatlas:x64-linux=fail
+uvatlas:x64-osx=fail
+uvatlas:x64-windows-static=fail
+vectorclass:arm64-windows=fail
+vectorclass:arm-uwp=fail
+vlpp:x64-osx=fail
+vulkan:arm64-windows=fail
+vulkan:arm-uwp=fail
+vulkan:x64-linux=fail
+vulkan:x64-osx=fail
+vulkan:x64-uwp=fail
+vulkan:x64-windows=fail
+vulkan:x64-windows-static=fail
+vulkan:x86-windows=fail
+# Conflicts with latest openjpeg port (vxl ships with an old version of openjpeg)
+# conflicts with qt5-location
+vxl:arm64-windows = skip
+vxl:arm-uwp = skip
+vxl:x64-linux = skip
+vxl:x64-osx = skip
+vxl:x64-uwp = skip
+vxl:x64-windows = skip
+vxl:x64-windows-static = skip
+vxl:x86-windows = skip
+wampcc:arm64-windows=fail
+wampcc:x64-linux=ignore
+wangle:x64-linux=ignore
+wavpack:arm64-windows=fail
+wavpack:x64-linux=fail
+wavpack:x64-osx=fail
+wepoll:arm-uwp=ignore
+wepoll:x64-uwp=ignore
+wepoll:x64-linux=ignore
+wepoll:x64-osx=ignore
+wildmidi:x64-osx=fail
+wincrypt:x64-linux=fail
+wincrypt:x64-osx=fail
+winpcap:arm64-windows = skip
+winpcap:arm-uwp = skip
+winpcap:x64-linux=fail
+winpcap:x64-osx=fail
+winpcap:x64-uwp = skip
+winpcap:x64-windows = skip
+winpcap:x64-windows-static = skip
+winpcap:x86-windows = skip
+winreg:x64-linux=fail
+winreg:x64-osx=fail
+winsock2:x64-linux=fail
+winsock2:x64-osx=fail
+wintoast:arm-uwp=fail
+wintoast:x64-linux=fail
+wintoast:x64-osx=fail
+wintoast:x64-uwp=fail
+woff2:x64-linux=fail
+woff2:x64-osx=fail
+woff2:x64-windows-static=fail
+wpilib:arm64-windows=fail
+wpilib:x64-osx=fail
+wxchartdir:x64-osx=fail
+wxwidgets:x64-linux=fail
+x264:arm64-windows=fail
+x264:arm-uwp=fail
+x264:x64-uwp=ignore
+x264:x64-osx=fail
+x264:x86-windows=ignore
+x264:x64-windows=ignore
+x264:x64-windows-static=ignore
+x265:arm64-windows=fail
+x265:arm-uwp=fail
+x265:x64-uwp=fail
+xalan-c:x64-windows-static=fail
+xalan-c:arm64-windows=fail
+xbyak:arm64-windows=fail
+xbyak:arm-uwp=fail
+xbyak:x64-uwp=fail
+xerces-c:arm-uwp=fail
+xerces-c:x64-uwp=fail
+xeus:x64-linux=ignore
+xmlsec:arm-uwp=fail
+xmlsec:x64-uwp=fail
+# The xmsh upstream repository is gone, if we find no replacement before
+# 2021-01-01 we will remove the port outright.
+xmsh:arm-uwp=skip
+xmsh:arm64-windows=skip
+xmsh:x64-linux=skip
+xmsh:x64-osx=skip
+xmsh:x64-uwp=skip
+xmsh:x64-windows-static=skip
+xmsh:x64-windows=skip
+xmsh:x86-windows=skip
+xtensor-io:x64-uwp=ignore
+x-plane:arm64-windows=fail
+x-plane:arm-uwp=fail
+x-plane:x64-linux=fail
+x-plane:x86-windows=fail
+yajl:arm-uwp=fail
+yajl:x64-uwp=fail
+yara:arm-uwp=fail
+yara:x64-uwp=fail
+yasm:arm64-windows=fail
+yasm:arm-uwp=fail
+yasm:x64-linux=fail
+yasm:x64-osx=fail
+yasm:x64-uwp=fail
+yato:arm64-windows=fail
+yato:arm-uwp=fail
+yato:x64-uwp=fail
+z3:arm64-windows=fail
+z3:arm-uwp=fail
+z3:x64-uwp=fail
+zeromq:arm64-windows=fail
+zeromq:arm-uwp=fail
+zeromq:x64-uwp=fail
+zkpp:x86-windows=fail
+zkpp:x64-windows=fail
+zkpp:x64-windows-static=fail
+zkpp:arm64-windows=fail
+zkpp:x64-uwp=fail
+zkpp:arm-uwp=fail
+c4core:arm-uwp=fail
+c4core:arm64-windows=fail
+c4core:x64-osx=fail
+
+# Official downloading server of CTP library is only guaranteed to be available during trading hours of China futures market
+# Skip CI to avoid random failures
+ctp:arm64-windows=skip
+ctp:arm-uwp=skip
+ctp:x64-linux=skip
+ctp:x64-osx=skip
+ctp:x64-uwp=skip
+ctp:x64-windows=skip
+ctp:x64-windows-static=skip
+ctp:x86-windows=skip
+protozero:arm-uwp=fail
+protozero:x64-uwp=fail
diff --git a/scripts/cmake/vcpkg_build_msbuild.cmake b/scripts/cmake/vcpkg_build_msbuild.cmake
index 67ff3d3ae..bc118b4c0 100644
--- a/scripts/cmake/vcpkg_build_msbuild.cmake
+++ b/scripts/cmake/vcpkg_build_msbuild.cmake
@@ -96,6 +96,7 @@ function(vcpkg_build_msbuild)
/p:VCPkgLocalAppDataDisabled=true
/p:UseIntelMKL=No
/p:WindowsTargetPlatformVersion=${_csc_TARGET_PLATFORM_VERSION}
+ /p:VcpkgManifestInstall=false
/m
)
diff --git a/scripts/cmake/vcpkg_configure_cmake.cmake b/scripts/cmake/vcpkg_configure_cmake.cmake
index 4debcb718..9f75c5e07 100644
--- a/scripts/cmake/vcpkg_configure_cmake.cmake
+++ b/scripts/cmake/vcpkg_configure_cmake.cmake
@@ -238,6 +238,7 @@ function(vcpkg_configure_cmake)
"-DCMAKE_INSTALL_BINDIR:STRING=bin"
"-D_VCPKG_ROOT_DIR=${VCPKG_ROOT_DIR}"
"-D_VCPKG_INSTALLED_DIR=${_VCPKG_INSTALLED_DIR}"
+ "-DVCPKG_MANIFEST_INSTALL=OFF"
)
if(DEFINED ARCH)
diff --git a/scripts/cmake/vcpkg_fixup_pkgconfig.cmake b/scripts/cmake/vcpkg_fixup_pkgconfig.cmake
index a5495a423..6acb51360 100644
--- a/scripts/cmake/vcpkg_fixup_pkgconfig.cmake
+++ b/scripts/cmake/vcpkg_fixup_pkgconfig.cmake
@@ -13,7 +13,7 @@
##
## ## Parameters
## ### RELEASE_FILES
-## Specifies a list of files to apply the fixes for release paths.
+## Specifies a list of files to apply the fixes for release paths.
## Defaults to every *.pc file in the folder ${CURRENT_PACKAGES_DIR} without ${CURRENT_PACKAGES_DIR}/debug/
##
## ### DEBUG_FILES
@@ -22,11 +22,11 @@
##
## ### SYSTEM_PACKAGES
## If the *.pc file contains system packages outside vcpkg these need to be listed here.
-## Since vcpkg checks the existence of all required packages within vcpkg.
+## Since vcpkg checks the existence of all required packages within vcpkg.
##
## ### SYSTEM_LIBRARIES
## If the *.pc file contains system libraries outside vcpkg these need to be listed here.
-## VCPKG checks every -l flag for the existence of the required library within vcpkg.
+## VCPKG checks every -l flag for the existence of the required library within vcpkg.
##
## ### IGNORE_FLAGS
## If the *.pc file contains flags in the lib field which are not libraries. These can be listed here
@@ -36,7 +36,7 @@
##
## ## Examples
##
-## Just call vcpkg_fixup_pkgconfig() after any install step which installs *.pc files.
+## Just call vcpkg_fixup_pkgconfig() after any install step which installs *.pc files.
function(vcpkg_fixup_pkgconfig_check_libraries _config _contents_var _system_libs _system_packages _ignore_flags)
set(CMAKE_FIND_LIBRARY_SUFFIXES_BACKUP ${CMAKE_FIND_LIBRARY_SUFFIXES})
list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES ".lib;.dll.a;.a")
@@ -64,7 +64,7 @@ function(vcpkg_fixup_pkgconfig_check_libraries _config _contents_var _system_lib
string(REPLACE "-l" "" _system_lib "${_system_lib}")
list(APPEND _system_lib_normalized "${_system_lib}")
endforeach()
-
+
## Extra libraries:
string(REGEX MATCH "Libs:[^\n#]+" _libs "${_contents}")
#message(STATUS "LIB LINE: ${_libs}")
@@ -133,9 +133,9 @@ function(vcpkg_fixup_pkgconfig_check_libraries _config _contents_var _system_lib
endif()
else()
#handle special cases
- if(_lib STREQUAL "-pthread" OR _lib STREQUAL "-pthreads")
+ if(_lib STREQUAL "-pthread" OR _lib STREQUAL "-pthreads")
# Replace with VCPKG version?
- #VCPKG should probably rename one of the pthread versions to avoid linking against system pthread?
+ #VCPKG should probably rename one of the pthread versions to avoid linking against system pthread?
# set(PTHREAD_SUFFIX )
# if("${_config}" STREQUAL "DEBUG")
# file(GLOB PTHREAD_LIB "${CURRENT_INSTALLED_DIR}/debug/lib/${VCPKG_TARGET_STATIC_LIBRARY_PREFIX}pthread*C3d.*")
@@ -165,18 +165,18 @@ function(vcpkg_fixup_pkgconfig_check_libraries _config _contents_var _system_lib
string(REGEX REPLACE "[\t ]*,[\t ]*" ";" _pkg_private_list_tmp "${_pkg_private_list_tmp}")
string(REGEX REPLACE "[\t ]*(>|=)+[\t ]*([0-9]+|\\.)+" " " _pkg_private_list_tmp "${_pkg_private_list_tmp}")
string(REGEX REPLACE "[\t ]+" ";" _pkg_private_list_tmp "${_pkg_private_list_tmp}")
-
+
debug_message("Required packages: ${_pkg_list_tmp}")
debug_message("Required private packages: ${_pkg_private_list_tmp}")
-
+
#message(STATUS "System packages: ${_system_packages}")
foreach(_package ${_pkg_list_tmp} ${_pkg_private_list_tmp})
debug_message("Searching for package: ${_package}")
set(PKG_CHECK ON)
if(NOT "${_system_packages}" STREQUAL "")
- #message(STATUS "Checking ${_package} for SYSTEM PACKAGE: ${_system_packages}")
+ #message(STATUS "Checking ${_package} for SYSTEM PACKAGE: ${_system_packages}")
if("${_system_packages}" MATCHES "${_package}" )
- debug_message("Package ${_package} is SYSTEM PACKAGE!")
+ debug_message("Package ${_package} is SYSTEM PACKAGE!")
set(PKG_CHECK OFF)
endif()
endif()
@@ -193,7 +193,7 @@ endfunction()
function(vcpkg_fixup_pkgconfig)
cmake_parse_arguments(_vfpkg "" "" "RELEASE_FILES;DEBUG_FILES;SYSTEM_LIBRARIES;SYSTEM_PACKAGES;IGNORE_FLAGS" ${ARGN})
-
+
if(VCPKG_SYSTEM_LIBRARIES)
list(APPEND _vfpkg_SYSTEM_LIBRARIES ${VCPKG_SYSTEM_LIBRARIES})
endif()
@@ -206,16 +206,16 @@ function(vcpkg_fixup_pkgconfig)
file(GLOB_RECURSE _vfpkg_RELEASE_FILES "${CURRENT_PACKAGES_DIR}/**/*.pc")
list(FILTER _vfpkg_RELEASE_FILES EXCLUDE REGEX "${CURRENT_PACKAGES_DIR}/debug/")
endif()
-
+
if(NOT _vfpkg_DEBUG_FILES)
file(GLOB_RECURSE _vfpkg_DEBUG_FILES "${CURRENT_PACKAGES_DIR}/debug/**/*.pc")
list(FILTER _vfpkg_DEBUG_FILES INCLUDE REGEX "${CURRENT_PACKAGES_DIR}/debug/")
endif()
-
- #Absolute Unix like paths
+
+ #Absolute Unix like paths
string(REGEX REPLACE "([a-zA-Z]):/" "/\\1/" _VCPKG_PACKAGES_DIR "${CURRENT_PACKAGES_DIR}")
string(REGEX REPLACE "([a-zA-Z]):/" "/\\1/" _VCPKG_INSTALLED_DIR "${CURRENT_INSTALLED_DIR}")
-
+
message(STATUS "Fixing pkgconfig - release")
debug_message("Files: ${_vfpkg_RELEASE_FILES}")
foreach(_file ${_vfpkg_RELEASE_FILES})
@@ -235,7 +235,7 @@ function(vcpkg_fixup_pkgconfig)
file(WRITE "${_file}" "${_contents}")
unset(PKG_LIB_SEARCH_PATH)
endforeach()
-
+
message(STATUS "Fixing pkgconfig - debug")
debug_message("Files: ${_vfpkg_DEBUG_FILES}")
foreach(_file ${_vfpkg_DEBUG_FILES})
@@ -257,17 +257,17 @@ function(vcpkg_fixup_pkgconfig)
string(REPLACE "debug/lib" "lib" _contents "${_contents}") # the prefix will contain the debug keyword
string(REGEX REPLACE "^prefix=(\\\\)?\\\${prefix}(/debug)?" "prefix=\${pcfiledir}/${RELATIVE_PC_PATH}" _contents "${_contents}") # make pc file relocatable
- string(REPLACE "\${prefix}/debug" "\${prefix}" _contents "${_contents}") # replace remaining debug paths if they exist.
+ string(REPLACE "\${prefix}/debug" "\${prefix}" _contents "${_contents}") # replace remaining debug paths if they exist.
vcpkg_fixup_pkgconfig_check_libraries("DEBUG" _contents "${_vfpkg_SYSTEM_LIBRARIES}" "${_vfpkg_SYSTEM_PACKAGES}" "${_vfpkg_IGNORE_FLAGS}")
file(WRITE "${_file}" "${_contents}")
unset(PKG_LIB_SEARCH_PATH)
endforeach()
message(STATUS "Fixing pkgconfig --- finished")
-
- set(VCPKG_FIXUP_PKGCONFIG_CALLED TRUE CACHE INTERNAL "See below" FORCE)
- # Variable to check if this function has been called!
+
+ set(VCPKG_FIXUP_PKGCONFIG_CALLED TRUE CACHE INTERNAL "See below" FORCE)
+ # Variable to check if this function has been called!
# Theoreotically vcpkg could look for *.pc files and automatically call this function
- # or check if this function has been called if *.pc files are detected.
+ # or check if this function has been called if *.pc files are detected.
# The same is true for vcpkg_fixup_cmake_targets
endfunction()
diff --git a/scripts/cmake/vcpkg_install_msbuild.cmake b/scripts/cmake/vcpkg_install_msbuild.cmake
index 8fc0298e0..1a0d9513d 100644
--- a/scripts/cmake/vcpkg_install_msbuild.cmake
+++ b/scripts/cmake/vcpkg_install_msbuild.cmake
@@ -138,6 +138,7 @@ function(vcpkg_install_msbuild)
/p:WindowsTargetPlatformVersion=${_csc_TARGET_PLATFORM_VERSION}
/p:VcpkgTriplet=${TARGET_TRIPLET}
"/p:VcpkgCurrentInstalledDir=${CURRENT_INSTALLED_DIR}"
+ /p:VcpkgManifestInstall=false
/m
)
diff --git a/scripts/ports.cmake b/scripts/ports.cmake
index 8c7c71d34..f4ac28e6a 100644
--- a/scripts/ports.cmake
+++ b/scripts/ports.cmake
@@ -43,6 +43,9 @@ if(CMD MATCHES "^BUILD$")
if(NOT EXISTS ${CURRENT_PORT_DIR}/portfile.cmake)
message(FATAL_ERROR "Port is missing portfile: ${CURRENT_PORT_DIR}/portfile.cmake")
endif()
+ if(NOT EXISTS ${CURRENT_PORT_DIR}/CONTROL AND NOT EXISTS ${CURRENT_PORT_DIR}/vcpkg.json)
+ message(FATAL_ERROR "Port is missing control or manifest file: ${CURRENT_PORT_DIR}/{CONTROL,vcpkg.json}")
+ endif()
unset(PACKAGES_DIR)
unset(BUILDTREES_DIR)
@@ -77,33 +80,44 @@ if(CMD MATCHES "^BUILD$")
elseif(CMD MATCHES "^CREATE$")
file(TO_NATIVE_PATH ${VCPKG_ROOT_DIR} NATIVE_VCPKG_ROOT_DIR)
file(TO_NATIVE_PATH ${DOWNLOADS} NATIVE_DOWNLOADS)
- if(EXISTS ${VCPKG_ROOT_DIR}/ports/${PORT}/portfile.cmake)
- message(FATAL_ERROR "Portfile already exists: '${NATIVE_VCPKG_ROOT_DIR}\\ports\\${PORT}\\portfile.cmake'")
+ set(PORT_PATH "${VCPKG_ROOT_DIR}/ports/${PORT}")
+ file(TO_NATIVE_PATH ${PORT_PATH} NATIVE_PORT_PATH)
+ set(PORTFILE_PATH "${PORT_PATH}/portfile.cmake")
+ file(TO_NATIVE_PATH ${PORTFILE_PATH} NATIVE_PORTFILE_PATH)
+ set(MANIFEST_PATH "${PORT_PATH}/vcpkg.json")
+ file(TO_NATIVE_PATH ${MANIFEST_PATH} NATIVE_MANIFEST_PATH)
+
+ if(EXISTS "${PORTFILE_PATH}")
+ message(FATAL_ERROR "Portfile already exists: '${NATIVE_PORTFILE_PATH}'")
endif()
if(NOT FILENAME)
get_filename_component(FILENAME "${URL}" NAME)
endif()
string(REGEX REPLACE "(\\.(zip|gz|tar|tgz|bz2))+\$" "" ROOT_NAME ${FILENAME})
- if(EXISTS ${DOWNLOADS}/${FILENAME})
- message(STATUS "Using pre-downloaded: ${NATIVE_DOWNLOADS}\\${FILENAME}")
- message(STATUS "If this is not desired, delete the file and ${NATIVE_VCPKG_ROOT_DIR}\\ports\\${PORT}")
+
+ set(DOWNLOAD_PATH "${DOWNLOADS}/${FILENAME}")
+ file(TO_NATIVE_PATH ${DOWNLOAD_PATH} NATIVE_DOWNLOAD_PATH)
+
+ if(EXISTS "${DOWNLOAD_PATH}")
+ message(STATUS "Using pre-downloaded: ${NATIVE_DOWNLOAD_PATH}")
+ message(STATUS "If this is not desired, delete the file and ${NATIVE_PORT_PATH}")
else()
include(vcpkg_download_distfile)
- set(_VCPKG_INTERNAL_NO_HASH_CHECK "TRUE")
+ set(_VCPKG_INTERNAL_NO_HASH_CHECK ON)
vcpkg_download_distfile(ARCHIVE
URLS ${URL}
FILENAME ${FILENAME}
)
- set(_VCPKG_INTERNAL_NO_HASH_CHECK "FALSE")
+ set(_VCPKG_INTERNAL_NO_HASH_CHECK OFF)
endif()
- file(SHA512 ${DOWNLOADS}/${FILENAME} SHA512)
+ file(SHA512 ${DOWNLOAD_PATH} SHA512)
- file(MAKE_DIRECTORY ${VCPKG_ROOT_DIR}/ports/${PORT})
- configure_file(${SCRIPTS}/templates/portfile.in.cmake ${VCPKG_ROOT_DIR}/ports/${PORT}/portfile.cmake @ONLY)
- configure_file(${SCRIPTS}/templates/CONTROL.in ${VCPKG_ROOT_DIR}/ports/${PORT}/CONTROL @ONLY)
+ file(MAKE_DIRECTORY ${PORT_PATH})
+ configure_file(${SCRIPTS}/templates/portfile.in.cmake ${PORTFILE_PATH} @ONLY)
+ configure_file(${SCRIPTS}/templates/vcpkg.json.in ${MANIFEST_PATH} @ONLY)
- message(STATUS "Generated portfile: ${NATIVE_VCPKG_ROOT_DIR}\\ports\\${PORT}\\portfile.cmake")
- message(STATUS "Generated CONTROL: ${NATIVE_VCPKG_ROOT_DIR}\\ports\\${PORT}\\CONTROL")
+ message(STATUS "Generated portfile: ${NATIVE_PORTFILE_PATH}")
+ message(STATUS "Generated manifest: ${NATIVE_MANIFEST_PATH}")
message(STATUS "To launch an editor for these new files, run")
message(STATUS " .\\vcpkg edit ${PORT}")
endif()
diff --git a/scripts/templates/CONTROL.in b/scripts/templates/CONTROL.in
deleted file mode 100644
index 77f287e0a..000000000
--- a/scripts/templates/CONTROL.in
+++ /dev/null
@@ -1,10 +0,0 @@
-Source: @PORT@
-Version:
-Homepage:
-Description:
-Build-Depends:
-Default-Features:
-
-Feature:
-Description:
-Build-Depends: \ No newline at end of file
diff --git a/scripts/templates/vcpkg.json.in b/scripts/templates/vcpkg.json.in
new file mode 100644
index 000000000..2e217387e
--- /dev/null
+++ b/scripts/templates/vcpkg.json.in
@@ -0,0 +1,16 @@
+{
+ "name": "@PORT@",
+ "version-string": "",
+ "homepage": "",
+ "description": "",
+ "dependencies": [],
+
+ "default-features": [],
+ "features": [
+ {
+ "name": "",
+ "description": "",
+ "dependencies": []
+ }
+ ]
+}