fix(telemetry): link in-memory exporter component into xrpl_tests

The umbrella opentelemetry-cpp target's link set omits the in-memory
exporter library, so xrpl_tests failed to link with an undefined
reference to InMemorySpanExporterFactory::Create. The SpanGuardScope
tests use an InMemorySpanExporter to read exported spans. Link the
opentelemetry-cpp::exporter_in_memory component explicitly. Test-only:
production code never uses this exporter.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Pratik Mankawde
2026-07-20 16:04:17 +01:00
parent d7a014ae95
commit 63e2febb70

View File

@@ -67,9 +67,15 @@ endif()
# The telemetry test module exercises SpanGuard/Telemetry, which link against
# the OpenTelemetry SDK when the telemetry build option is enabled.
if(telemetry)
# The umbrella opentelemetry-cpp target does NOT include the in-memory
# exporter in its link set, so link that component explicitly: the
# SpanGuardScope tests drive an InMemorySpanExporter to read exported
# spans. Test-only -- production code never uses this exporter.
target_link_libraries(
xrpl_tests
PRIVATE opentelemetry-cpp::opentelemetry-cpp
PRIVATE
opentelemetry-cpp::opentelemetry-cpp
opentelemetry-cpp::exporter_in_memory
)
endif()