summaryrefslogtreecommitdiffstats
path: root/src/jaegertracing/jaeger-client-cpp/idl/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'src/jaegertracing/jaeger-client-cpp/idl/Makefile')
-rw-r--r--src/jaegertracing/jaeger-client-cpp/idl/Makefile39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/jaegertracing/jaeger-client-cpp/idl/Makefile b/src/jaegertracing/jaeger-client-cpp/idl/Makefile
new file mode 100644
index 000000000..f267cdcbf
--- /dev/null
+++ b/src/jaegertracing/jaeger-client-cpp/idl/Makefile
@@ -0,0 +1,39 @@
+
+THRIFT_VER=0.9.2
+THRIFT_IMG=thrift:$(THRIFT_VER)
+THRIFT=docker run -u $(shell id -u) -v "${PWD}:/data" $(THRIFT_IMG) thrift
+
+SWAGGER_VER=0.12.0
+SWAGGER_IMAGE=quay.io/goswagger/swagger:$(SWAGGER_VER)
+SWAGGER=docker run --rm -it -u ${shell id -u} -v "${PWD}:/go/src/${PROJECT_ROOT}" -w /go/src/${PROJECT_ROOT} $(SWAGGER_IMAGE)
+
+THRIFT_GO_ARGS=thrift_import="github.com/apache/thrift/lib/go/thrift"
+THRIFT_PY_ARGS=new_style,tornado
+THRIFT_JAVA_ARGS=private-members
+THRIFT_PHP_ARGS=psr4
+
+THRIFT_GEN=--gen go:$(THRIFT_GO_ARGS) --gen py:$(THRIFT_PY_ARGS) --gen java:$(THRIFT_JAVA_ARGS) --gen js:node --gen cpp --gen php:$(THRIFT_PHP_ARGS)
+THRIFT_CMD=$(THRIFT) -o /data $(THRIFT_GEN)
+
+THRIFT_FILES=agent.thrift jaeger.thrift sampling.thrift zipkincore.thrift crossdock/tracetest.thrift \
+ baggage.thrift dependency.thrift aggregation_validator.thrift
+
+test-ci: thrift swagger-validate
+
+swagger-validate:
+ $(SWAGGER) validate ./swagger/zipkin2-api.yaml
+
+clean:
+ rm -rf gen-* || true
+
+thrift: thrift-image clean $(THRIFT_FILES)
+
+$(THRIFT_FILES):
+ @echo Compiling $@
+ $(THRIFT_CMD) /data/thrift/$@
+
+thrift-image:
+ docker pull $(THRIFT_IMG)
+ $(THRIFT) -version
+
+.PHONY: test-ci clean thrift thrift-image $(THRIFT_FILES) swagger-validate