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.
In an internal version of Visual Studio, `arrow`, `concurrencpp` and
`qtwebengine` install failed with following error:
```
arrow: \cpp\src\arrow/json/object_writer.h(39): error C2039: 'string': is not a member of 'std'
concurrencpp: \include\concurrencpp/threads/thread.h(23): error C2039: 'string': is not a member of 'std'
qtwebengine: \src\3rdparty\gn\src\gn\escape.h(77): error C2039: 'string': is not a member of 'std'
```
This issue caused by the STL PR:
https://github.com/microsoft/STL/pull/4633, and according to Stephan's
suggestion, the affected files need to include the `Standard <string>
header`.
I have submitted an issue on the qt upstream:
https://bugreports.qt.io/browse/QTBUG-126156
- [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.
* Run through the macOS update instructions one more time. I think
they're in a pretty good state now since this is the first attempt to
rerun them since we dropped Vagrant.
* Removed Parallels references for arm64.
* Removed references to removing Vagrant because it's no longer on any
of the hosts.
* Update macOS to 14.5.
* Update XCode CLT to 14.3.
Fixes#38968.
- [x] Changes comply with the [maintainer
guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md).
- [x] SHA512s are updated for each updated download.
- [x] The "supports" clause reflects platforms that may be fixed by this
new version.
- [x] Any fixed [CI
baseline](https://github.com/microsoft/vcpkg/blob/master/scripts/ci.baseline.txt)
entries are removed from that file.
- [x] 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.
Changes:
* added patch for CVE-2024-36048 to `qtnetworkauth`.
Fixes#38962.
Fixes#38966.
- [x] Changes comply with the [maintainer
guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md).
- [x] SHA512s are updated for each updated download.
- [x] The "supports" clause reflects platforms that may be fixed by this
new version.
- [x] Any fixed [CI
baseline](https://github.com/microsoft/vcpkg/blob/master/scripts/ci.baseline.txt)
entries are removed from that file.
- [x] 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.
Changes:
* update Qt5 to 5.15.14 following [these
instructions](https://github.com/microsoft/vcpkg/pull/24660#issuecomment-1124329485).
* added patch for CVE-2024-36048 to `qt5-networkauth`.
* removed patch for CVE-2023-32762 from `qt5-base` as Qt 5.15.14 is no
longer affected.
* removed patch for CVE-2023-33285 from `qt5-base` as Qt 5.15.14 is no
longer affected.
* removed patch for CVE-2023-32573 from `qt5-svg` as Qt 5.15.14 is no
longer affected.
- Fix control of cups dependency
- Fix binary and directory name collision in dynamic builds by not
deploy plugins into tools/Qt6/bin (wasn't necessary in the first place
due to qt.conf working as expected) (closes#28340)
- (New) Fix deploy script on windows (closes#38936)
- Fix dbus linkage as described here
https://github.com/microsoft/vcpkg/pull/38682#issuecomment-2106308954
- Fix qtwebengine resource location to be in line what is stated in the
generated `qt.conf`. There is probably a variable to control the
installation location but moving was simpler then trying to find that
variable. You will only notice it if you actually try to run a program
using QtWebEngineProcess with the same `qt.conf`
Update quill port from 3.9.0 to 4.1.0 :
https://github.com/odygrd/quill/releases/tag/v4.0.1https://github.com/odygrd/quill/releases/tag/v4.0.0
This version brings major changes to the library. It is now header only.
The ability to easily devendor fmt was removed, but the one bundled with
quill is now encapsulated behind a distinct namespace, so it should not
conflict with libraries using the vcpkg fmt port.
- [x] Changes comply with the [maintainer
guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md).
- [x] 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.
- at-spi2-core used to be satisfied by a system package in the linux CI
image, noticed in the host build in android CI.
- dbus used to be provided by a system dev package in the linux CI. The
automatic configuration chooses "linked" mode in this case. With the
system package remove from CI, this auto configuration created an
installation order dependency due to the lack of a dbus dependency.
Noticed in some CI runs, e.g.
https://github.com/microsoft/vcpkg/pull/38618.
- libclang probably became a dependency for qdoc with 5.15, but nobody
noticed.
- pcre2 has a default feature jit which is causing problems, #38604.
This PR unblocks opt-put from pcre2[jit] in qt5-base.
---------
Co-authored-by: MonicaLiu <110024546+MonicaLiu0311@users.noreply.github.com>
Co-authored-by: Monica <liuyumei01@beyondsoft.com>
Not everyone will need assistant as host feature as not everyone uses
local Qt documentation. The Qt documentation format is also not that
commonly used outside of Qt itself. Assistant pulls in additional
uncommonly used dependencies litehtml and gumbo.
- [x] Changes comply with the [maintainer
guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md).
- [x] SHA512s are updated for each updated download.
- [x] The "supports" clause reflects platforms that may be fixed by this
new version.
- [x] Any fixed [CI
baseline](https://github.com/microsoft/vcpkg/blob/master/scripts/ci.baseline.txt)
entries are removed from that file.
- [x] 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.
Fixes regression:
https://dev.azure.com/vcpkg/public/_build/results?buildId=102737&view=results
````
REGRESSION: lunarg-vulkantools:x64-linux failed with BUILD_FAILED
REGRESSION: qt5-serialbus:x64-linux failed with BUILD_FAILED
````
Error:
````
/usr/bin/ld: /mnt/vcpkg-ci/b/krb5/x64-linux-dbg/lib/gssapi/krb5/../../.././../src/krb5-1-8a38cd677f.clean/src/lib/gssapi/krb5/export_name.c:61: undefined reference to `krb5_free_context'
````
Add option _--gssapi=no_ to disable use feature gssapi
Remove
````
lunarg-vulkantools:x64-linux=fail
qt5-serialbus:x64-linux=fail
````
from ci.baseline.txt
- [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: Jon <v-zhli17@microsoft.com>
- [x] Changes comply with the [maintainer
guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md).
- [x] 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.
This removes the transitive dependency of liblzma via tiff
- [x] Changes comply with the [maintainer
guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md).
- [x] SHA512s are updated for each updated download.
- [x] The "supports" clause reflects platforms that may be fixed by this
new version.
- [x] Any fixed [CI
baseline](https://github.com/microsoft/vcpkg/blob/master/scripts/ci.baseline.txt)
entries are removed from that file.
- [x] 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: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com>
Co-authored-by: Alexander Neumann <you@example.com>
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
- [x] Changes comply with the [maintainer
guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md).
- [x] SHA512s are updated for each updated download.
- [x] The "supports" clause reflects platforms that may be fixed by this
new version.
- [x] Any fixed [CI
baseline](https://github.com/microsoft/vcpkg/blob/master/scripts/ci.baseline.txt)
entries are removed from that file.
- [x] 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.
<!-- If your PR fixes issues, please note that here by adding "Fixes
#NNNNNN." for each fixed issue on separate lines. -->
<!-- If you are still working on the PR, open it as a Draft:
https://github.blog/2019-02-14-introducing-draft-pull-requests/. -->
<!-- If this PR updates an existing port, please uncomment and fill out
this checklist:
- [ ] 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.
- [ ] The version database is fixed by rerunning `./vcpkg x-add-version
--all` and committing the result.
- [ ] Only one version is added to each modified port's versions file.
END OF PORT UPDATE CHECKLIST (delete this line) -->
<!-- If this PR adds a new port, please uncomment and fill out this
checklist:
- [ ] Changes comply with the [maintainer
guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md).
- [ ] The name of the port matches an existing name for this component
on https://repology.org/ if possible, and/or is strongly associated with
that component on search engines.
- [ ] Optional dependencies are resolved in exactly one way. For
example, if the component is built with CMake, all `find_package` calls
are REQUIRED, are satisfied by `vcpkg.json`'s declared dependencies, or
disabled with
[CMAKE_DISABLE_FIND_PACKAGE_Xxx](https://cmake.org/cmake/help/latest/variable/CMAKE_DISABLE_FIND_PACKAGE_PackageName.html).
- [ ] The versioning scheme in `vcpkg.json` matches what upstream says.
- [ ] The license declaration in `vcpkg.json` matches what upstream
says.
- [ ] The installed as the "copyright" file matches what upstream says.
- [ ] The source code of the component installed comes from an
authoritative source.
- [ ] The generated "usage text" is accurate. See
[adding-usage](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/examples/adding-usage.md)
for context.
- [ ] The version database is fixed by rerunning `./vcpkg x-add-version
--all` and committing the result.
- [ ] Only one version is in the new port's versions file.
- [ ] Only one version is added to each modified port's versions file.
END OF NEW PORT CHECKLIST (delete this line) -->
Problem occurs on x64-linux-dynamic.
```
warning: There should be no absolute paths, such as the following, in an installed package:
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic
/home/XXX/prog/vcpkg/installed
/home/XXX/prog/vcpkg/buildtrees/qtbase
/home/XXX/prog/vcpkg/downloads
Absolute paths were found in the following files:
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/debug/lib/pkgconfig/Qt6Concurrent.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/debug/lib/pkgconfig/Qt6Core.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/debug/lib/pkgconfig/Qt6DBus.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/debug/lib/pkgconfig/Qt6Gui.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/debug/lib/pkgconfig/Qt6Network.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/debug/lib/pkgconfig/Qt6OpenGL.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/debug/lib/pkgconfig/Qt6OpenGLWidgets.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/debug/lib/pkgconfig/Qt6Platform.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/debug/lib/pkgconfig/Qt6PrintSupport.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/debug/lib/pkgconfig/Qt6Sql.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/debug/lib/pkgconfig/Qt6Test.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/debug/lib/pkgconfig/Qt6Widgets.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/debug/lib/pkgconfig/Qt6Xml.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/lib/pkgconfig/Qt6Concurrent.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/lib/pkgconfig/Qt6Core.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/lib/pkgconfig/Qt6DBus.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/lib/pkgconfig/Qt6Gui.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/lib/pkgconfig/Qt6Network.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/lib/pkgconfig/Qt6OpenGL.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/lib/pkgconfig/Qt6OpenGLWidgets.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/lib/pkgconfig/Qt6Platform.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/lib/pkgconfig/Qt6PrintSupport.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/lib/pkgconfig/Qt6Sql.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/lib/pkgconfig/Qt6Test.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/lib/pkgconfig/Qt6Widgets.pc
/home/XXX/prog/vcpkg/packages/qtbase_x64-linux-dynamic/lib/pkgconfig/Qt6Xml.pc
error: Found 1 post-build check problem(s). To submit these ports to curated catalogs, please first correct the portfile: /home/XXX/prog/vcpkg/ports/qtbase/portfile.cmake
```
- [ ] Changes comply with the [maintainer
guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md).
- [X] 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.
<!-- If your PR fixes issues, please note that here by adding "Fixes
#NNNNNN." for each fixed issue on separate lines. -->
<!-- If you are still working on the PR, open it as a Draft:
https://github.blog/2019-02-14-introducing-draft-pull-requests/. -->
<!-- If this PR updates an existing port, please uncomment and fill out
this checklist: -->
- [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.
<!-- If this PR adds a new port, please uncomment and fill out this
checklist:
- [ ] Changes comply with the [maintainer
guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md).
- [ ] The name of the port matches an existing name for this component
on https://repology.org/ if possible, and/or is strongly associated with
that component on search engines.
- [ ] Optional dependencies are resolved in exactly one way. For
example, if the component is built with CMake, all `find_package` calls
are REQUIRED, are satisfied by `vcpkg.json`'s declared dependencies, or
disabled with
[CMAKE_DISABLE_FIND_PACKAGE_Xxx](https://cmake.org/cmake/help/latest/variable/CMAKE_DISABLE_FIND_PACKAGE_PackageName.html).
- [ ] The versioning scheme in `vcpkg.json` matches what upstream says.
- [ ] The license declaration in `vcpkg.json` matches what upstream
says.
- [ ] The installed as the "copyright" file matches what upstream says.
- [ ] The source code of the component installed comes from an
authoritative source.
- [ ] The generated "usage text" is accurate. See
[adding-usage](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/examples/adding-usage.md)
for context.
- [ ] The version database is fixed by rerunning `./vcpkg x-add-version
--all` and committing the result.
- [ ] Only one version is in the new port's versions file.
- [ ] Only one version is added to each modified port's versions file.
END OF NEW PORT CHECKLIST (delete this line) -->
this PR updates an existing port by sync feature's "platform" with its
dependencies
- [x] Changes comply with the [maintainer
guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md).
- [x] SHA512s are updated for each updated download.
- [x] The "supports" clause reflects platforms that may be fixed by this
new version.
- [x] Any fixed [CI
baseline](https://github.com/microsoft/vcpkg/blob/master/scripts/ci.baseline.txt)
entries are removed from that file.
- [x] 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.