smithay/Cargo.toml
2023-01-19 14:59:57 -08:00

112 lines
4.2 KiB
TOML

[package]
name = "smithay"
version = "0.3.0"
authors = ["Victor Berger <victor.berger@m4x.org>", "Drakulix (Victoria Brekenfeld)"]
license = "MIT"
description = "Smithay is a library for writing wayland compositors."
repository = "https://github.com/Smithay/smithay"
edition = "2021"
readme = "README.md"
homepage = "https://smithay.github.io/"
keywords = ["wayland", "compositor", "graphics", "server"]
categories = ["gui"]
rust-version = "1.65.0"
[package.metadata.docs.rs]
features = ["test_all_features"]
rustdoc-args = ["--cfg", "docsrs"]
[workspace]
members = [
"smallvil",
"anvil",
"wlcs_anvil"
]
[dependencies]
appendlist = "1.4"
# Intentionally pick a commit from "0.37-stable" branch since additions for 0.37.1 are used
ash = { version = "0.37.1", optional = true }
bitflags = "1"
calloop = "0.10.1"
cgmath = "0.18.0"
downcast-rs = "1.2.0"
drm-fourcc = "^2.2.0"
drm = { version = "0.8.0", optional = true }
drm-ffi = { version = "0.4.0", optional = true }
gbm = { version = "0.11.0", optional = true, default-features = false, features = ["drm-support"] }
glow = { version = "0.11.2", optional = true }
input = { version = "0.8.1", default-features = false, features=["libinput_1_14"], optional = true }
indexmap = "1.7"
lazy_static = "1"
libc = "0.2.103"
libseat= { version = "0.1.7", optional = true }
libloading = { version="0.7.0", optional = true }
nix = "0.26.0"
once_cell = "1.8.0"
rand = "0.8.4"
scopeguard = { version = "1.1.0", optional = true }
slog = "2"
slog-stdlog = { version = "4", optional = true }
tempfile = { version = "3.0", optional = true }
thiserror = "1.0.25"
udev = { version = "0.7", optional = true }
wayland-egl = { version = "0.30.0", optional = true }
wayland-protocols = { version = "0.30.0", features = ["unstable", "staging", "server"], optional = true }
wayland-protocols-wlr = { version = "0.1.0", features = ["server"]}
wayland-protocols-misc = { version = "0.1.0", features = ["server"]}
wayland-server = { version = "0.30.0", optional = true }
wayland-sys = { version = "0.30.1", optional = true }
wayland-backend = { version = "0.1.0", optional = true }
winit = { version = "0.27.1", default-features = false, features = ["wayland", "wayland-dlopen", "x11"], optional = true }
x11rb = { version = "0.11.1", optional = true }
xkbcommon = { version = "0.5.0", features = ["wayland"]}
scan_fmt = { version = "0.2.3", default-features = false }
encoding = { version = "0.2.33", optional = true }
[dev-dependencies]
slog-term = "2.3"
[build-dependencies]
gl_generator = { version = "0.14", optional = true }
pkg-config = { version = "0.3.17", optional = true }
cc = { version = "1.0", optional = true }
[features]
default = ["backend_drm", "backend_gbm", "backend_libinput", "backend_udev", "backend_session_libseat", "backend_x11", "backend_winit", "desktop", "renderer_gl", "renderer_multi", "xwayland", "wayland_frontend", "slog-stdlog", "backend_vulkan"]
backend_winit = ["winit", "backend_egl", "wayland-egl", "renderer_gl"]
backend_x11 = ["x11rb", "x11rb/dri3", "x11rb/xfixes", "x11rb/present", "x11rb_event_source", "backend_gbm", "backend_drm", "backend_egl"]
backend_drm = ["drm", "drm-ffi"]
backend_gbm = ["gbm", "cc", "pkg-config"]
backend_gbm_has_fd_for_plane = []
backend_egl = ["gl_generator", "libloading"]
backend_libinput = ["input"]
backend_session = []
backend_udev = ["udev", "input/udev"]
backend_vulkan = ["ash", "scopeguard"]
backend_session_libseat = ["backend_session", "libseat"]
desktop = []
renderer_gl = ["gl_generator", "backend_egl"]
renderer_glow = ["renderer_gl", "glow"]
renderer_multi = ["backend_drm"]
use_system_lib = ["wayland_frontend", "wayland-backend/server_system", "wayland-sys"]
wayland_frontend = ["wayland-server", "wayland-protocols", "tempfile"]
x11rb_event_source = ["x11rb"]
xwayland = ["encoding", "wayland_frontend", "x11rb/composite", "x11rb_event_source", "scopeguard"]
test_all_features = ["default", "use_system_lib", "renderer_glow"]
[[example]]
name = "minimal"
required-features = ["backend_winit", "renderer_gl", "wayland_frontend"]
[[example]]
name = "seat"
required-features = ["wayland_frontend"]
[[example]]
name = "compositor"
required-features = ["wayland_frontend"]
[[example]]
name = "vulkan"
required-features = ["backend_vulkan"]