summaryrefslogtreecommitdiff
path: root/Makefile
blob: 4b825f6d72bc27424caca0a9fb32f70f8c54167d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
VERSION = $(shell git describe --tags)
BUILDTIME = $(shell date +%Y.%m.%d_%H%M)

simple: build
	make -C example clean simpleMutexGlobal goimports vet
	make -C example clean simpleMutexProtoc goimports vet

full: install clean auto goimports vet build test install
	@echo everything worked and the example ran

test: goimports build test

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

install:
	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

test:
	make -C example rawproto
	make -C example modproto

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