vcpkg_install_msbuild

警告

此函数已弃用,替换为 vcpkg_msbuild_install

生成并安装基于 MSBuild 的项目。 这会替换 vcpkg_build_msbuild()

使用情况

vcpkg_install_msbuild(
    SOURCE_PATH <${SOURCE_PATH}>
    PROJECT_SUBPATH <port.sln>
    [INCLUDES_SUBPATH <include>]
    [LICENSE_SUBPATH <LICENSE>]
    [RELEASE_CONFIGURATION <Release>]
    [DEBUG_CONFIGURATION <Debug>]
    [TARGET <Build>]
    [TARGET_PLATFORM_VERSION <10.0.15063.0>]
    [PLATFORM <Win32>]
    [PLATFORM_TOOLSET <v143>]
    [OPTIONS </p:ZLIB_INCLUDE_PATH=X>...]
    [OPTIONS_RELEASE </p:ZLIB_LIB=X>...]
    [OPTIONS_DEBUG </p:ZLIB_LIB=X>...]
    [USE_VCPKG_INTEGRATION]
    [ALLOW_ROOT_INCLUDES | REMOVE_ROOT_INCLUDES]
)

参数

SOURCE_PATH

源树根的路径。

由于 MSBuild 使用源内部版本,因此源树将复制到生成的临时位置。 此参数是该副本的基础,并构成所有 XYZ_SUBPATH 选项的基础。

USE_VCPKG_INTEGRATION

应用常规 integrate install 集成以生成项目。

默认情况下,使用此命令生成的项目不会自动链接库或设置标头路径。

PROJECT_SUBPATH

解决方案 (.sln) 的子路径或相对于 SOURCE_PATH 的 项目 (.vcxproj) 文件。

LICENSE_SUBPATH

许可证文件相对于 SOURCE_PATH 的子路径。

INCLUDES_SUBPATH

相对于 SOURCE_PATH 的包含目录的子路径。

此参数应为目录,不应以斜杠结尾。

ALLOW_ROOT_INCLUDES

指示应允许顶级包含文件(例如 include/zlib.h)。

REMOVE_ROOT_INCLUDES

指示应删除顶级包含文件(例如 include/Makefile.am)。

SKIP_CLEAN

指示不应删除中间文件。

使用此选项的端口应稍后调用 vcpkg_clean_msbuild() 以手动清理。

RELEASE_CONFIGURATION

供发布版本使用的配置(/p:Configuration MSBuild 参数)。

DEBUG_CONFIGURATION

供调试版本使用的配置(/p:Configuration MSBuild 参数)。

TARGET_PLATFORM_VERSION

WindowsTargetPlatformVersion(/p:WindowsTargetPlatformVersion MSBuild 参数)。

TARGET

要生成的 MSBuild 目标 (/t:<TARGET>)。

PLATFORM

供生成使用的平台(/p:Platform MSBuild 参数)。

创建 .vcxproj 时,默认值映射 VCPKG_TARGET_ARCHITECTURE 到 Visual Studio 使用的默认值:

  • x86 变为 Win32
  • x64 变为 x64
  • arm 变为 ARM
  • arm64 变为 arm64

传递 .sln 而不是 .vcxproj 时,可能需要将其设置回 ${VCPKG_TARGET_ARCHITECTURE} 以匹配解决方案使用的平台字符串。

PLATFORM_TOOLSET

供生成使用的平台工具集(/p:PlatformToolset MSBuild 参数)。

OPTIONS

传递给所有版本的 MSBuild 的其他选项。

OPTIONS_RELEASE

传递给发布版本的 MSBuild 的其他选项。 这些是对 OPTIONS 的补充。

OPTIONS_DEBUG

传递给调试版本的 MSBuild 的其他选项。 这些是对 OPTIONS 的补充。

Source

scripts/cmake/vcpkg_install_msbuild.cmake