If a call to `vcpkg_replace_string` makes no changes i.e doesn't
effectively replace a string, A warning is logged.
This should also help identify ports that no longer need these calls to
fix things in `.pc` files etc.
Avoid wrong use of popular but ambiguous variables (`WIN32` etc.) in
scripts and portfiles by detection in CI.
Sometimes the variables are used wrongly, and sometimes this isn't
caught in PR review. This PR tries to catch those variables (when in the
active code path in script mode). [This can happen to every
contributor](https://github.com/microsoft/vcpkg/pull/34356#discussion_r1360074122),
even if he/she knows the rules ... vcpkg is raising the bar higher than
usual, having to deal with targets and hosts even in script mode.
(`b2-options.cmake` (boost fragment) shows where we get if we don't pay
attention: the same code being used in script mode (`WIN32` meaning
host) and in project mode (`WIN32` meaning target).)
The new check doesn't break any user builds because it relies on command
line options. However it changes the ABI hashes.
introduce `vcpkg_generate_meson_cmd_args` to generate the command line
args vcpkg calls meson with. This needed to be factored out since it
allows calling the meson-py backend of setuptools with the same
arguments as calling meson manually within vcpkg.
additionally:
- fixed `CMAKE_BUILD_TYPE` (var `buildconfig` does not exist)
- add `ADDITIONAL_PROPERTIES` option
- removed a lot of stuff being added to PATH unnecessarily
- added option `--pkgconfig.relocatable` (probably not necessary but we
want this any way.)
- added option `--pkg-config-path` with correct paths (allows removing
the env variables for it)
* [fontconfig] fix pkgconfig file installation (microsoft/vcpkg#35002)
move pkgconfig script into the path indicated by the diagnositic emitted by
vcpkg (see comment 1 of microsoft/vcpkg#35002).
* [fontconfig] force installation of pc files (microsoft/vcpkg#35002)
Undo the last commit and patch meson to force the pc file installation paths
demanded by `vcpkg_fixup_pkgconfig`
* [fontconfig] bump portrevision (microsoft/vcpkg#35002)
* [fontconfig] regenerate versions (microsoft/vcpkg#35002)
* Revert "[fontconfig] regenerate versions (microsoft/vcpkg#35002)"
This reverts commit 8daf0e15a67c376779631442ce926236ba2ed2e4.
* Revert "[fontconfig] bump portrevision (microsoft/vcpkg#35002)"
This reverts commit a9727bc32325238565428e3497ae564d2d255b86.
* Revert "[fontconfig] force installation of pc files (microsoft/vcpkg#35002)"
This reverts commit c0c6e017c7ab255e5532428e68f9d7c6e1ae8aad.
* Revert "[fontconfig] fix pkgconfig file installation (microsoft/vcpkg#35002)"
This reverts commit 616d4ce83e091cd128f4d896fcff81a1de4ed1b9.
* [vcpkg-tool-meson] fix pc-file installation paths on FreeBSD (microsoft#35002)
* [vcpkg-tool-meson] bump portversion (microsoft/vcpkg#35002)
* [vcpkg-tool-meson] regenerate versions (microsoft/vcpkg#35002)
* [vcpkg-tool-meson] Use vcpkg_from_github to obtain source (microsoft/vcpkg#35002)
* [vcpkg-tool-meson] Regenerate versions (microsoft/vcpkg#35002)
* [vcpkg-tool-meson] Use adverticed version of meson (microsoft/vcpkg#35002)
vcpkg@ce9f50f7 has bumped vcpkg-tool-meson's adverticed version to 0.63, but
not updated the `ref` variable, which still points to 0.62.1.
Update meson to 0.63 and use ${VERSION} to avoid similar issues in the future,
and regenerate patches/hashes accordingly.
* [vcpkg-tool-meson] regenerate versions (microsoft/vcpkg#35002)
* Revert "[vcpkg-tool-meson] regenerate versions (microsoft/vcpkg#35002)"
This reverts commit e9a424ef16.
* Revert "[vcpkg-tool-meson] Use adverticed version of meson (microsoft/vcpkg#35002)"
Meson 0.63 can't build gobject-introspection on a tier 1 supported target.
Upgrading meson to 0.63 and handling regressions of that update is out of
scope of #35002 anyways, and should be handled either on it's own PR,
microsoft/vcpkg#28084 or microsoft/vcpkg#35348 .
* update meson and see what breaks
* include patch again.
* update meson to 0.62.1
* remove old patch
* move to 64bit since 32bit not longer exists.
* fix gobject-introspection
* v db
* revert nasm changes
* set MESON_SCRIPT instead of MESON.
* v db
* apply CR
Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
* v db
Co-authored-by: Alexander Neumann <you@example.com>
Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
* fix meson linker detection .....
* bit of code cleanup in vcpkg_configure_meson
* forgot the version stuff
* put cmake back on path because meson is buggy as hell
* update meson to 0.60.1
* add port vcpkg-tool-meson for consistency deprecate usage of tool-meson
* [skip actions] make every port using meson depend on vcpkg-tool-meson
(except pkgconf for now.)
* fix subtle bugs in vcpkg_find_acquire_program
make the port install meson if the system does not provide it.
* make pkgconf depend on meson
* restore old vcpkg_find_acquire_program behavior for versioning
* Update ports/gstreamer/vcpkg.json
remove duplicated dependency
* remove invalid option in glib
* [skip actions] fix ci failures?
* remove invalid option in gstreamer
* try without cmake
* get more logs from meson configure.
* update glib to 2.70.1
* fix typo
* fix pc file of flac
* update meson to 0.60.2
* try the patch from the other pr.
* patch meson .....
* version stuff
* fix port version
* fix gstreamer version
* remove version
* format-manifest
* version stuff
* format manifest again
* revert version stuff
* remove outdated gtk options
* version stuff
* pango version stuff
* correct baseline lost in merge
* Fix fontconfig version db
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>