summaryrefslogtreecommitdiff
path: root/vendor/github.com/leodido/go-urn/makefile
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/leodido/go-urn/makefile')
-rw-r--r--vendor/github.com/leodido/go-urn/makefile39
1 files changed, 39 insertions, 0 deletions
diff --git a/vendor/github.com/leodido/go-urn/makefile b/vendor/github.com/leodido/go-urn/makefile
new file mode 100644
index 000000000..47026d509
--- /dev/null
+++ b/vendor/github.com/leodido/go-urn/makefile
@@ -0,0 +1,39 @@
+SHELL := /bin/bash
+
+build: machine.go
+
+images: docs/urn.png
+
+machine.go: machine.go.rl
+ ragel -Z -G2 -e -o $@ $<
+ @sed -i '/^\/\/line/d' $@
+ @$(MAKE) -s file=$@ snake2camel
+ @gofmt -w -s $@
+
+docs/urn.dot: machine.go.rl
+ @mkdir -p docs
+ ragel -Z -e -Vp $< -o $@
+
+docs/urn.png: docs/urn.dot
+ dot $< -Tpng -o $@
+
+.PHONY: bench
+bench: *_test.go machine.go
+ go test -bench=. -benchmem -benchtime=5s ./...
+
+.PHONY: tests
+tests: *_test.go machine.go
+ go test -race -timeout 10s -coverprofile=coverage.out -covermode=atomic -v ./...
+
+.PHONY: clean
+clean:
+ @rm -rf docs
+ @rm -f machine.go
+
+.PHONY: snake2camel
+snake2camel:
+ @awk -i inplace '{ \
+ while ( match($$0, /(.*)([a-z]+[0-9]*)_([a-zA-Z0-9])(.*)/, cap) ) \
+ $$0 = cap[1] cap[2] toupper(cap[3]) cap[4]; \
+ print \
+ }' $(file) \ No newline at end of file