all: # You must use the current protoc-gen-go # protoc --version 3.6++ does not mean that protoc will generate version3 .go files # # apt remove golang-goprotobuf-dev # apt install protobuf-compiler # # Then: # go get -u github.com/golang/protobuf/protoc-gen-go # cd ~/go/src/github.com/golang/protobuf/protoc-gen-go # go install # # Then: protoc --version make droplet.pb.go make hypervisor.pb.go make cluster.pb.go make -C configfile vet: GO111MODULE=off go vet lint: buf lint droplet.proto # autofixes your import headers in your golang files goimports: goimports -w *.go make -C configfile goimports redomod: rm -f go.* GO111MODULE= go mod init GO111MODULE= go mod tidy clean: rm -f *.pb.go -rm -f go.* make -C configfile 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 cluster.pb.go: cluster.proto cd ~/go/src && protoc --go_out=. --proto_path=go.wit.com/lib/protobuf/virtbuf \ --go_opt=Mdroplet.proto=go.wit.com/lib/protobuf/virtbuf \ --go_opt=Mcluster.proto=go.wit.com/lib/protobuf/virtbuf \ --go_opt=Mhypervisor.proto=go.wit.com/lib/protobuf/virtbuf \ cluster.proto events.pb.go: events.proto protoc --go_out=. events.proto account.pb.go: account.proto protoc --go_out=. account.proto config.pb.go: config.proto protoc --go_out=. config.proto compile: protoc --go_out=. *.proto deps: apt install golang-goprotobuf-dev apt install protobuf-compiler push: git pull git add --all git commit -a -s git push