vcpkg/docs/maintainers/ports/vcpkg-cmake/vcpkg_cmake_build.md
Kai Pastor dd42206f86
[vcpkg-cmake] Remove cmake generator support restrictions (#22626)
* Stop failing in build step on unknown generators

CMake already completed configuration using the given generator.

* Support parallel build with Unix Makefiles

* Documentation fixes for vcpkg_cmake port

* `vcpkg_cmake_configure`: links to `opencv4` as example instead of
  `opencv` which is an empty port
* `vcpkg_cmake_install`: fix link to `vcpkg_cmake_build`'s docs
* `vcpkg_cmake_build`: fix link to `vcpkg_cmake_install`'s docs

* Extra script audit

* Update versions

* Regenerate docs

* [vcpkg-cmake] support Xcode parallel build

* no/parallel_args when CMake Generator is  "Xcode"

* Update versions

* CI

Co-authored-by: Martin Hořeňovský <martin.horenovsky@gmail.com>
Co-authored-by: luncliff <dong-ha-park@linecorp.com>
2022-01-28 11:30:37 -08:00

1.5 KiB

vcpkg_cmake_build

The latest version of this document lives in the vcpkg repo.

Build a cmake project.

vcpkg_cmake_build(
    [TARGET <target>]
    [LOGFILE_BASE <base>]
    [DISABLE_PARALLEL]
    [ADD_BIN_TO_PATH]
)

vcpkg_cmake_build builds an already-configured cmake project. You can use the alias vcpkg_cmake_install() function if your CMake build system supports the install TARGET, and this is something we recommend doing whenever possible. Otherwise, you can use TARGET to set the target to build. This function defaults to not passing a target to cmake.

LOGFILE_BASE is used to set the base of the logfile names; by default, this is build, and thus the logfiles end up being something like build-x86-windows-dbg.log; if you use vcpkg_cmake_install, this is set to install, so you'll get log names like install-x86-windows-dbg.log.

For build systems that are buggy when run in parallel, using DISABLE_PARALLEL will run the build with only one job.

Finally, ADD_BIN_TO_PATH adds the appropriate (either release or debug) bin/ directories to the path during the build, such that executables run during the build will be able to access those DLLs.

Source

ports/vcpkg-cmake/vcpkg_cmake_build.cmake