blob: 68493a74e64cf85cb74e316ef1ef5d3e4e46cc16 [file] [log] [blame] [edit]
[package]
name = "vello_common"
# When updating, also update the version in the workspace dependency in the root Cargo.toml
version = "0.0.1"
description = "Core data structures and utilities shared across the Vello rendering, including geometry processing and tiling logic."
categories = ["rendering", "graphics"]
keywords = ["2d", "vector-graphics"]
edition.workspace = true
rust-version.workspace = true
license.workspace = true
repository.workspace = true
[package.metadata.docs.rs]
all-features = true
# There are no platform specific docs.
default-target = "x86_64-unknown-linux-gnu"
targets = []
[dependencies]
bytemuck = { workspace = true, features = [] }
peniko = { workspace = true, features = ["bytemuck"] }
fearless_simd = { workspace = true }
png = { workspace = true, optional = true }
roxmltree = { version = "0.20.0", optional = true }
skrifa = { workspace = true, optional = true }
smallvec = { workspace = true }
libm = { version = "0.2.15", optional = true }
log = { workspace = true }
[features]
default = ["std", "png", "text"]
# Enable using SIMD instructions for rendering
simd = []
# Get floating point functions from the standard library (likely using your target’s libc).
std = ["peniko/std", "skrifa?/std", "fearless_simd/std"]
bytemuck = ["bytemuck/bytemuck_derive"]
# Use floating point implementations from libm.
libm = ["peniko/libm", "skrifa?/libm", "dep:libm", "fearless_simd/libm"]
# Allow loading Pixmap from PNG, and drawing png glyphs.
png = ["std", "dep:png"]
# Enable multi-threaded rendering.
multithreading = ["std"]
# Add support for text rendering
text = ["dep:skrifa"]
# Development only features
# Enable a simple version of SVG drawing.
# This is only intended for development of Vello CPU itself,
# and is likely to be removed/moved.
pico_svg = ["dep:roxmltree"]
[lints]
workspace = true