wayland-sys
This crate provides raw bindings to the system libwayland-*.so
libraries. If you are
looking for a Rust API over the Wayland protocol, see the wayland-client
or wayland-server
crates instead.
Bindings to the different libraries are enabled by the different cargo features:
client
for bindings tolibwayland-client.so
server
for bindings tolibwayland-server.so
cursor
for bindings tolibwayland-cursor.so
egl
for bindings tolibwayland-egl.so
Furthermore, the dlopen
cargo feature will switch the library to a mode where, instead
of directly linking to these system libraries, it'll instead try to open them at runtime.
This allows to create binaries that can gracefully handle being run on non-Wayland
environments. In that case the crate should be used with its provided ffi_dispatch!()
macro, to support both modes seamlessly.