[packages/azure-sdk-for-cpp] - initial

qboosh qboosh at pld-linux.org
Wed Jun 18 22:44:38 CEST 2025


commit fd447e72b9b4c9415417717cbcffa8b112823c78
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Wed Jun 18 22:45:08 2025 +0200

    - initial

 azure-sdk-for-cpp.spec | 390 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 390 insertions(+)
---
diff --git a/azure-sdk-for-cpp.spec b/azure-sdk-for-cpp.spec
new file mode 100644
index 0000000..226034d
--- /dev/null
+++ b/azure-sdk-for-cpp.spec
@@ -0,0 +1,390 @@
+# TODO:
+# - vendor rust crates (for rust AMQP)
+# - prepare uAMQP dependencies
+#
+# Conditional build:
+%bcond_without	opentelemetry	# OpenTelemetry support
+%bcond_without	rust		# Rust based APIs (currently: Rust AMQP instead of uAMQP)
+
+Summary:	Azure SDK for C++
+Summary(pl.UTF-8):	SDK Azure dla C++
+Name:		azure-sdk-for-cpp
+# there is no common versioning for whole code, only individual parts (see library sonames)
+Version:	0
+%define	gitref	azure-identity_1.11.0
+%define	gitdate	20250408
+%define	rel	0.1
+Release:	0.%{gitdate}.%{rel}
+License:	MIT
+Group:		Libraries
+#Source0Download: https://github.com/Azure/azure-sdk-for-cpp/
+Source0:	https://github.com/Azure/azure-sdk-for-cpp/archive/%{gitref}/%{name}-%{gitref}.tar.gz
+# Source0-md5:	d6f709aea91c6b2fd719bef4de47027a
+Source1:	https://github.com/corrosion-rs/corrosion/archive/v0.5.1/corrosion-0.5.1.tar.gz
+# Source1-md5:	eb6799bc54a9a2fa237c0a254b861cad
+URL:		https://github.com/Azure/azure-sdk-for-cpp
+%{?with_rust:BuildRequires:	cargo}
+BuildRequires:	cmake >= 3.13
+BuildRequires:	curl-devel
+# C++14
+BuildRequires:	libstdc++-devel >= 6:5
+BuildRequires:	libxml2-devel >= 2.0
+BuildRequires:	openssl-devel
+%if %{with opentelemetry}
+BuildRequires:	opentelemetry-cpp-devel
+# opentelemetry::ext component
+BuildRequires:	opentelemetry-cpp-exporter-http-devel
+%endif
+BuildRequires:	rpmbuild(macros) >= 1.605
+%{?with_rust:BuildRequires:	rust >= 1.76}
+BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+Azure SDK for C++.
+
+%description -l pl.UTF-8
+SDK Azure dla C++.
+
+%package devel
+Summary:	Header files for Azure SDK for C++ libraries
+Summary(pl.UTF-8):	Pliki nagłówkowe bibliotek SDK Azure dla C++
+Group:		Development/Libraries
+Requires:	%{name} = %{version}-%{release}
+Requires:	curl-devel
+Requires:	libstdc++-devel >= 6:5
+Requires:	libxml2-devel >= 2.0
+Requires:	openssl-devel
+
+%description devel
+Header files for Azure SDK for C++ libraries.
+
+%description devel -l pl.UTF-8
+Pliki nagłówkowe bibliotek SDK Azure dla C++.
+
+%package -n azure-core-amqp
+Summary:	Azure SDK AMQP Library for C++
+Summary(pl.UTF-8):	Biblioteka Azure SDK AMQP dla C++
+#Version:	1.0.0
+#subver		beta.12
+Group:		Libraries
+Requires:	%{name} = %{version}-%{release}
+
+%description -n azure-core-amqp
+Azure::Core::Amqp provides an implementation to enable developers to
+create Azure SDKs which consume the AMQP protocol. Note that this is
+NOT a general purpose AMQP library, it is intended solely for the
+purposes of building Azure C++ SDK clients which communicate with
+Azure services over AMQP.
+
+%description -n azure-core-amqp -l pl.UTF-8
+Azure::Core::Amqp udostępnia implementację pozwalającą programistom
+tworzyć SDK Azure odbierające protokół AMQP. Uwaga: NIE jest to
+biblioteka AMQP ogólnego przeznaczenia, służy wyłącznie celom
+tworzenia klientów SDK Azure dla C++, komunikujących się z usługami
+Azure po AMQP.
+
+%package -n azure-core-amqp-devel
+Summary:	Azure SDK AMQP Library for C++ - header files
+Summary(pl.UTF-8):	Biblioteka Azure SDK AMQP dla C++ - pliki nagłówkowe
+Group:		Development/Libraries
+Requires:	%{name}-devel = %{version}-%{release}
+# azure-core-cpp (in base)
+Requires:	azure-core-amqp = %{version}-%{release}
+# TODO
+#Requires:	umock-c-devel
+#Requires:	azure-macro-utils-c-devel
+#Requires:	azure-c-shared-utility-devel
+
+%description -n azure-core-amqp-devel
+Azure SDK AMQP Library for C++ - header files.
+
+%description -n azure-core-amqp-devel -l pl.UTF-8
+Biblioteka Azure SDK AMQP dla C++ - pliki nagłówkowe.
+
+%package -n azure-core-tracing-opentelemetry
+Summary:	Azure SDK Core Tracing Library for C++
+Summary(pl.UTF-8):	Podstawowa biblioteka śledzenia dla C++ z Azure SDK
+#Version:	1.0.0
+#subver		beta.5
+Group:		Libraries
+Requires:	%{name} = %{version}-%{release}
+
+%description -n azure-core-tracing-opentelemetry
+Azure::Core::Tracing::OpenTelemetry provides an implementation to
+enable customers to implement tracing in the Azure SDK for C++
+libraries.
+
+%description -n azure-core-tracing-opentelemetry -l pl.UTF-8
+Azure::Core::Tracing::OpenTelemetry dostarcza implementację
+pozwalającą klientom implementować śledzenie w bibliotekach Azure
+SDK dla C++.
+
+%package -n azure-core-tracing-opentelemetry-devel
+Summary:	Azure SDK Core Tracing Library for C++ - header files
+Summary(pl.UTF-8):	Podstawowa biblioteka śledzenia dla C++ z Azure SDK - pliki nagłówkowe
+Group:		Development/Libraries
+Requires:	%{name}-devel = %{version}-%{release}
+# azure-core-cpp (in base)
+Requires:	azure-core-tracing-opentelemetry = %{version}-%{release}
+Requires:	opentelemetry-cpp-devel
+
+%description -n azure-core-tracing-opentelemetry-devel
+Azure SDK Core Tracing Library for C++ - header files.
+
+%description -n azure-core-tracing-opentelemetry-devel -l pl.UTF-8
+Podstawowa biblioteka śledzenia dla C++ z Azure SDK - pliki
+nagłówkowe.
+
+%package -n azure-messaging-eventhubs
+Summary:	Azure Event Hubs Client Package for C++
+Summary(pl.UTF-8):	Pakiet klienta Azure Event Hubs dla C++
+#Version:	1.0.0
+#subver		beta.11
+Group:		Libraries
+Requires:	azure-core-amqp = %{version}-%{release}
+
+%description -n azure-messaging-eventhubs
+Azure Event Hubs is a big data streaming platform and event ingestion
+service from Microsoft.
+
+%description -n azure-messaging-eventhubs -l pl.UTF-8
+Azure Event Hubs to platforma przesyłania strumieni dużych danych oraz
+usługa przyjmowania zdarzeń, dostarczana przez Microsoft.
+
+%package -n azure-messaging-eventhubs-devel
+Summary:	Azure Event Hubs Client Package for C++ - header files
+Summary(pl.UTF-8):	Pakiet klienta Azure Event Hubs dla C++ - pliki nagłówkowe
+Group:		Development/Libraries
+Requires:	azure-core-amqp-devel = %{version}-%{release}
+Requires:	azure-messaging-eventhubs = %{version}-%{release}
+
+%description -n azure-messaging-eventhubs-devel
+Azure Event Hubs Client Package for C++ - header files.
+
+%description -n azure-messaging-eventhubs-devel -l pl.UTF-8
+Pakiet klienta Azure Event Hubs dla C++ - pliki nagłówkowe.
+
+%package -n azure-messaging-eventhubs-checkpointstore-blob
+Summary:	Azure Event Hubs Blob Storage Checkpoint Store for C++
+Summary(pl.UTF-8):	Przechowywanie punktów kontrolnych danych Azure Event Hubs dla C++
+#Version:	1.0.0
+#subver		beta.2
+Group:		Libraries
+Requires:	azure-core-amqp = %{version}-%{release}
+Requires:	azure-messaging-eventhubs = %{version}-%{release}
+
+%description -n azure-messaging-eventhubs-checkpointstore-blob
+The EventHubs Blob Storage Checkpoint Store is a checkpoint store for
+the Azure Event Hubs service, used to enable an Event Processor to
+store checkpoints and partition ownership information in Azure Blob
+Storage.
+
+%description -n azure-messaging-eventhubs-checkpointstore-blob -l pl.UTF-8
+EventHubs Blob Storage Checkpoint Store to przechowywanie danych
+punktów kontrolnych usługi Azure Event Hubs, pozwalające przechowywać
+punkty kontrolne Event Processora oraz partycjonowanie informacji o
+właścicielach w Azure Blob Storage.
+
+%package -n azure-messaging-eventhubs-checkpointstore-blob-devel
+Summary:	Azure Event Hubs Blob Storage Checkpoint Store for C++ - header files
+Summary(pl.UTF-8):	Przechowywanie punktów kontrolnych danych Azure Event Hubs dla C++ - pliki nagłówkowe
+Group:		Development/Libraries
+Requires:	azure-core-amqp-devel = %{version}-%{release}
+Requires:	azure-messaging-eventhubs-checkpointstore-blob = %{version}-%{release}
+Requires:	azure-messaging-eventhubs-devel = %{version}-%{release}
+# azure-storage-blobs (in base currently)
+
+%description -n azure-messaging-eventhubs-checkpointstore-blob-devel
+Azure Event Hubs Blob Storage Checkpoint Store for C++ - header files.
+
+%description -n azure-messaging-eventhubs-checkpointstore-blob-devel -l pl.UTF-8
+Przechowywanie punktów kontrolnych danych Azure Event Hubs dla C++ -
+pliki nagłówkowe.
+
+%prep
+%setup -q -n %{name}-%{gitref} -a1
+
+install -d fetch
+%{__mv} corrosion-* fetch/corrosion
+
+%build
+export AZURE_SDK_DISABLE_AUTO_VCPKG=1
+
+%cmake -B build \
+	%{!?with_opentelemetry:-DDISABLE_AZURE_CORE_OPENTELEMETRY} \
+	%{!?with_rust:-DDISABLE_RUST_IN_BUILD=ON} \
+	-DFETCHCONTENT_SOURCE_DIR_CORROSION=$(pwd)/fetch/corrosion \
+	-DWARNINGS_AS_ERRORS=OFF
+
+%{__make} -C build
+
+%install
+rm -rf $RPM_BUILD_ROOT
+
+%{__make} -C build install \
+	DESTDIR=$RPM_BUILD_ROOT
+
+# all the same, one copy as %doc is enough
+%{__rm} $RPM_BUILD_ROOT%{_datadir}/*-cpp/copyright
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post	-p /sbin/ldconfig
+%postun	-p /sbin/ldconfig
+
+%post	-n azure-core-amqp -p /sbin/ldconfig
+%postun	-n azure-core-amqp -p /sbin/ldconfig
+
+%post	-n azure-core-tracing-opentelemetry -p /sbin/ldconfig
+%postun	-n azure-core-tracing-opentelemetry -p /sbin/ldconfig
+
+%post	-n azure-messaging-eventhubs -p /sbin/ldconfig
+%postun	-n azure-messaging-eventhubs -p /sbin/ldconfig
+
+%post	-n azure-messaging-eventhubs-checkpointstore-blob -p /sbin/ldconfig
+%postun	-n azure-messaging-eventhubs-checkpointstore-blob -p /sbin/ldconfig
+
+%files
+%defattr(644,root,root,755)
+%doc LICENSE.txt README.md SECURITY.md SUPPORT.md
+%attr(755,root,root) %{_libdir}/libazure-core.so.1.16.0-beta.1
+%attr(755,root,root) %{_libdir}/libazure-data-appconfiguration.so.1.0.0-beta.1
+%attr(755,root,root) %{_libdir}/libazure-data-tables.so.1.0.0-beta.7
+%attr(755,root,root) %{_libdir}/libazure-identity.so.1.11.0
+%attr(755,root,root) %{_libdir}/libazure-security-attestation.so.1.2.0-beta.1
+%attr(755,root,root) %{_libdir}/libazure-security-keyvault-administration.so.4.0.0-beta.6
+%attr(755,root,root) %{_libdir}/libazure-security-keyvault-certificates.so.4.3.0-beta.3
+%attr(755,root,root) %{_libdir}/libazure-security-keyvault-keys.so.4.5.0-beta.3
+%attr(755,root,root) %{_libdir}/libazure-security-keyvault-secrets.so.4.3.0-beta.4
+%attr(755,root,root) %{_libdir}/libazure-storage-blobs.so.12.14.0-beta.1
+%attr(755,root,root) %{_libdir}/libazure-storage-common.so.12.11.0-beta.1
+%attr(755,root,root) %{_libdir}/libazure-storage-files-datalake.so.12.13.0-beta.1
+%attr(755,root,root) %{_libdir}/libazure-storage-files-shares.so.12.14.0-beta.1
+%attr(755,root,root) %{_libdir}/libazure-storage-queues.so.12.5.0-beta.1
+%attr(755,root,root) %{_libdir}/libazure-template.so.1.0.0
+
+%files devel
+%defattr(644,root,root,755)
+%doc doc/{DistributedTracing,HttpTransportAdapter,LibcurlTransportAdapter,Operation,SnippetGeneration}.md
+%{_libdir}/libazure-core.so
+%{_libdir}/libazure-data-appconfiguration.so
+%{_libdir}/libazure-data-tables.so
+%{_libdir}/libazure-identity.so
+%{_libdir}/libazure-security-attestation.so
+%{_libdir}/libazure-security-keyvault-administration.so
+%{_libdir}/libazure-security-keyvault-certificates.so
+%{_libdir}/libazure-security-keyvault-keys.so
+%{_libdir}/libazure-security-keyvault-secrets.so
+%{_libdir}/libazure-storage-blobs.so
+%{_libdir}/libazure-storage-common.so
+%{_libdir}/libazure-storage-files-datalake.so
+%{_libdir}/libazure-storage-files-shares.so
+%{_libdir}/libazure-storage-queues.so
+%{_libdir}/libazure-template.so
+%dir %{_includedir}/azure
+%{_includedir}/azure/attestation
+%{_includedir}/azure/attestation.hpp
+%dir %{_includedir}/azure/core
+%{_includedir}/azure/core/credentials
+%{_includedir}/azure/core/cryptography
+%{_includedir}/azure/core/diagnostics
+%{_includedir}/azure/core/http
+%{_includedir}/azure/core/internal
+%{_includedir}/azure/core/io
+%dir %{_includedir}/azure/core/tracing
+%{_includedir}/azure/core/tracing/tracing.hpp
+%{_includedir}/azure/core/azure_assert.hpp
+%{_includedir}/azure/core/base64.hpp
+%{_includedir}/azure/core/case_insensitive_containers.hpp
+%{_includedir}/azure/core/context.hpp
+%{_includedir}/azure/core/datetime.hpp
+%{_includedir}/azure/core/dll_import_export.hpp
+%{_includedir}/azure/core/etag.hpp
+%{_includedir}/azure/core/exception.hpp
+%{_includedir}/azure/core/match_conditions.hpp
+%{_includedir}/azure/core/modified_conditions.hpp
+%{_includedir}/azure/core/nullable.hpp
+%{_includedir}/azure/core/operation.hpp
+%{_includedir}/azure/core/operation_status.hpp
+%{_includedir}/azure/core/paged_response.hpp
+%{_includedir}/azure/core/platform.hpp
+%{_includedir}/azure/core/resource_identifier.hpp
+%{_includedir}/azure/core/response.hpp
+%{_includedir}/azure/core/rtti.hpp
+%{_includedir}/azure/core/url.hpp
+%{_includedir}/azure/core/uuid.hpp
+%{_includedir}/azure/core.hpp
+%{_includedir}/azure/data
+%{_includedir}/azure/identity
+%{_includedir}/azure/identity.hpp
+%{_includedir}/azure/keyvault
+%{_includedir}/azure/storage
+%{_includedir}/azure/template
+%{_includedir}/azure/template.hpp
+# cmake configs
+%{_datadir}/azure-core-cpp
+%{_datadir}/azure-data-appconfiguration-cpp
+%{_datadir}/azure-data-tables-cpp
+%{_datadir}/azure-identity-cpp
+%{_datadir}/azure-security-attestation-cpp
+%{_datadir}/azure-security-keyvault-administration-cpp
+%{_datadir}/azure-security-keyvault-certificates-cpp
+%{_datadir}/azure-security-keyvault-keys-cpp
+%{_datadir}/azure-security-keyvault-secrets-cpp
+%{_datadir}/azure-storage-blobs-cpp
+%{_datadir}/azure-storage-common-cpp
+%{_datadir}/azure-storage-files-datalake-cpp
+%{_datadir}/azure-storage-files-shares-cpp
+%{_datadir}/azure-storage-queues-cpp
+%{_datadir}/azure-template-cpp
+
+%files -n azure-core-amqp
+%defattr(644,root,root,755)
+%doc sdk/core/azure-core-amqp/{CHANGELOG.md,NOTICE.txt,README.md}
+%attr(755,root,root) %{_libdir}/libazure-core-amqp.so.1.0.0-beta.12
+
+%files -n azure-core-amqp-devel
+%defattr(644,root,root,755)
+%{_libdir}/libazure-core-amqp.so
+%{_includedir}/azure/core/amqp
+%{_includedir}/azure/core/amqp.hpp
+%{_datadir}/azure-core-amqp-cpp
+
+%if %{with opentelemetry}
+%files -n azure-core-tracing-opentelemetry
+%defattr(644,root,root,755)
+%doc sdk/core/azure-core-tracing-opentelemetry/{CHANGELOG.md,NOTICE.txt,README.md}
+%attr(755,root,root) %{_libdir}/libazure-core-tracing-opentelemetry.so.1.0.0-beta.5
+
+%files -n azure-core-tracing-opentelemetry-devel
+%defattr(644,root,root,755)
+%{_libdir}/libazure-core-tracing-opentelemetry.so
+%{_includedir}/azure/core/tracing/opentelemetry
+%{_datadir}/azure-core-tracing-opentelemetry-cpp
+%endif
+
+%files -n azure-messaging-eventhubs
+%defattr(644,root,root,755)
+%doc sdk/eventhubs/azure-messaging-eventhubs/{CHANGELOG.md,LICENSE,README.md}
+%attr(755,root,root) %{_libdir}/libazure-messaging-eventhubs.so.1.0.0-beta.11
+
+%files -n azure-messaging-eventhubs-devel
+%defattr(644,root,root,755)
+%{_libdir}/libazure-messaging-eventhubs.so
+%dir %{_includedir}/azure/messaging
+%{_includedir}/azure/messaging/eventhubs/models
+%{_includedir}/azure/messaging/eventhubs/*.hpp
+%{_includedir}/azure/messaging/eventhubs.hpp
+%{_datadir}/azure-messaging-eventhubs-cpp
+
+%files -n azure-messaging-eventhubs-checkpointstore-blob
+%defattr(644,root,root,755)
+%doc sdk/eventhubs/azure-messaging-eventhubs-checkpointstore-blob/{CHANGELOG.md,LICENSE,README.md}
+%attr(755,root,root) %{_libdir}/libazure-messaging-eventhubs-checkpointstore-blob.so.1.0.0-beta.2
+
+%files -n azure-messaging-eventhubs-checkpointstore-blob-devel
+%defattr(644,root,root,755)
+%{_libdir}/libazure-messaging-eventhubs-checkpointstore-blob.so
+%{_includedir}/azure/messaging/eventhubs/checkpointstore_blob
+%{_datadir}/azure-messaging-eventhubs-checkpointstore-blob-cpp
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/azure-sdk-for-cpp.git/commitdiff/fd447e72b9b4c9415417717cbcffa8b112823c78



More information about the pld-cvs-commit mailing list