# Makefile for broad-announce
#
# Dev targets:
#   make proto    — regenerate Go stubs from .proto files
#   make vet      — run go vet on all packages
#   make build    — build all binaries
#   make test     — run unit tests

.PHONY: proto vet build test

PROTO_DIR   := proto
GEN_DIR     := gen/go
BUF         := buf

# proto regenerates the Go stubs from .proto sources.
# Run this whenever you edit anything under proto/.
proto:
	cd $(PROTO_DIR) && \
		$(BUF) lint --config $(PROTO_DIR)/buf.yaml . && \
		$(BUF) generate --template $(PROTO_DIR)/buf.gen.yaml $(PROTO_DIR)/
	go build ./$(GEN_DIR)/...

vet:
	go vet ./...

build:
	go build ./cmd/...

test:
	go test ./...
