VERSION = $(shell git describe --tags) BUILDTIME = $(shell date +%Y.%m.%d_%H%M) simple: test # make -C example clean simpleMutexGlobal goimports vet # make -C example clean simpleMutexProtoc goimports vet # make -C example deleteproto full: clean auto goimports vet build test install @echo everything worked and the example ran # does a help example to debug the help logic help: build make -C example help # if this passes, it should be OK to 'go install' test: reset make goimports vet build make -C example testGlobal make -C example testProtoc make -C example all dryrun: build make -C example dryrun dryrun-clean: clean auto build make -C example dryrun vet: @GO111MODULE=off go vet @echo this go binary package should build okay # autogen uses autogen to build. keep a working copy somewhere recover: make clean ./autogenpb.last --proto file.proto --package main make goimports make build build: goimports GO111MODULE=off go build \ -ldflags "-X main.VERSION=${VERSION} -X main.BUILDTIME=${BUILDTIME} -X gui.GUIVERSION=${VERSION}" # autogen uses autogen to build. keep a working copy somewhere cp -f autogenpb autogenpb.${BUILDTIME} bak: mv -f autogenpb autogenpb.last redo-protobuf: rm -f *.pb.go autogenpb --proto file.proto --package main install: test GO111MODULE=off go install \ -ldflags "-X main.VERSION=${VERSION} -X main.BUILDTIME=${BUILDTIME} -X gui.GUIVERSION=${VERSION}" auto: # rm -f auto.pb.go autogenpb --proto file.proto --package main # rm -f auto.sort.pb.go auto.newsort.pb.go # auto.marshal.pb.go junk: cd example; rm -f go.* *.pb.go cd example; ../autogenpb --proto file.proto --package yellow cd example; GO111MODULE=off go vet goimports: goimports -w *.go redomod: rm -f go.* GO111MODULE= go mod init GO111MODULE= go mod tidy go mod edit -go=1.20 reset: -rm -f auto.sort.pb.go clean: -rm -f go.* -rm -f *.pb.go -rm -f autogenpb clean-more: ls -l autogenpb autogenpb.last -rm -f autogenpb.2*