* 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>
* [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
* [scripts-audit] vcpkg_fixup_pkgconfig
* Neumann-A CR, fix docs
* vcpkg_fixup_pkgconfig bugs
* fix group
* moar fixing
* be more clever around pkg_config_path
* add `vcpkg_host_path_list` so that we can unit test
* move stuff around a bit
* fix bug in vcpkg_host_path_list.cmake
* ras0219 CRs
* [vcpkg/script/meson] add option NO_PKG_CONFIG to skip pkg-config setup
* [vcpkg/script/pkgconfig] move vcpkg_find_acquire_program(PKGCONFIG) into the check section where it is used
* [pkgconf] Update to 1.8.0
* version stuff
* remove unused patch.
* (CR) quote string
* version update.
* [vcpkg docs] Change how documenting port functions works
Instead of using `##`, use comment blocks for documentation.
Also, add some minor docs and change RST -> MD
so we actually get docs generated.
* add CI stuff
* regenerate docs
* fix vcpkg_find_acquire_program to not use _execute_process
* wip
Apply suggestions from code review
Co-authored-by: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com>
* [vcpkg_acquire_msys] Trim list of packages. Introduce defaults.
* [behaviortree-cpp] Fix dynamic dependency on ZMQ
Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
Co-authored-by: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com>
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
* [vcpkg/scripts/pkgconfig] rewrite pkgconfig check for libraries.
* [vcpkg/scripts/pkgconfig] fix more details.
* [vcpkg/scripts/pkgconfig] smaller improvements
* ws change to check functionallity of script for testing.
* [vcpkg/scripts/pkgconfig] update to latest test version
* Revert "ws change to check functionallity of script for testing."
This reverts commit 26269e9e77.
* [nettle] bump control for vcpkg_fixup_pkgconfig test
* [gmp] rerun CI to create new *.pc files
* [gmp/nettle] enable port debug
* [vcpkg/script/pkgconfig] fix path conversion regex for CI
* [CI|OSX] install pkg-config on osx
* [gmp/nettle] disable port debug
* [vcpkg/scripts/pkgconfig] update to latest version of x windows pr
* [zlib] add pkgconfig file
* [zstd] add fixup pkgconfig
* [libpng] add pc file installation
* [bzip2] install pc file and leave a TODO for somebody else ;)
* [bzip2] bump control
* [vcpkg/scripts/pkgconfig] skip checks if pkgconfig cannot be found.
- small bugfix in ignore flags regex
* retry zstd and zlib
* [libpng] retry by adding dl and m to system libraries for osx
* [libpng] add missing vcpkg_fixup_pkgconfig()
* [vcpkg/scripts/pkgconfig] unset var if found.
fixes checks for other configurations which will be always succesful otherwise
* [libpng] bump control
* [libpng] enable port debug to debug osx regression
* ws change to retrigger osx ci and hopeing that it works
* fix typo
* [libpng] remove -lm flag on apple platforms
* ws change to rerun some ports in ci for good measure after the merge with master
* Re-trigger CI test
* [zstd] add pkgconfig
* [zstd] correct debug link
* [vcpkg/script/pkgconfig] - add more search suffixes for static libs
- add additional debug messages for debuging
- fix unsetting of cache variables hiding issues with debug libraries
- fixed pkgconfig fix in the debug case
* [pcre] add pthread dependency to pcre
* [protobuf] fix pkgconfig
* include quotes around the prefix in the case the prefix path was quoted (fixes some regressions)
add option NOT_STATIC_PKGCONFIG to run pkg-config without the --static argument
* [ignition-msgs5] get rid of a dev warning
* [apr] fix apr regression
* [protobuf] fix protobuf regression
* [sdl1] fix regression due to variable expansion of pkg-config. Use similar regex to the library removal for ignored flags.
* [ignition] fix regression
* remove changes of zlib portfile.
* reset changes in osx ci pipeline
* add DISABLE_PARALLEL_CONFIGURE
Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>
Co-authored-by: JackBoosY <yuzaiyang@beyondsoft.com>
Co-authored-by: Billy Robert O'Neal <bion@microsoft.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
* [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.
* update all 16 configure_make ports
* add make wrappers for msvc
* improve make builds
* fix relativ path errors on linux (and osx?)
* revisit all 16 portfiles again
* remove trace from install
* fix relative build path issues.
* bump control of the 16 configure ports
* never forget .... real linux is case sensitive ....
* Revert "bump control of the 16 configure ports"
This reverts commit 40d6d81c01.
* Revert "Revert "bump control of the 16 configure ports""
This reverts commit 9c9851ddfc.
* bump control again for real ci rebuild
* add copy_source
* remove message
* pass parameters to vcpkg_build_make
* fix healpix build.
* fix libmagic regression
* fix libwandio regression
* pfring changes regression fix? (cannot test in wsl)
* ws change to retrigger CI
* fix libpq regression
* fix libudns regression
* add share/pkgconfig to PKG_CONFIG_PATH
* cleanup of deprecated options
* cleanup docs
* Revert "bump control again for real ci rebuild"
This reverts commit b4bc18edc2.
* shared binaries on linux should stay in lib. Only dlls are mvoed to bin
* move pkgconfig check and add message about missing system packages
* added autopoint as a build requirement
* fix prerun shell working dir.
* a few fixes from the x windows pr
- add libpath setting
- fixed pkgconfig search on windows platforms
- fixed autopoint msys package on windows
* fix release prefix
* minimal cleanup and ws changes to trigger true CI rebuild
* fix tcl by upgrading
* remove unnecessary rename
* fix pfring? can't test in WSL. Linux kernel headers required.
* fix lowercase in patch
* fix libwandio
* remove x264 from fail list
* replace wrappers with wrappers from automake
* update make ports
* remove unnecessary message
* refactor vcpkg_configure_make
* [tcl] remove stray ?
* [farmhash] fix build
* [freexl] ws change to retrigger ci build
* [x264] add pthread as a dependency
* [vcpkg/scripts] add ignore flag correctly
* [sdl] fix vcpkg_fixup_pkgconfig call
* [farmhash/freexl] delete configure and recreate it.
* [libudns] remove trailing ?
* [freexl] use empty build target
* [freexl] add system library; remove previous change
* Update ports/x264/portfile.cmake
Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>
* [libwandio] remove unncessary comment
Co-authored-by: dan-shaw <51385773+dan-shaw@users.noreply.github.com>
Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>
* add new function vcpkg_fixup_pkgconfig
* make message with changed files a debug_message
* add two more cases to the debug *.pc files
* comment out prefix.
use --define-variable=prefix=INSTALL_PATH
* changed the comment header.
* add missing word
* finish vcpkg_fixup_pkgconfig.cmake
* Update vcpkg_fixup_pkgconfig.cmake
Note: since CMake is run in script mode the description of VCPKG_FIXUP_PKGCONFIG_CALLED cannot be viewed
* transfer changes from x windows pr
* fix typo in regex
* make the regex comment aware
make pc files relocatable by using ${pcfiledir} in prefix
tested with x window pr