* [vcpkg-ci-msys2] Add clangarm64 support
UCRT binaries for ARM64, built with clang.
* [vcpkg_find_acquire_program(PKGCONFIG)] Switch to pkgconf, add arm64
* CI
* [vcpkg-ci-msys2] New test port for msys2 freshness
* Add features for script updates
* Remove duplicate libbz2 entry
* Automatically update all msys packages, add autoconf-wrapper
* Update primary URL and mirrors
* Follow repo renames
* Fix dependencies of 'file'
* Resolve dependencies at runtime
Don't require msys2 packages to be order from dependent to independent.
This allows to directly use the packages official dependencies, even
if they contain cycles.
It also allows to maintain a stable alphabetical order of the package
declarations, even if the dependencies change over time. This helps to
avoid duplicate declaration.
* Fix updating
* [gettext] Preset more MSVC checks
* Update msys2 packages
* gettext fixes
* CI
* Simplify: Remove update-critical
Desired changes can be picked in git gui etc..
* PKGCONFIG moved
---------
Co-authored-by: Monica <v-liumonica@microsoft.com>
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
* [vcpkg-cmake-get-vars] Call 'project' early
System variables like 'APPLE' or 'ANDROID' aren't set before 'project()'.
* Get Android variables
* [openssl] Ensure that compiler is reached via 'PATH'
* Fix Android configuration
* Add 'tools' feature
* Update versions
* [openssl] Initialize android with vcpkg settings
* [openssl] Really don't build apps
* [vcpkg-cmake-get-vars] Update android vars
* [libpq] Pass openssl version from pkgconfig
* [vcpkg-cmake-get-vars] Update android vars
* [vcpkg-cmake-get-vars] Report generator
* [vcpkg-cmake-get-vars] Escape all output
* Transfer cmake-get-vars fixes
* Transfer cmake-get-vars extra flags
* no-asm for android-arm w/o neon
* [vcpkg_configure_make] Unquote as needed
Toolchain flags are passed into make via environment variables (e.g.
CFLAGS) and expanded by Makefiles regardless of quotes. And even vcm's
internal handling isn't prepared for these quotes. So we must remove
the early. This doesn't interfere with properly escaped quotes.
* Re-add lost 'project', amends 4cf7caaa
* [openssl] Fix emscripten
* fix gn path error on windows
* add quotes
* vcpkg cmake guidelines
* Fix version database.
* Use Z_VCPKG_BACKCOMPAT_MESSAGE_LEVEL instead of WARNING
* Quotes 🤦
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
* Print stack traces for failed unit tests
* Add test for vcpkg_fixup_pkgconfig.cmake
* Check for 'optimized' and 'debug' in pc files
* Check for 'NOTFOUND' and for 'ns::target' in pc files
* Check for, and fix, line continuations
* Test file path substitutions
* Move contents processing into separate function
* Update and leverage line break normalization
* Pass prefix to data processing
* Validate only the collapsed Libs
* Test removal of '<field>.private'
* Declare unit test license (same as vcpkg)
* Replace ';' with ' ' in 'Libs:'
* Disambiguate parameter variable names
* Test quoting of variables
* Fix quoting of variables
* Quote whole parameters
* Process and quote libs item-wise
* Resolve keywords 'optimized', 'debug', 'debug'
* Consistency
* CI [skip actions]
* CI [skip actions]
* Don't fail on detected errors
* Disable unit-testing for fatal errors
Co-authored-by: Billy O'Neal <bion@microsoft.com>
* Disambiguate saved log files
* CI [skip actions]
* CI [skip actions]
* CI [skip actions]
* Use ALIAS keyword instead of auto-numbering
* Update versions
* help cflags survive through libtool
* Guard -Xcompiler in case of gcc/gnu
since it doesn't like unknown compiler flags.
* export CMAKE_<lang>_COMPILER_FRONTEND_VARIANT from cmake
* v db and script changes
* also check compiler id
Co-authored-by: Cheney-Wang <850426846@qq.com>
* [python3] Make patch files contiguous.
When applying these back to the python3 repository and re-formatting,
the gap in patch file numbers requires annoying manual renaming. Debunk
that.
* [python3] Use patch files, not diffs.
Diffs require multiple steps to import into the python3 repository.
Debunk that. The patch format retains authorship information.
* [python3] Fix problems with conflicting patches.
Something modified in the static library patch was being used as a
context line in a later patch. How did this pass CI?
* [python3] Bump to 3.10.7.
* [python3] Fix Windows 7 patch.
* [python3] Back out trivial patch changes.
* [python3] Apply unconditional patches first.
* version things and stuff
* Bump Python tools to 3.10.7.
* Fix mingw
* Remove invalid transformation
Co-authored-by: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com>
Co-authored-by: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com>
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.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>
* [scripts] fixes for armv7l host builds
* [scripts] fix meson for 32-bit arm
* [scripts] replaced EXEC_PROGRAM with execute_process in ninja and pathelf paths in vcpkg_find_acquire_program
* add VCPKG_CMAKE_VS_GENERATOR for overriding/providing a generator if ninja cannot be used
* Wording CR.
Co-authored-by: Javier Matos Denizac <javier.matosd@gmail.com>
* use VisualStudioVersion to switch the generator.
* v db
* CR changes
* v db
Co-authored-by: Javier Matos Denizac <javier.matosd@gmail.com>
* [qt5/qmake] Pass toolchain flags to build
* v db
* forgot a dependency
* v db
* add required ar flags
* v db
* Apply suggestions from code review
Co-authored-by: Javier Matos Denizac <javier.matosd@gmail.com>
* v db
* inc port version
* v db
* qt5-base
* v db
Co-authored-by: Javier Matos Denizac <javier.matosd@gmail.com>
* WIP commit
* more jemalloc wip
* v db
* add license
* v db
* apply format diff
* fix script
* WIP commit
* fix ARFLAGS for the wrapper
* CR stuff
* v db
* use separate_arguments to add -Wl, to linker flags
* say "-Xlinker" three times and it will come.
* make assembler compile only.
* disable _FOR_BUILD if crosscompiling.
use function instead of macro.
Remove AS settings
* ignore settings for osx until somebody knows how to fix it.
* CR z_vcpkg_make_set_env
* CI retrigger
* make conflicting options an error
* remove DEFINED since the options are always defined
* use z_vcpkg_get_cmake_vars instead of including the toolchain
* fix typo
Co-authored-by: Osyotr <Osyotr@users.noreply.github.com>
* add supports expressions
* use _ENV_ instead of ENV so vcpkgs flags will overwrite any other flags.
(also fixes pdcurses using LINK)
* v db
* version
Co-authored-by: Osyotr <Osyotr@users.noreply.github.com>
Co-authored-by: JackBoosY <yuzaiyang@beyondsoft.com>
* pixman: add missing include and fix clang-cl builds
* v db
* use correct <> isntead of ""
* v db
* make the patch depend on _MSC_VER
* v db
* fix bug in vcpkg_configure_meson not linking WindowsApp.lib
fix another bug that system=windowsstore which meson doesn recognize
* bump port version
* v db
* [vcpkg_download_distfile] Don't check downloaded file when ALWAYS_REDOWNLOAD is passed
* [vcpkg_from_github] fix error message and correctly set VCPKG_HEAD_VERSION
* [vcpkg_from_gitlab] Use gitlab api instead of git ls-remote
* no change
* Apply suggestions from code review
Co-authored-by: Thomas1664 <46387399+Thomas1664@users.noreply.github.com>
Co-authored-by: Thomas1664 <46387399+Thomas1664@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.
* Normalize PATH so that insertion of msys paths always works
This is required if the PATH variable has been modified and doesn't follow the normal windows style
* make it better
* switch path manipulations. vcpkg wrapper dir needs to come first.
* Revise generator selection
If the host is x86, assume that msbuild is requested for windows.
If msbuild is requested and suitable, use it.
Else if a particular generator is requested, use it.
Else if ninja is available, use it.
Else on non-windows host, use "Unix Makefiles".
* Revise ninja_host detection
* Revise parallel configure detection
* Consolidate ninja path setup
* Update documentation
* Use portable chdir
* [ms-gltf] Use new generator selection
* Update versions
* Fixup rpath after building dynamic libraries on linux
* Switch back to a single variable VCPKG_FIXUP_ELF_RPATH
Co-authored-by: Victor Romero <romerosanchezv@gmail.com>
* Don't force fixup in x64-linux triplet yet
Co-authored-by: Victor Romero <romerosanchezv@gmail.com>
Co-authored-by: Osyotr <8740768+Osyotr@users.noreply.github.com>
* Add support for loongarch64 cpu.
* update ci.baseline.txt
* Revert "update ci.baseline.txt"
This reverts commit 0b3f4851bc.
* Allow user to add additional options for meson within custom triplet.
Co-authored-by: Jamlys Lee <jamlys_lee@163.com>
* [vcpkg tool] Add vcpkg_install_copyright
* Make sure FILE_LIST is provided
* relative to ${SOURCE_PATH}
* Add documentation
* Add to table of contents
* Relative paths was a bad idea.
* Tell users to use the correct way
Co-authored-by: Billy O'Neal <bion@microsoft.com>
* Fix docs
* Add parameter COMMENT
* Rename to vcpkg_concat_copyright
* Fix escape
* Revert "Fix escape"
This reverts commit 53f1636705.
* Revert "Rename to vcpkg_concat_copyright"
This reverts commit 6ce9152a61.
* Fix escape
* Add support for single copyright file
* Update docs
* Make comment less confusing
* [ci skip] Billy CR
* [ci skip] Format
* Remove explicit checks for STREQUAL ""
* Add error msg if file doesn't exist
Co-authored-by: Billy O'Neal <bion@microsoft.com>
* Always save config.log, even on error
* Always save config.log and CMakeCache.txt[.log]
* Add SAVE_LOG_FILES option
* Make implicit lookups explicit
* Update versions
* Fix the application of VCPKG_CMAKE_CONFIGURE_OPTIONS with more than one option
VCPKG_CMAKE_CONFIGURE_OPTIONS (plural) is meant to be a list of options to be added to a cmake invocation.
But it was being applied quoted, which disallowed it from containing multiple options.
- If it was initialized with a list, cmake would get the options ";"-separated.
- If it was initialized with a blank-separated string, cmake would get the entire astring quoted as a single argument.
The fix is simple: don't (ever) quote arguments to list(APPEND) unless they are really meant to be a single element to append to the list.
* Update the version-date of vcpkg-cmake
* Update hash after rebase
* Fix vcpkg-cmake.json
In my defence, I'm new to this...
Co-authored-by: Juan Carlos Arevalo Baeza (JCAB) <jcab@ntdev.microsoft.com>
* [docs] Delete embedded documentation in favor of docs/
Drive-by for the helper ports:
1. "documentation": "https://vcpkg.io/en/docs/README.html"
2. "license": "MIT"
3. Use `include_guard(GLOBAL)` in all script files
4. Make sure any persistent variables are saved to the cache
* [docs] Restore empty regenerate.ps1 to satisfy Azure Pipelines
* [docs] PR comments
* Fix vcpkg_host_path unit test
* Fix unit test variable control
* Enable all test features by default
* Fix recognition of PREPEND
* CMake doesn't set env vars to empty value
* Remove pointless STATUS message
* synchronize cmake build scripts.
* version stuff
* fix REMOVE_ITEM and add license
* format manifest
* update version
* use LOGFILE_BASE
* version update
* readd PREFER_NINJA and print a warning that it is deprecated for vcpkg_cmake_configure
* version stuff
* sync build_cmake
* only turn off ninja on windows
* add Z_VCPKG_CHAINLOAD_TOOLCHAIN_FILE
* use z_vcpkg_select_default_vcpkg_chainload_toolchain in meson
* remove VCPKG_CMAKE_GENERATOR
* version stuff
* reduce error to warning
* remove VCPKG_CMAKE_GENERATOR form configure_cmake
* version stuff
* version stuff
* use build_dir_<config>
* version stuff
* use ninja variable insead of pure ninja cmd
* version bump
* use ninja variable instead of calling ninja directly
* acquire ninja
* move the acquire.
* remove setting of cmake_prefix_path
* version stuff
* bump version date
* version stuff
* bump ashes baseline
* remove VCPKG_CMAKE_GENERATOR reference
* fix wrong variable reference due to refactor
* version stuff
Co-authored-by: Alexander Neumann <you@example.com>
Co-authored-by: Billy Robert O'Neal <bion@microsoft.com>
* put default generator and toolchain selection into a function
* update version-date of script
* version stuff
* restore PREFER_NINJA behavior on windows
use elseif instead of else
* cr ws change
* missing ,
* version stuff
* CR scripts/cmake/vcpkg_configure_cmake.cmake
Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
* CR changes
* revert baseline
* update version
* bump version
* version stuff
* ci retrigger
Co-authored-by: Alexander Neumann <you@example.com>
Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
* add vcpkg-tool-lessmsi
* add vcpkg-tool-python2
* adjust vcpkg_find_acquire_program
* use python2 dependency in qt5-base
* remove python2 from qt5-base
* add python2 to qt5-webengine
* use python3 instead of python2
* add some deps on the new vcpkg-tool-python2
* Apply suggestions from code review
Co-authored-by: nicole mazzuca <83086508+strega-nil-ms@users.noreply.github.com>
* add license field
* fix test detection
* error on failure to find python2
* move logs to correct position.
* add dep to qtwebengine
* adjust pybind cmake config.
* fix shiva
* move python2 to manual-tools
adjust search path
generate a details.cmake for vcpkg_find_acquire_program
* format manifest
* use version-date
* version stuff
* replace version-string
* more version stuff
* fix search path and add supports expression
* version stuff
* shiva version
* remove arm windows from support
* reuse output_path
use lessmsi is a host dep so use the correct path
* version stuff
* Fix x86 regression
* version stuff
* try fixing qtinterfaceframework
* version stuff
Co-authored-by: Alexander Neumann <you@example.com>
Co-authored-by: nicole mazzuca <83086508+strega-nil-ms@users.noreply.github.com>
Co-authored-by: Victor Romero <viromer@microsoft.com>
Co-authored-by: Victor Romero <romerosanchezv@gmail.com>
* [python3] Update to Python 3.10.2.
* Version nonsense
* Update Python tool to 3.10.2.
* [python3] Update version file
* [python3] Update versions again
Co-authored-by: Victor Romero <viromer@microsoft.com>
* [get_cmake_vars] add -isysroot flag independednt of crosscompiling
Even without crosscompiling it is possible to specify a VCPKG_OSX_SYSROOT or
a SDKROOT this should be popagated to autotools and meson builds as well.
* [meson] add -arch and -isysroot to linker flags in case of osx crosscompile
* [meson] avoid DEPRECATION warning about flags in the [properties] section
* [meson] don't set OSXROOT evironment varibale
* [meson] don't set MACOSX_DEPLOYMENT_TARGET environment variable
cmake appends the -mmacosx-version-min flag c/cxx flags, overriding the
value set via VCPKG_C_FLAGS. By setting the environment variable, the
VCPKG_C_FLAGS value was used for meson builds. Now the same value is
taken for both.
* [meson/make] Add CMAKE_OSX_DEPLOYMENT_TARGET to VCPKG_DETECTED_CMAKE_C_FLAGS
This is done in the same way in CMake internally
* [vcpkg_acquire_msys] Update version and hash
* Address the review suggestions
* Update scripts/cmake/vcpkg_acquire_msys.cmake
Revert bash changes
* Update scripts/cmake/vcpkg_acquire_msys.cmake
Revert libintl
* Update scripts/cmake/vcpkg_acquire_msys.cmake
Revert gcc-libs
* Revert diffutils and libreadline
* Revert autoconf sed and make
* Revert gzip file findutils runtime binutils
* Add the revert pkgs back except msys2-runtime
* Update python to 3.9.x cause failure in tensorflow and tensorflow-cc
* [vcpkg_build_make] only link against manual-link folder if exists
* [vcpkg_configure_make] don't set LD_LIBRARY_PATH
This is not recommended during the normal build process
https://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html
* [vcpkg_build_make] Only set the lib path if exists
* [vcpkg_configure_make] Resore handling of _LINK_ environment variable
* [vcpkg_build_make] Backup and restore CPPFLAGS CFLAGS CXXFLAGS RCFLAGS
* [vcpkg_build_make] Fix name of LINKER FLAGS detected from cmake
* [vcpkg_build_make] replace obolete _VAR_SUFFIX with cmake_buildtype
* [vcpkg_fail_port_install] Deprecate function
* Update doc
* Apply suggestions
* Revert changes about include this function and delete doc
* Apply suggestions
* version
* Update docs/maintainers/vcpkg_fail_port_install.md
Co-authored-by: autoantwort <41973254+autoantwort@users.noreply.github.com>
* Update scripts/cmake/vcpkg_fail_port_install.cmake
* Update scripts/cmake/vcpkg_fail_port_install.cmake
* Use message("${Z_VCPKG_BACKCOMPAT_MESSAGE_LEVEL}" to ensure it works with `--prohibit-backcompat-features`.
Co-authored-by: autoantwort <41973254+autoantwort@users.noreply.github.com>
Co-authored-by: Phoebe <20694052+PhoebeHui@users.noreply.github.com>
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
* z_vcpkg_get_cmake_vars(): Use build-type-specific cache variable
if VCPKG_BUILD_TYPE is defined
Some ports (e.g. gettext) execute debug and release builds manually
(with different options). If a globally cached copy of cmake vars file
is used, the second build type has no cmake vars defined (e.g. CFLAGS is empty)
because generated and globally cached cmake vars file includes only cmake vars
for the first build type
* Apply suggestions from code review
Co-authored-by: nicole mazzuca <83086508+strega-nil-ms@users.noreply.github.com>
Co-authored-by: nicole mazzuca <83086508+strega-nil-ms@users.noreply.github.com>
* [vcpkg_fail_port_install] add a warning about extra args when ALWAYS is passed
* Address the review suggestions
Co-authored-by: PhoebeHui <20694052+PhoebeHui@users.noreply.github.com>