.PHONY: all BIN_NAME := rpi-relay BUILD_DATE ?= $(shell date -u +"%Y-%m-%dT%H:%M:%SZ") ifneq ($(DRONE_TAG),) VERSION ?= $(subst v,,$(DRONE_TAG)) else VERSION ?= $(shell git describe --tags --always | sed 's/-/+/' | sed 's/^v//') endif mkfile_path := $(abspath $(lastword $(MAKEFILE_LIST))) current_dir := $(dir $(mkfile_path)) LDFLAGS ?= -X rpirelay/internal/version.Version=$(VERSION) -X rpirelay/internal/version.BuildDate=$(BUILD_DATE) all: clean generate-spec unpack-swagger build dev: clean generate-spec unpack-swagger build: go build -o $(BIN_NAME) -ldflags "-s -w $(LDFLAGS)" ./cmd/server/main.go clean: rm -rf $(BIN_NAME) rm -rf *.so go clean generate-spec: swagger generate spec -m --compact -o spec.json test-code: clean generate-spec unpack-swagger go test -cover=true ./... test-code-coverage: clean generate-spec unpack-swagger go test -cover -coverprofile cover.out ./... show-coverage: go tool cover -html=cover.out install-dep: go get github.com/go-swagger/go-swagger/... unpack-swagger: mkdir -p public/swagger && tar xvf swagger.tar -C public/swagger