From b90dbbc928d5880de690392f431d12321b337481 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 7 Jun 2017 17:08:13 -0700 Subject: [vcpkg-docs] Document how to change the deduced triplet for cmake and msbuild. Fixes #1185. --- docs/users/integration.md | 38 +++++++++++++++++++++++++++++++++++++- docs/users/triplets.md | 2 ++ 2 files changed, 39 insertions(+), 1 deletion(-) (limited to 'docs') diff --git a/docs/users/integration.md b/docs/users/integration.md index 38332f1aa..1e52adb88 100644 --- a/docs/users/integration.md +++ b/docs/users/integration.md @@ -5,11 +5,14 @@ Vcpkg offers many ways to integrate into your build so you can do what's right f - [`integrate` command](#integrate) - [`export` command](#export) +Each integration style has heuristics to deduce the correct [triplet][]. This can be overridden using [a common method](#triplet-selection) based on your buildsystem. + ### Integrate Command These link your project(s) to a specific copy of Vcpkg on your machine so any updates or new package installations will be instantly available for the next build of your project. + #### User-wide for MSBuild (Recommended for Open Source MSBuild projects) ```no-highlight vcpkg integrate install @@ -82,4 +85,37 @@ Each of these have the same layout, which mimics the layout of a full vcpkg: Additionally, NuGet packages will contain a `build\native\vcpkg.targets` that integrates with MSBuild projects. -Please also see our [blog post](https://blogs.msdn.microsoft.com/vcblog/2017/05/03/vcpkg-introducing-export-command/) for additional examples. \ No newline at end of file +Please also see our [blog post](https://blogs.msdn.microsoft.com/vcblog/2017/05/03/vcpkg-introducing-export-command/) for additional examples. + + +### Triplet selection +Every integration mechanism besides manually adding the folders will deduce a [triplet][] for your project as one of: +- x86-windows +- x64-windows +- x86-uwp +- x64-uwp +- arm-uwp + +#### With MSBuild +You can see the automatically deduced triplet by setting your MSBuild verbosity to Normal or higher: + +> *Shortcut: Ctrl+Q "build and run"* +> +> Tools -> Options -> Projects and Solutions -> Build and Run -> MSBuild project build output verbosity + +To override the automatically chosen [triplet][], you can specify the MSBuild property `VcpkgTriplet` in your `.vcxproj`. We recommend adding this to the `Globals` PropertyGroup. +```xml + + + x86-windows-static + x64-windows-static + +``` + +#### With CMake +Simply set `VCPKG_TARGET_TRIPLET` on the configure line. +```no-highlight +cmake ../my/project -DVCPKG_TARGET_TRIPLET=x64-windows-static -DCMAKE_TOOLCHAIN_FILE=... +``` + +[triplet]: triplets.md diff --git a/docs/users/triplets.md b/docs/users/triplets.md index 2b0971da3..06f77e63f 100644 --- a/docs/users/triplets.md +++ b/docs/users/triplets.md @@ -6,6 +6,8 @@ In Vcpkg, we use triplets to describe self-consistent builds of library sets. Th We currently provide many triplets by default (run `vcpkg help triplet`). However, you can easily add your own by creating a new file in the `triplets\` directory. The new triplet will immediately be available for use in commands, such as `vcpkg install boost:x86-windows-custom`. +To change the triplet used by your project, such as to enable static linking, see our [Integration Document](integration.md#triplet-selection). + ## Variables ### VCPKG_TARGET_ARCHITECTURE Specifies the target machine architecture. -- cgit v1.2.3