# Copyright © SixtyFPS GmbH # SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-Royalty-free-2.0 OR LicenseRef-Slint-Software-3.0 [package] name = "slint-cpp" description = "Slint C++ integration" authors.workspace = true documentation.workspace = true edition.workspace = true homepage.workspace = true license.workspace = true repository.workspace = true rust-version.workspace = true version.workspace = true build = "build.rs" publish = false # prefix used to convey path to generated includes to the C++ test driver links = "slint_cpp" [lib] path = "lib.rs" crate-type = ["lib", "cdylib", "staticlib"] name = "slint_cpp" # Note, these features need to be kept in sync (along with their defaults) in # the C++ crate's CMakeLists.txt as well as cbindgen.rs [features] interpreter = ["slint-interpreter", "std"] # Enable some function used by the integration tests testing = ["dep:i-slint-backend-testing"] backend-qt = ["i-slint-backend-selector/backend-qt", "std"] backend-winit = ["i-slint-backend-selector/backend-winit", "std"] backend-winit-x11 = ["i-slint-backend-selector/backend-winit-x11", "std"] backend-winit-wayland = ["i-slint-backend-selector/backend-winit-wayland", "std"] backend-linuxkms = ["i-slint-backend-selector/backend-linuxkms", "std"] backend-linuxkms-noseat = ["i-slint-backend-selector/backend-linuxkms-noseat", "std"] renderer-femtovg = ["i-slint-backend-selector/renderer-femtovg"] renderer-skia = ["i-slint-backend-selector/renderer-skia", "i-slint-renderer-skia", "raw-window-handle"] renderer-skia-opengl = ["i-slint-backend-selector/renderer-skia-opengl", "renderer-skia"] renderer-skia-vulkan = ["i-slint-backend-selector/renderer-skia-vulkan", "renderer-skia"] renderer-software = ["i-slint-backend-selector/renderer-software"] gettext = ["i-slint-core/gettext-rs"] accessibility = ["i-slint-backend-selector/accessibility"] system-testing = ["i-slint-backend-selector/system-testing"] std = ["image", "i-slint-core/default", "i-slint-backend-selector"] freestanding = ["i-slint-core/libm", "i-slint-core/unsafe-single-threaded"] experimental = [] default = ["std", "backend-winit", "renderer-femtovg", "backend-qt"] [dependencies] i-slint-backend-selector = { workspace = true, optional = true } i-slint-backend-testing = { workspace = true, optional = true, features = ["ffi"] } i-slint-renderer-skia = { workspace = true, features = ["default", "x11", "wayland"], optional = true } i-slint-core = { workspace = true, features = ["ffi"] } slint-interpreter = { workspace = true, features = ["ffi", "compat-1-2"], optional = true } raw-window-handle = { version = "0.6", optional = true } # Enable image-rs' default features to make all image formats to C++ users image = { workspace = true, optional = true, features = ["default"] } esp-backtrace = { version = "0.11.0", features = ["panic-handler", "println"], optional = true } esp-println = { version = "0.9.0", default-features = false, features = ["uart"], optional = true } [build-dependencies] anyhow = "1.0" cbindgen = { workspace = true } i-slint-common = { workspace = true, features = ["default"] } proc-macro2 = "1.0.11"