1414
1515SHELL := /bin/bash
1616-include ../proxy.mk
17+ include ../build_env.mk
1718UID: =` id -u `
1819GID: =` id -g `
19- all : \
20+
21+ all : build_thrift \
2022 target/datalayerservice.jar
2123
22- src/main/java/org/microfunctions/data_layer/DataLayerService.java : \
23- thrift/DataLayerMessage.thrift \
24- thrift/DataLayerService.thrift
24+ build_thrift :
25+ cd ../build_tools/thrift/$(THRIFT_VERSION ) /; ./build_thrift.sh; cd -
26+
27+ src/main/java/org/microfunctions/data_layer/DataLayerService.java : ../build_env.mk \
28+ thrift/DataLayerMessage.thrift \
29+ thrift/DataLayerService.thrift
2530 docker run --rm -it --name datalayer-thrift \
2631 --user $(UID ) :$(GID ) \
2732 -v $(CURDIR ) :/usr/src/datalayer -w /usr/src/datalayer \
28- thrift:0.12.0 \
33+ $( THRIFT_IMAGE_NAME ) : $( THRIFT_VERSION ) \
2934 bash -c ' thrift --gen java -out ./src/main/java/ ./thrift/DataLayerMessage.thrift; thrift --gen java -out ./src/main/java/ ./thrift/DataLayerService.thrift'
3035 touch src/main/java/org/microfunctions/data_layer/DataLayerService.java
3136
32- PythonClient/data_layer :
37+ PythonClient/data_layer : ../build_env.mk \
38+ thrift/DataLayerMessage.thrift \
39+ thrift/DataLayerService.thrift
3340 docker run --rm -it --name datalayer-thrift \
3441 --user $(UID ) :$(GID ) \
3542 -v $(CURDIR ) :/usr/src/datalayer -w /usr/src/datalayer \
36- thrift:0.12.0 \
43+ $( THRIFT_IMAGE_NAME ) : $( THRIFT_VERSION ) \
3744 bash -c ' thrift --gen py -out ./PythonClient ./thrift/DataLayerMessage.thrift; thrift --gen py -out ./PythonClient ./thrift/DataLayerService.thrift'
3845
3946# In case the user doesn't have maven configurations in the home directory, we need to create it
@@ -55,17 +62,15 @@ PythonClient/data_layer:
5562JAVA_SOURCES =$(shell find src/ -type f|grep -v src/main/java/org/microfunctions/data_layer/DataLayerService.java)
5663GIT_REVISION: =` git describe --tags --always --dirty=-dirty `
5764target/datalayerservice.jar : $(JAVA_SOURCES ) \
58- src/main/java/org/microfunctions/data_layer/DataLayerService.java \
59- thrift/DataLayerMessage.thrift \
60- thrift/DataLayerService.thrift \
61- ~ /.m2/settings-docker.xml
65+ src/main/java/org/microfunctions/data_layer/DataLayerService.java \
66+ ~ /.m2/settings-docker.xml
6267 if [ ! -e ~ /.m2/repository ]; then mkdir -p ~ /.m2/repository; fi
6368 docker run --rm -it --name datalayer-maven \
6469 --user $(UID ) :$(GID ) \
6570 -v ~ /.m2:/usr/share/maven/ref \
6671 -v $(CURDIR ) :/usr/src/datalayer -w /usr/src/datalayer \
6772 maven:3.6.1-jdk-8 \
68- mvn -Drevision=$(GIT_REVISION ) -DargLine=" -Duser.home=/tmp" -s /usr/share/maven/ref/settings-docker.xml package
73+ mvn -Drevision=$(GIT_REVISION ) -Dlibthrift.version= $( MVN_LIBTHRIFT_VERSION ) - DargLine=" -Duser.home=/tmp" -s /usr/share/maven/ref/settings-docker.xml package
6974
7075clean :
7176 rm -rf ./target
0 commit comments