vcpkg/docs/maintainers/vcpkg_configure_cmake.md
Victor Romero a3a6530631
[vcpkg_check_features] Set output variable explicitly and allow reverse-logic check (#7558)
* [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
2019-08-13 20:13:55 -07:00

2.2 KiB

vcpkg_configure_cmake

Configure CMake for Debug and Release builds of a project.

Usage

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

Source

scripts/cmake/vcpkg_configure_cmake.cmake