fix OpenTelemtry image build (#10888)
* fix OpenTelemtry image build * use fpic
This commit is contained in:
parent
256374079f
commit
8227888ba0
3 changed files with 65 additions and 8 deletions
|
@ -24,7 +24,7 @@ project(
|
|||
set(CMAKE_CXX_STANDARD 17)
|
||||
set(CMAKE_CXX_EXTENSIONS OFF)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
set(CMAKE_CXX_FLAGS "-O2")
|
||||
set(CMAKE_CXX_FLAGS "-O2 -fpic")
|
||||
set(CMAKE_VERBOSE_MAKEFILE ON CACHE BOOL "ON" FORCE)
|
||||
|
||||
set(CMAKE_BUILD_TYPE
|
||||
|
@ -69,8 +69,49 @@ set(GRPC_GIT_TAG
|
|||
CACHE STRING "gRPC version")
|
||||
|
||||
include(ExternalProject)
|
||||
set(ABSEIL_GIT_TAG "20230802.1" CACHE STRING "Abseil version")
|
||||
|
||||
ExternalProject_Add(
|
||||
Abseil
|
||||
GIT_REPOSITORY https://github.com/abseil/abseil-cpp.git
|
||||
GIT_TAG ${ABSEIL_GIT_TAG}
|
||||
GIT_SHALLOW 1
|
||||
UPDATE_COMMAND ""
|
||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${STAGED_INSTALL_PREFIX}
|
||||
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
|
||||
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
|
||||
-DCMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD}
|
||||
-DCMAKE_CXX_FLAGS:STRING=${CMAKE_CXX_FLAGS}
|
||||
USES_TERMINAL_BUILD TRUE
|
||||
DOWNLOAD_NO_PROGRESS TRUE
|
||||
LOG_CONFIGURE TRUE
|
||||
LOG_BUILD TRUE
|
||||
LOG_INSTALL TRUE)
|
||||
|
||||
# RE2 settings
|
||||
set(RE2_GIT_TAG "2023-11-01" CACHE STRING "RE2 version")
|
||||
|
||||
ExternalProject_Add(
|
||||
RE2
|
||||
DEPENDS Abseil
|
||||
GIT_REPOSITORY https://github.com/google/re2.git
|
||||
GIT_TAG ${RE2_GIT_TAG}
|
||||
GIT_SHALLOW 1
|
||||
UPDATE_COMMAND ""
|
||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${STAGED_INSTALL_PREFIX}
|
||||
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
|
||||
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
|
||||
-DCMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD}
|
||||
-DCMAKE_CXX_FLAGS:STRING=${CMAKE_CXX_FLAGS}
|
||||
USES_TERMINAL_BUILD TRUE
|
||||
DOWNLOAD_NO_PROGRESS TRUE
|
||||
LOG_CONFIGURE TRUE
|
||||
LOG_BUILD TRUE
|
||||
LOG_INSTALL TRUE)
|
||||
|
||||
ExternalProject_Add(
|
||||
gRPC
|
||||
DEPENDS Abseil RE2
|
||||
GIT_REPOSITORY https://github.com/grpc/grpc.git
|
||||
GIT_TAG ${GRPC_GIT_TAG}
|
||||
GIT_SHALLOW 1
|
||||
|
@ -79,6 +120,8 @@ ExternalProject_Add(
|
|||
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
|
||||
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
|
||||
-DgRPC_SSL_PROVIDER=package
|
||||
-DgRPC_RE2_PROVIDER=package
|
||||
-DgRPC_ABSEIL_PROVIDER=package
|
||||
-DOPENSSL_ROOT_DIR=OpenSSL
|
||||
-DgRPC_BUILD_TESTS=OFF
|
||||
-DBUILD_SHARED_LIBS=OFF
|
||||
|
@ -88,7 +131,25 @@ ExternalProject_Add(
|
|||
-DgRPC_BUILD_GRPC_PHP_PLUGIN=OFF
|
||||
-DgRPC_BUILD_GRPC_PYTHON_PLUGIN=OFF
|
||||
-DgRPC_BUILD_GRPC_RUBY_PLUGIN=OFF
|
||||
CMAKE_CACHE_ARGS -DCMAKE_CXX_FLAGS:STRING=${CMAKE_CXX_FLAGS}
|
||||
-DgRPC_BUILD_GRPC_NODE_PLUGIN=OFF
|
||||
-DgRPC_BUILD_GRPC_OBJECTIVE_C_PLUGIN=OFF
|
||||
-DgRPC_BUILD_GRPC_PHP_PLUGIN=OFF
|
||||
-DgRPC_BUILD_GRPC_PYTHON_PLUGIN=OFF
|
||||
-DgRPC_BUILD_GRPC_RUBY_PLUGIN=OFF
|
||||
-DgRPC_USE_PROTO_LITE=OFF
|
||||
-DgRPC_BUILD_CSHARP_EXT=OFF
|
||||
-DgRPC_BUILD_GRPC_CSHARP_PLUGIN=OFF
|
||||
-DgRPC_BUILD_GRPC_JAVA_PLUGIN=OFF
|
||||
-DgRPC_BUILD_GRPC_GRPC_JAVA_PLUGIN=OFF
|
||||
-DgRPC_BUILD_GRPC_WEB_PLUGIN=OFF
|
||||
-DgRPC_BUILD_GRPC_C_PLUGIN=OFF
|
||||
-DgRPC_BUILD_GRPC_NODE_PLUGIN=OFF
|
||||
-DgRPC_BUILD_GRPC_OBJECTIVE_C_PLUGIN=OFF
|
||||
-DgRPC_BUILD_GRPC_PHP_PLUGIN=OFF
|
||||
-DgRPC_BUILD_GRPC_PYTHON_PLUGIN=OFF
|
||||
-DgRPC_BUILD_GRPC_RUBY_PLUGIN=OFF
|
||||
-DCMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD}
|
||||
CMAKE_CACHE_ARGS -DCMAKE_CXX_FLAGS:STRING=${CMAKE_CXX_FLAGS}
|
||||
TEST_AFTER_INSTALL FALSE
|
||||
USES_TERMINAL_BUILD TRUE
|
||||
DOWNLOAD_NO_PROGRESS TRUE
|
||||
|
|
|
@ -28,16 +28,12 @@ ENV NINJA_STATUS "[%p/%f/%t] "
|
|||
|
||||
# install gRPC
|
||||
FROM base as grpc
|
||||
RUN bash /opt/third_party/build.sh -g v1.57.0
|
||||
RUN bash /opt/third_party/build.sh -g v1.60.0
|
||||
|
||||
# install abseil-cpp
|
||||
FROM base as absl-cpp
|
||||
RUN bash /opt/third_party/build.sh -a 20230802.0
|
||||
|
||||
# install OpenTelemetry-cpp
|
||||
FROM base as otel-cpp
|
||||
COPY --from=grpc /opt/third_party/install/ /usr
|
||||
COPY --from=absl-cpp /opt/third_party/install/ /usr
|
||||
RUN bash /opt/third_party/build.sh -o v1.11.0
|
||||
|
||||
# install otel_ngx_module.so
|
||||
|
|
|
@ -148,7 +148,7 @@ get_src()
|
|||
|
||||
install_nginx()
|
||||
{
|
||||
export NGINX_VERSION=1.21.6
|
||||
export NGINX_VERSION=1.25.3
|
||||
|
||||
# Check for recent changes: https://github.com/open-telemetry/opentelemetry-cpp-contrib/compare/2656a4...main
|
||||
export OPENTELEMETRY_CONTRIB_COMMIT=aaa51e2297bcb34297f3c7aa44fa790497d2f7f3
|
||||
|
|
Loading…
Reference in a new issue