==== 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
* [ffmpeg] Allow gpl builds without avisynthplus
* Update CONTROL
Co-authored-by: Billy Robert O'Neal <bion@microsoft.com>
Co-authored-by: Lily <47812810+LilyWangL@users.noreply.github.com>
* [openssl] Update version to 1.1.1g
* [openssl] Disable build tests
* [openssl-unix][openssl-uwp] use vcpkg_fail_port_install
* [openssl] Applying PR #11003 Suggestions
The suggested changes from PR #11003
Along with one additional to remove the deprecated vcpkg_test_cmake from openssl-uwp\portfile.cmake as well.
* Update ports/openssl-uwp/portfile.cmake
Co-authored-by: crackedmind <digital.stream.of.mind@gmail.com>
Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
* [ignition-plugin1] Add new port
* vcpkg_fixup_cmake_targets: Add DO_NOT_DELETE_PARENT_CONFIG_PATH
By default the vcpkg_fixup_cmake_targets script remove the parent
path of CONFIG_PATH if it named "cmake", this behaviour is not convenient
for ports that install more than one CMake package config file, and
for which vcpkg_fixup_cmake_targets is invoked multiple times.
To optionally disable this behaviour, this commit adds the option
DO_NOT_DELETE_PARENT_CONFIG_PATH to vcpkg_fixup_cmake_targets.
* [ignition-modularscripts] Add support for ignition libraries that install multiple CMake package config files
Some ignition libraries install several CMake package config files,
to represent the different components of the library. This commit modifies
the ignition_modular_library function to fixup correctly all the cmake package config files.
* vcpkg_fixup_pkgconfig: Move definition of SYSTEM_LIBRARIES to vcpkg_common_definitions
To correctly validate installed pkg-config files, vcpkg_fixup_pkgconfig needs to know
for each platform which libraries are not managed by vcpkg. This commits improve this
definitions for all the triplet supported by vcpkg, and move this definition to vcpkg_common_definitions
in a way that permit custom triplets to overload its value.
* Add Bitmagic Port file
* Renamed to Bitmagic
* Added bitmagic portfile
* Added lower case to capital letter to match
* Edited path for header files
* Removed function vcpkg_configure_cmake()
* fix windows-static for don't export symbols
/* export symbols by default, this is necessary for copy pasting the C and header file */
#if !defined(CJSON_HIDE_SYMBOLS) && !defined(CJSON_IMPORT_SYMBOLS) && !defined(CJSON_EXPORT_SYMBOLS)
#define CJSON_EXPORT_SYMBOLS
#endif
* Update CONTROL
* [hdf5] Update HDF5 to 1.12 and use github live-clones instead of binary download
* [hdf5] bump control
* [hdf5] fix szip and typo about linkage
* [hdf5] add missing package namespace.... they somehow missed to set it?
* [hdf5] retry without "
* [field3d] fix regression and update. Remove windows as unsupported since the cmakelists tries to support windows
* fix typo
* remove ws
Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
* linebreak first patch
Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
* ws change
Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
* [field3d] update copying installation
* [hdf5] use official github repo
* clean baseline
Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>
* [cgns] add port cgns
* [paraview] add new port
* [paraview] correct dependencies; disable catalyst
* [VTK/ParaView] Make ParaView build
* [paraview] add missing patch
* [paraview] add cgns patch
* [paraview] add qt plugin patches back in. Remove in the future
* [vtk] slightly improved patches
* [vtk] don't disable findPython
* [paraview] add more features
* [paraview] remove X11Extras from OSX
* [vtk] make vtk workcorrectly with python and prepare for paraview with python
* [paraview] Python fixes
* [paraview] small bin -> lib replacement fix for static builds
* [vtk] fix patch path
* update baseline to exclude paraview for the time being on osx and linux.
requires a fix in qt5-base linkage of libpq.
* [paraview]try setting LD_LIBRARY_PATH for unix systems
* [paraview] a bit of cleanup
* update baseline
* fix typo in baseline
* [paraview] remove unnecessary patch
* [vtk] replace custom patch with upstream patch
* [paraview] cleanup in the portfile.
* Update ports/paraview/CONTROL
Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>
* [qhull] Update the library version to 8.0.0 (2020.1)
* [qhull] Update the patches:
* uwp.patch has been removed
* mac-fix.patch is updated. Now C++11 is required to compile the library