fasttree-sys 0.2.0

Surowe bindingi FFI (extern "C") do biblioteki FastTree (Nim). Nie używaj bezpośrednio — patrz crate `fasttree`.
[package]
name = "fasttree-sys"
version = "0.2.0"
edition = "2021"
description = "Surowe bindingi FFI (extern \"C\") do biblioteki FastTree (Nim). Nie używaj bezpośrednio — patrz crate `fasttree`."
license = "MIT"
repository.workspace = true
links = "fasttree"
build = "build.rs"
# UWAGA przy publikacji (`cargo publish`): ten crate potrzebuje źródeł Nim
# z ../src i ../include, których opublikowany tarball fizycznie NIE widzi
# (Cargo pakuje tylko ten katalog). Uruchom najpierw
# `./scripts/vendor-nim-src.sh`, które kopiuje je do `vendor/` — build.rs
# preferuje ten katalog, jeśli istnieje. `include` niżej jest jawny (nie
# polega na .gitignore/git ls-files), żeby zachowanie było takie samo
# niezależnie od tego, czy katalog jest repo gita.
include = ["src/**", "vendor/**", "build.rs", "Cargo.toml"]

[dependencies]

[build-dependencies]
# bindgen jest OPCJONALNY (patrz build.rs) — domyślnie build.rs kompiluje
# Nim -> libfasttree.a i linkuje ją; bindingi Rust w src/lib.rs są pisane
# ręcznie względem ../include/fasttree.h (ten sam wzorzec co wiele crate'ów
# -sys, np. libsqlite3-sys w trybie "bundled"). Włączenie feature "bindgen"
# regeneruje je automatycznie z nagłówka przy każdym buildzie — przydatne
# przy rozwijaniu capi.nim, żeby złapać rozjazd nagłówek<->bindingi.
bindgen = { version = "0.69", optional = true }

[features]
default = []
bindgen = ["dep:bindgen"]
# Przełącza backend haszujący linkowanej libfasttree na prawdziwy BLAKE3
# (wymaga zbudowanej/zainstalowanej libblake3 — patrz README główne).
blake3 = []