X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=Makefile;h=c4b742e2c18f956424777916ffb7bbace531ae78;hb=e6cca4bfd215aba51d58bf0bb046c16c081e42a3;hp=ec013130e1a4811ffcf634d1cdaa22512e6d6d6c;hpb=62d19032621c7db801b313a1e19e787cfb1fbc3e;p=govpp.git diff --git a/Makefile b/Makefile index ec01313..c4b742e 100644 --- a/Makefile +++ b/Makefile @@ -1,25 +1,29 @@ VERSION ?= $(shell git describe --always --tags --dirty) +BINAPI_DIR ?= $(shell cd examples/bin_api && pwd) +VPP_VERSION := $(shell apt-cache show vpp | grep Version: | cut -d' ' -f2-) + all: test build examples install: - @echo "=> installing ${VERSION}" + @echo "=> installing binapi generator ${VERSION}" go install ./cmd/binapi-generator build: - @echo "=> building ${VERSION}" + @echo "=> building binapi generator ${VERSION}" cd cmd/binapi-generator && go build -v examples: @echo "=> building examples" - cd examples/cmd/simple-client && go build -v - cd examples/cmd/stats-client && go build -v - cd examples/cmd/perf-bench && go build -v + cd examples/simple-client && go build -v + cd examples/stats-api && go build -v + cd examples/perf-bench && go build -v + cd examples/union-example && go build -v test: - @echo "=> testing" + @echo "=> running tests" go test -cover ./cmd/... - go test -cover ./core ./api ./codec + go test -cover ./ ./adapter ./core ./api ./codec extras: @echo "=> building extras" @@ -31,18 +35,28 @@ extras: clean: @echo "=> cleaning" rm -f cmd/binapi-generator/binapi-generator - rm -f examples/cmd/perf-bench/perf-bench - rm -f examples/cmd/simple-client/simple-client - rm -f examples/cmd/stats-client/stats-client + rm -f examples/perf-bench/perf-bench + rm -f examples/simple-client/simple-client + rm -f examples/stats-api/stats-api + rm -f examples/union-example/union-example rm -f extras/libmemif/examples/gopacket/gopacket rm -f extras/libmemif/examples/icmp-responder/icmp-responder rm -f extras/libmemif/examples/jumbo-frames/jumbo-frames rm -f extras/libmemif/examples/raw-data/raw-data +generate-binapi: + @echo "=> generating binapi" + @go generate "${BINAPI_DIR}" + generate: install @echo "=> generating code" cd examples && go generate ./... +update-vppapi: + @echo "=> updating API JSON files using installed VPP ${VPP_VERSION}" + @cd ${BINAPI_DIR} && find . -type f -name '*.api.json' -exec cp /usr/share/vpp/api/'{}' '{}' \; + @echo ${VPP_VERSION} > ${BINAPI_DIR}/VPP_VERSION + lint: @echo "=> running linter" @golint ./... | grep -v vendor | grep -v bin_api || true