summaryrefslogtreecommitdiff
path: root/example/Makefile
blob: 22a8c65da008b4b08d94cc8c3d70fe53dc33e9f1 (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
VERSION = $(shell git describe --tags)
BUILDTIME = $(shell date +%Y.%m.%d_%H%M)

all: clean simpleMutexProtoc goimports build
	./example

modproto: clean withMutex goimports vet build
	./example

rawproto: clean withoutMutex goimports vet build
	./example

deleteproto: clean
	../autogenpb --proto fruit.proto --package main --delete
	make build

vet:
	@GO111MODULE=off go vet

rawbuild:
	GO111MODULE=off go build -v

build: goimports vet
	GO111MODULE=off go build -v

simpleMutexProtoc: clean
	../autogenpb --proto fruit.proto --package main

# why does this fail to compile? I'm not sure. maybe someone smart can figure it out
# basically, it just trys to return the deleted record but says something
# about the RWmutex lock being copied and GO fails to compile
# I'm don't grok what is going on. This autogenerated code should 
# provide as simple as one could hope for automated way to try to debug it though!
simpleMutexProtocWithDeleteCopy: clean
	../autogenpb --proto fruit.proto --package main --delete

simpleMutexGlobal: clean
	../autogenpb --proto fruit.proto --package main --mutex=false

withMutex: clean
	../autogenpb --proto fruit.proto --package main
	../autogenpb --proto file.proto --package main
	../autogenpb --proto patchset.proto --package main

withoutMutex: clean
	../autogenpb --proto fruit.proto --package main --mutex=false
	../autogenpb --proto file.proto --package main --mutex=false
	../autogenpb --proto patchset.proto --package main --mutex=false

goimports:
	goimports -w *.go

clean:
	-rm -f go.*
	-rm -f *.pb.go
	-rm -f example