@@ -21,6 +21,7 @@ set -o pipefail
21
21
export GRPC_GIT_TAG=${GRPC_GIT_TAG:= " v1.43.2" }
22
22
# Check for recent changes: https://github.com/open-telemetry/opentelemetry-cpp/compare/v1.2.0...main
23
23
export OPENTELEMETRY_CPP_VERSION=${OPENTELEMETRY_CPP_VERSION:= " 1.2.0" }
24
+ export ABSL_CPP_VERSION=${ABSL_CPP_VERSION:= " 20230802.0" }
24
25
export INSTAL_DIR=/opt/third_party/install
25
26
# improve compilation times
26
27
CORES=$(( $(grep - c ^processor / proc/ cpuinfo) - 1 ))
@@ -54,6 +55,8 @@ prepare()
54
55
{
55
56
apk add \
56
57
linux-headers \
58
+ cmake \
59
+ ninja \
57
60
openssl \
58
61
curl-dev \
59
62
openssl-dev \
@@ -71,14 +74,32 @@ install_grpc()
71
74
cd ${BUILD_PATH} /grpc
72
75
cmake -DCMAKE_INSTALL_PREFIX=${INSTAL_DIR} \
73
76
-G Ninja \
74
- -DGRPC_GIT_TAG=${GRPC_GIT_TAG} /opt/third_party \
75
- -DgRPC_BUILD_GRPC_NODE_PLUGIN=OFF \
76
- -DgRPC_BUILD_GRPC_OBJECTIVE_C_PLUGIN=OFF \
77
- -DgRPC_BUILD_GRPC_PHP_PLUGIN=OFF \
78
- -DgRPC_BUILD_GRPC_PHP_PLUGIN=OFF \
79
- -DgRPC_BUILD_GRPC_PYTHON_PLUGIN=OFF \
80
- -DgRPC_BUILD_GRPC_RUBY_PLUGIN=OFF
81
- cmake --build . -j ${CORES} --target all install
77
+ -DGRPC_GIT_TAG=${GRPC_GIT_TAG} /opt/third_party
78
+
79
+ cmake --build . -j ${CORES} --target all install --verbose
80
+ }
81
+
82
+ install_absl ()
83
+ {
84
+ cd ${BUILD_PATH}
85
+ export LD_LIBRARY_PATH=" ${LD_LIBRARY_PATH: +LD_LIBRARY_PATH: }${INSTAL_DIR} /lib:/usr/local"
86
+ export PATH=" ${PATH} :${INSTAL_DIR} /bin"
87
+ git clone --recurse-submodules -j ${CORES} --depth=1 -b \
88
+ ${ABSL_CPP_VERSION} https://github.com/abseil/abseil-cpp.git abseil-cpp-${ABSL_CPP_VERSION}
89
+ cd " abseil-cpp-${ABSL_CPP_VERSION} "
90
+ mkdir -p .build
91
+ cd .build
92
+
93
+ cmake -DCMAKE_BUILD_TYPE=Release \
94
+ -G Ninja \
95
+ -DCMAKE_CXX_STANDARD=17 \
96
+ -DCMAKE_POSITION_INDEPENDENT_CODE=TRUE \
97
+ -DBUILD_TESTING=OFF \
98
+ -DCMAKE_INSTALL_PREFIX=${INSTAL_DIR} \
99
+ -DABSL_PROPAGATE_CXX_STD=ON \
100
+ -DBUILD_SHARED_LIBS=OFF \
101
+ ..
102
+ cmake --build . -j ${CORES} --target install
82
103
}
83
104
84
105
install_otel ()
@@ -94,17 +115,19 @@ install_otel()
94
115
95
116
cmake -DCMAKE_BUILD_TYPE=Release \
96
117
-G Ninja \
118
+ -DCMAKE_CXX_STANDARD=17 \
97
119
-DCMAKE_POSITION_INDEPENDENT_CODE=TRUE \
98
120
-DWITH_ZIPKIN=OFF \
99
- -DWITH_JAEGER=OFF \
100
121
-DCMAKE_INSTALL_PREFIX=${INSTAL_DIR} \
101
122
-DBUILD_TESTING=OFF \
123
+ -DWITH_BENCHMARK=OFF \
124
+ -DWITH_FUNC_TESTS=OFF \
102
125
-DBUILD_SHARED_LIBS=OFF \
103
- -DWITH_OTLP=ON \
104
126
-DWITH_OTLP_GRPC=ON \
105
127
-DWITH_OTLP_HTTP=OFF \
106
- -DWITH_ABSEIL=OFF \
128
+ -DWITH_ABSEIL=ON \
107
129
-DWITH_EXAMPLES=OFF \
130
+ -DWITH_NO_DEPRECATED_CODE=ON \
108
131
..
109
132
cmake --build . -j ${CORES} --target install
110
133
}
@@ -128,7 +151,7 @@ install_nginx()
128
151
export NGINX_VERSION=1.21.6
129
152
130
153
# Check for recent changes: https://github.com/open-telemetry/opentelemetry-cpp-contrib/compare/2656a4...main
131
- export OPENTELEMETRY_CONTRIB_COMMIT=1ec94c82095bab61f06c7393b6f3272469d285af
154
+ export OPENTELEMETRY_CONTRIB_COMMIT=aaa51e2297bcb34297f3c7aa44fa790497d2f7f3
132
155
133
156
mkdir -p /etc/nginx
134
157
cd " $BUILD_PATH "
@@ -145,20 +168,19 @@ install_nginx()
145
168
mkdir -p build
146
169
cd build
147
170
cmake -DCMAKE_BUILD_TYPE=Release \
148
- -G Ninja \
149
- -DCMAKE_INSTALL_PREFIX=${INSTAL_DIR} \
150
- -DBUILD_SHARED_LIBS=ON \
151
- -DNGINX_VERSION=${NGINX_VERSION} \
152
- ..
171
+ -G Ninja \
172
+ -DCMAKE_CXX_STANDARD=17 \
173
+ -DCMAKE_INSTALL_PREFIX=${INSTAL_DIR} \
174
+ -DBUILD_SHARED_LIBS=ON \
175
+ -DNGINX_VERSION=${NGINX_VERSION} \
176
+ ..
153
177
cmake --build . -j ${CORES} --target install
154
178
155
179
mkdir -p /etc/nginx/modules
156
180
cp ${INSTAL_DIR} /otel_ngx_module.so /etc/nginx/modules/otel_ngx_module.so
157
-
158
- mkdir -p ${INSTAL_DIR} /lib
159
181
}
160
182
161
- while getopts " :hpng:o: " option; do
183
+ while getopts " :pha:g:o:n " option; do
162
184
case $option in
163
185
h) # display Help
164
186
Help
@@ -177,6 +199,10 @@ while getopts ":hpng:o:" option; do
177
199
n) # install nginx
178
200
install_nginx
179
201
exit ;;
202
+ a) # install abseil
203
+ ABSL_CPP_VERSION=${OPTARG}
204
+ install_absl
205
+ exit ;;
180
206
\? )
181
207
Help
182
208
exit ;;
0 commit comments