gocrypt/Makefile
2019-06-25 20:57:03 +02:00

39 lines
808 B
Makefile

CC=go
BUILD=build -v
GCFLAGS=-gcflags '-e'
LDFLAGS=-ldflags '-s -w'
PROGRAM=gocrypt
ENV=CGO_ENABLED=0 GO111MODULE=on
all: $(PROGRAM)
release: clean gofmt test
$(ENV) $(CC) $(BUILD) $(GCFLAGS) $(LDFLAGS)
release-vendor: clean gofmt test
$(ENV) $(CC) $(BUILD) -mod=vendor $(GCFLAGS) $(LDFLAGS)
vendor: clean gofmt
$(ENV) $(CC) $(BUILD) -mod=vendor $(GCFLAGS) $(LDFLAGS)
$(PROGRAM): clean gofmt
$(ENV) $(CC) $(BUILD) $(GCFLAGS) $(LDFLAGS)
clean:
$(CC) clean -x
gofmt:
gofmt -w pkg/* main.go
test:
ifeq ($(shell go env GOARCH), $(shell go env GOHOSTARCH))
ifeq ($(shell go env GOOS), $(shell go env GOHOSTOS))
$(CC) test ./...
else
$(info skipping tests of other platforms)
endif
else
$(info skipping tests of other platforms)
endif
.PHONY: release release-vendor vendor build clean gofmt test