Commit Graph

248 Commits

Author SHA1 Message Date
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
Chuck Walbourn
47cdf39707
lld-link workaround should be used with ClangCl MSBuild platform toolset (#31239) 2023-05-04 10:24:13 -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
Billy O'Neal
1174c9ea1d
[vcpkg-msbuild] Add a switch to disable classic mode for one-liner and in-VS installs. (#30373) 2023-03-24 22:35:58 -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
Jörg Bornemann
ed73411424
[applocal.ps1] Fix -targetBinary without drive letter (#29890) (#29894)
On Windows, running applocal.ps1 with "-targetBinary
/foo/bar.exe" (without drive letter) did not install dependencies. The
dumpbin executable was called with /foo/bar.exe, and dumpbin interpreted
this as unknown command line argument. No dependencies were resolved.

We're already resolving the full path of the target binary some lines
above the dumpbin call. The $targetBinaryPath variable contains the
target binary's path including the drive letter, and dumpbin
successfully reports the executable's dependencies.
2023-03-01 16:07:04 -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
Frank
30a20e8f15
[vcpkg] Fix integration in Visual Studio (#28216) 2022-12-07 17:11:31 -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
sbrajchuk
11e021f9f8
[vcpkg] Add support of -static-md to Visual Studio UI (#28045)
* Add support of -static-md to UI

* Remove redundant comparison

* Fix typo

* Check if 'Use Static Libraries' is selected
2022-11-29 11:38:53 -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
Alexander Neumann
d8e60ef474
[vcpkg scripts] Crosscompiling fixes (#26617)
* test osx stuff

* deactivate most of ci

* get trace output

* add required flags to the linker flags

* also look for --sysroot

* Link_args are always shared

* fix ar flags

* setup FOR_BUILD vars.

* try tricking the build.... but man configure scripts are stupid sometimes...

* try 2

* major meson rewrite

* fix duplicates

* revert --trace-expand

* update port version

* revert pipeline changes

* v db

* bump version

* v db

* set flags for rc compilers

* a few more ios fixes.

* v db

* fix osx/ios logic

* documentation and don't fatal_error in build/host machine entry calculation.

* add android/compiler target stuff from #26570

* remove extra endif

* v db

* add target param to linker flags.

* target in cpp flags

* Make vcpkg-cmake-get-vars more ios compatible

* Update scripts/get_cmake_vars/CMakeLists.txt

Co-authored-by: Matthias Kuhn <matthias@opengis.ch>

* More ios fixes

* fix target adding

* Fix broken loop

* v db

* v db

* bump date

* v db

* v db

* v db

* remove port-version 1

* v db

Co-authored-by: JackBoosY <yuzaiyang@beyondsoft.com>
Co-authored-by: Matthias Kuhn <matthias@opengis.ch>
2022-10-13 09:40:52 -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
Ulysses1337
55112eb54a
[mchehab-zbar] Add new port (#16113)
* Add mchehab/zbar

* Quote all paths

Co-authored-by: Cheney Wang <38240633+Cheney-W@users.noreply.github.com>

* Update to 0.23.90

* Flip name

* Update version registry

Co-authored-by: Cheney Wang <38240633+Cheney-W@users.noreply.github.com>
2022-08-24 09:08:34 -07:00
Dawid Wróbel
e5eb2da7fb
[windres-rc] support --define, --include-dir (#26454)
* [windres-rc] support --define, --include-dir

* [windres-rc] treat --include-dir with func_file_conv()
2022-08-23 12:36:24 -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
Billy O'Neal
d97c3ab76c
[vcpkg-msbuild-integration] Set the default value of VcpkgConfiguration according to $(UseDebugLibraries) rather than $(Configuration) for better support of custom configuration names. (#26177)
Competing resolution of https://github.com/microsoft/vcpkg/pull/9496 and https://github.com/microsoft/vcpkg/pull/22086
2022-08-10 13:14:52 -07:00
autoantwort
36bd5e39b7
[msbuild] don't fail on error messages (#25844) 2022-07-20 15:41:27 -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
nicole mazzuca
6c617b9f55
[vcpkg-tool] update to 2022-03-30 (#23886)
* [vcpkg-tool] update to 2022-03-30

* add --allow-unexpected-passing, --skip-failures

* Robert CR

Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
2022-03-31 19:08:09 -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
Kai Pastor
6072bc13ab
Fix powershell 5 compatibility (#22123) 2021-12-21 23:12:26 -05:00
klaus triendl
17cefc2cd9
[msbuild] Correct resulting triplet installation folder (#22079)
Co-authored-by: klaus triendl <klaus.triendl@firedaemon.com>
2021-12-20 11:29:26 -05:00
Rémy Tassoux
989f5594f8
[vcpkg] Fix external include path (#21544)
* [vcpkg] Fix external include path

* Fix ExternalIncludePath syntax

Co-authored-by: Billy O'Neal <bion@microsoft.com>

Co-authored-by: Rémy Tassoux <rt2@rasterizedworld.com>
Co-authored-by: Billy O'Neal <bion@microsoft.com>
2021-11-26 00:35:05 -08:00
Rémy Tassoux
203daf9844
[vcpkg.targets] Add vcpkg installed libraries to MSBuild external include path (#18820)
Co-authored-by: Rémy Tassoux <rt2@rasterizedworld.com>
2021-11-19 05:49:33 -08:00
Kai Pastor
4d878759ad
[applocal.ps1] Add missing '$' (#21429) 2021-11-15 09:43:12 -08:00
Kai Pastor
7dff5e821e
[vcpkg] Revise appdeploy and copy_tool_dependencies (#21092)
* Stop overwriting logs when copying tool dependencies

* Deploy debug dependencies for debug tools

* Deploy dependencies verbosely in debug mode

* Don't silently fail deployment on mutex creation error

* Construct paths portably

* Fix mutex creation on Linux

* Abort on mutex creation errors

* Always copy tool dependencies in verbose mode
2021-11-14 08:48:05 -08:00
Long Nguyen
193880f0a8
[vcpkg.cmake] Add default triplet for mingw compilers (#19020) 2021-10-12 11:30:40 -07:00
AndrewDeanMS
86d2925af0
Remove unnecessary <Delete> that races <Touch> (#20313)
When VcpkgInstallManifestDependencies runs in parallel,
the Delete in one task causes the touch in another to fail.
The Delete isn't actually necessary to accomplish the goal
here, so remove it.
2021-09-24 10:07:26 -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
autoantwort
f0c569e3e5
[msbuild] add vcpkg to <Lib> search path (#20054) 2021-09-08 12:21:06 -07:00
Billy O'Neal
97e7ac8d74
[vcpkg] Repair msbuild damage and workaround the way we integrate on VS2015. (#19767)
* Repair msbuild damage and workaround the way we integrate on VS2015.

This is a fix for a pile of issues discovered by https://github.com/microsoft/vcpkg/pull/18906

* VS 2015 has a bug that the <VcpkgInstalledDir Condition="!$(VcpkgInstalledDir.EndsWith('\'))">$(VcpkgInstalledDir)\</VcpkgInstalledDir> dance we do to get a trailing slash is not applied correctly when VcpkgInstalledDir was edited in the same property group attempting to add the trailing slash.
* We need a trailing slash on VcpkgInstalledDir at all times, but https://github.com/microsoft/vcpkg/pull/16173 damaged this by removing it from TreatAsLocalProperty. Add the right TreatAsLocalPropertys back. Add all such slash defenses to the top of the file just beneath, eliminating need to call Path::Combine and friends by following msbuild "directory properties have a trailing slash" convention.
* Move VcpkgOSTarget and VcpkgPlatformTarget into the .targets, as they aren't intended to be overridable by users and don't appear in our selection dialog box(es).
* Don't bother avoiding setting vcpkg properties when VcpkgEnabled is off; after all, VcpkgEnabled is itself a vcpkg property :). I left attempts to skip creating items since creating items can hit the disk.
* Add _Z to several internal msbuild variables.
* Move VcpkgApplocalDeps to the .props since it's a user setting.
* Don't unconditionally use $(TLogLocation) because it is not set on 2015, and also it's per-project.
* Fixed typo in docs "VcpkgInstalledDirectory", and document the limitation that it doesn't work in 2015.
* In manifest mode, put the installed tree in a subdirectory including the triplet to make changing configurations faster.

Known limitations:

* If you change vcpkg.json without changing any .cpp files, we don't rebuild the dependencies even though we should. I don't know how to fix this but it doesn't appear to be a regression.

* Fix .tlog handling.

* Further defend against modified properties on VS2015.

* Document more VS2015 limitations.

* Remove TreatAsLocalProperty comment.
2021-09-02 12:33:21 -07:00