Cargo Features

[dependencies]
c-kzg = { version = "2.0.0", default-features = false, features = ["std", "serde", "generate-bindings", "ethereum_kzg_settings", "generate-fuzz-corpus", "portable", "no-threads"] }
default = ethereum_kzg_settings, portable, std

These default features are set whenever c-kzg is added without default-features = false somewhere in the dependency tree.

std default

Enables std of hex, libc, optional once_cell, and optional serde

once_cell:

Enables once_cell::sync module.

serde

Enables serde

generate-bindings build

Enables bindgen ^0.69

ethereum_kzg_settings default

Enables once_cell

generate-fuzz-corpus

Enable this feature when running the tests to generate the fuzzing corpus.
This converts the yaml reference tests into a binary form for the fuzzer.

portable default

This is a standalone feature so that crates that disable default features can enable blst/portable without having to add it as a dependency

Enables portable of blst

no-threads

BLST Compilation:
Suppress multi-threading.
Engaged on wasm32 target architecture automatically.

Enables no-threads of blst