vcpkg/ports/vcpkg-cmake/vcpkg_cmake_install.cmake
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

47 lines
1.1 KiB
CMake

#[===[.md:
# vcpkg_cmake_install
Build and install a cmake project.
```cmake
vcpkg_cmake_install(
[DISABLE_PARALLEL]
[ADD_BIN_TO_PATH]
)
```
`vcpkg_cmake_install` transparently forwards to [`vcpkg_cmake_build()`],
with additional parameters to set the `TARGET` to `install`,
and to set the `LOGFILE_ROOT` to `install` as well.
[`vcpkg_cmake_build()`]: vcpkg_cmake_build.md
## Examples:
* [zlib](https://github.com/Microsoft/vcpkg/blob/master/ports/zlib/portfile.cmake)
#]===]
if(Z_VCPKG_CMAKE_INSTALL_GUARD)
return()
endif()
set(Z_VCPKG_CMAKE_INSTALL_GUARD ON CACHE INTERNAL "guard variable")
function(vcpkg_cmake_install)
cmake_parse_arguments(PARSE_ARGV 0 "arg" "DISABLE_PARALLEL;ADD_BIN_TO_PATH" "" "")
if(DEFINED arg_UNPARSED_ARGUMENTS)
message(FATAL_ERROR "vcpkg_cmake_install was passed extra arguments: ${arg_UNPARSED_ARGUMENTS}")
endif()
set(args)
foreach(arg IN ITEMS DISABLE_PARALLEL ADD_BIN_TO_PATH)
if(arg_${arg})
list(APPEND args "${arg}")
endif()
endforeach()
vcpkg_cmake_build(
${args}
LOGFILE_BASE install
TARGET install
)
endfunction()