forked from axonweb3/spark
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
76 lines (54 loc) · 1.54 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
ERBOSE := $(if ${CI},--verbose,)
COMMIT := $(shell git rev-parse --short HEAD)
ifneq ("$(wildcard /usr/lib/librocksdb.so)","")
SYS_LIB_DIR := /usr/lib
else ifneq ("$(wildcard /usr/lib64/librocksdb.so)","")
SYS_LIB_DIR := /usr/lib64
else
USE_SYS_ROCKSDB :=
endif
USE_SYS_ROCKSDB :=
SYS_ROCKSDB := $(if ${USE_SYS_ROCKSDB},ROCKSDB_LIB_DIR=${SYS_LIB_DIR},)
CARGO := env ${SYS_ROCKSDB} cargo
test:
${CARGO} test ${VERBOSE} --all -- --skip trust_metric --nocapture
doc:
cargo doc --all --no-deps
doc-deps:
cargo doc --all
# generate GraphQL API documentation
doc-api:
bash docs/build/gql_api.sh
check:
${CARGO} check ${VERBOSE} --all
build:
${CARGO} build ${VERBOSE} --release
check-fmt:
cargo +nightly fmt ${VERBOSE} --all -- --check
fmt:
cargo +nightly fmt ${VERBOSE} --all
clippy:
${CARGO} clippy ${VERBOSE} --all --all-targets --all-features -- \
-D warnings -D clippy::clone_on_ref_ptr -D clippy::enum_glob_use
sort:
cargo sort -gw
check-sort:
cargo sort -gwc
ci: check-fmt clippy test
info:
date
pwd
env
# For counting lines of code
stats:
@cargo count --version || cargo +nightly install --git https://github.com/kbknapp/cargo-count
@cargo count --separator , --unsafe-statistics
# Use cargo-audit to audit Cargo.lock for crates with security vulnerabilities
# expecting to see "Success No vulnerable packages found"
security-audit:
@cargo audit --version || cargo install cargo-audit
@cargo audit
unit-test: test
.PHONY: build prod prod-test
.PHONY: fmt test clippy doc doc-deps doc-api check stats
.PHONY: ci info security-audit