PROTOFILES = $(wildcard *.proto)
GO_TARGETS = $(patsubst %.proto,%.pb.go,$(PROTOFILES))
DEBIAN_DEPS = protobuf-compiler protoc-gen-go protobuf-compiler-grpc	\
			  golang-goprotobuf-dev golang-google-genproto-dev 			\
			  golang-google-grpc-dev grpc-proto golang-protobuf-extensions-dev

.PHONY: all
all: $(GO_TARGETS)

%.pb.go: %.proto
	protoc -I=$(PWD) --go_out=$(PWD) --go-grpc_out=. --go-grpc_opt=paths=source_relative $<

.PHONY: install-debian-deps
install-debian-deps:
	sudo apt-get install $(DEBIAN_DEPS)

.PHONY: uninstall-debian-deps
uninstall-debian-deps:
	sudo apt-get remove $(DEBIAN_DEPS)

.PHONY: clean
clean:
	rm -f *.pb.go
