3
0
corteza/server/Makefile.inc
2023-05-04 19:19:00 +03:00

91 lines
2.3 KiB
Makefile

GO = go
GOINSTALL = $(GO) install
GOFLAGS ?= -trimpath
GOPATH ?= $(HOME)/go
ROOT_DIR = $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
CGO_ENABLED = 1
export GOFLAGS
export CGO_ENABLED
########################################################################################################################
# Tool bins
GOCRITIC = $(GOPATH)/bin/gocritic
MOCKGEN = $(GOPATH)/bin/mockgen
GOTEST = $(GOPATH)/bin/gotest
STATICCHECK = $(GOPATH)/bin/staticcheck
PROTOGEN = $(GOPATH)/bin/protoc-gen-go
PROTOGEN_GRPC = $(GOPATH)/bin/protoc-gen-go-grpc
GIN = $(GOPATH)/bin/gin
STATIK = $(GOPATH)/bin/statik
MODOUTDATED = $(GOPATH)/bin/go-mod-outdated
CUE = $(GOPATH)/bin/cue
CODEGEN = $(GOPATH)/bin/corteza-codegen
JSONTPLEXEC = $(GOPATH)/bin/corteza-json-tpl-exec
PROTOC = /usr/local/bin/protoc
FSWATCH = /usr/local/bin/fswatch
# fswatch is intentionally left out...
BINS = $(GOCRITIC) $(MOCKGEN) $(GOTEST) $(STATICCHECK) $(PROTOGEN) $(GIN) $(STATIK)
# Corteza's tools
CORTEZA_BINS = $(CODEGEN) $(JSONTPLEXEC)
########################################################################################################################
# Go Toolset
$(GOCRITIC):
$(GOINSTALL) github.com/go-critic/go-critic/cmd/gocritic@latest
$(MOCKGEN):
$(GOINSTALL) github.com/golang/mock/mockgen@latest
$(STATICCHECK):
$(GOINSTALL) honnef.co/go/tools/cmd/staticcheck@latest
$(PROTOGEN):
$(GOINSTALL) github.com/golang/protobuf/protoc-gen-go@latest
$(PROTOGEN_GRPC):
$(GOINSTALL) google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest
$(GIN):
$(GOINSTALL) github.com/codegangsta/gin@latest
$(GOTEST):
$(GOINSTALL) github.com/rakyll/gotest@latest
$(STATIK):
$(GOINSTALL) github.com/goware/statik@latest
$(MODOUTDATED):
$(GOINSTALL) github.com/psampaz/go-mod-outdated@latest
$(CUE):
$(GOINSTALL) cuelang.org/go/cmd/cue@v0.4.2
$(CODEGEN):
$(GO) build -o $@ $(ROOT_DIR)/cmd/codegen/main.go
$(JSONTPLEXEC):
$(GO) build -o $@ $(ROOT_DIR)/codegen/tool
clean-tools:
rm -f $(BINS)
clean-corteza-tools:
rm -f $(CORTEZA_BINS)
########################################################################################################################
COLOUR_GREEN=\033[0;32m
COLOUR_YELLOW=\033[0;33m
COLOUR_RED=\033[0;31m
COLOUR_BLUE=\033[0;34m
COLOUR_END=\033[0m
#