smithay/Cargo.toml
2023-07-03 09:44:18 +02:00

131 lines
No EOL
4.8 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 = [
"smithay-drm-extras",
"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 = "2.2.1"
calloop = "0.10.1"
cgmath = "0.18.0"
downcast-rs = "1.2.0"
drm-fourcc = "^2.2.0"
drm = { version = "0.9.0", optional = true }
drm-ffi = { version = "0.5.0", optional = true }
gbm = { version = "0.12.0", optional = true, default-features = false, features = ["drm-support"] }
glow = { version = "0.12", optional = true }
input = { version = "0.8.2", default-features = false, features=["libinput_1_14"], optional = true }
indexmap = "1.9"
lazy_static = "1"
libc = "0.2.103"
libseat= { version = "0.1.7", optional = true, default_features = false }
libloading = { version="0.8.0", optional = true }
nix = "0.26.0"
once_cell = "1.8.0"
rand = "0.8.4"
scopeguard = { version = "1.1.0", optional = true }
tracing = "0.1.37"
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"], optional = true }
wayland-protocols-misc = { version = "0.1.0", features = ["server"], optional = true }
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.28.0", 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 }
profiling = "1.0"
[dev-dependencies]
clap = { version = "4", features = ["derive"] }
criterion = { version = "0.4" }
image = "0.24"
tracing-subscriber = { version = "0.3.16", features = ["env-filter"] }
[build-dependencies]
gl_generator = { version = "0.14", optional = true }
pkg-config = { version = "0.3.17", optional = true }
cc = { version = "1.0.79", 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", "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_gbm_has_create_with_modifiers2 = []
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 = []
libinput_1_19 = ["input/libinput_1_19"]
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", "gbm?/import-wayland"]
wayland_frontend = ["wayland-server", "wayland-protocols", "wayland-protocols-wlr", "wayland-protocols-misc", "tempfile"]
x11rb_event_source = ["x11rb"]
xwayland = ["encoding", "wayland_frontend", "x11rb/composite", "x11rb/xfixes", "x11rb_event_source", "scopeguard"]
test_all_features = ["default", "use_system_lib", "renderer_glow", "libinput_1_19"]
[[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"]
[[example]]
name = "buffer_test"
required-features = ["backend_drm", "backend_gbm", "backend_egl", "backend_vulkan", "renderer_gl"]
[[bench]]
name = "benchmark"
harness = false
[profile.release-with-debug]
inherits = "release"
debug = true