# 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