-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathMakefile
More file actions
47 lines (40 loc) · 1.14 KB
/
Makefile
File metadata and controls
47 lines (40 loc) · 1.14 KB
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
GO_CMD = go
GO_BUILD = $(GO_CMD) build
GO_CLEAN = $(GO_CMD) clean
GO_TEST = $(GO_CMD) test
BIN_PATH = bin
BIN_SNMP_SNAPSHOT = $(BIN_PATH)/snmp-snapshot
BIN_HTTP_DUMP = $(BIN_PATH)/http-dump
BIN_FAKEITD = $(BIN_PATH)/mockdevd
VERSION ?= $(shell git describe --tags --always --dirty 2> /dev/null || echo v0)
LDFLAGS = -w -extldflags -static
LOCAL_IMAGE = ghcr.io/thorsager/mockdev:local
.PHONY: all
all: test snmp-snapshot mockdevd http-dump
.PHONY: test
test:
CGO_ENABLED=0 $(GO_TEST) ./...
.PHONY: snmp-snapshot
snmp-snapshot:
CGO_ENABLED=0 $(GO_BUILD) -ldflags "-X main.Version=$(VERSION) $(LDFLAGS)" \
-o $(BIN_SNMP_SNAPSHOT) \
cmd/snmpsnapshot/snmp_snapshot.go
.PHONY: http-dump
http-dump:
CGO_ENABLED=0 $(GO_BUILD) -ldflags "-X main.Version=$(VERSION) $(LDFLAGS)" \
-o $(BIN_HTTP_DUMP) \
cmd/httpdump/http_dump.go
.PHONY: mockdevd
mockdevd:
CGO_ENABLED=0 $(GO_BUILD) -ldflags "-X main.Version=$(VERSION) $(LDFLAGS)" \
-o $(BIN_FAKEITD) \
cmd/mockdevd/mockdevd.go
.PHONY: local-image
local-image:
docker build -t $(LOCAL_IMAGE) .
.PHONY: clean
clean:
$(GO_CLEAN)
rm -f $(BIN_FAKEITD)
rm -f $(BIN_SNMP_SNAPSHOT)
rm -f $(BIN_HTTP_DUMP)