-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
147 lines (119 loc) · 5 KB
/
Makefile
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
include base.proto.mk
HDP_DIR=${PROTO_ROOT_PATH}/github.com/kom0055/go-hadoop/proto/v1alpha1
HDP_COMMON_DIR=${HDP_DIR}/common
HDFS_DIR=${HDP_DIR}/hdfs
HDFS_CLIENT_DIR=${HDFS_DIR}/client
HDFS_RBF_DIR=${HDFS_DIR}/rbf
HDFS_DATANODE_DIR=${HDFS_DIR}/datanode
HDFS_NAMENODE_DIR=${HDFS_DIR}/namenode
HDFS_QJOURNAL_DIR=${HDFS_DIR}/qjournal
YARN_DIR=${HDP_DIR}/yarn
YARN_API_DIR=${YARN_DIR}/api
YARN_API_SERVER_DIR=${YARN_DIR}/api/server
YARN_COMMON_DIR=${YARN_DIR}/common
YARN_AM_DIR=${YARN_DIR}/am
YARN_SERVER_DIR=${YARN_DIR}/server
YARN_SERVER_COMMON_DIR=${YARN_DIR}/server/common
YARN_SERVER_APP_DIR=${YARN_DIR}/server/app
YARN_SERVER_NM_DIR=${YARN_DIR}/server/nm
YARN_SERVER_RM_DIR=${YARN_DIR}/server/rm
MR_DIR=${HDP_DIR}/mr
MR_CLIENT_DIR=${MR_DIR}/client
MR_CLIENT_COMMON_DIR=${MR_CLIENT_DIR}/common
MR_CLIENT_SHUFFLE_DIR=${MR_CLIENT_DIR}/shuffle
.PHONY: hdp-common
hdp-common:
for file in $(HDP_COMMON_DIR)/*.proto; do \
protoc $${file} --go_out=${PROTO_ROOT_PATH} --go_opt=paths=source_relative \
--proto_path=${PROTO_ROOT_PATH}; \
done
.PHONY: hdfs
hdfs: hdp-common
for file in $(HDFS_CLIENT_DIR)/*.proto; do \
protoc $${file} --go_out=${PROTO_ROOT_PATH} --go_opt=paths=source_relative \
--proto_path=${PROTO_ROOT_PATH} \
-I${HDP_COMMON_DIR} -I${HDFS_CLIENT_DIR}; \
done
for file in $(HDFS_RBF_DIR)/*.proto; do \
protoc $${file} --go_out=${PROTO_ROOT_PATH} --go_opt=paths=source_relative \
--proto_path=${PROTO_ROOT_PATH} \
-I${HDP_COMMON_DIR} -I${HDFS_CLIENT_DIR} -I${HDFS_RBF_DIR}; \
done
for file in $(HDFS_DIR)/*.proto; do \
protoc $${file} --go_out=${PROTO_ROOT_PATH} --go_opt=paths=source_relative \
--proto_path=${PROTO_ROOT_PATH} \
-I${HDFS_DIR} -I${HDP_COMMON_DIR} -I${HDFS_CLIENT_DIR} -I${HDFS_RBF_DIR}; \
done
for file in $(HDFS_DATANODE_DIR)/*.proto; do \
protoc $${file} --go_out=${PROTO_ROOT_PATH} --go_opt=paths=source_relative \
--proto_path=${PROTO_ROOT_PATH} \
-I${HDFS_DIR} -I${HDP_COMMON_DIR} -I${HDFS_CLIENT_DIR} -I${HDFS_RBF_DIR}; \
done
for file in $(HDFS_NAMENODE_DIR)/*.proto; do \
protoc $${file} --go_out=${PROTO_ROOT_PATH} --go_opt=paths=source_relative \
--proto_path=${PROTO_ROOT_PATH} \
-I${HDFS_DIR} -I${HDP_COMMON_DIR} -I${HDFS_CLIENT_DIR} -I${HDFS_RBF_DIR}; \
done
for file in $(HDFS_QJOURNAL_DIR)/*.proto; do \
protoc $${file} --go_out=${PROTO_ROOT_PATH} --go_opt=paths=source_relative \
--proto_path=${PROTO_ROOT_PATH} \
-I${HDFS_DIR} -I${HDP_COMMON_DIR} -I${HDFS_CLIENT_DIR} -I${HDFS_RBF_DIR}; \
done
.PHONY: yarn
yarn: hdp-common
for file in $(YARN_API_DIR)/*.proto; do \
protoc $${file} --go_out=${PROTO_ROOT_PATH} --go_opt=paths=source_relative \
--proto_path=${PROTO_ROOT_PATH} \
-I${YARN_API_DIR} -I${HDP_COMMON_DIR}; \
done
for file in $(YARN_API_SERVER_DIR)/*.proto; do \
protoc $${file} --go_out=${PROTO_ROOT_PATH} --go_opt=paths=source_relative \
--proto_path=${PROTO_ROOT_PATH} \
-I${YARN_API_SERVER_DIR} -I${YARN_API_DIR} -I${HDP_COMMON_DIR}; \
done
for file in $(YARN_COMMON_DIR)/*.proto; do \
protoc $${file} --go_out=${PROTO_ROOT_PATH} --go_opt=paths=source_relative \
--proto_path=${PROTO_ROOT_PATH} \
-I${YARN_COMMON_DIR} -I${YARN_API_DIR} -I${HDP_COMMON_DIR}; \
done
for file in $(YARN_AM_DIR)/*.proto; do \
protoc $${file} --go_out=${PROTO_ROOT_PATH} --go_opt=paths=source_relative \
--proto_path=${PROTO_ROOT_PATH} \
-I${YARN_COMMON_DIR} -I${YARN_API_DIR} -I${HDP_COMMON_DIR}; \
done
for file in $(YARN_SERVER_COMMON_DIR)/*.proto; do \
protoc $${file} --go_out=${PROTO_ROOT_PATH} --go_opt=paths=source_relative \
--proto_path=${PROTO_ROOT_PATH} \
-I${YARN_COMMON_DIR} -I${YARN_API_DIR} -I${HDP_COMMON_DIR}; \
done
for file in $(YARN_SERVER_APP_DIR)/*.proto; do \
protoc $${file} --go_out=${PROTO_ROOT_PATH} --go_opt=paths=source_relative \
--proto_path=${PROTO_ROOT_PATH} \
-I${YARN_SERVER_COMMON_DIR} -I${YARN_COMMON_DIR} -I${YARN_API_DIR} -I${HDP_COMMON_DIR}; \
done
for file in $(YARN_SERVER_NM_DIR)/*.proto; do \
protoc $${file} --go_out=${PROTO_ROOT_PATH} --go_opt=paths=source_relative \
--proto_path=${PROTO_ROOT_PATH} \
-I${YARN_SERVER_COMMON_DIR} -I${YARN_COMMON_DIR} -I${YARN_API_DIR} -I${HDP_COMMON_DIR}; \
done
for file in $(YARN_SERVER_RM_DIR)/*.proto; do \
protoc $${file} --go_out=${PROTO_ROOT_PATH} --go_opt=paths=source_relative \
--proto_path=${PROTO_ROOT_PATH} \
-I${YARN_SERVER_COMMON_DIR} -I${HDP_COMMON_DIR} -I${YARN_COMMON_DIR} -I${YARN_API_DIR}; \
done
.PHONY: mr
mr: yarn
for file in $(MR_CLIENT_COMMON_DIR)/*.proto; do \
protoc \
--proto_path=${PROTO_ROOT_PATH} \
--go_out=${PROTO_ROOT_PATH} \
$${file} \
; \
done
for file in $(MR_CLIENT_SHUFFLE_DIR)/*.proto; do \
protoc $${file} --go_out=${PROTO_ROOT_PATH} --go_opt=paths=source_relative \
--proto_path=${PROTO_ROOT_PATH} \
-I${MR_CLIENT_SHUFFLE_DIR} -I${HDP_COMMON_DIR} -I${YARN_API_DIR}; \
done
.PHONY: all
all: hdp-common hdfs yarn mr