-
Notifications
You must be signed in to change notification settings - Fork 1
/
Makefile
56 lines (42 loc) · 1.59 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
SERVER_BIN=./build/skip_go_fast_solver
CLI_BIN=./build/solvercli
export PATH:=$(shell pwd)/tools/bin:$(PATH)
SHELL := env PATH='$(PATH)' /bin/sh
GO_FILES=$(shell find . -name '*.go' -type f -not -path "./vendor/*")
GO_DEPS=go.mod go.sum
###############################################################################
### Builds ###
###############################################################################
${SERVER_BIN}: ${GO_FILES} ${GO_DEPS}
go build -o ./build/skip_go_fast_solver github.com/skip-mev/go-fast-solver/cmd/solver
${CLI_BIN}: ${GO_FILES} ${GO_DEPS}
go build -v -o ${CLI_BIN} github.com/skip-mev/go-fast-solver/cmd/solvercli
.PHONY: tidy build deps
tidy:
go mod tidy
.PHONY: build
build: ${SERVER_BIN}
.PHONY: build-cli
build-cli: ${CLI_BIN}
deps:
go env
go mod download
run-solver:
${SERVER_BIN} --quickstart
###############################################################################
### Testing ###
###############################################################################
test:
go clean -testcache
go test --tags=test -v -race $(shell go list ./... | grep -v /scripts/)
###############################################################################
### Developer Tools ###
###############################################################################
.PHONY: db-exec db-clean tidy test
db-exec:
sqlite3 solver.db
db-clean:
rm solver.db
.PHONY: tools
tools:
make -C tools local