Files

42 lines
1.8 KiB
Makefile

ROOT := $(shell pwd)
LOCAL_BIN := $(ROOT)/bin
VERSION := $(shell git show-ref --tags -d || git rev-parse --short HEAD)
.PHONY: build
build:
echo "$(VERSION)" > static/app/dist/version.txt
go build \
-ldflags "-X backbone/internal/pkg/version.Version=$(VERSION)" \
-o $(LOCAL_BIN)/app \
internal/app/cmd/main.go
.PHONY: deps
proto-deps:
GOBIN=$(LOCAL_BIN) go install google.golang.org/protobuf/cmd/protoc-gen-go
GOBIN=$(LOCAL_BIN) go install google.golang.org/grpc/cmd/protoc-gen-go-grpc
GOBIN=$(LOCAL_BIN) go install github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2
GOBIN=$(LOCAL_BIN) go install github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-grpc-gateway
.PHONY: proto
proto:
@PATH=$(PATH):$(LOCAL_BIN) protoc \
-I . \
-I pkg/3rdparty \
--go_out=pkg/pb \
--go_opt=Mgoogle/api/http.proto=google.golang.org/genproto/googleapis/api/annotations \
--go-grpc_opt=Mgoogle/api/http.proto=google.golang.org/genproto/googleapis/api/annotations \
--go_opt=Mgoogle/api/annotations.proto=google.golang.org/genproto/googleapis/api/annotations \
--go-grpc_opt=Mgoogle/api/annotations.proto=google.golang.org/genproto/googleapis/api/annotations \
--go_opt=paths=source_relative \
--go-grpc_out=pkg/pb \
--go-grpc_opt=paths=source_relative \
--grpc-gateway_out=pkg/pb \
--grpc-gateway_opt=Mgoogle/api/http.proto=google.golang.org/genproto/googleapis/api/annotations \
--grpc-gateway_opt=Mgoogle/api/annotations.proto=google.golang.org/genproto/googleapis/api/annotations \
--grpc-gateway_opt=paths=source_relative \
--openapiv2_opt=Mgoogle/api/http.proto=google.golang.org/genproto/googleapis/api/annotations \
--openapiv2_opt=Mgoogle/api/annotations.proto=google.golang.org/genproto/googleapis/api/annotations \
--openapiv2_out=logtostderr=true,allow_merge=true,merge_file_name=api:./api \
api/messages/*.proto \
api/services/*.proto