libafl_sugar 0.12.0

Sugar builders to create common fuzzers with LibAFL
[package]
name = "libafl_sugar"
version.workspace = true
authors = ["Andrea Fioraldi <andreafioraldi@gmail.com>"]
description = "Sugar builders to create common fuzzers with LibAFL"
documentation = "https://docs.rs/libafl_sugar"
repository = "https://github.com/AFLplusplus/LibAFL/"
readme = "../README.md"
license = "MIT OR Apache-2.0"
keywords = ["fuzzing"]
edition = "2021"
build = "build.rs"
categories = ["development-tools::testing", "emulators", "embedded", "os", "no-std"]

[package.metadata.docs.rs]
all-features = true

[features]
python = ["pyo3", "libafl_qemu/python", "pyo3-build-config"]
default = []

# for libafl_qemu
# The following architecture features are mutually exclusive.
x86_64 = ["libafl_qemu/x86_64"] # build qemu for x86_64 (default)
i386 = ["libafl_qemu/i386"] # build qemu for i386
arm = ["libafl_qemu/arm"] # build qemu for arm
aarch64 = ["libafl_qemu/aarch64"] # build qemu for aarch64
mips = ["libafl_qemu/mips"] # build qemu for mips (el, use with the 'be' feature of mips be)
ppc = ["libafl_qemu/ppc"] # build qemu for powerpc
hexagon = ["libafl_qemu/hexagon"] # build qemu for hexagon

[build-dependencies]
pyo3-build-config = { version = "0.18", optional = true }

[dependencies]
libafl = { path = "../libafl", version = "0.12.0" }
libafl_bolts = { path = "../libafl_bolts", version = "0.12.0" }
libafl_targets = { path = "../libafl_targets", version = "0.12.0" }

typed-builder = "0.16" # Implement the builder pattern at compiletime
pyo3 = { version = "0.18", optional = true }
log = "0.4.20"

[target.'cfg(target_os = "linux")'.dependencies]
libafl_qemu = { path = "../libafl_qemu", version = "0.12.0" }

[lib]
name = "libafl_sugar"
crate-type = ["cdylib", "rlib"]