6
0
mirror of https://git.mills.io/prologic/msgbus.git synced 2024-06-29 18:21:44 +00:00
prologic-msgbus/Makefile
2022-03-16 21:59:36 +10:00

57 lines
1.3 KiB
Makefile

.PHONY: dev build image test deps clean
CGO_ENABLED=0
COMMIT=`git rev-parse --short HEAD`
LIBRARY=msgbus
SERVER=msgbusd
CLIENT=msgbus
REPO?=prologic/$(LIBRARY)
TAG?=latest
BUILD?=-dev
DESTDIR=/usr/local/bin
BUILD_TAGS="netgo static_build"
BUILD_LDFLAGS="-w -X github.com/$(REPO).GitCommit=$(COMMIT) -X github.com/$(REPO)/Build=$(BUILD)"
all: dev
dev: build
@./cmd/$(SERVER)/$(SERVER)
deps:
@go get ./...
build:
@echo " -> Building $(SERVER) $(TAG)$(BUILD) ..."
@cd cmd/$(SERVER) && \
go build -tags $(BUILD_TAGS) -installsuffix netgo \
-ldflags $(BUILD_LDFLAGS) .
@echo "Built $$(./cmd/$(SERVER)/$(SERVER) -v)"
@echo
@echo " -> Building $(CLIENT) $(TAG)$(BUILD) ..."
@cd cmd/$(CLIENT) && \
go build -tags $(BUILD_TAGS) -installsuffix netgo \
-ldflags $(BUILD_LDFLAGS) .
@echo "Built $$(./cmd/$(CLIENT)/$(CLIENT) --version)"
install: build
@install -D -m 755 ./cmd/$(CLIENT)/$(CLIENT) $(DESTDIR)/$(CLIENT)
@install -D -m 755 ./cmd/$(SERVER)/$(SERVER) $(DESTDIR)/$(SERVER)
image:
@docker build --build-arg TAG=$(TAG) --build-arg BUILD=$(BUILD) -t $(REPO):$(TAG) .
@echo "Image created: $(REPO):$(TAG)"
profile:
@go test -cpuprofile cpu.prof -memprofile mem.prof -v -bench ./...
bench:
@go test -v -bench ./...
test:
@go test -v -cover -coverprofile=coverage.txt -covermode=atomic -coverpkg=./... -race ./...
clean:
@git clean -f -d -X