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