smithay/Cargo.toml
2022-07-07 14:24:07 -05:00

115 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"]
[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 = { git = "https://github.com/ash-rs/ash", rev = "62960ad680207e8496ae19ebd11f7c7ae8422e27", optional = true }
bitflags = "1"
calloop = "0.10.1"
cgmath = "0.18.0"
dbus = { version = "0.9.4", optional = true }
downcast-rs = "1.2.0"
drm-fourcc = "^2.1.1"
drm = { version = "0.6.1", optional = true }
drm-ffi = { version = "0.2.1", optional = true }
gbm = { version = "0.8.0", optional = true, default-features = false, features = ["drm-support"] }
input = { version = "0.7", default-features = false, features=["libinput_1_14"], optional = true }
indexmap = { version = "1.7", optional = true }
lazy_static = "1"
libc = "0.2.103"
libseat= { version = "0.1.1", optional = true }
libloading = { version="0.7.0", optional = true }
nix = "0.22"
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.6", optional = true }
wayland-egl = { version = "=0.30.0-beta.5", optional = true }
wayland-protocols = { version = "=0.30.0-beta.5", features = ["unstable", "staging", "server"], optional = true }
wayland-protocols-wlr = { version = "=0.1.0-beta.5", features = ["server"]}
wayland-server = { version = "=0.30.0-beta.5", optional = true }
wayland-sys = { version = "=0.30.0-beta.5", optional = true }
wayland-backend = { version = "=0.1.0-beta.5", optional = true }
winit = { version = "0.26", optional = true }
x11rb = { version = "0.10.0", optional = true }
xkbcommon = "0.4.0"
scan_fmt = { version = "0.2.3", default-features = false }
[patch.crates-io]
winit = { git = "https://github.com/rust-windowing/winit", rev = "4c39b3188cee29548761b57f38e4aa046cbe31ea" }
[dev-dependencies]
slog-term = "2.3"
[build-dependencies]
gl_generator = { version = "0.14", optional = true }
pkg-config = { version = "0.3.17", optional = true }
[features]
default = ["backend_drm", "backend_gbm", "backend_libinput", "backend_udev", "backend_session_logind", "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"]
backend_egl = ["gl_generator", "libloading"]
backend_libinput = ["input"]
backend_session = []
backend_udev = ["udev", "input/udev"]
backend_vulkan = ["ash", "scopeguard"]
backend_session_logind = ["dbus", "backend_session", "pkg-config"]
backend_session_elogind = ["backend_session_logind"]
backend_session_libseat = ["backend_session", "libseat"]
desktop = ["indexmap", "wayland_frontend"]
renderer_gl = ["gl_generator", "backend_egl"]
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 = ["wayland_frontend"]
test_all_features = ["default"]
[[example]]
name = "raw_drm"
required-features = ["backend_drm"]
[[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"]