| 1 | [package] |
| 2 | |
| 3 | name = "skia-bindings" |
| 4 | description = "Skia Bindings for Rust" |
| 5 | homepage = "https://github.com/rust-skia/rust-skia/tree/master/skia-bindings" |
| 6 | repository = "https://github.com/rust-skia/rust-skia" |
| 7 | readme = "README.md" |
| 8 | keywords = ["skia" , "rust-bindings" , "vulkan" , "opengl" , "pdf" ] |
| 9 | categories = ["external-ffi-bindings" , "graphics" , "multimedia::images" , "rendering::graphics-api" , "visualization" ] |
| 10 | license = "MIT" |
| 11 | |
| 12 | version = "0.84.0" |
| 13 | authors = ["LongYinan <lynweklm@gmail.com>" , "Armin Sander <armin@replicator.org>" ] |
| 14 | edition = "2021" |
| 15 | rust-version.workspace = true |
| 16 | build = "build.rs" |
| 17 | links = "skia" |
| 18 | include = [ |
| 19 | "Cargo.toml" , |
| 20 | "bindings_docs.rs" , |
| 21 | "build.rs" , |
| 22 | "build_support.rs" , |
| 23 | "build_support/**/*.rs" , |
| 24 | "src/**/*.h" , |
| 25 | "src/**/*.cpp" , |
| 26 | "src/*.rs" ] |
| 27 | |
| 28 | [lib] |
| 29 | doctest = false |
| 30 | |
| 31 | # Metadata used from inside the packaged crate that defines where to download the Skia archive from. |
| 32 | # Note: use short hashes here because of filesystem path size restrictions. |
| 33 | [package.metadata] |
| 34 | skia = "m135-0.83.1" |
| 35 | |
| 36 | [features] |
| 37 | default = ["binary-cache" , "embed-icudtl" ] |
| 38 | gl = [] |
| 39 | egl = [] |
| 40 | wayland = [] |
| 41 | x11 = [] |
| 42 | vulkan = [] |
| 43 | metal = [] |
| 44 | d3d = [] |
| 45 | textlayout = [] |
| 46 | webp = ["webp-encode" , "webp-decode" ] |
| 47 | webp-encode = [] |
| 48 | webp-decode = [] |
| 49 | # sys libraries |
| 50 | use-system-jpeg-turbo = ["mozjpeg-sys" ] |
| 51 | # `textlayout` because `SkSVGTextContext::SkSVGTextContext()` invokes `SkShaper::Make`. |
| 52 | svg = ["textlayout" ] |
| 53 | shaper = ["textlayout" ] |
| 54 | binary-cache = ["flate2" , "tar" ] |
| 55 | embed-icudtl = ["lazy_static" ] |
| 56 | embed-freetype = [] |
| 57 | freetype-woff2 = [] |
| 58 | |
| 59 | [dependencies] |
| 60 | mozjpeg-sys = { version = "2" , features = ["with_simd" ], optional = true } |
| 61 | lazy_static = { version = "1.4.0" , optional = true } |
| 62 | |
| 63 | [build-dependencies] |
| 64 | cc = { version = "1.1.28" } |
| 65 | bindgen = { version = "0.71.1" } |
| 66 | |
| 67 | # For enum variant name replacements. |
| 68 | regex = "1.4.5" |
| 69 | heck = "0.5.0" |
| 70 | |
| 71 | flate2 = { version = "1.0.7" , optional = true } |
| 72 | tar = { version = "0.4.26" , optional = true } |
| 73 | |
| 74 | # For reading .cargo.vcs_info.json to get the repository sha1 that is used to download |
| 75 | # the matching prebuilt binaries. |
| 76 | serde_json = "1.0.39" |
| 77 | # For reading Cargo.toml from within a package. |
| 78 | toml = "0.8.0" |
| 79 | |
| 80 | [dev-dependencies] |
| 81 | # build dependencies duplicated for testing :( |
| 82 | cc = { version = "1.1.28" } |
| 83 | bindgen = { version = "0.71.1" } |
| 84 | regex = "1.4.5" |
| 85 | heck = "0.5.0" |
| 86 | # ureq = { version = "2.8.0" } |
| 87 | flate2 = { version = "1.0.7" } |
| 88 | tar = { version = "0.4.26" } |
| 89 | serde_json = "1.0.39" |
| 90 | toml = "0.8.0" |
| 91 | |