-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathMakefile
37 lines (29 loc) · 800 Bytes
/
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
default: build
# Go parameters
GOBUILD=go build
GOCLEAN=go clean
# Build info
BUILD_TIME=`date +%FT%T%z`
BUILD_DATE=`date +%F`
GIT_REVISION=`git rev-parse --short HEAD`
GIT_BRANCH=`git rev-parse --symbolic-full-name --abbrev-ref HEAD`
GIT_DIRTY=`git diff-index --quiet HEAD -- || echo "✗-"`
BUILD_INFO=$(BUILD_DATE)-$(GIT_BRANCH)-$(GIT_REVISION)
# Installation path
GOBIN?=${GOPATH}/bin
# LDFLAGS
LDFLAGS=-ldflags "-s -X main.buildTime=$(BUILD_TIME) -X main.gitRevision=$(GIT_DIRTY)$(GIT_REVISION) -X main.gitBranch=$(GIT_BRANCH)"
# Target
.PHONY: build
build:
CGO_ENABLED=0 $(GOBUILD) $(ARGS) -o bin/optionGen $(LDFLAGS) ./cmd/optionGen/
.PHONY: install
install: build
cp ./bin/* $(GOBIN)/
.PHONY: uninstall
uninstall:
rm $(GOBIN)/optionGen
.PHONY: clean
clean:
$(GOCLEAN)
rm -r ./bin