@@ -98,9 +98,6 @@ option(WITH_OTLP_FILE "Whether to include the OTLP file exporter" OFF)
9898if (NOT WITH_OTLP_HTTP AND NOT WITH_OTLP_GRPC AND NOT WITH_OTLP_FILE)
9999 message (FATAL_ERROR "At least one of WITH_OTLP_HTTP, WITH_OTLP_GRPC, or WITH_OTLP_FILE must be ON" )
100100endif ()
101- if (APPLE )
102- option (SKIP_OTEL_CPP_PATCH "Whether to skip patching OpenTelemetry-cpp" OFF )
103- endif ()
104101option (WITH_EXAMPLES "Whether to build examples" OFF )
105102
106103# set vcpkg features depending on specified options
@@ -174,6 +171,19 @@ if(WITH_OTLP_GRPC)
174171 ${GRPC_INSTALL_LIB_DIR} /upb_message_lib.lib
175172 ${GRPC_INSTALL_LIB_DIR} /upb_textformat_lib.lib
176173 ${GRPC_INSTALL_LIB_DIR} /utf8_range_lib.lib)
174+ elseif (APPLE )
175+ set (GRPC_LINK_LIBRARIES ${GRPC_INSTALL_LIB_DIR} /libaddress_sorting.dylib
176+ ${GRPC_INSTALL_LIB_DIR} /libgpr.dylib
177+ ${GRPC_INSTALL_LIB_DIR} /libgrpc++.dylib
178+ ${GRPC_INSTALL_LIB_DIR} /libgrpc++_unsecure.dylib
179+ ${GRPC_INSTALL_LIB_DIR} /libgrpc.dylib
180+ ${GRPC_INSTALL_LIB_DIR} /libgrpc_unsecure.dylib
181+ ${GRPC_INSTALL_LIB_DIR} /libupb_base_lib.dylib
182+ ${GRPC_INSTALL_LIB_DIR} /libupb_json_lib.dylib
183+ ${GRPC_INSTALL_LIB_DIR} /libupb_mem_lib.dylib
184+ ${GRPC_INSTALL_LIB_DIR} /libupb_message_lib.dylib
185+ ${GRPC_INSTALL_LIB_DIR} /libupb_textformat_lib.dylib
186+ ${GRPC_INSTALL_LIB_DIR} /libutf8_range_lib.dylib)
177187 else ()
178188 set (GRPC_LINK_LIBRARIES ${GRPC_INSTALL_LIB_DIR} /libgrpc++${CMAKE_SHARED_LIBRARY_SUFFIX} )
179189 endif ()
@@ -242,15 +252,9 @@ else()
242252 set (OTEL_CPP_PREFIX ${CMAKE_BINARY_DIR} /otel-cpp)
243253endif ()
244254
245- if (WIN32 )
246- set (OTEL_PROTO_LIBRARY_SUFFIX ${CMAKE_STATIC_LIBRARY_SUFFIX} )
247- else ()
248- set (OTEL_PROTO_LIBRARY_SUFFIX ${CMAKE_SHARED_LIBRARY_SUFFIX} )
249- endif ()
250-
251255set (OTEL_CPP_LIBRARIES ${OTEL_CPP_PREFIX} /lib/${CMAKE_STATIC_LIBRARY_PREFIX} opentelemetry_common${CMAKE_STATIC_LIBRARY_SUFFIX}
252256 ${OTEL_CPP_PREFIX} /lib/${CMAKE_STATIC_LIBRARY_PREFIX} opentelemetry_otlp_recordable${CMAKE_STATIC_LIBRARY_SUFFIX}
253- ${OTEL_CPP_PREFIX} /lib/${CMAKE_SHARED_LIBRARY_PREFIX} opentelemetry_proto${OTEL_PROTO_LIBRARY_SUFFIX }
257+ ${OTEL_CPP_PREFIX} /lib/${CMAKE_SHARED_LIBRARY_PREFIX} opentelemetry_proto${CMAKE_STATIC_LIBRARY_SUFFIX }
254258 ${OTEL_CPP_PREFIX} /lib/${CMAKE_STATIC_LIBRARY_PREFIX} opentelemetry_resources${CMAKE_STATIC_LIBRARY_SUFFIX}
255259 ${OTEL_CPP_PREFIX} /lib/${CMAKE_STATIC_LIBRARY_PREFIX} opentelemetry_trace${CMAKE_STATIC_LIBRARY_SUFFIX}
256260 ${OTEL_CPP_PREFIX} /lib/${CMAKE_STATIC_LIBRARY_PREFIX} opentelemetry_version${CMAKE_STATIC_LIBRARY_SUFFIX}
@@ -268,7 +272,7 @@ if(WITH_OTLP_GRPC)
268272 ${OTEL_CPP_PREFIX} /lib/${CMAKE_STATIC_LIBRARY_PREFIX} opentelemetry_exporter_otlp_grpc_client${CMAKE_STATIC_LIBRARY_SUFFIX}
269273 ${OTEL_CPP_PREFIX} /lib/${CMAKE_STATIC_LIBRARY_PREFIX} opentelemetry_exporter_otlp_grpc_metrics${CMAKE_STATIC_LIBRARY_SUFFIX}
270274 ${OTEL_CPP_PREFIX} /lib/${CMAKE_STATIC_LIBRARY_PREFIX} opentelemetry_exporter_otlp_grpc_log${CMAKE_STATIC_LIBRARY_SUFFIX}
271- ${OTEL_CPP_PREFIX} /lib/${CMAKE_SHARED_LIBRARY_PREFIX} opentelemetry_proto_grpc${OTEL_PROTO_LIBRARY_SUFFIX } )
275+ ${OTEL_CPP_PREFIX} /lib/${CMAKE_SHARED_LIBRARY_PREFIX} opentelemetry_proto_grpc${CMAKE_STATIC_LIBRARY_SUFFIX } )
272276endif ()
273277if (WITH_OTLP_FILE)
274278 set (OTEL_CPP_LIBRARIES ${OTEL_CPP_LIBRARIES} ${OTEL_CPP_PREFIX} /lib/${CMAKE_STATIC_LIBRARY_PREFIX} opentelemetry_exporter_otlp_file${CMAKE_STATIC_LIBRARY_SUFFIX}
@@ -282,25 +286,19 @@ if(NOT DEFINED OTEL_CPP_INSTALLED_DIR)
282286 include (ExternalProject )
283287 set (OTEL_CPP_PROJECT_NAME opentelemetry-cpp)
284288 set (OTEL_CPP_GIT_REPOSITORY "https://github.com/open-telemetry/opentelemetry-cpp.git" )
285- set (OTEL_CPP_GIT_TAG "955a807 " )
289+ set (OTEL_CPP_GIT_TAG "a7b1008 " )
286290
287291 set (OTEL_CPP_CXX_STANDARD 14)
288292
289293 # The synchronous gauge metric instrument is only defined in ABI version 2
290294 set (OTEL_CPP_ABI_VERSION OPENTELEMETRY_ABI_VERSION_NO=2)
291295
292296 set (PATCHES_DIR ${CMAKE_SOURCE_DIR} /patches)
293- if (SKIP_OTEL_CPP_PATCH)
294- set (OTEL_CPP_PATCH_CMD "" )
295- elseif (WIN32 )
297+ set (OTEL_CPP_PATCH_CMD "" )
298+ if (WIN32 AND NOT SKIP_OTEL_CPP_PATCH)
296299 # Windows patch to add a preprocessor definition _DISABLE_CONSTEXPR_MUTEX_CONSTRUCTOR
297300 # See https://github.com/mathworks/OpenTelemetry-Matlab/issues/130
298301 set (OTEL_CPP_PATCH_CMD git apply ${PATCHES_DIR} /otel-cpp-windows.patch)
299- elseif (APPLE )
300- # Mac patch to fix a linker issue when including gRPC exporter
301- set (OTEL_CPP_PATCH_CMD git apply ${PATCHES_DIR} /otel-cpp-mac.patch)
302- else ()
303- set (OTEL_CPP_PATCH_CMD "" )
304302 endif ()
305303
306304 if (WITH_OTLP_GRPC)
@@ -513,6 +511,7 @@ if(UNIX AND NOT APPLE AND NOT CYGWIN)
513511 "${OTEL_CPP_PREFIX} /lib/libopentelemetry_logs.a"
514512 "${OTEL_CPP_PREFIX} /lib/libopentelemetry_common.a"
515513 "${OTEL_CPP_PREFIX} /lib/libopentelemetry_otlp_recordable.a"
514+ "${OTEL_CPP_PREFIX} /lib/libopentelemetry_proto.a"
516515 ${ABSL_LIBRARIES} -Wl,--no -whole-archive)
517516 target_link_options (${OPENTELEMETRY_PROXY_LIBRARY_NAME} PRIVATE ${OPENTELEMETRY_PROXY_LINK_OPTIONS} )
518517endif ()
@@ -542,17 +541,10 @@ if(WIN32)
542541 $<TARGET_FILE_DIR :OpenSSL ::SSL >/../bin/${OPENSSL_DLL}
543542 $<TARGET_FILE_DIR :OpenSSL ::SSL >/../bin/${OPENSSL_CRYPTO_DLL} )
544543 endif ()
545- else ()
546- set (OTEL_CPP_RUNTIME ${OTEL_CPP_PREFIX} /lib/libopentelemetry_proto${CMAKE_SHARED_LIBRARY_SUFFIX} )
547- if (WITH_OTLP_GRPC)
548- set (OTEL_CPP_RUNTIME ${OTEL_CPP_RUNTIME}
549- ${OTEL_CPP_PREFIX} /lib/libopentelemetry_proto_grpc${CMAKE_SHARED_LIBRARY_SUFFIX} )
550- endif ()
551- if (APPLE )
552- set (OTEL_CPP_RUNTIME ${OTEL_CPP_RUNTIME} $<TARGET_FILE :ZLIB ::ZLIB >
553- $<TARGET_FILE_DIR :ZLIB ::ZLIB >/libz.${ZLIB_MAJOR_VERSION}${CMAKE_SHARED_LIBRARY_SUFFIX}
554- $<TARGET_FILE_DIR :ZLIB ::ZLIB >/libz.${ZLIB_VERSION}${CMAKE_SHARED_LIBRARY_SUFFIX} )
555- endif ()
544+ elseif (APPLE )
545+ set (OTEL_CPP_RUNTIME $<TARGET_FILE :ZLIB ::ZLIB >
546+ $<TARGET_FILE_DIR :ZLIB ::ZLIB >/libz.${ZLIB_MAJOR_VERSION}${CMAKE_SHARED_LIBRARY_SUFFIX}
547+ $<TARGET_FILE_DIR :ZLIB ::ZLIB >/libz.${ZLIB_VERSION}${CMAKE_SHARED_LIBRARY_SUFFIX} )
556548 set (OPENTELEMETRY_PROXY_RUNTIME_LIBRARIES ${OTEL_CPP_RUNTIME} )
557549endif ()
558550
@@ -682,6 +674,7 @@ else()
682674 # they won't get overwritten when packaged
683675 set (DEPENDENT_RUNTIME_INSTALLED_DIR lib/${PLATFORM_NAME} )
684676endif ()
677+ install (CODE "file(MAKE_DIRECTORY ${CMAKE_INSTALL_PREFIX} /${DEPENDENT_RUNTIME_INSTALLED_DIR} )" )
685678install (FILES ${OPENTELEMETRY_PROXY_RUNTIME_LIBRARIES} DESTINATION ${DEPENDENT_RUNTIME_INSTALLED_DIR} )
686679if (UNIX )
687680 if (WITH_OTLP_GRPC)
0 commit comments