This creates a concept of "peripheral" for Rust crates housed in
Mesa, and "unofficially" uploaded to crates.io by subcommunities
of Mesa. This is modeled on LLVM's peripheral versus core
support concept:
https://llvm.org/docs/SupportPolicy.html
This allows use of the mesa3d_util crate without vendoring it.
This is a desire of the crosvm maintainers (crrev.com/c/6594760).
This also formally defines CODEOWNERS to be the projected uploaders
of the mesa3d_util crate. Everyone of course is encouraged to make
changes, but that just gives us a heads-up to update the downstream
imports of mesa3d_util.
The Cargo.toml file is not added here, since Meson is the only
officially supported build system of the Mesa3D project.
Reviewed-by: Marcin Radomski <dextero@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36276>
Place the convention so that distro packagers know that they can
rely on it, and not following it is a bug.
This is the same convention that Meson uses for Cargo subprojects,
but Mesa is not using them as they are experimental and not really
usable yet.
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org>
Tested-by: Gurchetan Singh <gurchetansingh@chromium.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36284>