[package]
name = "rlx-sam"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
authors.workspace = true
description = "Segment Anything Model (SAM v1) for RLX"
keywords.workspace = true
categories.workspace = true
repository.workspace = true

[dependencies]
rlx-cli = { workspace = true }
rlx-core = { workspace = true }
rlx-sam-ir = { workspace = true }
rlx-ir = { workspace = true }
rlx-flow = { workspace = true }
rlx-runtime = { workspace = true }
rlx-opt = { workspace = true }
rlx-cpu = { workspace = true }
serde = { workspace = true }
serde_json = { workspace = true }
anyhow = { workspace = true }
safetensors = { workspace = true }
image = { workspace = true }

[[bin]]
name = "rlx-sam1"
path = "src/bin/rlx_sam1.rs"

[[bin]]
name = "rlx-sam-batch"
path = "src/bin/rlx_sam_batch.rs"

[lints]
workspace = true

[features]
default = []
metal = ["rlx-runtime/metal"]
mlx = ["rlx-runtime/mlx"]
cuda = ["rlx-runtime/cuda"]
rocm = ["rlx-runtime/rocm"]
gpu = ["rlx-runtime/gpu"]
vulkan = ["rlx-runtime/vulkan"]
all-backends = ["metal", "mlx", "cuda", "rocm", "gpu", "vulkan"]
apple-silicon = ["metal", "mlx", "gpu"]
nvidia-gpu = ["cuda"]
amd-gpu = ["rocm"]
portable-gpu = ["gpu"]
