pdns-auth-proxy/client/Makefile

40 lines
878 B
Makefile

# -*- mode: makefile -*-
PROJECTNAME := client
GO_LDFLAGS_STATIC=-ldflags "-w $(CTIMEVAR) -extldflags -static"
GO := go
all: build fmt lint test
.PHONY: fmt
fmt: ## Verifies all files have been `gofmt`ed.
@echo "+ $@"
$(eval var = $(shell gofmt -s -l . | grep -v vendor | tee /dev/stderr))
@if [ ! -z "${var}" ]; then exit 1; fi
.PHONY: build
build: ## Builds a static executable.
@echo "+ $@"
CGO_ENABLED=0 $(GO) build -mod=vendor \
-o $(PROJECTNAME) \
-tags "static_build netgo" \
-installsuffix netgo ${GO_LDFLAGS_STATIC} .;
.PHONY: test
test: ## Generates test certificates & run unit tests.
go vet -mod=vendor
go test -v -mod=vendor
.PHONY: lint
lint: ## Verifies `golint` passes.
@echo "+ $@"
$(eval var = $(shell golint ./... | grep -v vendor | tee /dev/stderr))
@if [ ! -z "${var}" ]; then exit 1; fi
.PHONY: clean
clean:
rm -f $(PROJECTNAME)