169 Commits

Author SHA1 Message Date
Haowu Ge
fd6f4857d6
Add initial LoongArch support (#32932) 2023-08-23 11:53:24 -07:00
Sander Cox
f41244d1b4
fix: take component from runtime only #32560 (#32683)
Only take the COMPONENT part for the runtime settings like we
already do for the DESTINATION component. The install local dependencies
should only need to be run for RUNTIME components anyway.
2023-07-21 08:56:51 -07:00
funsafe-ptr
c3dea019d2
[Android Termux] Fix missing Z_VCPKG_TARGET_TRIPLET_PLAT (#32157) 2023-06-26 22:14:44 -07:00
Jörg Bornemann
512d62f7ee
[vcpkg.cmake] Fix CMP0126 warnings (#23784) (#29969)
When running CMake 3.21 or newer in trace or debug mode, vcpkg.cmake
would trigger the CMP0126 warning for VCPKG_MANIFEST_DIR and
VCPKG_INSTALLED_DIR.

The regular variable was used to set the initial value of the cache
variable of the same name. This patch adds the regular variables
Z_VCPKG_MANIFEST_DIR_INITIAL_VALUE and
Z_VCPKG_INSTALLED_DIR_INITIAL_VALUE that are used to initialize their
respective cache variables.
2023-05-09 17:08:28 -07:00
Billy O'Neal
c609fc5265
Remove phantom quotes from the invocation of vcpkg install in manifest mode. (#30473) 2023-03-28 10:29:38 -07:00
Chuck Walbourn
c1d764a742
[community triplet] adds triplets for building for the Xbox platform (#29210)
* Try adding xbox triplets

* Update for Gaming Command Prompt usage

* Fix directxtk12 shaders for xbox

* Add toolchain for xbox

* Fix ports for feature builds

* Code review feedback

* More code review

* Code review

* WIN32_LEAN_AND_MEAN is too aggressive for many libs

* Normalize GDK variable paths

* Need to leave oldnames.lib as many libs use POSIX names

* More code review feedback

* Remove extra file

* Use of /DEFAULTLIB fixed 41 ports

* Code review feedback

* Added basic xbox supports expression

* Updates for xbox-aware ports

* Update for CMake fixes upstream

* Minor synatx fix

* Fix up merge issues

* Need directx-headers for linux

* Missed one port revision

* Removed VCPKG_TARGET_IS_XBOX from project scope after upstream fixes

* Update baseline

* License updates per github-actions bot

* Update baseline

* Update toolchain to support try_compile for GDK headers

* Update port numbers

* Update baseline

* Don't need directx-dxc for Xbox builds

* Update baseline

* Update hashes

* Code review

* Update baseline

* Refresh hashes for upstream fixes

* Update baseline

* Add ms-gdkx stub port

* Update baseline

* updated ms-gdkx with user-friendly output

* Update baseline

* Code review for the toolchain file

* Update directxkt12 hash

* Refresh baseline

* Update MSBuild integration to select proper triplet for GDK custom platforms

* Update CMake integration to select proper xbox triplet from XBOX_CONSOLE_TARGET

* vcpkg.targets update

* Code review feedback

* Update baseline

* Refresh baseline

* Code review for MSBuild

* Code review for xbox toolchain

* vcpkg.cmake codereview

---------

Co-authored-by: walbourn <chuckw_walbourn@yahoo.com>
2023-03-08 14:06:20 -08:00
Yingwei Zheng
5c98346399
Add initial risc-v support (#29593) 2023-02-22 12:44:40 -08:00
Jörg Bornemann
703a8113f4
[vcpkg.cmake] Make use of CMake 3.7 language features (#29721)
vcpkg.cmake requires at least CMake 3.7.2. We can remove the
work-arounds for older CMake versions that lack GREATER_EQUAL and
VERSION_GREATER_EQUAL.
2023-02-21 10:58:03 -08:00
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 17737bceda8ed0dbe1a60c2fd831a55e53707dcd.

* 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 b369b110b16b149066271a09ee56f1b9dcaec7d6.

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