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.
* update glib to meson
* update ci baseline
* update glib to 2.66.3
remove cmakelists
* fix some minor meson issue but meson is still a mess
* add_bin_to_path to vcpkg_install_meson
* regen docs
* try fixing/touching all glib dependent ports
* fix libsigcpp-3 version
* fix glibmm
* fix gmime
* fix libcroco
* update libnice
* fix atk build
* update harfbuzz
* fix few builds
* update libxmlpp
* fix gdk-pixbuf
* fix gts
* gts add patch
* remove old libsigcpp
* add missing comma
* fix supports logic
* fix name mismatch
* restore original ci baseline.
* fix a lot of small details.
increment controls.
* fix harfbuzz & glib
* bump port version
* update port_versions
* fix version field
* update versions
* fix glib in harfbuzz
* update port versions
* silly uppercase type
* update port-versions
* fix cairo build
* update version
* fix atk
* update atk port-verisons
* fix gts public includes
* update versions
* fix cairomm
* fix pango
* fix ignition
* update versions.
* fix gtk
* fix librsvg
* update versions
* fix atk linux
* fix libgpod
* update versions
* fix lcm
* fix librsvg
* update pango and pangomm
* update pango to meson
* more updates
* update pixman
* fix cairo
* fix cairo
* some fixes
* reorder meson a bit
* add none.txt for meson
* fix x86_x64 to x86 "cross" builds
* add tiff pkgconfig
* update gdk-pixbuf
* fix tiff and jpeg
* add graphene
* fix gdk-pixbuf
* add sassc
* update gtk
* fix cairo complete build
* add harfbuzz inlcude in pango since meson does not add it into pkgconfig.
* fix gtk build. Remaining issue fix install script.
* fix gtk build
* fix io2d
* add supports field
* fix cartographer?
* fix librsvg build
* fix gtk build
* fix cartographer
* fix sassc on linux
* fix tiff and libjpeg pc files
* fix pixman x86
* _isnanf is undefined on arm-
* merge fix for make on arm64
* fix gdk-pixbuf on arm64-windows
* pixman remove test/demos.
should fix it on osx.
* [vcpkg_install_meson] add bin to path to run code generators
* [vcpkg_configure_meson]
deactivate native compiler in cross builds
make x86 on x86_x64 a native instead of a cross build
(as long as we are not building for UWP)
* pixman reenable UWP support.
* pixman reenable arm support
* add pixman:arm-uwp=fail to baseline
* update gtkmm
* remove double whitespaces
* gtk baseline
gtk dependency on cairo x11
remove double spaces in flags
* fix linux build
* native none again
* cairo fix cairo-script.pc
* comment out patch since the cairo changes should have fixed it.
* disable wayland backend in GTK since CI is missing system packages
* silly typo in cairo pc file correction
install lzo pc on windows
* remove double spaces in _FLAGS
remove unnecessary comments
* actually disabling wayland backend
* fix glib codegen issue having the wrong path
* try to fix paths in glib codegen
* integrate changes form #12860
* add the uwp patch back in
* deactivate extra harfbuzz shapers.
* vcpkg x-add-version --all --overwrite-version
* remove patches in tesseract.
* fix version
* rerun add-version
* add libgpod:x64-linux=fail to baseline due to missing system tools/libraries
* change regex to take double - into account.
* run x-add-version
* run format-manifest
* add missing removal of multiple spaces back into the regex
* remove ws diff change
* fix gtkmm the upstream way
* remove ws to reduce diff
* make glib build on osx
* format manifest
* run x-add-version
* add pthread dependency
* update baseline due to glib compiling on osx now.
* add meson as a dep to glib
* - add glib host dependencies
- switch to manifest of touched ports
* switch to manifest.
* [libxml2] add gnuinstalldirs
* [libxml2] add missing include of GNUInstallDirs
* add version info
* add include dir to pc files ....
* update version
* add UWP as crosscompiling target
* Apply suggestions from code review
* trying to fix cairo pthread detection on osx.
* fix libmicrohttpd by adding the required system frameworks on osx
* fix poppler by not removing the CXX standard
* fix missing coretext header from harfbuzz in pano
* fix formating issues
* fix librsvg on osx
* revert version changes
* bump version
* version stuff.
* fix graphene version stuff
* fix version stuff
* removing ports from ci baseline to cause me pain
* move cairomm:x64-linux=fail
to gtkmm:x64-linx=fail
remove pangomm:x64-osx=fail
* fix typo
* revert ws changes to vcpkg_install_meson
* update port version after merge
* version stuff
* fix fluidsynth by adding vcpkg_check_features
* move cairo to ci baseline on osx
* version stuff
* fluidsynth corrections
* more version stuff
* apply code review changes
* clean version stuff.
* update version stuff
* code review cleanup
* version stuff
* formating
* update version stuff again
* remove gdi again
* version stuff
* version stuff
* version baseline
* Apply strega-nil suggestions from code review
* run x-add-version
* reset versions to upstream/master
* v8 CONTROL -> json
* reset fluidsynth to upstream/master
* first batch of version-string -> version conversion
* second and last batch of version-string -> version conversions
* update version stuff
* disable gdi feature in harfbuzz (missing user32 linkage in qt5-base)
* version stuff
* Apply suggestions from code review
Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
* more CR stuff
* update versions
* back out provision changes so that pr can be merged.
Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
* [many ports] improve compatibility with WSL and mixed case filesystems
* [treehopper] express dependency on libusb, which was not working on non-win32 platforms and is still broken there
* [libharu] add compatibility with non-win32 platforms
* [geogram] fix openblas on linux
[clapack] better integration with linux environment
[visit-struct] put cmake config file in the expected folder
[geogram] remove trailing underscore to enable compatibility with OpenBLAS
* [openblas] playing with underscore, without success
* [openblas/lapack] fix library integration
* [clapack] improve target handling in cmake module
* [openblas] promote self-generated config to default cmake module, otherwise internal ones thinks wrongly that openblas can also solve lapack libs
* [clapack,openblas] improve libraries integration
* [many ports] fix cmake unnecessary target paths, wrong config paths, empty default dependencies, unnecessary [core] tags
* [suitesparse] improve integration with new lapack/openblas mechanism
* [suitesparse] add no underscore postfix also for linux
* [ceres] fix integration with newer openblas/lapack configs
* [aws-c-event-stream] fix regression
* [systemc] fix regression
* [libwebp,geogram] trigger rebuild
* [libwebp,pthread4w] fix regressions
* [glbinding] fix cmake module installation
* [globjects] disentangle unnecessary dependency from qt5
* [jasper] remove broken and unnecessary patches
* [libwebp] fix regression
* [many ports] avoid using BUILD_SHARED_LIBS which is uninitialized in port files
* [clapack] correctly find dlls
* [clapack] use a generic blas as dependency
* [fizz,g2o] restore expected version
* fix mistake
* [many ports] remove WIN32, APPLE and UNIX (again, they keep creeping in) from ports since they are broken and usually break non-win32 ports
* [libressl,openssl] do not try to build one if the other is already installed
* [itk] update ref and patch to avoid regression
* [libressl,openssl] implement full strategy to fix CI
* [libwebp] disable components that are broken on macOS
* [ogre] enable macOS build
* [freeimage,jxrlib,ogre,openexr,protobuf] port patches from #5169
* [ogre] add missing install command
* [ffmpeg] enable wrapper for cmake module
* [ffmpeg] add avresample module finder
* [ffmpeg] improve module detection and exported symbols
* [ffmpeg] add variables to cache
* [thrift] remove unnecessary build option
* [allegro5] fix shared/static inversion
* [protobuf] cleanup
* [libressl] cleanup
* [moos-core] cleanup
* commented features must not be separated from other features, otherwise vcpkg complains
* [itk] fix regression
* [shogun,itk] fix regressions
* [ogre] fix regression
* [opusfile] add compatibility with non-win32
* [itk] fix regression
* [sndfile,libsndfile] remove duplicate, redirect sndfile to libsndfile
* add missing dependencies
* [ismrmrd] fix regression
* [ffmpeg] trigger rebuild
* [clapack,openblas,libogg] fix regressions on macOS
* [libtins] fix regression
* force rebuild windows regressions, unable to reproduce locally
* [mosquitto] enable non-win32 builds
* [json-dto] force rebuild, unable to reproduce regression locally
* [many ports] uniform naming and path length requests
* fix regression
* fix regression
* [ffmpeg] fixes for downstream projects
* clean up - thanks to reviewers
* trigger rebuild of regressions on macOS
* trigger rebuild of regressions on macOS - part2
* Add core back
* Use VCPKG_CONCURRENCY
* Add core back to suitesparse
* Add core back to curl
* Add core back to magnum
* Add core back to magnum
* Add core back to magnum
* Add core back to cgal
* initial try to add port files
* updates control and patch
* minor fix
* release is now built
* install succeed
* update to the latest commit
* use cmake to export the symbols in dynamic linkage
* [cartographer] Reformatting and added dependency on ceres[eigensparse]