meson: Override dependencies to improve usage as a subproject
With this change, libcloudproviders can be consumed as a subproject
without making any changes to the build files of a project. All you
need to do is provide a wrap file with a [provide]
section:
https://mesonbuild.com/Wrap-dependency-system-manual.html#provide-section
This is also necessary because otherwise projects need to hard-code
the subproject name, which might be libcloudproviders
when using
wrap-git
or libcloudproviders-0.3.1
when using wrap-file
(to
build from a release tarball). This can cause conflicts between
different subprojects that consume libcloudproviders differently.
Other projects like glib, cairo, pango, etc already do this.
Required a meson version bump to 0.54, which was released almost three years ago.