- [x] Changes comply with the [maintainer
guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md)
- [ ] ~~SHA512s are updated for each updated download~~
- [ ] ~~The "supports" clause reflects platforms that may be fixed by
this new version~~
- [ ] ~~Any fixed [CI
baseline](https://github.com/microsoft/vcpkg/blob/master/scripts/ci.baseline.txt)
entries are removed from that file.~~
- [ ] ~~Any patches that are no longer applied are deleted from the
port's directory.~~
- [x] The version database is fixed by rerunning `./vcpkg x-add-version
--all` and committing the result.
- [x] Only one version is added to each modified port's versions file.
---------
Co-authored-by: jim wang <122244446+jimwang118@users.noreply.github.com>
* pass additional link flags to b2
* configure boost-locale for android
* build libiconv for android
* Bump port version
* bump port version
* Update CONTROL
* new_ci_checks and versions
* add versions again
* fix pr review
* fix pr review. version
* bump versions
Co-authored-by: Nicole Mazzuca <mazzucan@outlook.com>
Co-authored-by: PhoebeHui <20694052+PhoebeHui@users.noreply.github.com>
* [fontconfig] update fontconfig
* [libiconv] update to make
* [gettext] update to make
* [vcpkg_configure_make] Changes considering pure configure ports without the requirement to run autoconfig
* [fontconfig] make it work on windows
* Remove install of unofficial cmake config
* add function get_cmake_vars
* fine tuning.
* apply to make based ports.
* add log suffix on not windows platforms
* fix c&p error
* add previous LINK env
* setup env on windows and extract cpp flags correctly.
* update glib and libxml2
* fix windows regressions
* Apply suggestions from code review
* add windres wrapper to invoke RC.
* remove wrong fi
* fix libintl.
* try fixing uwp
* other things to update
* exiv2 fix
* libtool does not like -RTC1
* pass the /RTC<x> flag directly to the compiler
* trust cmake instead of adding extra flags
* fix expat
* fix iconv wrapper install
* change fontconfig intl linkage.
* add appcontainer back in which is required for UWP. Why is this not in the cmake flags?
* fix pkg-config in vcpkg_configure_make
* fix json-c pkg-config installation
* remove remnoved config
* comment out debug messages + bit of tuning
* finally fontconfig
* comment debug messages
* expat apply extra patches.
* Switch back to -E instead of -EP in cpp
* commit changes from fontconfig PR
* [expat] fix expat details
* Apply suggestions from code review
Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
* cleanup docs
* update osx pipeline so that fontconfig actually builds
* fix expat the lazy way by using a higher commit than release
* fix a barage of regressions due to the use of unofficial targets
* [expat] use a higher commit hash with a better stabilized cmake build
* forgot freexl regression
* more unofficial fixes
* fix downstream expat usage
* fix wxwidgets
* fix gcdm regression
* [vtk] fix the regression due to expat
* add uwp cl flags back in. Somehow those are not set by cmake
* add a few other configure options for full gettext build
* fix cmake regression
* fix a few regressions
* fix static gettext build
* fix gettext static
* fix libxml2 wrapper for cmake
* some more regressions fixes
* add conversion from somelib.lib to -lsomelib
* add a few option to libiconv.
* get logs from CI
* add missing ar-lib wrapper
* add missing ar-lib wrapper
* add fatal error to gettext
* remove uuid from the list of LIBS since it seems to not exist in CI?
* small but important regex correction
* fix regex and add debug message for libs
* remove error and only build libintl.
* add uuid dependency to fontconfig in qt5-base
* osx install gettext for autopoint
* fix io2d regression by saying the port is broken .....
(which it is; upstream needs to learn proper cmake)
* restore the old libxml2 wrapper with minor modifications
* fix xmlsec regression
* install wrapper correctly
* try actual fixing io2d
* improve iconv wrapper
* add latest changes from update_fontconfig PR
* Apply suggestions from code review
first set which don't need special attention
Co-authored-by: ras0219 <533828+ras0219@users.noreply.github.com>
* Apply suggestions from code review
one more simple change
Co-authored-by: ras0219 <533828+ras0219@users.noreply.github.com>
* [x264] set env AS
* fix bugs due to refactor
* use subpath everywhere
* apply changes from CR
* fix fontconfig build.
* only change libs in static builds
* remove unnecessary lines 41 & 44
* remove flag transformation
* reintroduce the flag / to - transformation for MSVC
* trying to figure out autopoint issue.
using wrong (windows) find.exe instead of msys
* add correct working_dir to subpath
* escape stupid env paths.
* fix typo
* add findutils
remove debug messages
* add error if libtool chokes
* add file to msys
* pass lt_cv_deplibs_check_method=pass_all on windows
(couldn't get file.exe to work so that libtool correctly ids the passed libs)
* add bzip2 to msys
* reenable libtool check. Lets see if CI agrees
* unbreak linux
try to figure out where uuid should be on windows.
* add -L flag and help libtool ?
* try to get ci to find uuid.
* try to use cygpath
* update controls
* cleanup merge mistakes
* correct merge issues
* determine cmake vars if not done before.
* move adding of -l earlier
* more merge cleanup
* fix uwp builds by not transforming libs
* fix patches in io2d
* fix xz download error
* apply code review changes manually
* fix the typos left behind in CR
Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
Co-authored-by: ras0219 <533828+ras0219@users.noreply.github.com>
==== Changes Related to manifests ====
* Add the `manifests` feature flag
* This only says whether we look for a `vcpkg.json` in the cwd, not
whether we support parsing manifests (for ports, for example)
* Changes to the manifests RFC
* `"authors"` -> `"maintainers"`
* `--x-classic-mode` -> `-manifests` \in `vcpkg_feature_flags`
* reserve `"core"` in addition to `"default"`, since that's already
reserved for features
* Add a small helper note about what identifiers must look like
* `<license-string>`: SPDX v3.8 -> v3.9
* `"feature"."description"` is allowed to be an array of strings as well
* `"version"` -> `"version-string"` for forward-compat with versions
RFC
* Add the `--feature-flags` option
* Add the ability to turn off feature flags via passing
`-<feature-flag>` to `VCPKG_FEATURE_FLAGS` or `--feature-flags`
* Add CMake toolchain support for manifests
* Requires either:
* a feature flag of `manifests` in either `Env{VCPKG_FEATURE_FLAGS}`
or `VCPKG_FEATURE_FLAGS`
* Passing the `VCPKG_ENABLE_MANIFESTS` option
* The toolchain will install your packages to
`${VCPKG_MANIFEST_DIR}/vcpkg_installed`.
* Add MSBuild `vcpkg integrate install` support for manifests
* Requires `VcpkgEnableManifest` to be true
* `vcpkg create` creates a port that has a `vcpkg.json` instead of a
`CONTROL`
* argparse, abseil, 3fd, and avisynthplus ports switched to manifest
from CONTROL
* Add support for `--x-manifest-root`, as well as code for finding it if
not passed
* Add support for parsing manifests!
* Add a filesystem lock!
==== Important Changes which are somewhat unrelated to manifests ====
* Rename `logicexpression.{h,cpp}` to `platform-expression.{h,cpp}`
* Add `PlatformExpression` type which takes the place of the old logic
expression
* Split the parsing of platform expressions from checking whether
they're true or not
* Eagerly parse PlatformExpressions as opposed to leaving them as
strings
* Add checking for feature flag consistency
* i.e., if `-binarycaching` is passed, you shouldn't be passing
`--binarysource`
* Add the `Json::Reader` type which, with the help of user-defined
visitors, converts JSON to your internal type
* VcpkgArgParser: place the switch names into a constant as opposed to
using magic constants
* In general update the parsing code so that this ^ works
* Add `Port-Version` fields to CONTROL files
* This replaces the existing practice of
`Version: <my-version>-<port-version>`
==== Smaller changes ====
* small drive-by cleanups to some CMake
* `${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}` ->
`${CURRENT_INSTALLED_DIR}`
* Remove `-analyze` when compiling with clang-cl, since that's not a
supported flag (vcpkg's build system)
* Add a message about which compiler is detected by vcpkg's build
system machinery
* Fix `Expected::then`
* Convert `""` to `{}` for `std::string` and `fs::path`, to avoid a
`strlen` (additionally, `.empty()` instead of `== ""`, and `.clear()`)
* Add `Strings::strto` which converts strings to numeric types
* Support built-in arrays and `StringView` for `Strings::join`
* Add `operator<` and friends to `StringView`
* Add `substr` to `StringView`
* SourceParagraphParser gets some new errors
* [zxing-cpp] Fix build failure
* [libiconv] Add vcpkg-cmake-wrapper to find libcharset
* [zxing-cpp] Use FindIconv and wrapper to find libiconv, add features
* [libiconv] Add include code to wrapper
* remove unfinished "supports" tag
* extract "supports" from control files
But do nothing with the value
* Start `Supports` documentation
* Use Supports in a bunch of control files
I only tried matching the already existing logic in the portfile.cmake.
* Cmake var provider (#8)
* Cmake var provider (#9)
* fix windows build (#10)
* Add missing files to build
* Fix test (#11)
* adding hooks for cmake variables in expressions
* Adding hooks for 'supports' in CI test
* Fix test (#12)
* Add overrides to evaluation environment
* use "supported" tag in CI testing
* cleanup comment
* Fix issues with PR
* [var_provider] Get library linkage variables from triplet
* Fix compilation errors in tests
* Add unimplemented functions
* Fix unit tests part 1
* Fix issue when buildtrees dir does not exist
* Change binary output hash
* Fix handling of * feature
* Add core feature when using *
* Do not add Default-Features when installing 'core'
* [vcpkg] WIP. 6 failing tests.
* [vcpkg] WIP. 1 failing tests.
* [vcpkg] WIP. 0 failing tests.
* [vcpkg] Removed 'remove_graph'. 0 failing tests.
* [vcpkg] Removed 'install_graph'. 0 failing tests.
* [vcpkg] Remove AnyAction; replace with ActionPlan
* [vcpkg] Minor cleanup.
* [vcpkg][z3][qt5-connectivity][qt5-purchasing] Improve error messages while parsing. Fix a few trivial port issues.
* [vcpkg] Work around ICE with MSVC v140
* [vcpkg] Add purge on fail to decompress for CI
* [vcpkg] Fix parsing of nested parentheses in qualifiers
* [vcpkg] Fix Linux builds (explicit qualification in declaration)
* [vcpkg] Fix Build-Depends implying default features. Fix qualified dependencies regression.
* [mmx] Add to skip list and full rebuild -- mmx causes problems by installing 'sched.h'
* [libpqxx][mqtt-cpp] Prevent installing include/CMakeLists.txt
* [cppitertools] Fix installed include namespace (should be include/cppitertools)
* [libsoundio] Move headers into soundio/ subdirectory as per original cmake
* [ci.baseline] Temporarily skip charls due to conflict with dcmtk
* [vcpkg] Add restricted include files post build check -- bump global abi version
* [libsoundio] Hotfix stray line in portfile
* [vcpkg] Fix regression: CMake information was not being displayed for build-and-install actions
* [jsonnet] Fix installation of internal headers; use system nlohmann-json
* [grpc][upb] Teach grpc to use packaged upb. Add find_package(upb). Remove inappropriate upb features.
* [zfp] Move problematic 'include/bitstream.h' to 'include/zfp/bitstream.h'
* [x265] Bump control version to trigger rebuild after zfp conflict
* [akali] Disable parallel configure
* [dirent][dlfcn-win32][getopt-win32][pthreads] Grandfather into VCPKG_POLICY_ALLOW_RESTRICTED_HEADERS
* [ci.baseline] Update baseline for improved upb support
* [tgui] Disable parallel configure
* [libiconv] Enable VCPKG_POLICY_ALLOW_RESTRICTED_HEADERS
* [aws-sdk-cpp] Disable parallel configure
* [vcpkg] Implement policy VCPKG_POLICY_ALLOW_RESTRICTED_HEADERS
* [aws-sdk-cpp] Fix amount of escaping semicolons -- Note: I do not know the root cause requiring this change
* [libodb-sqlite] Fix configuring into source directory
* [gettext] Grandfather into VCPKG_POLICY_ALLOW_RESTRICTED_HEADERS
* [libodb] DISABLE_PARALLEL_CONFIGURE
* [vcpkg] Add 'config.h' and 'local.h' to restricted header list
* [mcpp] Remove unused and problematic include 'config.h' from installed files
* [teemo] Move installed headers into subdirectory to prevent conflicts with x265
* [ci.baseline] Update current OSX. Skip libmesh on all platforms due to heavy conflicts.
* [vcpkg] Add 'slice.h' as a restricted header
* [osg] Improve accuracy of dependencies (disable some, add some to Depends)
* [vcpkg] Skip invoking a subprocess for 0 specs in load_tag_vars
* [ci.baseline] Skip mongo-c-driver on osx due to flakiness
* [teemo] Fix incorrect include file read
* [osg] Fix dependency typo: glut -> freeglut
* [vcpkg] Recover some lost performance with the addition of vcpkg_get_tags.
A huge performance cost was loading the triplet files over and over; instead, we splice the sources into a macro and load it once, then just call that macro for each port.
Remove use of hashing because we aren't cross-process-safe anyway (global static will do instead).
* [vcpkg] Change Supports atom 'windows' to include UWP. Improve Supports field documentation.
* [vcpkg] Add docs for VCPKG_ENV_PASSTHROUGH and VCPKG_DEP_INFO_OVERRIDE_VARS
* Fix typo
Co-authored-by: Curtis J Bezault <curtbezault@gmail.com>
Co-authored-by: Victor Romero <romerosanchezv@gmail.com>
Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
* [vcpkg] post-build cmake test
- test for applications with cmake build system
- Add a test feature to vcpkg core, make progress for #72
- Tests for zlib, bzip2, libiconv and openssl for example
- Test for curl will be failed, because of a bug #3053
It can detect a this type of problems
* [vcpkg_test_cmake] Add MODULE parameter to explicitly specify which type of integration to test.
* [bzip2] Fix casing of cmake module name