From 18556daea0b943c11ab0a373066242b9c7c69506 Mon Sep 17 00:00:00 2001 From: MSVSphere Packaging Team Date: Fri, 25 Oct 2024 16:34:09 +0300 Subject: [PATCH] import librdkafka-2.1.1-6.el10 --- .gitignore | 1 + .librdkafka.metadata | 1 + SOURCES/disable-ssl-engine.patch | 24 ++++ SPECS/librdkafka.spec | 226 +++++++++++++++++++++++++++++++ 4 files changed, 252 insertions(+) create mode 100644 .gitignore create mode 100644 .librdkafka.metadata create mode 100644 SOURCES/disable-ssl-engine.patch create mode 100644 SPECS/librdkafka.spec diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..fd25472 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/librdkafka-2.1.1.tar.gz diff --git a/.librdkafka.metadata b/.librdkafka.metadata new file mode 100644 index 0000000..d4b9fc4 --- /dev/null +++ b/.librdkafka.metadata @@ -0,0 +1 @@ +fb4f717dc82c5a11304e1d689d011a04c2dcff21 SOURCES/librdkafka-2.1.1.tar.gz diff --git a/SOURCES/disable-ssl-engine.patch b/SOURCES/disable-ssl-engine.patch new file mode 100644 index 0000000..df40d16 --- /dev/null +++ b/SOURCES/disable-ssl-engine.patch @@ -0,0 +1,24 @@ +diff -up librdkafka-2.4.0/mklove/modules/configure.libssl.orig librdkafka-2.4.0/mklove/modules/configure.libssl +--- librdkafka-2.4.0/mklove/modules/configure.libssl.orig 2024-05-27 09:24:27.753113899 +0200 ++++ librdkafka-2.4.0/mklove/modules/configure.libssl 2024-05-27 09:25:53.958955299 +0200 +@@ -16,7 +16,7 @@ + # SSL that is the feature, not crypto. + + mkl_toggle_option "Feature" ENABLE_SSL "--enable-ssl" "Enable SSL support" "try" +- ++mkl_toggle_option "Feature" ENABLE_SSL_ENGINE "--enable-ssl-engine" "Enable SSL support" "y" + + function manual_checks { + case "$ENABLE_SSL" in +diff -up librdkafka-2.4.0/src/rdkafka_conf.h.orig librdkafka-2.4.0/src/rdkafka_conf.h +--- librdkafka-2.4.0/src/rdkafka_conf.h.orig 2024-05-27 09:24:25.329090240 +0200 ++++ librdkafka-2.4.0/src/rdkafka_conf.h 2024-05-27 09:25:02.428452354 +0200 +@@ -32,7 +32,7 @@ + #include "rdlist.h" + #include "rdkafka_cert.h" + +-#if WITH_SSL && OPENSSL_VERSION_NUMBER >= 0x10100000 && \ ++#if WITH_SSL && OPENSSL_VERSION_NUMBER >= 0x10100000 && ENABLE_SSL_ENGINE && \ + !defined(OPENSSL_IS_BORINGSSL) + #define WITH_SSL_ENGINE 1 + /* Deprecated in OpenSSL 3 */ diff --git a/SPECS/librdkafka.spec b/SPECS/librdkafka.spec new file mode 100644 index 0000000..9ee0df9 --- /dev/null +++ b/SPECS/librdkafka.spec @@ -0,0 +1,226 @@ +Name: librdkafka +Version: 2.1.1 +Release: 6%{?dist} +Summary: The Apache Kafka C library + +License: Apache-2.0 +URL: https://github.com/edenhill/librdkafka +Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz + +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: make +BuildRequires: python3 +BuildRequires: libzstd-devel +BuildRequires: lz4-devel +BuildRequires: openssl-devel +BuildRequires: cyrus-sasl-devel +BuildRequires: zlib-devel +BuildRequires: rapidjson-devel + +Patch0: disable-ssl-engine.patch + +%description +Librdkafka is a C/C++ library implementation of the Apache Kafka protocol, +containing both Producer and Consumer support. +It was designed with message delivery reliability and high performance in mind, +current figures exceed 800000 messages/second for the producer and 3 million +messages/second for the consumer. + +%package devel +Summary: The Apache Kafka C library (Development Environment) +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description devel +librdkafka is a C/C++ library implementation of the Apache Kafka protocol, +containing both Producer and Consumer support. +This package contains headers and libraries required to build applications +using librdkafka. + +%prep +%autosetup -p1 + +%build +# This package has a configure test which uses ASMs, but does not link the +# resultant .o files. As such the ASM test is always successful, even on +# architectures were the ASM is not valid when compiling with LTO. +# +# -ffat-lto-objects is sufficient to address this issue. It is the default +# for F33, but is expected to only be enabled for packages that need it in +# F34, so we use it here explicitly +%define _lto_cflags -flto=auto -ffat-lto-objects + +%configure \ + --enable-zlib \ + --enable-zstd \ + --enable-lz4 \ + --enable-lz4-ext \ + --enable-ssl \ + --enable-gssapi \ + --enable-sasl \ + --disable-ssl-engine + +%make_build + +%check +make check + +%install +%make_install +find %{buildroot} -name '*.a' -delete -print +find %{buildroot} -name '*-static.pc' -delete -print + +%ldconfig_scriptlets + +%files +%{_libdir}/librdkafka.so.* +%{_libdir}/librdkafka++.so.* +%doc README.md CONFIGURATION.md INTRODUCTION.md LICENSE LICENSES.txt STATISTICS.md CHANGELOG.md +%license LICENSE LICENSE.pycrc LICENSE.snappy + +%files devel +%dir %{_includedir}/librdkafka +%{_includedir}/librdkafka/* +%{_libdir}/librdkafka.so +%{_libdir}/librdkafka++.so +%{_libdir}/pkgconfig/rdkafka.pc +%{_libdir}/pkgconfig/rdkafka++.pc + + +%changelog +* Fri Oct 25 2024 MSVSphere Packaging Team - 2.1.1-6 +- Rebuilt for MSVSphere 10 + +* Mon Jun 24 2024 Troy Dawson - 2.1.1-6 +- Bump release for June 2024 mass rebuild + +* Mon May 27 2024 Attila Lakatos - 2.1.1-5 +- Disable building with openssl engine support + resolves: RHEL-33739 + +* Thu Jan 25 2024 Fedora Release Engineering - 2.1.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sun Jan 21 2024 Fedora Release Engineering - 2.1.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Thu Jul 20 2023 Fedora Release Engineering - 2.1.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Thu Jun 15 2023 Attila Lakatos - 2.1.1-1 +- Rebase to latest upstream version + resolves: rhbz#1947184 + +* Wed May 31 2023 Attila Lakatos - 1.9.2-3 +- Update License tag for SPDX +- Upstream sources claim that the Apache 2.0 is used + +* Thu Jan 19 2023 Fedora Release Engineering - 1.9.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Mon Sep 12 2022 Steve Traylen - 1.9.2-1 +- Update to 1.9.2 + +* Thu Jul 21 2022 Fedora Release Engineering - 1.6.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Thu Jan 20 2022 Fedora Release Engineering - 1.6.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Tue Sep 14 2021 Sahana Prasad - 1.6.1-3 +- Rebuilt with OpenSSL 3.0.0 + +* Thu Jul 22 2021 Fedora Release Engineering - 1.6.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Mon Mar 08 2021 Attila Lakatos - 1.6.1-1 +- Update to upstream 1.6.1 + resolves: rhbz#1932286 + +* Wed Feb 03 2021 Neal Gompa - 1.6.0-1 +- Update to upstream 1.6.0 + resolves: rhbz#1883910 +- Enable all missing features +- Fix linking to external lz4 library +- Minor spec cleanups + +* Tue Jan 26 2021 Fedora Release Engineering - 1.5.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Wed Sep 09 2020 Zoltan Fridrich - 1.5.0-1 +- Update to upstream 1.5.0 + resolves: rhbz#1818082 + +* Wed Sep 09 2020 Zoltan Fridrich - 1.3.0-6 +- Switch BuildRequires from python2 to python3 + resolves: rhbz#1808329 + +* Fri Aug 21 2020 Jeff Law - 1.3.0-5 +- Re-enable LTO + +* Tue Jul 28 2020 Fedora Release Engineering - 1.3.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Tue Jun 30 2020 Jeff Law - 1.3.0-3 +- Disable LTO + +* Wed Jan 29 2020 Fedora Release Engineering - 1.3.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Mon Dec 30 2019 Michal Luscon - 1.3.0-1 +- Update to upstream 1.3.0 + +* Thu Jul 25 2019 Fedora Release Engineering - 0.11.6-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Fri Feb 01 2019 Fedora Release Engineering - 0.11.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Wed Dec 12 2018 Javier Peña - 0.11.6-1 +- Update to upstream 0.11.6 + +* Mon Sep 17 2018 Michal Luscon - 0.11.5-1 +- Update to upstream 0.11.5 + +* Fri Jul 13 2018 Fedora Release Engineering - 0.11.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Fri Apr 20 2018 Michal Luscon - 0.11.4-1 +- Update to upstream 0.11.4 + +* Thu Mar 15 2018 Iryna Shcherbina - 0.11.3-3 +- Update Python 2 dependency declarations to new packaging standards + (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3) + +* Wed Feb 07 2018 Fedora Release Engineering - 0.11.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Tue Jan 09 2018 Michal Luscon - 0.11.3-1 +- Update to upstream 0.11.3 + +* Thu Nov 02 2017 Michal Luscon - 0.11.1-1 +- Update to upstream 0.11.1 + +* Thu Aug 31 2017 Michal Luscon - 0.11.0-1 +- Update to 0.11.0 + +* Thu Aug 03 2017 Fedora Release Engineering - 0.9.5-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 0.9.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Mon May 22 2017 Radovan Sroka - 0.9.5-1 +- Update to 0.9.4 + +* Sat Mar 11 2017 Michal Luscon - 0.9.4-1 +- Update to 0.9.4 +- enable lz4, ssl, sasl + +* Fri Feb 10 2017 Fedora Release Engineering - 0.9.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + + +* Fri Nov 11 2016 Radovan Sroka 0.9.2-1 +- 0.9.2 release +- package created