wayland-sys

Crates.iowayland-sys
lib.rswayland-sys
version0.31.5
sourcesrc
created_at2015-10-03 11:08:21.431559
updated_at2024-09-04 19:24:54.170754
descriptionFFI bindings to the various libwayland-*.so libraries. You should only need this crate if you are working on custom wayland protocol extensions. Look at the crate wayland-client for usable bindings.
homepage
repositoryhttps://github.com/smithay/wayland-rs
max_upload_size
id3150
size35,076
Publishers (github:smithay:publishers)

documentation

https://docs.rs/wayland-sys/

README

crates.io docs.rs Continuous Integration codecov

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 to libwayland-client.so
  • server for bindings to libwayland-server.so
  • cursor for bindings to libwayland-cursor.so
  • egl for bindings to libwayland-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.

Commit count: 1403

cargo fmt