.PHONY: all build test bench clean check fmt lint doc size release dry-release
all: check test
build:
cargo build
build-all:
cargo build --all-features
test:
cargo test
test-all:
cargo test --all-features
bench:
cargo bench --features std
check:
cargo check
cargo check --all-features
cargo check --no-default-features
fmt:
cargo fmt
lint:
cargo fmt -- --check
cargo clippy -- -D warnings
cargo clippy --all-features -- -D warnings
doc:
cargo doc --no-deps --all-features
doc-open:
cargo doc --no-deps --all-features --open
size:
cargo build --release
@echo "Release library size:"
@powershell -Command "Get-ChildItem target/release -Filter '*.rlib' | Where-Object { $$_.Name -like '*thai*' } | Select-Object Name, @{N='Size(KB)';E={[math]::Round($$_.Length/1KB,2)}}"
release:
cargo build --profile release-size
dry-release:
cargo publish --dry-run
clean:
cargo clean
verify-no-std:
cargo build --no-default-features
example:
cargo run --example demo --features std
ci: fmt lint check test-all doc
@echo "All CI checks passed!"