slint/tools/compiler/Cargo.toml
Simon Hausmann 44a1bec608
Disable jemalloc for slint-lsp/slint-viewer/slint-compiler on aarch64… (#8136)
With jemalloc the page size is a compile time constant that results in
the process aborting on memory allocation if the compile time determined
page size does not match the kernel reported page size at run-time.

When we, or our users, compile the above programs for aarch64-linux,
there is a fair expectation that the resulting binary works on any
aarch64-linux system. As we can't determine the target page size
reliably, disable jemalloc.

Fixes #8134
2025-04-14 15:03:36 +02:00

37 lines
1.2 KiB
TOML

# Copyright © SixtyFPS GmbH <info@slint.dev>
# SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-Royalty-free-2.0 OR LicenseRef-Slint-Software-3.0
[package]
name = "slint-compiler"
description = "Slint compiler binary"
authors.workspace = true
edition.workspace = true
homepage.workspace = true
license.workspace = true
repository.workspace = true
rust-version.workspace = true
version.workspace = true
publish = false
[[bin]]
name = "slint-compiler"
path = "main.rs"
[features]
software-renderer = ["i-slint-compiler/software-renderer"]
jemalloc = ["dep:tikv-jemallocator"]
sdf-fonts = ["i-slint-compiler/sdf-fonts"]
# Keep defaults in sync with defaults applied in api/cpp/CMakeLists.txt for slint-compiler
default = ["software-renderer", "jemalloc"]
[dependencies]
i-slint-compiler = { workspace = true, features = ["default", "display-diagnostics", "bundle-translations", "cpp", "rust"] }
clap = { workspace = true }
proc-macro2 = "1.0.11"
spin_on = { workspace = true }
itertools = { workspace = true }
[target.'cfg(not(any(target_os = "windows", all(target_arch = "aarch64", target_os = "linux"))))'.dependencies]
tikv-jemallocator = { workspace = true, optional = true }