[package]
edition = "2021"
name = "surfman"
version = "0.12.3"
authors = [
"Patrick Walton <pcwalton@mimiga.net>",
"Emilio Cobos Álvarez <emilio@crisal.io>",
"The Servo Project Developers",
]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A cross-platform, low-level toolkit for GPU surface management"
readme = "README.md"
license = "MIT OR Apache-2.0 OR MPL-2.0"
repository = "https://github.com/servo/surfman"
[features]
chains = ["fnv"]
default = ["sm-raw-window-handle-06"]
sm-angle = []
sm-angle-builtin = ["mozangle"]
sm-angle-default = ["sm-angle"]
sm-no-wgl = ["sm-angle-default"]
sm-raw-window-handle-05 = ["dep:rwh_05"]
sm-raw-window-handle-06 = ["dep:rwh_06"]
sm-raw-window-handle-generic = []
sm-test = []
sm-wayland-default = []
sm-x11 = ["x11-dl"]
[lib]
name = "surfman"
path = "src/lib.rs"
[[example]]
name = "chaos_game"
path = "examples/chaos_game.rs"
[[example]]
name = "offscreen"
path = "examples/offscreen.rs"
[[example]]
name = "threads"
path = "examples/threads.rs"
[dependencies.bitflags]
version = "2.6"
[dependencies.euclid]
version = "0.22"
[dependencies.fnv]
version = "1.0"
optional = true
[dependencies.glow]
version = "0.17"
[dependencies.libc]
version = "0.2"
[dependencies.log]
version = "0.4"
[dependencies.osmesa-sys]
version = "0.1"
optional = true
[dependencies.rwh_05]
version = "0.5.2"
features = ["std"]
optional = true
package = "raw-window-handle"
[dependencies.rwh_06]
version = "0.6.2"
features = ["std"]
optional = true
package = "raw-window-handle"
[dev-dependencies.clap]
version = "2"
[dev-dependencies.gl]
version = "0.14"
[dev-dependencies.png]
version = "0.17"
[dev-dependencies.rand]
version = "0.8"
[dev-dependencies.serial_test]
version = "3.1.0"
[dev-dependencies.winit]
version = "0.29.10"
features = ["android-native-activity"]
[build-dependencies.cfg_aliases]
version = "0.2.1"
[build-dependencies.gl_generator]
version = "0.14"
[target.'cfg(all(unix, not(any(target_os = "macos", target_os = "android", target_env = "ohos"))))'.dependencies.wayland-sys]
version = "0.31"
features = [
"client",
"dlopen",
"egl",
]
[target.'cfg(all(unix, not(any(target_os = "macos", target_os = "android", target_env = "ohos"))))'.dependencies.x11-dl]
version = "2.3.0"
optional = true
[target.'cfg(target_os = "android")'.dependencies.rwh_06]
version = "0.6"
package = "raw-window-handle"
[target.'cfg(target_os = "macos")'.dependencies.cgl]
version = "0.3.2"
[target.'cfg(target_os = "macos")'.dependencies.objc2]
version = "0.6.1"
[target.'cfg(target_os = "macos")'.dependencies.objc2-app-kit]
version = "0.3.2"
features = [
"std",
"objc2-quartz-core",
"objc2-core-foundation",
"NSResponder",
"NSScreen",
"NSView",
"NSGraphics",
"NSWindow",
]
default-features = false
[target.'cfg(target_os = "macos")'.dependencies.objc2-core-foundation]
version = "0.3.2"
features = [
"std",
"CFBase",
"CFBundle",
"CFCGTypes",
"CFDictionary",
"CFNumber",
"CFString",
]
default-features = false
[target.'cfg(target_os = "macos")'.dependencies.objc2-core-video]
version = "0.3.2"
features = [
"std",
"objc2-core-graphics",
"CVBase",
"CVDisplayLink",
"CVPixelBuffer",
"CVReturn",
]
default-features = false
[target.'cfg(target_os = "macos")'.dependencies.objc2-foundation]
version = "0.3.2"
features = [
"std",
"objc2-core-foundation",
"NSEnumerator",
"NSGeometry",
"NSString",
"NSValue",
]
default-features = false
[target.'cfg(target_os = "macos")'.dependencies.objc2-io-surface]
version = "0.3.2"
features = [
"std",
"libc",
"objc2",
"objc2-core-foundation",
"IOSurfaceRef",
"IOSurfaceTypes",
]
default-features = false
[target.'cfg(target_os = "macos")'.dependencies.objc2-metal]
version = "0.3.2"
features = [
"std",
"MTLDevice",
]
default-features = false
[target.'cfg(target_os = "macos")'.dependencies.objc2-quartz-core]
version = "0.3.2"
features = [
"std",
"objc2-core-foundation",
"CALayer",
"CATransaction",
"CATransform3D",
]
default-features = false
[target.'cfg(target_os = "windows")'.dependencies.mozangle]
version = "0.5.1"
features = [
"egl",
"build_dlls",
]
optional = true
[target.'cfg(target_os = "windows")'.dependencies.winapi]
version = "0.3"
features = [
"d3d11",
"libloaderapi",
"winbase",
"winerror",
"wingdi",
"winuser",
]
[target.'cfg(target_os = "windows")'.dependencies.wio]
version = "0.2"