Skip to content

Commit 8e1fe70

Browse files
committed
stop detecting updates in otel-cpp external project, which can cause patch failure
1 parent 8d77e9e commit 8e1fe70

File tree

1 file changed

+17
-2
lines changed

1 file changed

+17
-2
lines changed

CMakeLists.txt

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,9 @@ option(WITH_OTLP_GRPC "Whether to include the OTLP gRPC exporter" OFF)
2020
if(NOT WITH_OTLP_HTTP AND NOT WITH_OTLP_GRPC)
2121
message(FATAL_ERROR "At least one of WITH_OTLP_HTTP and WITH_OTLP_GRPC must be ON")
2222
endif()
23+
if(APPLE)
24+
option(SKIP_OTEL_CPP_PATCH "Whether to skip patching OpenTelemetry-cpp" OFF)
25+
endif()
2326

2427
# ######################################
2528
# libmexclass FetchContent Configuration
@@ -64,13 +67,18 @@ else()
6467
set(OTEL_CPP_CXX_STANDARD 11)
6568
endif()
6669

67-
set(patch_command git apply ${CMAKE_SOURCE_DIR}/otel-cpp.patch)
70+
if(NOT APPLE OR SKIP_OTEL_CPP_PATCH)
71+
set(patch_command "")
72+
else()
73+
set(patch_command git apply ${CMAKE_SOURCE_DIR}/otel-cpp.patch)
74+
endif()
6875

6976
ExternalProject_Add(
7077
${OTEL_CPP_PROJECT_NAME}
7178
GIT_REPOSITORY ${OTEL_CPP_GIT_REPOSITORY}
7279
GIT_TAG ${OTEL_CPP_GIT_TAG}
7380
PREFIX ${OTEL_CPP_PREFIX}
81+
UPDATE_DISCONNECTED 1
7482
PATCH_COMMAND ${patch_command}
7583
CMAKE_ARGS -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DWITH_OTLP_HTTP=${WITH_OTLP_HTTP} -DWITH_OTLP_GRPC=${WITH_OTLP_GRPC} -DBUILD_TESTING=OFF -DWITH_BENCHMARK=OFF -DOPENTELEMETRY_INSTALL=ON -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE} -DCMAKE_CXX_STANDARD=${OTEL_CPP_CXX_STANDARD}
7684
INSTALL_DIR ${OTEL_CPP_PREFIX}
@@ -173,13 +181,20 @@ if(WITH_OTLP_GRPC)
173181
endif()
174182
endif()
175183

184+
# On Windows, suppress a compiler warning about deprecation of result_of
185+
if(WIN32)
186+
set(CUSTOM_CXX_FLAGS -D_SILENCE_CXX17_RESULT_OF_DEPRECATION_WARNING)
187+
else()
188+
set(CUSTOM_CXX_FLAGS "")
189+
endif()
190+
176191
if(WIN32)
177192
set(OTEL_PROTO_LIBRARY_SUFFIX ${CMAKE_STATIC_LIBRARY_SUFFIX})
178193
else()
179194
set(OTEL_PROTO_LIBRARY_SUFFIX ${CMAKE_SHARED_LIBRARY_SUFFIX})
180195
endif()
181196

182-
target_compile_options(${OPENTELEMETRY_PROXY_LIBRARY_NAME} PRIVATE ${OTLP_MACROS})
197+
target_compile_options(${OPENTELEMETRY_PROXY_LIBRARY_NAME} PRIVATE ${OTLP_MACROS} ${CUSTOM_CXX_FLAGS})
183198

184199
# link against OpenTelemetry-cpp libraries and their dependencies
185200
target_link_libraries(${OPENTELEMETRY_PROXY_LIBRARY_NAME} PRIVATE ${OTEL_CPP_PREFIX}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}opentelemetry_common${CMAKE_STATIC_LIBRARY_SUFFIX}

0 commit comments

Comments
 (0)