Commit Graph

161 Commits

Author SHA1 Message Date
Kai Pastor
5402d24c77
Trace wrappers (#28161) 2022-12-08 15:55:26 -08:00
Kai Pastor
73b415a0db
[vcpkg tool] Add optional tracing of find_package (#27982)
* Add tracing of find_package

* Doc

* Unset new vars
2022-12-01 13:39:31 -08:00
Alexander Neumann
c2c25d916f
[baseline] unset the backup var and not the var which was backed up. (#27984)
* unset the backup var and not the var which was backed up.

* if no backup unset the vcpkg set var
2022-11-23 16:04:20 -08:00
Alexander Neumann
347992dda1
[vcpkg.cmake] guard numbers against variable expansions by making them strings (#27939)
* guard numbers against variable expansions by making them strings

* missed two
2022-11-22 08:51:34 -08:00
Glen Chung
2d6279beda
Improve Target Architecture Detection on ARM64 Windows (#27479)
- Fixes #27477

Co-authored-by: Cheney Wang (Beyondsoft Corporation) <v-xincwa@microsoft.com>
2022-11-17 22:48:47 -08:00
Alexander Neumann
90b616f184
[vcpkg.cmake] fix find_package not restoring variables correctly. (#27689)
* [vcpkg.cmake] fix find_package not restoring variables correctly.

* bit of formatting

* wording

* remove unused variable

* add extra spaces

* remove OUTPUT_FORMAT DECIMAL for older cmake version

Co-authored-by: Billy O'Neal <bion@microsoft.com>
2022-11-16 09:56:08 -08:00
Frederik Gladhorn
8f06ea42d9
Find Python interpreter to used for scripts/buildsystems/osx/applocal.py (#27179)
The deployment script works with Python 2 and 3. On modern macOS machines
Python 2 may not be available. Find either version and use it.

Co-authored-by: Lily Wang <494550702@qq.com>
2022-10-14 16:32:33 -07:00
Joshua T. Fisher
a71c7421e2
Add elseifs to attempt to see if cmake has selected to target arm64. (#26878) 2022-09-27 15:49:44 -07:00
Kai Pastor
02fcf92f48
Deprecated VCPKG_PREFER_SYSTEM_LIBS (#26449) 2022-08-23 12:07:33 -07:00
Billy O'Neal
ae76307e4b
Audit use of TO_NATIVE_PATH. (#26201)
* Audit use of TO_NATIVE_PATH.

TO_NATIVE_PATH should only be used when (1) pasting a path into a command line, or (2) displaying a path to a user. It must not be used before calling other CMake operations like file(WRITE.

Fixes https://github.com/microsoft/vcpkg/issues/26178

ports/ffmpeg/portfile.cmake:
Both uses are being embedded into a command line 

ports/gdal/dependency_win.cmake
117: This used TO_NATIVE_PATH but didn't actually connect the result. It's going on a command line so TO_NATIVE_PATH is appropriate.
Drive by: Added quotes around other uses (all of which seem to be going to command lines).
202: ${EXPAT_LIBRARY_REL} ${ZLIB_LIBRARY_REL} don't seem to be set even though they are used; I think this is wrong but I don't know for sure that it is so I'm leaving it alone for now.

ports/msmpi/portfile.cmake
All 3 uses are being embedded into a command line 

ports/jemalloc/fix-utilities.patch
ports/libproxy/fix-dependency-libmodman.patch
ports/qtbase/env.patch
These are in upstream content / context so it is not edited.

ports/opengl/portfile.cmake
Broken! Drive by fixes:
* Modernized checking VCPKG_BUILD_TYPE
* Ordered things consistently to be release then debug.
* Removed funny newlines.

ports/openni2/portfile.cmake
Borderline OK; it goes into an MSBuild / vcxproj. I'm leaving it alone. Drive by fixes:
* Guarded debug-only copies for VCPKG_BUILD_TYPE
* Fixed supports expression

ports/openssl/unix/CMakeLists.txt:
Unused!

ports/pthreads/portfile.cmake:
Both uses are being embedded into a command line 

ports/qt5-base/cmake/qt_fix_makefile_install.cmake
I'm not sure if this one is OK but it's being embedded into a file so it's probably fine.

ports/qtapplicationmanager/portfile.cmake:
I'm pretty sure this one is wrong, but it's guarded by VCPKG_TARGET_IS_WINDOWS so the ability to create damage is limited.

ports/readosm/portfile.cmake:
The use is being embedded into a command line 

ports/spatialite-tools/portfile.cmake:
The use is being embedded into a command line 

ports/sqlcipher/portfile.cmake:
Both uses are being embedded into a command line 

scripts/ports.cmake:
Some uses were unused, others are immediately used and printed to the console. 

scripts/buildsystems/vcpkg.cmake:
Fixed :)

scripts/cmake/vcpkg_build_qmake:
Looks unused.

scripts/cmake/vcpkg_build_process.cmake:
Added to console message only. 

scripts/cmake/vcpkg_execute_required_process_repeat.cmake:
Added to console message only. 
Drive by: Fixed typo in variable name in the message.

scripts/cmake/vcpkg_execute_required_process.cmake:
Added to console message only. 

* Fix missing license.
2022-08-12 15:21:20 -07:00
SunBlack
6a66e95caa
[vcpkg.cmake][ports.cmake] Prefer STREQUAL over MATCHES (#23014)
Co-authored-by: Heiko Thiel <heiko.thiel@hpi.de>
2022-05-24 12:11:39 -07:00
Leonid Pospelov
4b766c1cd1
Update vcpkg.cmake (#24479) 2022-05-04 19:37:37 -07:00
Jack·Boos·Yu
f30786c9c4
[vcpkg toolchain] Fix paths with special characters (#24463)
* [vcpkg toolchain] Fix paths with special characters

* fix

* Use VERBATIM instead of double quotes
2022-05-02 11:56:24 -07:00
Alexander Neumann
16ebf7b9b8
[vcpkg.cmake] don't clobber cmake program path (#23755)
* more filtering of tool paths.

* test it in CI

* only use tools/* and tools/*/bin

* debugging

* test removal of tools/* if tools/*/bin is available

* fix variable naming

* cleanup

* revert ports/qtdeclarative/portfile.cmake
2022-03-29 17:12:24 -07:00
Kai Pastor
7310241d5d
[vcpk-ci] Trigger some test ports from vcpkg.cmake changes (#23430)
* Trigger some test ports from vcpkg.cmake changes

* Bump test port version

* Revert "Bump test port version"

* Use old toolchain version for parent hashes

* Add ABI hashing note to vcpkg.cmake

* Test vcpkg.cmake with cmake instead vpckg-ci-paraview
2022-03-23 16:16:17 -07:00
Stefano Sinigardi
5a7640f6a2
[github_actions] improve port compatibility (#23202)
* use vcpkg provided libs before system frameworks on macOS, remove now unnecessary mod to giflib

* fix references

* fixes from review

* apply fixes from review - remove warnings too!

* [giflib] add license

* fix references

Co-authored-by: Victor Romero <viromer@microsoft.com>
2022-03-15 13:21:32 -07:00
Kai Pastor
c8baa4708a
[vcpkg baseline][vcpkg toolchain] Fix toolchain usage with CMake <= 3.19 (#23410)
* Fix toolchain usage with CMake <= 3.19

* Add quotes

* Merge Neumann-A:fix_tools_selection into dg0yt:cmake-3.19-quirk

Co-authored-by: JackBoosY <yuzaiyang@beyondsoft.com>
2022-03-07 11:01:14 -08:00
Alexander Neumann
bd602277bf
[vcpkg.cmake] Setup CMAKE_PROGRAM_PATH for the host if possible (#23322)
* Use host tools by default.

* use GLOB_RECURSE and filter the result

* be positiv ;)

* give me debug output

* Revert "give me debug output"

This reverts commit 17737bceda.

* remove unnecessary if(IS_DIRECTORY)

Co-authored-by: Alexander Neumann <you@example.com>
2022-03-04 14:16:47 -08:00
Robert Schumacher
5cf60186a2
[vcpkg.cmake] Partially revert #23134 (#23176) 2022-02-18 15:48:45 -08:00
Billy O'Neal
805811e16a
Change minimum CMake version to 3.7.2. (#23134)
* Change minimum CMake version to 3.7.2.

This moves our oldest supported Linux back up to today minus 5 years, Debian 9 from 2017 comes with 3.7.2.

* Enable more policies.
2022-02-17 10:46:49 -08:00
Alexander Neumann
18e6e8855d
[vcpkg.cmake] remove timestamp file (#20549)
* [vcpkg.cmake] move timestamp file into binary dir. Otherwise CMake errors on reconfigure if _VCPKG_INSTALLED_DIR is a subdir of CMAKE_SOURCE_DIR and not within CMAKE_BINARY_DIR if in source changes are forbidden

* remove the cmakestamp.
2022-02-15 23:13:59 -08:00
Kai Pastor
912bfa9d88
[vcpkg] Fix termination of vcpkg root search (#22694)
* Fix termination of vpckg root search

* Apply CR suggestion

Co-authored-by: Vadim Peretokin <vperetokin@hey.com>

Co-authored-by: Vadim Peretokin <vperetokin@hey.com>
2022-01-31 11:18:22 -08:00
Long Nguyen
193880f0a8
[vcpkg.cmake] Add default triplet for mingw compilers (#19020) 2021-10-12 11:30:40 -07:00
Phoebe
c592209c5f
[vcpkg_cmake_configure/vcpkg_configure_cmake] Support VS2022 17.0 (#19088)
* [vcpkg] Support VS2022 17.0

* small changes

* Update vcpkg.cmake

* Update the baseline version

* Update the baseline version

* Update the baselin version

* Adress the review suggestions

Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
2021-09-13 20:10:12 -07:00
David Chisnall
ad42c88e51
The FreeBSD spelling of x86-64 is amd64. (#19456)
CMAKE_HOST_SYSTEM_PROCESSOR is set to amd64 on x86-64 FreeBSD systems.
CMake's STREQUAL gives a case-sensitive comparison so this case was
missed during bootstrapping when using vcpkg as a submodule.
2021-08-11 19:25:56 -07:00
nicole mazzuca
5304f826b5
[rollup] 2021-07-26 (#19157)
* [rollup:2021-07-26 1/6] PR #18783 (@strega-nil)

[scripts-audit] vcpkg_copy_tools and friends

* [rollup:2021-07-26 2/6] PR #18898 (@dg0yt)

[vcpkg] Fix toolchain compatibility with cmake < 3.15

* [rollup:2021-07-26 3/6] PR #18980 (@strega-nil)

[cmake-guidelines] Minor update, for `if()`

* [rollup:2021-07-26 4/6] PR #18981 (@strega-nil)

[scripts-audit] vcpkg_check_linkage

* [rollup:2021-07-26 5/6] PR #19158 (@Hoikas)

[vcpkg.cmake] Fix variable case.

* [rollup:2021-07-26 6/6] PR #18839

[scripts-audit] z_vcpkg_get_cmake_vars

Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
2021-07-29 09:47:35 -07:00
nicole mazzuca
0e1dc12185
[rollup] Rollup PR 2021-07-16 (#19001)
* [rollup:2021-07-16 1/7] PR #18201 (@JackBoosY)

[vcpkg-cmake] Add check for unused cmake variables

* [rollup:2021-07-16 2/7] PR #18397 (@strega-nil)

[vcpkg_list] add new function

* [rollup:2021-07-16 3/7] PR #18782 (@strega-nil)

[scripts-audit] vcpkg_build_ninja

* [rollup:2021-07-16 4/7] PR #18784 (@strega-nil)

[scripts-audit] vcpkg_minimum_required

* [rollup:2021-07-16 5/7] PR #18785 (@strega-nil)

[scripts-audit] vcpkg_replace_string

* [rollup:2021-07-16 6/7] PR #18786 (@strega-nil)

[scripts-audit] windows scripts

* [rollup:2021-07-16 7/7] PR #18945 (@strega-nil)

[many ports] remove deprecated vcpkg_check_features call [1/5]

Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
Co-authored-by: PhoebeHui <20694052+PhoebeHui@users.noreply.github.com>
2021-07-20 10:24:58 -07:00
nicole mazzuca
d369df7ecf
[rollup:2021-07-06] Rollup PR (#18838)
* [rollup:2021-07-06 1/8] PR #18272 (@strega-nil)

[scripts-audit] vcpkg_from_*

* [rollup:2021-07-06 2/8] PR #18319 (@strega-nil)

[scripts-audit] add guidelines for cmake

* [rollup 2021-07-06 3/8] PR #18410 (@mheyman)

[vcpkg-cmake-config] documentation fix

* [rollup:2021-07-06 4/8] PR #18488 (@strega-nil)

[scripts-audit] vcpkg_execute_*

* [rollup:2021-07-06 5/8] PR #18517 (@strega-nil)

[scripts-audit] vcpkg_extract_source_archive

* [rollup:2021-07-06 6/8] PR #18674 (@NancyLi1013)

[vcpkg doc] Update examples

* [rollup:2021-07-06 7/8] PR #18695 (@JackBoosY)

[vcpkg] Update the minimum version of vcpkg

* [rollup:2021-07-06 8/8] PR #18758 (@ras0219-msft)

[vcpkg_from_git] Fix error if downloads folder does not exist

* build docs!

* fix bond:*-windows

* fix nmap

Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
Co-authored-by: Michael Heyman <Michael.Heyman@jhuapl.edu>
Co-authored-by: NancyLi1013 <lirui09@beyondsoft.com>
Co-authored-by: JackBoosY <yuzaiyang@beyondsoft.com>
Co-authored-by: Robert Schumacher <ras0219@outlook.com>
2021-07-14 12:45:18 -07:00
nicole mazzuca
b361c2eefa
[vcpkg.cmake] fix X_VCPKG_APPLOCAL_DEPS_INSTALL (#18607)
* [vcpkg.cmake] fix X_VCPKG_APPLOCAL_DEPS_INSTALL

* Billy CR
2021-07-01 10:45:01 -07:00
autoantwort
876e67c26e
[vcpkg.cmake] PREPEND CMAKE_FIND_ROOT_PATH (#17336)
* [vcpkg.cmake] PREPEND CMAKE_FIND_ROOT_PATH

* [vcpkg.cmake] make PREPEND optional (default off, option VCPKG_PREFER_VCPKG_LIBS)

* Apply suggestions from code review

Co-authored-by: nicole mazzuca <mazzucan@outlook.com>

* Update scripts/buildsystems/vcpkg.cmake

Co-authored-by: nicole mazzuca <83086508+strega-nil-ms@users.noreply.github.com>
Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
2021-06-23 15:30:46 -07:00
Jack·Boos·Yu
02fa0eb4c6
[openssl] Add cmake wrapper to handle OPENSSL_ROOT_DIR (#18042)
* [openssl] Add cmake wrapper to handle OPENSSL_ROOT_DIR

* Get the abs path

* update version record

* apply suggestion.

* Clean up openssl related code, move to openssl wrapper.

* update version record

* [kf5holidays] Disable parallel configure

* update version record

* update version record

* bump version

* Update versions/o-/openssl.json

* update baseline

* Update ports/openssl/vcpkg-cmake-wrapper.cmake

* Update ports/openssl/vcpkg-cmake-wrapper.cmake

* Update versions/o-/openssl.json

* Update ports/openssl/vcpkg.json

* Update versions/o-/openssl.json

* Update ports/openssl/vcpkg.json

* Update versions/o-/openssl.json

* update version record
2021-06-11 08:45:08 -07:00
Sander Cox
03992f2e1d
Support COMPONENT in X_VCPKG_APPLOCAL_DEPS_INSTALL (#18227)
discussion #17839
2021-06-10 16:14:37 -07:00
nicole mazzuca
f51c70369b
[vcpkg.cmake] add VCPKG_INSTALLED_DIR as a settable option (#16303)
this change does not actually make any changes,
except that `VCPKG_INSTALLED_DIR` and sets `_VCPKG_INSTALLED_DIR`.
In the future, we can start using `VCPKG_INSTALLED_DIR`
completely.
2021-06-10 11:11:20 -07:00
nicole mazzuca
0e914ba681
[scripts-audit] Rollup 2021-05-21 (#18112)
* [scripts-audit] vcpkg_acquire_msys (#17687)

* [vcpkg.cmake] Change find_package function -> macro in order to shorten trace (#17997)

switch from function to macro

* [scripts-audit] z_vcpkg_apply_patches (#18013)

* [scripts-audit] z_vcpkg_escape_regex_control_characters (#18013)

* [scripts-audit] vcpkg_fail_port_install (#18054)

Note that this change allows existing failures;
it changes MATCHES to STREQUAL, meaning that
vcpkg_fail_port_install(ON_ARCH "arm") now succeeds on arm64;
this change in behavior is fine (IMO) since it strictly succeeds
when it used to fail.
2021-05-26 13:40:48 -07:00
nicole mazzuca
1dfba89852
Revert "[vcpkg.cmake] fix Neumann-A problem with find_package (#17955)" (#17991)
This reverts commit b369b110b1.

This change broke opencv, and it was not noticed since vcpkg.cmake
didn't rebuild the world.
2021-05-18 09:48:23 -07:00
nicole mazzuca
b369b110b1
[vcpkg.cmake] fix Neumann-A problem with find_package (#17955) 2021-05-17 11:08:47 -07:00
nicole mazzuca
fe2a6bb789
[host dependencies] add support in the scripts (#16627)
This contains all the docs and scripts changes from #16479,
without any of the ports changes, for easier CR
2021-03-10 15:33:16 -08:00
Chris Townsend
0dc27b9b67
[vcpkg-cmake] Search for binaries after manifest-based installs (#16605)
Otherwise, find_package() fails to find any binaries for many manifest installed packages until a second cmake run commences.

Fixes #16604
2021-03-08 12:44:32 -08:00
Stefano Sinigardi
447b9cbe8c
[vcpkg] fix script broken audit (#16293) 2021-02-18 23:19:20 -08:00
nicole mazzuca
1bb5ea10a3
[scripts-audit] vcpkg.cmake (#16061)
* [vcpkg.cmake] modify to get in line with the audit

See PR #16055

This also (attempts to) allow vcpkg.cmake to run with cmake 3.0; we had
a VERSION_GREATER_EQUAL check, but that if keyword was added in cmake
3.7.

* s/target_name/package_name in find_package

* depend on z_vcpkg_function_arguments

instead of a custom macro
also, as a drive-by, switch to foreach(X IN LISTS ...)

* split the utility macros/functions out

additionally, move the options and settings to the top of the file

* move more options and settings to the top

* fix name of file

* fix ras code comments

* remove z_vcpkg_utilities due to export
* add cmake_policy(PUSH|POP)
* add VCPKG_INSTALLED_DIR input variable
* add .cmakestamp to vcpkg_installed

* fix osx ifs to use quotes

also, remove spaces between if and (, to keep style consistent
(mostly for ease of grepping...)

* fix bug fixed by #16193

* move z_vcpkg_add_fatal_error up

* fix RANGE for reals
2021-02-18 16:27:47 -08:00
Carsten Rudolph
66ffe4d7e1
[vcpkg] Added support for additional install modifiers in X_VCPKG_APPLOCAL_DEPS_INSTALL. (#16095) 2021-02-08 13:59:37 -08:00
David Hrdlička
9adaafc4f4
[vcpkg] fix X_VCPKG_APPLOCAL_DEPS_INSTALL (#15960)
* [vcpkg] fix X_VCPKG_APPLOCAL_DEPS_INSTALL

* [vcpkg] fix x_vcpkg_install_local_dependencies

Fixed `x_vcpkg_install_local_dependencies` always assuming a relative `DESTINATION`.
2021-02-03 12:51:28 -08:00
Be
31608174fa
set CMake policy CMP0087 for X_VCPKG_APPLOCAL_DEPS_INSTALL (#15874)
Without this, X_VCPKG_APPLOCAL_DEPS_INSTALL does not work and
CMake prints this warning at the configure step:

CMake Warning (dev) in CMakeLists.txt:
Policy CMP0087 is not set: Install CODE|SCRIPT allow the use of generator
expressions.  Run "cmake --help-policy CMP0087" for policy details.  Use
the cmake_policy command to set the policy and suppress this warning.
This warning is for project developers.  Use -Wno-dev to suppress it.

https://cmake.org/cmake/help/latest/policy/CMP0087.html
2021-01-28 13:43:14 -08:00
Andrei Lebedev
83b8e27b95
[vcpkg,boost-modular-build-helper] initial ppc64le community support (#15572)
* [vcpkg] initial ppc64le community support

Signed-off-by: Andrei Lebedev <lebdron@gmail.com>

* [boost-modular-build-helper] ppc64le support

Signed-off-by: Andrei Lebedev <lebdron@gmail.com>

* Merge from master

Co-authored-by: PhoebeHui <20694052+PhoebeHui@users.noreply.github.com>
Co-authored-by: dan-shaw <51385773+dan-shaw@users.noreply.github.com>
Co-authored-by: Nicole Mazzuca <mazzucan@outlook.com>
2021-01-22 10:37:26 -08:00
nicole mazzuca
a597134450
[vcpkg registries] Add git registries (#15054)
* [vcpkg registries] Add git registries support

* Add git registries support to the registries module of vcpkg.
* add e2e tests for git registries
* fix vcpkg.cmake for registries

* fix CRs, remove a thing

* better error messages

* Billy CRs

* fix Robert's CR comment

* I learned about `-c` today

* format

* fix baseline.json

* failing to find baseline is technically not a bug
2021-01-14 19:50:31 -08:00
Matt Haynie
730187bfd9
Write manifest "vcpkg install" output to stdout (#15187) 2020-12-21 12:13:32 -08:00
Sander Cox
ced334b24d
[vcpkg] x_vcpkg_install_local_dependencies fixes (#14977)
* Conversion to PARSE_ARGV was missing parameter

* Cannot install for interface_libraries
2020-12-07 16:06:02 -08:00
Sander Cox
42456b785a
[vcpkg] X_VCPKG_APPINSTALL_DEPS_INSTALL optionally install dependencies on install (#14243)
* Adding an install command override for dependencies

* Apply suggestions from code review

Use variables directly instead of prefixing with `${}` as is done in rest of the file. Thanks @shatur95

Co-authored-by: Hennadii Chernyshchyk <genaloner@gmail.com>

* Update scripts/buildsystems/vcpkg.cmake

Co-authored-by: Hennadii Chernyshchyk <genaloner@gmail.com>

Co-authored-by: Hennadii Chernyshchyk <genaloner@gmail.com>
2020-11-20 13:28:14 -08:00
nicole mazzuca
2dc708898a
[vcpkg] Add x-ignore-lock-failures (#14397)
* [vcpkg] Add disable-lock options

This should fix #14281 at least as a stopgap.

Additionally, adds better errors.

* billy CRs

* change from "disable-lock" to "allow-spurious-lock-failures"

* billy cr
2020-11-12 10:16:24 -08:00
Billy O'Neal
b7056e9f1f
[vcpkg] Fix incorrect determination of PowerShell not found (#14317)
* Fix incorrect determination of PowerShell not found because Bill doesn't know enough CMake :(

Resolves #14283
2020-11-01 17:12:49 -08:00