mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-04 11:29:00 +08:00
a3a6530631
* [vcpkg_check_features] Set OUT_EXPAND_OPTIONS explicitly * [vcpkg_check_features] Allow reverse logic for features * [vcpkg_check_features] Document new parameters * [vcpkg_check_features] Remove unnecessary logging * Do not create variables for each feature only set OUT_FEATURE_OPTIONS * Improve documentation * Update ports that use vcpkg_check_features() * Missing documentation updates * [pcl] Fix tools feature * [opencv,opencv4] Fix usage of vcpkg_check_features() * [opencv4] Fix typo
64 lines
2.2 KiB
Markdown
64 lines
2.2 KiB
Markdown
# vcpkg_configure_cmake
|
|
|
|
Configure CMake for Debug and Release builds of a project.
|
|
|
|
## Usage
|
|
```cmake
|
|
vcpkg_configure_cmake(
|
|
SOURCE_PATH <${SOURCE_PATH}>
|
|
[PREFER_NINJA]
|
|
[DISABLE_PARALLEL_CONFIGURE]
|
|
[NO_CHARSET_FLAG]
|
|
[GENERATOR <"NMake Makefiles">]
|
|
[OPTIONS <-DUSE_THIS_IN_ALL_BUILDS=1>...]
|
|
[OPTIONS_RELEASE <-DOPTIMIZE=1>...]
|
|
[OPTIONS_DEBUG <-DDEBUGGABLE=1>...]
|
|
)
|
|
```
|
|
|
|
## Parameters
|
|
### SOURCE_PATH
|
|
Specifies the directory containing the `CMakeLists.txt`.
|
|
By convention, this is usually set in the portfile as the variable `SOURCE_PATH`.
|
|
|
|
### PREFER_NINJA
|
|
Indicates that, when available, Vcpkg should use Ninja to perform the build.
|
|
This should be specified unless the port is known to not work under Ninja.
|
|
|
|
### DISABLE_PARALLEL_CONFIGURE
|
|
Disables running the CMake configure step in parallel.
|
|
This is needed for libraries which write back into their source directory during configure.
|
|
|
|
### NO_CHARSET_FLAG
|
|
Disables passing `utf-8` as the default character set to `CMAKE_C_FLAGS` and `CMAKE_CXX_FLAGS`.
|
|
|
|
This is needed for libraries that set their own source code's character set.
|
|
|
|
### GENERATOR
|
|
Specifies the precise generator to use.
|
|
|
|
This is useful if some project-specific buildsystem has been wrapped in a cmake script that won't perform an actual build.
|
|
If used for this purpose, it should be set to "NMake Makefiles".
|
|
|
|
### OPTIONS
|
|
Additional options passed to CMake during the configuration.
|
|
|
|
### OPTIONS_RELEASE
|
|
Additional options passed to CMake during the Release configuration. These are in addition to `OPTIONS`.
|
|
|
|
### OPTIONS_DEBUG
|
|
Additional options passed to CMake during the Debug configuration. These are in addition to `OPTIONS`.
|
|
|
|
## Notes
|
|
This command supplies many common arguments to CMake. To see the full list, examine the source.
|
|
|
|
## Examples
|
|
|
|
* [zlib](https://github.com/Microsoft/vcpkg/blob/master/ports/zlib/portfile.cmake)
|
|
* [cpprestsdk](https://github.com/Microsoft/vcpkg/blob/master/ports/cpprestsdk/portfile.cmake)
|
|
* [poco](https://github.com/Microsoft/vcpkg/blob/master/ports/poco/portfile.cmake)
|
|
* [opencv](https://github.com/Microsoft/vcpkg/blob/master/ports/opencv/portfile.cmake)
|
|
|
|
## Source
|
|
[scripts/cmake/vcpkg_configure_cmake.cmake](https://github.com/Microsoft/vcpkg/blob/master/scripts/cmake/vcpkg_configure_cmake.cmake)
|