Name: opentelemetry-cpp Version: 1.9.0 Release: 5%{?dist} Summary: The C++ OpenTelemetry client Group: System Environment/Libraries License: ASL 2.0 and MIT URL: https://opentelemetry.io/ Source0: %{name}-%{version}.tar.gz Patch0: %{name}-%{version}.patch BuildRequires: cmake BuildRequires: gcc-c++ # Required for various exporters: BuildRequires: grpc-devel BuildRequires: libcurl-devel BuildRequires: json-devel BuildRequires: protobuf-devel BuildRequires: thrift-devel BuildRequires: c-ares-devel #Requires: grpc-cpp #Requires: protobuf #Requires: thrift %description OpenTelemetry is a collection of tools, APIs, and SDKs. Use it to instrument, generate, collect, and export telemetry data (metrics, logs, and traces) to help you analyze your software's performance and behavior. This library contains the OpenTelemetry API and SDK for C++. %files %license LICENSE %doc README.md %defattr(-,root,root,-) %{_libdir}/libopentelemetry_common.so.* %{_libdir}/libopentelemetry_exporter_in_memory.so.* %{_libdir}/libopentelemetry_exporter_ostream_metrics.so.* %{_libdir}/libopentelemetry_exporter_ostream_span.so.* %{_libdir}/libopentelemetry_metrics.so.* %{_libdir}/libopentelemetry_resources.so.* %{_libdir}/libopentelemetry_trace.so.* %{_libdir}/libopentelemetry_version.so.* # ====== devel ====== %package devel Group: Development/System Summary: Development API for OpenTelemetry C++ Requires: opentelemetry-cpp = %{version}-%{release} Requires: cmake-filesystem %description devel %{summary} %files devel %license LICENSE %doc README.md %doc docs %{_includedir}/opentelemetry/baggage %{_includedir}/opentelemetry/common %{_includedir}/opentelemetry/config.h %{_includedir}/opentelemetry/context %{_includedir}/opentelemetry/detail %{_includedir}/opentelemetry/exporters/memory %{_includedir}/opentelemetry/exporters/ostream %{_includedir}/opentelemetry/ext %{_includedir}/opentelemetry/logs %{_includedir}/opentelemetry/metrics %{_includedir}/opentelemetry/nostd %{_includedir}/opentelemetry/plugin %{_includedir}/opentelemetry/sdk %{_includedir}/opentelemetry/sdk_config.h %{_includedir}/opentelemetry/std %{_includedir}/opentelemetry/trace %{_includedir}/opentelemetry/version.h %{_libdir}/cmake/opentelemetry-cpp %{_libdir}/libopentelemetry_common.so %{_libdir}/libopentelemetry_exporter_in_memory.so %{_libdir}/libopentelemetry_exporter_ostream_metrics.so %{_libdir}/libopentelemetry_exporter_ostream_span.so %{_libdir}/libopentelemetry_metrics.so %{_libdir}/libopentelemetry_resources.so %{_libdir}/libopentelemetry_trace.so %{_libdir}/libopentelemetry_version.so # ==== exporter-jaeger ==== %package exporter-jaeger Summary: Jaeger exporter for opentelemetry Requires: opentelemetry-cpp = %{version}-%{release} %description exporter-jaeger %{summary} %files exporter-jaeger %license LICENSE %{_libdir}/libopentelemetry_exporter_jaeger_trace.so.* %{_libdir}/libopentelemetry_http_client_curl.so.* # ==== exporter-jaeger-devel ==== %package exporter-jaeger-devel Summary: Jaeger exporter development files for opentelemetry Requires: opentelemetry-cpp-exporter-jaeger = %{version}-%{release} Requires: opentelemetry-cpp-devel = %{version}-%{release} %description exporter-jaeger-devel %{summary} %files exporter-jaeger-devel %{_includedir}/opentelemetry/exporters/jaeger %{_libdir}/libopentelemetry_exporter_jaeger_trace.so %{_libdir}/libopentelemetry_http_client_curl.so # ==== exporter-otlp ==== %package exporter-otlp Summary: OTLP gRPC and HTTP exporters for opentelemetry Requires: opentelemetry-cpp = %{version}-%{release} %description exporter-otlp %{summary} %files exporter-otlp %license LICENSE %{_libdir}/libopentelemetry_exporter_otlp_grpc.so.* %{_libdir}/libopentelemetry_exporter_otlp_grpc_client.so.* %{_libdir}/libopentelemetry_exporter_otlp_grpc_log.so.* %{_libdir}/libopentelemetry_exporter_otlp_grpc_metrics.so.* %{_libdir}/libopentelemetry_exporter_otlp_http.so.* %{_libdir}/libopentelemetry_exporter_otlp_http_client.so.* %{_libdir}/libopentelemetry_exporter_otlp_http_metric.so.* %{_libdir}/libopentelemetry_http_client_curl.so.* %{_libdir}/libopentelemetry_otlp_recordable.so.* # ==== exporter-otlp-devel ==== %package exporter-otlp-devel Summary: OTLP gRPC and HTTP exporters development files for opentelemetry Requires: opentelemetry-cpp-exporter-otlp = %{version}-%{release} Requires: opentelemetry-cpp-devel = %{version}-%{release} %description exporter-otlp-devel %{summary} %files exporter-otlp-devel %{_includedir}/opentelemetry/exporters/otlp %{_includedir}/opentelemetry/proto %{_libdir}/libopentelemetry_exporter_otlp_grpc.so %{_libdir}/libopentelemetry_exporter_otlp_grpc_client.so %{_libdir}/libopentelemetry_exporter_otlp_grpc_log.so %{_libdir}/libopentelemetry_exporter_otlp_grpc_metrics.so %{_libdir}/libopentelemetry_exporter_otlp_http.so %{_libdir}/libopentelemetry_exporter_otlp_http_client.so %{_libdir}/libopentelemetry_exporter_otlp_http_metric.so %{_libdir}/libopentelemetry_http_client_curl.so %{_libdir}/libopentelemetry_otlp_recordable.so %{_libdir}/libopentelemetry_proto.a # ==== exporter-zipkin ==== %package exporter-zipkin Summary: Zipkin exporter for opentelemetry Requires: opentelemetry-cpp = %{version}-%{release} %description exporter-zipkin %{summary} %files exporter-zipkin %license LICENSE %{_libdir}/libopentelemetry_exporter_zipkin_trace.so.* %{_libdir}/libopentelemetry_http_client_curl.so.* # ==== exporter-zipkin-devel ==== %package exporter-zipkin-devel Summary: Zipkin exporter development files for opentelemetry Requires: opentelemetry-cpp-exporter-zipkin = %{version}-%{release} Requires: opentelemetry-cpp-devel = %{version}-%{release} %description exporter-zipkin-devel %{summary} %files exporter-zipkin-devel %{_includedir}/opentelemetry/exporters/zipkin %{_libdir}/libopentelemetry_exporter_zipkin_trace.so %{_libdir}/libopentelemetry_http_client_curl.so # ==== zpages ===== %package zpages Summary: Zpages for opentelemetry-cpp. Requires: opentelemetry-cpp = %{version}-%{release} %description zpages %{summary} %files zpages %license LICENSE %{_libdir}/libopentelemetry_zpages.so.* # ==== zpages-devel ==== %package zpages-devel Summary: Zpages development files for opentelemetry-cpp. Requires: opentelemetry-cpp-zpages = %{version}-%{release} Requires: opentelemetry-cpp-devel = %{version}-%{release} %description zpages-devel %{summary} %files zpages-devel %{_libdir}/libopentelemetry_zpages.so # ====== %prep %setup -q -n %{name}-%{version} %patch0 -p1 %build %cmake \ -DBUILD_TESTING:BOOL=OFF \ -DBUILD_SHARED_LIBS:BOOL=ON \ -DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON \ -DWITH_JAEGER:BOOL=ON \ -DWITH_OTLP:BOOL=ON \ -DWITH_OTLP_HTTP:BOOL=ON \ -DWITH_OTLP_GRPC:BOOL=ON \ -DWITH_PROMETHEUS:BOOL=OFF \ -DWITH_ZIPKIN:BOOL=ON \ -DWITH_ZPAGES:BOOL=ON \ -DWITH_EXAMPLES:BOOL=OFF \ -DOTELCPP_PROTO_PATH:PATH=%{_builddir}/%{name}-%{version}/third_party/opentelemetry-proto %cmake_build %install %cmake_install %changelog * Thu May 25 2023 Kim van der Riet - 1.9.0-5 - Corrected bad Requires for opentelemetry-cpp-zpages - Added separate cmake switches for WITH_OTLP_GRPC and WITH_OTLP_HTTP, both ON * Thu May 11 2023 Kim van der Riet - 1.9.0-4 - Split the various exporters into their own packages * Wed Apr 26 2023 Kim van der Riet - 1.9.0-3 - Added OTLP and OTLP_HTTP exporters - Added zipkin exporter - Fixed missing Requires - Changed to using c++17 which rawhide requires for OTLP exporter * Fri Apr 21 2023 Kim van der Riet - 1.9.0-2 - Fixed rpmlint undefined-non-weak-symbol error - Removed dep on copr build of nlohmann-json, use json-devel instead * Fri Apr 14 2023 Kim van der Riet - 1.9.0-1 - Rebased to upstream version 1.9.0 * Mon Dec 5 2022 Kim van der Riet - 1.8.1-1 - Rebased to upstream version 1.8.1 * Fri Dec 2 2022 Kim van der Riet - 1.7.0-1 - Initial build of 1.7.0