virtbuf/Makefile

78 lines
2.1 KiB
Makefile

# You must use the current google protoc-gen-go
#
# cd ~/go/src/google.golang.org/protobuf/cmd/protoc-gen-go
# go install
check-for-protoc-gen-go:
@if [ -f "/usr/bin/bin/protoc-gen-go" ]; then \
echo "the protoc-gen-go package is old in debian sid right now"; \
echo "for now, remove it"; \
apt remote proto-gen-go \
exit 1; \
fi
@if [ ! -f "$(HOME)/go/bin/protoc-gen-go" ]; then \
echo "you must build protoc-gen-go from google"; \
echo go-clone google.golang.org/protobuf; \
cd ~/go/src/google.golang.org/protobuf/cmd/protoc-gen-go/ && go install; \
fi
make all
all: droplet.pb.go hypervisor.pb.go event.pb.go experiments.pb.go
make -C example
vet: lint
GO111MODULE=off go vet
lint:
-buf lint droplet.proto
# autofixes your import headers in your golang files
goimports:
goimports -w *.go
make -C example goimports
redomod:
rm -f go.*
GO111MODULE= go mod init
GO111MODULE= go mod tidy
clean:
rm -f *.pb.go
-rm -f go.*
make -C example clean
droplet.pb.go: droplet.proto
# protoc --go_out=. droplet.proto
# This is switched over to use the new protoc-gen-go from google.golang.org/protobuf/cmd/protoc-gen-go
# the debian one (2024/10/21) seems to be the older/original one from github.com/golang/protobuf/protoc-gen-go
cd ~/go/src && protoc --go_out=. --proto_path=go.wit.com/lib/protobuf/virtbuf \
--go_opt=Mdroplet.proto=go.wit.com/lib/protobuf/virtbuf \
droplet.proto
hypervisor.pb.go: hypervisor.proto
cd ~/go/src && protoc --go_out=. --proto_path=go.wit.com/lib/protobuf/virtbuf \
--go_opt=Mhypervisor.proto=go.wit.com/lib/protobuf/virtbuf \
hypervisor.proto
event.pb.go: event.proto
cd ~/go/src && protoc --go_out=. \
--proto_path=go.wit.com/lib/protobuf/virtbuf \
--go_opt=Mevent.proto=go.wit.com/lib/protobuf/virtbuf \
event.proto
experiments.pb.go: experiments.proto
cd ~/go/src && protoc --go_out=. \
--proto_path=go.wit.com/lib/protobuf/virtbuf \
--go_opt=Mexperiments.proto=go.wit.com/lib/protobuf/virtbuf \
experiments.proto
deps:
apt install golang-goprotobuf-dev
apt install protobuf-compiler
push:
git pull
git add --all
git commit -a -s
git push