Files
servo/components/servo/Cargo.toml
Jonathan Schwender e23f052412 Rename libservo to servo (#43141)
As discussed on zulip we would like to rename `libservo` to `servo`
(again) before a future crates.io release.
Servo is a library, so the `lib` prefix is somewhat redundant. We
already renamed the binary of ServoShell to `servoshell`, to reduce
confusion of users of what servo is.

Note: This PR does not touch all occurrences of `libservo`. Specifically
CI job names remain untouched, since the risk of breaking something is
higher here, harder to test for and the name not user facing.

Testing: CI testing of this change should give us good confidence.
Manual testing of `./mach doc` and `./mach build` showed no issues on
macos. [Full try
run](https://github.com/jschwe/servo/actions/runs/22909562747)

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
2026-03-10 20:55:14 +00:00

161 lines
5.6 KiB
TOML

[package]
name = "servo"
version.workspace = true
authors.workspace = true
license.workspace = true
edition.workspace = true
publish.workspace = true
rust-version.workspace = true
[lib]
name = "servo"
path = "lib.rs"
crate-type = ["rlib"]
[features]
# Note: Servoshell does not use the default features of servo, so you also
# need to add features that should be default to ports/servoshell/Cargo.toml
default = ["clipboard", "js_jit"]
background_hang_monitor = ["background_hang_monitor/sampler"]
bluetooth = [
"bluetooth_traits",
"dep:bluetooth",
"constellation/bluetooth",
"constellation_traits/bluetooth",
"script/bluetooth",
"script_traits/bluetooth",
]
clipboard = ["dep:arboard"]
crown = ["script/crown"]
debugmozjs = ["script/debugmozjs"]
dynamic_freetype = ["webrender/dynamic_freetype"]
gamepad = [
"script/gamepad",
"constellation/gamepad",
"embedder_traits/gamepad",
]
jitspew = ["script/jitspew"]
js_backtrace = ["script/js_backtrace"]
js_jit = ["script/js_jit"]
media-gstreamer = ["servo-media-gstreamer", "gstreamer"]
native-bluetooth = ["bluetooth/native-bluetooth"]
no-wgl = ["mozangle/egl", "mozangle/build_dlls", "surfman/sm-angle-default", "paint_api/no-wgl"]
profilemozjs = ["script/profilemozjs"]
refcell_backtrace = ["script/refcell_backtrace"]
testbinding = ["script/testbinding"]
tracing = [
"dep:tracing",
"paint/tracing",
"constellation/tracing",
"fonts/tracing",
"layout/tracing",
"profile_traits/tracing",
"script/tracing",
]
vello = ["constellation/vello"]
webgl_backtrace = [
"script/webgl_backtrace",
"webgl/webgl_backtrace",
"canvas_traits/webgl_backtrace",
]
webgpu = [
"script/webgpu",
"paint/webgpu",
"constellation/webgpu",
"constellation_traits/webgpu",
]
webxr = [
"dep:webxr",
"dep:webxr-api",
"paint/webxr",
"webgl/webxr",
"script/webxr",
]
[dependencies]
accesskit = { workspace = true }
background_hang_monitor = { package = "servo-background-hang-monitor", path = "../background_hang_monitor" }
base = { workspace = true }
bitflags = { workspace = true }
bluetooth = { package = "servo-bluetooth", path = "../bluetooth", optional = true }
bluetooth_traits = { workspace = true, optional = true }
canvas_traits = { workspace = true }
constellation = { package = "servo-constellation", path = "../constellation" }
constellation_traits = { workspace = true }
crossbeam-channel = { workspace = true }
devtools = { package = "servo-devtools", path = "../devtools" }
devtools_traits = { workspace = true }
dpi = { workspace = true }
embedder_traits = { workspace = true }
env_logger = { workspace = true }
euclid = { workspace = true }
fonts = { package = "servo-fonts", path = "../fonts" }
gstreamer = { workspace = true, optional = true }
image = { workspace = true }
ipc-channel = { workspace = true }
keyboard-types = { workspace = true }
layout = { package = "servo-layout", path = "../layout" }
layout_api = { workspace = true }
log = { workspace = true }
media = { package = "servo-media-thread", path = "../media/media-thread" }
mozangle = { workspace = true }
net = { package = "servo-net", path = "../net" }
net_traits = { workspace = true }
paint = { package = "servo-paint", path = "../paint" }
paint_api = { workspace = true }
parking_lot = { workspace = true }
profile = { package = "servo-profile", path = "../profile" }
profile_traits = { workspace = true }
rustc-hash = { workspace = true }
script = { package = "servo-script", path = "../script" }
script_traits = { workspace = true }
serde = { workspace = true }
servo-media = { workspace = true }
servo-media-dummy = { workspace = true }
servo-media-gstreamer = { workspace = true, optional = true }
servo-tracing = { workspace = true }
servo_allocator = { package = "servo-allocator", path = "../allocator" }
servo_config = { package = "servo-config", path = "../config" }
servo_geometry = { package = "servo-geometry", path = "../geometry" }
servo_url = { package = "servo-url", path = "../url" }
storage = { package = "servo-storage", path = "../storage" }
storage_traits = { workspace = true }
stylo = { workspace = true }
stylo_traits = { workspace = true }
surfman = { workspace = true }
tokio = { workspace = true, features = ["sync"] }
tracing = { workspace = true, optional = true }
url = { workspace = true }
webgl = { package = "servo-webgl", path = "../webgl", default-features = false }
webgpu = { package = "servo-webgpu", path = "../webgpu" }
webrender = { workspace = true }
webrender_api = { workspace = true }
webxr-api = { workspace = true, optional = true }
[target.'cfg(any(target_os = "android", target_env = "ohos"))'.dependencies]
webxr = { package = "servo-webxr", path = "../webxr", optional = true }
[target.'cfg(not(any(target_os = "android", target_env = "ohos")))'.dependencies]
arboard = { workspace = true, optional = true }
webxr = { package = "servo-webxr", path = "../webxr", features = ["glwindow", "headless"] }
[target.'cfg(all(not(target_os = "windows"), not(target_os = "ios"), not(target_os = "android"), not(target_env = "ohos"), not(target_arch = "arm"), not(target_arch = "aarch64")))'.dependencies]
gaol = "0.2.1"
[target.'cfg(target_os = "windows")'.dependencies]
webxr = { package = "servo-webxr", path = "../webxr", features = ["glwindow", "headless", "openxr-api"] }
[dev-dependencies]
http = { workspace = true }
http-body-util = { workspace = true }
hyper = { workspace = true }
servo = { path = ".", features = ["tracing"] }
net = { package = "servo-net", path = "../net", features = ["test-util"] }
rustls = { version = "0.23", default-features = false, features = ["aws-lc-rs"] }
tracing = { workspace = true }
winit = { workspace = true }
[[test]]
name = "multiprocess"
harness = false