Skip to content

Commit 930726c

Browse files
authored
Added links to relevant external documentation
Modified a few property descriptions to be more verbose and included links to relevant external documentation (CMake, vcpkg, rsync).
1 parent 1a6fe60 commit 930726c

1 file changed

Lines changed: 13 additions & 13 deletions

File tree

docs/build/customize-cmake-settings.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ Now you see the **Settings Editor** with the installed configurations on the lef
1717

1818
![CMake settings editor](media/cmake-settings-editor.png)
1919

20-
Visual Studio provides two configurations by default: `x64-Debug` and `x86-Debug`. You can add additional configurations by clicking the green plus sign.The settings that you see in the editor might vary depending on which configuration is selected.
20+
Visual Studio provides one `x64-Debug` configuration by default. You can add additional configurations by clicking the green plus sign.The settings that you see in the editor might vary depending on which configuration is selected.
2121

2222
The options that you choose in the editor are written to a file called CMakeSettings.json. This file provides command-line arguments and environment variables that are passed to CMake when you build the projects. Visual Studio never modifies CMakeLists.txt automatically; by using CMakeSettings.json you can customize the build through Visual Studio while leaving the CMake project files untouched so that others on your team can consume them with whatever tools they are using.
2323

@@ -32,27 +32,27 @@ Corresponds to the **name** setting. This is the name that appears in the C++ co
3232

3333
### Configuration type
3434

35-
Corresponds to the **configurationType** setting. Defines the build configuration type for the selected generator. Currently supported values are "Debug", "MinSizeRel", "Release", and "RelWithDebInfo".
35+
Corresponds to the **configurationType** setting. Defines the build configuration type for the selected generator. Currently supported values are "Debug", "MinSizeRel", "Release", and "RelWithDebInfo". This maps to [CMAKE_BUILD_TYPE](https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html).
3636

3737
### Toolset
3838

3939
Corresponds to the **inheritedEnvironments** setting. Defines the compiler environment that will be used to build the selected configuration. Supported values depend on the type of configuration. To create a custom environment, click the **Edit JSON** link in the upper right corner of the Settings editor and edit the CMakeSettings.json file directly.
4040

4141
### CMake toolchain file
4242

43-
Path to the CMake toolchain file. Will be passed to CMake as "-DCMAKE_TOOLCHAIN_FILE = \<filepath>".
43+
Path to the [CMake toolchain file](https://cmake.org/cmake/help/latest/variable/CMAKE_TOOLCHAIN_FILE.html). Will be passed to CMake as "-DCMAKE_TOOLCHAIN_FILE = \<filepath>". Toolchain files specify locations of compilers and toolchain utilities, and other target platform and compiler related information. By default, Visual Studio will try and use the [vcpkg toolchain file](https://github.com/microsoft/vcpkg/blob/master/docs/examples/installing-and-using-packages.md#cmake) if this setting is unspecified.
4444

4545
### Build root
4646

47-
Corresponds to **buildRoot**. Maps to **-DCMAKE_BINARY_DIR** switch and specifies where the CMake cache will be created. If the folder does not exist, it is created.
47+
Corresponds to **buildRoot**. Maps to [CMAKE_BINARY_DIR](https://cmake.org/cmake/help/v3.15/variable/CMAKE_BINARY_DIR.html) and specifies where the CMake cache will be created. The specified folder will be created if it does not exist.
4848

4949
## Command arguments
5050

5151
The following settings are available under the **Command arguments** heading:
5252

5353
### CMake command arguments
5454

55-
Corresponds to **cmakeCommandArgs**. Specifies any additional switches you want to pass to CMake.exe.
55+
Corresponds to **cmakeCommandArgs**. Specifies any additional [command line options](https://cmake.org/cmake/help/latest/manual/cmake.1.html) passed to CMake.exe.
5656

5757
### Build command arguments
5858

@@ -61,15 +61,15 @@ Corresponds to **buildCommandArgs**: specifies additional switches to pass to th
6161

6262
### CTest command arguments
6363

64-
Corresponds to**ctestCommandArgs**: specifies additional switches to pass to CTest when running tests.
64+
Corresponds to **ctestCommandArgs**: specifies additional [command line options](https://cmake.org/cmake/help/v3.15/manual/ctest.1.html) to pass to CTest when running tests.
6565

6666
## General settings for remote builds
6767

6868
For configurations such as Linux that use remote builds, the following settings are also available:
6969

7070
### rsync command arguments
7171

72-
Provide any command arguments to be passed to rsync.
72+
Additional command line options passed to [rsync](https://download.samba.org/pub/rsync/rsync.html), a fast and versatile file-copying tool.
7373

7474
## CMake variables and cache
7575

@@ -81,7 +81,7 @@ Corresponds to **variables**: contains a name-value pair of CMake variables that
8181

8282
### CMake generator
8383

84-
Corresponds to **generator**: maps to the CMake **-G** switch and specifies the generator to be used. This property can also be used as a macro, `${generator}`, when composing other property values. Visual Studio currently supports the following CMake generators:
84+
Corresponds to **generator**: maps to the CMake **-G** switch and specifies the [CMake generator](https://cmake.org/cmake/help/latest/manual/cmake-generators.7.html) to be used. This property can also be used as a macro, `${generator}`, when composing other property values. Visual Studio currently supports the following CMake generators:
8585

8686
- "Ninja"
8787
- "Unix Makefiles"
@@ -95,19 +95,19 @@ Corresponds to **generator**: maps to the CMake **-G** switch and specifies the
9595
- "Visual Studio 14 2015 Win64"
9696
- "Visual Studio 14 2015 ARM"
9797

98-
Because Ninja is designed for fast build speeds instead of flexibility and function, it is set as the default. However, some CMake projects may be unable to correctly build using Ninja. If this occurs, you can instruct CMake to generate a Visual Studio project instead.
98+
Because Ninja is designed for fast build speeds instead of flexibility and function, it is set as the default. However, some CMake projects may be unable to correctly build using Ninja. If this occurs, you can instruct CMake to generate a Visual Studio project instead.
9999

100100
### IntelliSense mode
101101

102-
For accurate IntelliSense, set this to the appropriate value for your project.
102+
The IntelliSense mode used by the IntelliSense engine. If no mode is selected then Visual Studio will inherit from the specified toolset.
103103

104104
### Install directory
105105

106-
The directory in which CMake installs the targets that it builds.
106+
The directory in which CMake installs targets. Maps to [CMAKE_INSTALL_PREFIX](https://cmake.org/cmake/help/latest/variable/CMAKE_INSTALL_PREFIX.html).
107107

108108
### CMake executable
109109

110-
The full path to the CMake executable, including file name and extension. For remote builds, specify the CMake location on the remote machine.
110+
The full path to the CMake program executable, including the file name and extension. This allows you to use a custom version of CMake with Visual Studio. For remote builds, specify the CMake location on the remote machine.
111111

112112
For configurations such as Linux that use remote builds, the following settings are also available:
113113

@@ -117,7 +117,7 @@ The directory on the remote machine that contains the root CMakeLists.txt file.
117117

118118
### Remote install root
119119

120-
The directory on the remote machine in which CMake installs targets.
120+
The directory on the remote machine in which CMake installs targets. Maps to [CMAKE_INSTALL_PREFIX](https://cmake.org/cmake/help/latest/variable/CMAKE_INSTALL_PREFIX.html).
121121

122122
### Remote copy sources
123123

0 commit comments

Comments
 (0)