.PHONY: all build test clean install run-server run-client fmt lint bench doc
all: build test
build:
cargo build --release --all
test:
cargo test --all
test-unit:
cargo test --lib
test-integration:
cargo test --test '*'
clean:
cargo clean
rm -rf test_output/
install: build
sudo cp target/release/qssh /usr/local/bin/
sudo cp target/release/qsshd /usr/local/bin/
sudo cp target/release/qscp /usr/local/bin/
sudo cp target/release/qssh-keygen /usr/local/bin/
fmt:
cargo fmt --all
lint:
cargo clippy --all-targets --all-features -- -D warnings
audit:
cargo audit
bench:
cargo bench
doc:
cargo doc --no-deps --open
quick:
cargo test --lib -- --test-threads=8
server-debug:
RUST_LOG=debug cargo run --bin qsshd -- --listen :42
p2p-demo:
cargo run --example p2p_demo -- listen
coverage:
cargo tarpaulin --out Html --output-dir target/coverage
release:
RUSTFLAGS="-C target-cpu=native" cargo build --release
pre-commit: fmt lint test
@echo "✅ Ready to commit!"