.PHONY: all build test dev bench format clean examples gen_proto ENABLE_FEATURES ?= default all: format build test examples build: cargo build --features="${ENABLE_FEATURES}" test: cargo test --features="${ENABLE_FEATURES}" -- --nocapture dev: format test bench: format cargo bench --features=${ENABLE_FEATURES} -- --nocapture format: @cargo fmt --all -- --check >/dev/null || cargo fmt --all clean: cargo clean examples: cargo build --example example_embed cargo build --example example_hyper cargo build --features="push" --example example_push cargo build --features="process" --example example_process_collector gen_proto: @ which protoc >/dev/null || { echo "Please install protoc first"; exit 1; } @ which protoc-gen-rust >/dev/null || { echo "Please install protobuf rust plugin, cargo install protobuf"; exit 1; } protoc --rust_out proto proto/metrics.proto