# remirepo/fedora spec file for librdkafka # # Copyright (c) 2015-2023 Remi Collet # License: CC-BY-SA-4.0 # http://creativecommons.org/licenses/by-sa/4.0/ # # Please, preserve the changelog entries # ## TODO obsoletes librdkafka1php # install in /opt to avoid conflict with system library (by default) %bcond_without move_to_opt %global libname librdkafka %global gh_commit 95a542c87c61d2c45b445f91c73dd5442eb04f3c %global gh_short %(c=%{gh_commit}; echo ${c:0:7}) %global gh_owner edenhill %global gh_project %{libname} %global soname 1 %if %{with move_to_opt} %global _prefix /opt/%{?vendeur:%{vendeur}/}%{libname} %global __arch_install_post /bin/true %endif %global upstream_version 2.3.0 #global upstream_prever RC4 Name: %{?vendeur:%{vendeur}-}%{libname} Version: %{upstream_version}%{?upstream_prever:~%{upstream_prever}} Release: 1%{?dist} Group: System Environment/Libraries Summary: Apache Kafka C/C++ client library # librdkafka is BSD-2-Clause # crc32, queue, snappy, tinycthread are BSD-3-Clause # cjson, hdrhistogram, murmur2, pycrc are MIT # fnv1a is Public Domain License: BSD-2-Clause AND BSD-3-Clause AND MIT URL: https://github.com/%{gh_owner}/%{gh_project} Source0: https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{gh_project}-%{upstream_version}%{?upstream_prever}-%{gh_short}.tar.gz BuildRequires: libstdc++-devel BuildRequires: openssl-devel BuildRequires: pkgconfig(libsasl2) BuildRequires: pkgconfig(zlib) BuildRequires: pkgconfig(liblz4) BuildRequires: pkgconfig(libzstd) BuildRequires: pkgconfig(RapidJSON) BuildRequires: pkgconfig(libcurl) %if 0%{?rhel} == 7 %global dtsenable source /opt/rh/devtoolset-7/enable BuildRequires: devtoolset-7-toolchain %else BuildRequires: gcc-c++ %endif BuildRequires: python3 %description librdkafka is a 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 msgs/second for the producer and 3 million msgs/second for the consumer. %{name} is designed to be installed beside %{libname} and only used by PHP binaries (rdkafka extension). %package devel Group: Development/Libraries Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} %description devel The %{name}-devel package contains libraries and header files for developing applications that use %{name}. %if %{with move_to_opt} # Filter in the /opt installation %{?filter_from_provides: %filter_from_provides /%{libname}/d} %{?filter_from_requires: %filter_from_requires /%{libname}/d} %{?filter_setup} %endif %prep %setup -qn %{gh_project}-%{gh_commit} mkdir rpmdocs cp -pr examples rpmdocs/examples %build %{?dtsenable} gcc --version %configure \ --enable-curl \ --enable-zlib \ --enable-zstd \ --enable-lz4 \ --enable-lz4-ext \ --enable-ssl \ --enable-gssapi \ --enable-sasl make %{?_smp_mflags} %install %{?dtsenable} make install DESTDIR=%{buildroot} rm %{buildroot}%{_libdir}/*.a rm %{buildroot}%{_libdir}/pkgconfig/*static.pc # drop installed doc as all file included as %%license or %%doc in -devel rm -r %{buildroot}%{_datadir}/doc/%{libname} %if 0%{?fedora} < 28 && 0%{?rhel} < 8 %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %endif %files %{!?_licensedir:%global license %%doc} %license LICENS* %if %{with move_to_opt} %dir %{_prefix} %dir %{_libdir} %endif %{_libdir}/%{libname}.so.%{soname} %{_libdir}/%{libname}++.so.%{soname} %files devel %doc *md %doc rpmdocs/examples %if %{with move_to_opt} %dir %{_includedir} %dir %{_libdir}/pkgconfig %endif %{_includedir}/%{libname}/ %{_libdir}/%{libname}.so %{_libdir}/%{libname}++.so %{_libdir}/pkgconfig/rdkafka.pc %{_libdir}/pkgconfig/rdkafka++.pc %changelog * Wed Oct 25 2023 Remi Collet - 2.3.0-1 - update to 2.3.0 * Wed Jul 12 2023 Remi Collet - 2.2.0-1 - update to 2.2.0 * Wed May 3 2023 Remi Collet - 2.1.1-1 - update to 2.1.1 * Thu Apr 6 2023 Remi Collet - 2.1.0-1 - update to 2.1.0 * Mon Jan 23 2023 Remi Collet - 2.0.2-1 - update to 2.0.2 * Thu Jan 19 2023 Remi Collet - 2.0.1-1 - update to 2.0.1 - rename to remi-librdkafka installed in /opt/remi/librdkafka * Tue Aug 2 2022 Remi Collet - 1.9.2-1 - update to 1.9.2 * Thu Jul 7 2022 Remi Collet - 1.9.1-1 - update to 1.9.1 * Thu Jun 16 2022 Remi Collet - 1.9.0-1 - update to 1.9.0 * Wed Apr 27 2022 Remi Collet - 1.9.0~RC4-1 - update to 1.9.0RC4 * Mon Apr 11 2022 Remi Collet - 1.9.0~RC2-1 - update to 1.9.0RC2 - add dependency on libcurl * Tue Oct 19 2021 Remi Collet - 1.8.2-1 - update to 1.8.2 * Tue Sep 21 2021 Remi Collet - 1.8.0-1 - update to 1.8.0 * Mon May 10 2021 Remi Collet - 1.7.0-1 - update to 1.7.0 * Thu Feb 25 2021 Remi Collet - 1.6.1-1 - update to 1.6.1 * Wed Jan 27 2021 Remi Collet - 1.6.0-1 - update to 1.6.0 * Wed Dec 9 2020 Remi Collet - 1.5.3-1 - update to 1.5.3 - use rapidjson * Tue Oct 20 2020 Remi Collet - 1.5.2-1 - update to 1.5.2 * Mon Jul 20 2020 Remi Collet - 1.5.0-1 - update to 1.5.0 - use GCC 6 on EL-6, GCC 7 on EL-7 * Sun Jun 21 2020 Remi Collet - 1.4.4-1 - update to 1.4.4 * Wed Jun 10 2020 Remi Collet - 1.4.2-2 - rename to librdkafka1php * Wed May 6 2020 Remi Collet - 1.4.2-1 - update to 1.4.2 * Fri Apr 3 2020 Remi Collet - 1.4.0-1 - update to 1.4.0 * Wed Dec 4 2019 Remi Collet - 1.3.0-1 - update to 1.3.0 * Tue Nov 12 2019 Remi Collet - 1.2.2-1 - update to 1.2.2 * Wed Oct 9 2019 Remi Collet - 1.2.1-1 - update to 1.2.1 * Fri Sep 20 2019 Remi Collet - 1.2.0-1 - update to 1.2.0 * Tue Jun 25 2019 Remi Collet - 1.1.0-1 - update to 1.1.0 * Sun Jun 2 2019 Remi Collet - 1.0.1-1 - update to 1.0.1 * Tue Mar 26 2019 Remi Collet - 1.0.0-1 - update to 1.0.0 - add dependency on libzstd * Wed Dec 12 2018 Remi Collet - 0.11.6-2 - cleanup for EL-8 * Fri Oct 19 2018 Remi Collet - 0.11.6-1 - update to 0.11.6 * Thu Jul 19 2018 Remi Collet - 0.11.5-1 - update to 0.11.5 * Thu Mar 29 2018 Remi Collet - 1.11.4-1 - update to 1.11.4 * Wed Dec 6 2017 Remi Collet - 0.11.3-1 - update to 0.11.3 * Wed Oct 18 2017 Remi Collet - 0.11.1-1 - update to 0.11.1 * Thu Oct 5 2017 Remi Collet - 0.11.1~RC1-1 - update to 0.11.1-RC1 * Tue Aug 1 2017 Remi Collet - 0.11.0-1 - update to 0.11.0 * Thu Jun 29 2017 Remi Collet - 0.11.0~RC2-1 - update to 0.11.0-RC2 * Thu Jun 29 2017 Remi Collet - 0.11.0~RC1-1 - update to 0.11.0-RC1 - open https://github.com/edenhill/librdkafka/issues/1290 broken build on 32-bit architecture - add upstream for i686 build * Fri Apr 21 2017 Remi Collet - 0.9.5-1 - update to 0.9.5 (no change since RC2) * Wed Apr 12 2017 Remi Collet - 0.9.5~RC2-1 - update to 0.9.5-RC2 * Mon Apr 10 2017 Remi Collet - 0.9.5~RC1-1 - update to 0.9.5-RC1 * Mon Feb 27 2017 Remi Collet - 0.9.4-1 - update to 0.9.4 * Fri Feb 24 2017 Remi Collet - 0.9.4-0.3.RC2 - update to 0.9.4RC2 for test * Fri Feb 17 2017 Remi Collet - 0.9.4-0.2.RC1 - enable lz4 * Thu Feb 16 2017 Remi Collet - 0.9.4-0.1.RC1 - update to 0.9.4RC1 for test * Mon Jan 23 2017 Remi Collet - 0.9.3-1 - update to 0.9.3 * Wed Nov 9 2016 Remi Collet - 0.9.2-1 - update to 0.9.2 * Sun May 29 2016 Remi Collet - 0.9.1-1 - update to 0.9.1 * Sat Jan 9 2016 Remi Collet - 0.9.0-1 - update to 0.9.0 - add upstream patch for old glibc (RHEL-5) * Thu May 14 2015 Remi Collet - 0.8.6-1 - initial package