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