Fixes `OUTPUT_VARIABLE`, `ERROR_VARIABLE`.
vcpkg always wants logfiles. CMake (`execute_process`) doesn't send
stdout/stderr to files and variables at the same time, and even "the
precedence is not specified". So simultaneous output has to be handled
in `vcpkg_execute_required_process`.
At this occasion, port the arguments for stripping trailing whitespace.
`tensorflow-common` implicitly relied on the broken behavior. I chose
the minimal fix: drop the pointless calls, just set the empty value.
Resolves https://github.com/microsoft/vcpkg/issues/35566
This pr includes https://github.com/microsoft/vcpkg/pull/31159 and
https://github.com/microsoft/vcpkg/pull/35399
Ports changed in this pr:
Most of these changes stem from the fact that protobuf now depends on
abseil and requires c++14 while ports consume protobuf using
`target_link_libraries(lib ${Protobuf_LIBRARIES})` instead of
`target_link_libraries(lib PUBLIC protobuf::libprotobuf)`.
* **abseil** Updated to 03/04/2024 to address MSVC build issue in
openvino
* **arcus** Updated to 4.13.2
* **braft** Patched to use `find_package(Protobuf` instead of custom
FindProtobuf module. also link with `PUBLIC protobuf::libprotobuf)`.
* **brpc** Patch several `target_link_library` calls to include `PUBLIC`
instead of nothing. Patch some warnings that are treated as errors by
some OSX compiler. Patch usage of changed protobuf features most
importantly removal of `SetLogHandler`, tbd whether this patch is
acceptable with upstream.
* **cld3** Use CONFIG to find protobuf to propagate dependent abseil
libs and cxx14 correctly.
* **ecal** Use CONFIG to find protobuf. Use PUBLIC when linking it.
* **gamenetworkingsockets** Add `-DCMAKE_FIND_PACKAGE_PREFER_CONFIG=on`
for protobuf.
* **gz-transport12** Update to fix usage of removed protobuf features.
* **ignition-msgs1/5/6** Remove protobuf version check which is confused
by the duplicate versioning scheme (v25.1 vs. 3.25.1 vs 4.x). Why are we
even maintaining this no longer maintained major version of this port? I
would welcome a more strict policy on removing ports/adding them to
ci.baseline.txt
* **ignition-transport4/8/9** Same as above + cherry-pick a protobuf
deprecation patch.
* **libprotobuf-mutator** Cherry-pick two commits to address altered
protobuf functionality. Add CONFIG and PUBLIC to protobuf handling in
CMake.
* **marble** Explicitly set protobuf to not found since it is not part
of the vcpkg.json but is made available transitively but another
dependency.
* **mysql-connector-cpp** Several CMake changes and removal of
protobuf::SetLogHandler patch.
* **openvino** Find protobuf using CONFIG
* **osgearth** Link libraries using PUBLIC and link with
protobuf::libprotobuf instead of Protobuf_LIBRARIES
* **paraview** Find protobuf using CONFIG and remove version check
* **pulsar-client-cpp** Add protobuf linkage to PULSAR_OBJECT_LIB.
Simplify protoc patch. Remove -Werror.
* **shogun** Update and patch as much as possible. Users are required to
override bitsery version to 4.x to use shogun since it does not support
5.x provided by vcpkg. Therefore add shogun to ci.baseline.txt.
* **srpc** Update and fix static crt linkage. Patch protobuf linkage and
remove hardcoded `-std=c++11` flag. Protobuf requires c++14 and CMake
does not recognize the hardcoded c++11 flag and will therefore not add a
c++14 flag when the compiler uses c++14 by default.
* **upb** Update to align version with protobuf/grpc and use new github
repo. Patch usual CMake mess (they do not support CMake officially)
which should probably be `unofficial-upbConfig.cmake` but I didn't dig
into downstream implications so I kept it at `upbConfig.cmake` as
before.
* **utf8-range** Update to allign version with protobuf.
while playing with qtbase on x64-uwp i found that it could not pass a
try_compile command since important variables are not correctly
forwarded. As such I concluded that the handling of try_compile in vcpkg
is completely wrong.
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.
Passing on
https://dev.azure.com/vcpkg/public/_build/results?buildId=103938&view=results.
```
PASSING, REMOVE FROM FAIL LIST: c4core:arm-neon-android
PASSING, REMOVE FROM FAIL LIST: botan:arm-neon-android
PASSING, REMOVE FROM FAIL LIST: concurrencpp:arm-neon-android
PASSING, REMOVE FROM FAIL LIST: cppgraphqlgen:arm-neon-android
PASSING, REMOVE FROM FAIL LIST: graphicsmagick:arm-neon-android
PASSING, REMOVE FROM FAIL LIST: libcoro:arm-neon-android
PASSING, REMOVE FROM FAIL LIST: ms-ifc-sdk:arm-neon-android
PASSING, REMOVE FROM FAIL LIST: stx:arm-neon-android
PASSING, REMOVE FROM FAIL LIST: yoga:arm-neon-android
PASSING, REMOVE FROM FAIL LIST: c4core:x64-android
PASSING, REMOVE FROM FAIL LIST: botan:x64-android
PASSING, REMOVE FROM FAIL LIST: concurrencpp:x64-android
PASSING, REMOVE FROM FAIL LIST: cppgraphqlgen:x64-android
PASSING, REMOVE FROM FAIL LIST: graphicsmagick:x64-android
PASSING, REMOVE FROM FAIL LIST: libcoro:x64-android
PASSING, REMOVE FROM FAIL LIST: ms-ifc-sdk:x64-android
PASSING, REMOVE FROM FAIL LIST: stx:x64-android
PASSING, REMOVE FROM FAIL LIST: yoga:x64-android
PASSING, REMOVE FROM FAIL LIST: c4core:arm64-android
PASSING, REMOVE FROM FAIL LIST: botan:arm64-android
PASSING, REMOVE FROM FAIL LIST: concurrencpp:arm64-android
PASSING, REMOVE FROM FAIL LIST: cppgraphqlgen:arm64-android
PASSING, REMOVE FROM FAIL LIST: graphicsmagick:arm64-android
PASSING, REMOVE FROM FAIL LIST: libcoro:arm64-android
PASSING, REMOVE FROM FAIL LIST: ms-ifc-sdk:arm64-android
PASSING, REMOVE FROM FAIL LIST: stx:arm64-android
PASSING, REMOVE FROM FAIL LIST: yoga:arm64-android
```
Added `c4core` to `ci.baseline.txt` by #29406, which has been fixed by
#39287.
Added `botan` to `ci.baseline.txt` by #37252, which has been fixed by
#38975.
Added `concurrencpp` to `ci.baseline.txt` by #29406, which may have been
fixed by #39160.
Added `cppgraphqlgen` to `ci.baseline.txt` by #29406, which may have
been fixed by #38975.
Added `graphicsmagick` to `ci.baseline.txt` by #29406, which has been
fixed by #39210.
Added `libcoro` to `ci.baseline.txt` by #30623, which may have been
fixed by #38975.
Added `ms-ifc-sdk` to `ci.baseline.txt` by #35972, which may have been
fixed by #39210.
Added `stx` to `ci.baseline.txt` by #29406, which may have been fixed by
#38975.
Added `yoga` to `ci.baseline.txt` by #37507, which may have been fixed
by #38975.
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.
Fixes#38764, update `7zip` to 24.06.
No feature needs to be tested, the usage test passed on
`x64-windows`(header files found):
```
7zip provides CMake targets:
# this is heuristically generated, and may not be correct
find_package(7zip CONFIG REQUIRED)
target_link_libraries(main PRIVATE 7zip::7zip)
```
msys2-runtime no longer supports Windows 7 since version 3.5.
msys2-runtime-3.4 is the replacement for user who cannot upgrade. YMMV.
autoconf-wrapper is not updated, cf. #36774.
pkgconf is not updated, waiting for 2.2.
Passing on
https://dev.azure.com/vcpkg/public/_build/results?buildId=103701&view=results.
Added `clockutils:x64-linux=fail` to `ci.baseline.txt` by #9203, which
has been fixed by #38834.
```
PASSING, REMOVE FROM FAIL LIST: clockutils:x64-linux
```
- [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: Monica <v-liumonica@microsoft.com>
Fixes#37189
- [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.
Fix incorrect entries of `scripts/ci.baseline.txt`.
Fix#38787, won't fix downstream `rmqcpp` for #38736.
* Keep skip in CI
- Conflict dependencies `pcre2`, `ryu` in #32645
* Disable `android`
- There is a weird error that failed to find
`BdeBuildSystem/bbs_runtest.py` by
`BdeBuildSystem/BdeBuildSystemConfig.cmake`
* Disable `arm64-windows`
- Failed with `groups\bsl\bsls\bsls_platform.h(419): fatal error C1189:
#error: "Unable to identify CPU on which the MSVC compiler is running."`
* Disable `uwp`
- Failed with `groups\bdl\bdlb\bdlb_randomdevice.cpp(93): error C3861:
'CryptAcquireContext': identifier not found`
* Check `scripts/ci.baseline.txt`
- Checked by `Get-Content ./scripts/ci.baseline.txt | Select-String
-NotMatch '^#' | Select-String -NotMatch
':(arm-neon-android|arm64-android|arm64-osx|arm64-uwp|arm64-windows|x64-android|x64-linux|x64-osx|x64-uwp|x64-windows|x64-windows-static|x64-windows-static-md|x86-windows)\s*='`
```
PASSING, REMOVE FROM FAIL LIST: hdf5:arm-neon-android
PASSING, REMOVE FROM FAIL LIST: hdf5:x64-android
PASSING, REMOVE FROM FAIL LIST: hdf5:arm64-android
PASSING, REMOVE FROM FAIL LIST: hdf5:arm64-windows
```
Passing on
https://dev.azure.com/vcpkg/public/_build/results?buildId=103642&view=results.
The installation of `hdf5:arm64-windows` and androids triplet were fixed
by PR https://github.com/microsoft/vcpkg/pull/38911.
Other ports are dependent on `hdf5`, so add them fail status of androids
triplet in `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: Lily Wang <v-lilywang@microsoft.com>
* 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:
~~~
CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
Compatibility with CMake < 3.5 will be removed from a future version of
CMake.
~~~
Add test-engine feature to the imgui port:
https://github.com/ocornut/imgui_test_engine
I made it a feature because they both depend on each other to build,
that's why it is a feature instead of a new 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.
libidn2: Enable android support.
libgnutls: CCAS defaults to CC, but CCASFLAGS would lack what we move to
CPPFLAGS.
---------
Co-authored-by: Monica <v-liumonica@microsoft.com>
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
- Change homepage URLs to point to documentation instead of GH.
- Allow encoding alternative propagation of `supports`/`platform` so
that changes don't need to be selected manually.
- Allow to suppress the generated dependency `platform` expression when
a dependency is non-optional.
(`boost-parameter` requires `boost-python`, and the dependency
transitively determines the supported platforms of the dependent port.)
- For port `boost`, generate `platform` expression from transitive
`supports` limitations.
(`boost-parameter` platform expression must account for `boost-python`.)
This fixes port `boost` for uwp. And so it can now be directly
referenced from `vcpkg-ci-boost` which is already enforced to `pass` in
ci.baseline.txt. 🎉
- Restores sorting of `$portData`.
- Use the same tarball download area and naming as `vcpkg install`.
This PR doesn't include the updates to `boost-container` (#38806),
`bost-interprocess` (#38815) and boost-math (#38728)
This updates the included NuGet to the currently supported version,
v6.10.0.
Relates to - but does not fix - #38871
Co-authored-by: Jesper Stemann Andersen <jsa@hafniumlabs.com>
Refactor curl port:
- Add test
- Refine dependencies patch
- gssapi feature is not for windows
<!-- 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/. -->
- [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 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) -->
Co-authored-by: WangWeiLin-MV <156736127+WangWeiLin-MV@users.noreply.github.com>
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>
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'
````
- [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.~~
- [ ] ~~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>
Fix one of [32398](https://github.com/microsoft/vcpkg/issues/32398)
issue.
```
/mnt/vcpkg/buildtrees/libodb/src/libodb-2-59eaf93c2b.clean/odb/details/shared-ptr/base.hxx:38:49: error: ISO C++17 does not allow dynamic exception specifications
38 | operator new (std::size_t, odb::details::share) throw (std::bad_alloc);
| ^~~~~
/mnt/vcpkg/buildtrees/libodb/src/libodb-2-59eaf93c2b.clean/odb/details/shared-ptr/base.hxx:65:34: error: ISO C++17 does not allow dynamic exception specifications
65 | operator new (std::size_t) throw (std::bad_alloc);
| ^~~~~
/mnt/vcpkg/buildtrees/libodb/src/libodb-2-59eaf93c2b.clean/odb/details/shared-ptr/base.hxx:68:41: error: ISO C++17 does not allow dynamic exception specifications
68 | operator new (std::size_t, share) throw (std::bad_alloc);
| ^~~~~
In file included from /mnt/vcpkg/buildtrees/libodb/src/libodb-2-59eaf93c2b.clean/odb/details/shared-ptr/base.hxx:108,
from /mnt/vcpkg/buildtrees/libodb/src/libodb-2-59eaf93c2b.clean/odb/details/shared-ptr/base.cxx:5:
/mnt/vcpkg/buildtrees/libodb/src/libodb-2-59eaf93c2b.clean/odb/details/shared-ptr/base.ixx:67:34: error: ISO C++17 does not allow dynamic exception specifications
67 | operator new (std::size_t n) throw (std::bad_alloc)
| ^~~~~
/mnt/vcpkg/buildtrees/libodb/src/libodb-2-59eaf93c2b.clean/odb/details/shared-ptr/base.ixx:73:41: error: ISO C++17 does not allow dynamic exception specifications
73 | operator new (std::size_t n, share) throw (std::bad_alloc)
| ^~~~~
/mnt/vcpkg/buildtrees/libodb/src/libodb-2-59eaf93c2b.clean/odb/details/shared-ptr/base.cxx:57:48: error: ISO C++17 does not allow dynamic exception specifications
57 | operator new (size_t n, odb::details::share s) throw (std::bad_alloc)
```
Fix the syntax not supported by C++17 and modify the export file name.
- [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.~~
- [X] 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.
Usage test pass with following triplets:
```
x64-windows
```
Compile test pass with following triplets:
```
x64-windows
x64-linux
```
Fix osx. Closes https://github.com/microsoft/vcpkg/issues/38595.
Enable install for static library linkage triplets. (osx and linux CI!)
Fixes#29445.
Enable arm64 linux and windows.
Install all binaries and headers from upstream's package.
Install non-DLL shared objects to `lib`.
Update. Simplify. Facilitate future updates.
[Pipelines - Run 20240504.1
(azure.com)](https://dev.azure.com/vcpkg/public/_build/results?buildId=102586&view=results)
encountered this error:
````
PASSING, REMOVE FROM FAIL LIST: omplapp:arm-neon-android
PASSING, REMOVE FROM FAIL LIST: omplapp:x64-android
PASSING, REMOVE FROM FAIL LIST: omplapp:arm64-android
````
So remove omplapp to 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.~~
- [x] 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.~~
Co-authored-by: Jon <v-zhli17@microsoft.com>
~~arm64-windows: boost-context builds are blocked by a cmake bug (see
https://gitlab.kitware.com/cmake/cmake/-/issues/24317)~~
closes#32274
closes https://github.com/Neumann-A/my-vcpkg-triplets/issues/5
Questions:
- [x] ~~Move cmake files to `share/cmake/<name>` ?~~ Not doing it
because it is just using `vcpkg_cmake_config_fixup()`
- [x] Fix weak dependencies (uwp|emscripten|android|arm)?
- [x] Fix library names on !x64 (currently hardcoded to x64 or x86;
failure in aricpp since it forces FindBoost module mode.)
- [x] ~~Fix arm64-windows boost-context builds -> requires CMake
(3.19.2?) update due to bug how the assembler is invoked.~~ (-> CI
baseline for now)
TODO:
- [x] adjust generate ports script
- [x] #37457
---------
Co-authored-by: Cheney-Wang <850426846@qq.com>
closes#36801closes#36253closes#36044
~~includes #24327 to fix dlib linkage in the osx pipelines.~~
Need to look at
~~#36044~~
~~#36345~~
merge after
- [x] #37561
---------
Co-authored-by: Alexander Neumann <you@example.com>
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
<!-- 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/. -->
- [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 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) -->
---
1. Apologies for the _huge_ PR, but these packages are interdependent,
making it difficult to separate them into individual PRs.
2. The main focus of this PR is to update the following ports: folly,
fizz, wangle, proxygen, mvfst, and fbthrift. Additionally, rsocket needs
to be updated due to its reliance on folly. It is concerning that
rsocket has not been updated since 2021, while folly is actively
developed and maintained.
3. This PR also consolidates some patches into a single one, as some
patches modify the same file.
4. I need to include the cachelib package in the CI baseline file
because it depends on the libaio system package. I can achieve a
successful build locally when libaio is installed. Note that cachelib is
also updated to the latest available version.
```
$ sudo apt search libaio
Sorting... Done
Full Text Search... Done
libaio-dev/mantic,now 0.3.113-5 amd64 [installed]
Linux kernel AIO access library - development files
libaio1/mantic,now 0.3.113-5 amd64 [installed,automatic]
Linux kernel AIO access library - shared library
$ vcpkg install cachelib
Computing installation plan...
The following packages will be built and installed:
cachelib:x64-linux@2024.04.15.00
* fbthrift:x64-linux@2024.04.15.00
* fizz:x64-linux@2024.04.15.00
* folly[core,libaio,zlib]:x64-linux@2024.04.15.00
* mvfst:x64-linux@2024.04.15.00
* wangle:x64-linux@2024.04.15.00
Additional packages (*) will be modified to complete this operation.
Detecting compiler hash for triplet x64-linux...
Restored 0 package(s) from /home/miao/.cache/vcpkg/archives in 14.9 us. Use --debug to see more details.
Installing 1/6 folly[core,libaio,zlib]:x64-linux@2024.04.15.00...
Building folly[core,libaio,zlib]:x64-linux@2024.04.15.00...
-- Using cached facebook-folly-v2024.04.15.00.tar.gz.
-- Cleaning sources at /home/miao/vcpkg/buildtrees/folly/src/4.04.15.00-b80a213ee9.clean. Use --editable to skip cleaning for the packages you specify.
-- Extracting source /home/miao/vcpkg/downloads/facebook-folly-v2024.04.15.00.tar.gz
-- Applying patch disable-non-underscore-posix-names.patch
-- Applying patch boost-1.70.patch
-- Applying patch fix-windows-minmax.patch
-- Applying patch fix-deps.patch
-- Applying patch disable-uninitialized-resize-on-new-stl.patch
-- Applying patch fix-unistd-include.patch
-- Using source at /home/miao/vcpkg/buildtrees/folly/src/4.04.15.00-b80a213ee9.clean
-- Found external ninja('1.11.1').
-- Configuring x64-linux
-- Building x64-linux-dbg
-- Building x64-linux-rel
-- Installing: /home/miao/vcpkg/packages/folly_x64-linux/share/folly/copyright
-- Fixing pkgconfig file: /home/miao/vcpkg/packages/folly_x64-linux/lib/pkgconfig/libfolly.pc
-- Fixing pkgconfig file: /home/miao/vcpkg/packages/folly_x64-linux/debug/lib/pkgconfig/libfolly.pc
-- Performing post-build validation
Stored binaries in 1 destinations in 17 s.
Elapsed time to handle folly:x64-linux: 6.3 min
folly:x64-linux package ABI: ce6dd8349631a07b047b6242099b65accab633afe713705b0da435414bc119c2
Installing 2/6 fizz:x64-linux@2024.04.15.00...
Building fizz:x64-linux@2024.04.15.00...
-- Using cached facebookincubator-fizz-v2024.04.15.00.tar.gz.
-- Cleaning sources at /home/miao/vcpkg/buildtrees/fizz/src/4.04.15.00-d535f4a534.clean. Use --editable to skip cleaning for the packages you specify.
-- Extracting source /home/miao/vcpkg/downloads/facebookincubator-fizz-v2024.04.15.00.tar.gz
-- Applying patch fix-build.patch
-- Using source at /home/miao/vcpkg/buildtrees/fizz/src/4.04.15.00-d535f4a534.clean
-- Found external ninja('1.11.1').
-- Configuring x64-linux
-- Building x64-linux-dbg
-- Building x64-linux-rel
-- Installing: /home/miao/vcpkg/packages/fizz_x64-linux/share/fizz/copyright
-- Performing post-build validation
Stored binaries in 1 destinations in 3.1 s.
Elapsed time to handle fizz:x64-linux: 2 min
fizz:x64-linux package ABI: 844ba8f534cdb73330de3ba6c4c7429635035d093395152a1bb7daeb4cd3f511
Installing 3/6 mvfst:x64-linux@2024.04.15.00...
Building mvfst:x64-linux@2024.04.15.00...
-- Using cached facebook-mvfst-v2024.04.15.00.tar.gz.
-- Cleaning sources at /home/miao/vcpkg/buildtrees/mvfst/src/4.04.15.00-aab79f192b.clean. Use --editable to skip cleaning for the packages you specify.
-- Extracting source /home/miao/vcpkg/downloads/facebook-mvfst-v2024.04.15.00.tar.gz
-- Using source at /home/miao/vcpkg/buildtrees/mvfst/src/4.04.15.00-aab79f192b.clean
-- Found external ninja('1.11.1').
-- Configuring x64-linux
-- Building x64-linux-dbg
-- Building x64-linux-rel
-- Installing: /home/miao/vcpkg/packages/mvfst_x64-linux/share/mvfst/copyright
-- Performing post-build validation
Stored binaries in 1 destinations in 9.3 s.
Elapsed time to handle mvfst:x64-linux: 5.4 min
mvfst:x64-linux package ABI: 742b1e47a5108adac566ae4ad787e73fb4ac3d1dac7c0ab290056a8884ec8585
Installing 4/6 wangle:x64-linux@2024.04.15.00...
Building wangle:x64-linux@2024.04.15.00...
-- Using cached facebook-wangle-v2024.04.15.00.tar.gz.
-- Cleaning sources at /home/miao/vcpkg/buildtrees/wangle/src/4.04.15.00-d032e08eb3.clean. Use --editable to skip cleaning for the packages you specify.
-- Extracting source /home/miao/vcpkg/downloads/facebook-wangle-v2024.04.15.00.tar.gz
-- Applying patch fix-config-cmake.patch
-- Applying patch fix_dependency.patch
-- Using source at /home/miao/vcpkg/buildtrees/wangle/src/4.04.15.00-d032e08eb3.clean
-- Found external ninja('1.11.1').
-- Configuring x64-linux
-- Building x64-linux-dbg
-- Building x64-linux-rel
-- Installing: /home/miao/vcpkg/packages/wangle_x64-linux/share/wangle/usage
-- Installing: /home/miao/vcpkg/packages/wangle_x64-linux/share/wangle/copyright
-- Performing post-build validation
Stored binaries in 1 destinations in 2 s.
Elapsed time to handle wangle:x64-linux: 1.4 min
wangle:x64-linux package ABI: 25eecbd80463fb623b986e0a839d936bdb7ce84418cfbb122b7c6a18f9298da8
Installing 5/6 fbthrift:x64-linux@2024.04.15.00...
Building fbthrift:x64-linux@2024.04.15.00...
-- Using cached facebook-fbthrift-v2024.04.15.00.tar.gz.
-- Cleaning sources at /home/miao/vcpkg/buildtrees/fbthrift/src/4.04.15.00-676cd7c3b0.clean. Use --editable to skip cleaning for the packages you specify.
-- Extracting source /home/miao/vcpkg/downloads/facebook-fbthrift-v2024.04.15.00.tar.gz
-- Applying patch fix-glog.patch
-- Applying patch 0002-fix-dependency.patch
-- Using source at /home/miao/vcpkg/buildtrees/fbthrift/src/4.04.15.00-676cd7c3b0.clean
-- Found external ninja('1.11.1').
-- Configuring x64-linux
-- Building x64-linux-dbg
-- Building x64-linux-rel
-- Installing: /home/miao/vcpkg/packages/fbthrift_x64-linux/share/fbthrift/copyright
-- Adjusted RPATH of '/home/miao/vcpkg/packages/fbthrift_x64-linux/tools/fbthrift/thrift1' (From '/home/miao/vcpkg/packages/fbthrift_x64-linux/lib' -> To '$ORIGIN:$ORIGIN/../../lib')
-- Performing post-build validation
Stored binaries in 1 destinations in 22 s.
Elapsed time to handle fbthrift:x64-linux: 16 min
fbthrift:x64-linux package ABI: 1bc7f81cd065c797e1272ed12b0d101f500ec31707185b183489f16e17224410
Installing 6/6 cachelib:x64-linux@2024.04.15.00...
Building cachelib:x64-linux@2024.04.15.00...
-- Using cached facebook-CacheLib-v2024.04.15.00.tar.gz.
-- Cleaning sources at /home/miao/vcpkg/buildtrees/cachelib/src/4.04.15.00-467d8fff12.clean. Use --editable to skip cleaning for the packages you specify.
-- Extracting source /home/miao/vcpkg/downloads/facebook-CacheLib-v2024.04.15.00.tar.gz
-- Applying patch fix-build.patch
-- Applying patch fix-glog.patch
-- Using source at /home/miao/vcpkg/buildtrees/cachelib/src/4.04.15.00-467d8fff12.clean
-- Found external ninja('1.11.1').
-- Configuring x64-linux
-- Building x64-linux-dbg
-- Building x64-linux-rel
-- Installing: /home/miao/vcpkg/packages/cachelib_x64-linux/share/cachelib/copyright
-- Performing post-build validation
Stored binaries in 1 destinations in 9.2 s.
Elapsed time to handle cachelib:x64-linux: 6.8 min
cachelib:x64-linux package ABI: eb476b6caf2174b1be9ef3564cc9ba66c4ca2bc11e44545b090f5e3349669704
Total install time: 38 min
cachelib provides CMake targets:
# this is heuristically generated, and may not be correct
find_package(cachelib CONFIG REQUIRED)
# note: 2 additional targets are not displayed.
target_link_libraries(main PRIVATE cachelib cachelib_shm cachelib_navy cachelib_common)
```
opencv even has
`message(WARNING "The python module is currently unsupported on Windows
when building static OpenCV libraries")`
In general static python builds don't support extensions on windows as
such a pyd build against a static python can never be used.
What would work -> static extensions linked into a final executable.
There is no proper way to deactivate extensions if python was statically
build on windows.
Two questions remain here:
Should python be build dynamically on windows for static triplets so
that we get a broader CI test? (maybe add a forbidden feature for only
windows&static which allows building the static python instead)
#35084 introduced a regression for native ARM Linux builds where the
toolchain would mistakenly try to reference a cross-compiler (e.g.
`aarch64-linux-gnu-gcc`) despite building natively because vcpkg spells
the architecture differently from what the system reports (`arm64` vs.
`aarch64`).
This fixes the issue by checking whether the
`CMAKE_HOST_SYSTEM_PROCESSOR` matches the target (in CMake's spelling of
the architecture).
---------
Co-authored-by: Kai Pastor <dg0yt@darc.de>
<!-- 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/. -->
- [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.
Also:
- fixes Android compilation which wasn't tested the last time this port
was modified
- Exclude `uwp` which was indirectly excluded by another optional
dependency
---------
Co-authored-by: Kai Pastor <dg0yt@darc.de>
Fixes#37974
png, jpeg and tiff support are [optional in
gdk-pixbuf](0edaedc560/meson_options.txt (L5)),
however [vcpkg has them
hard-wired](c5da4bafbd/ports/gdk-pixbuf/portfile.cmake (L37)).
Turn `png`,` jpeg` and `tiff` into features, and enable those 3 by
default to preserve compatibility.
- [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>