%define api 2 %define major 2 %define libname %mklibname %{name} %{api} %{major} %define develname %mklibname %{name} %{api} -d %define snapshot 20170921 Summary: A high-performance asynchronous HTTP client library Name: serf Version: 1.4.0 Release: %mkrel 0.8 License: Apache License Group: System/Libraries URL: https://serf.apache.org/ Source0: https://archive.apache.org/dist/serf/%{name}-%{snapshot}.tar.bz2 # # Fedora patches: # Patch0: libserf-norpath.patch # remove use of some deprecated openssl APIs # one of those causes a test program to go into an infinite loop Patch1: serf-openssl.patch Patch2: libserf-1.3.9-bio-ctrl.patch Patch3: libserf-1.3.9-errgetfunc.patch # # Mageia Patches: # # the test for revoked certificate(s) returns an additional error flag # make the test less strict so it does not fail Patch22: serf-revoked-test-failure.patch Patch23: serf-scons-python3.patch BuildRequires: pkgconfig(apr-1) BuildRequires: pkgconfig(apr-util-1) BuildRequires: db-devel BuildRequires: pkgconfig(openssl) BuildRequires: pkgconfig(zlib) BuildRequires: scons %description The serf library is a C-based HTTP client library built upon the Apache Portable Runtime (APR) library. It multiplexes connections, running the read/write communication asynchronously. Memory copies and transformations are kept to a minimum to provide high performance operation. %package -n %{libname} Summary: A high-performance asynchronous HTTP client library Group: System/Libraries Obsoletes: %{_lib}serf2 < 1.4.0-0.3 %description -n %{libname} The serf library is a C-based HTTP client library built upon the Apache Portable Runtime (APR) library. It multiplexes connections, running the read/write communication asynchronously. Memory copies and transformations are kept to a minimum to provide high performance operation. %package -n %{develname} Summary: Development libraries and headers for %{name} Group: Development/C Requires: %{libname} = %{version}-%{release} Provides: %{name}-devel = %{version}-%{release} Obsoletes: %{_lib}serf-devel < 1.4.0-3 %description -n %{develname} The serf library is a C-based HTTP client library built upon the Apache Portable Runtime (APR) library. It multiplexes connections, running the read/write communication asynchronously. Memory copies and transformations are kept to a minimum to provide high performance operation. This package contains all of the development files that you will need in order to compile %{name} applications. %prep %autosetup -p1 -n serf-trunk %build scons \ PREFIX=%{_prefix} \ LIBDIR=%{_libdir} \ APR=%{_prefix} \ OPENSSL=%{_prefix} \ ZLIB=%{_prefix} \ DEBUG=yes \ CFLAGS="%{optflags}" \ LINKFLAGS="%{ldflags}" \ APR_STATIC=no %scons %check %scons \ CFLAGS="%{optflags}" \ check || true %install %scons install --install-sandbox=%{buildroot} # enable strip and debug packages chmod 755 %{buildroot}%{_libdir}/libserf*.so* # Don't ship static libs rm -fR %{buildroot}%{_libdir}/*.a rm -fR %{buildroot}%{_libdir}/*.la %files -n %{libname} %doc CHANGES LICENSE NOTICE README design-guide.txt %{_libdir}/lib%{name}-%{api}.so.%{major}{,.*} %files -n %{develname} %dir %{_includedir}/serf-%{api}/ %{_includedir}/serf-%{api}/*.h %{_libdir}/lib%{name}-%{api}.so %{_libdir}/pkgconfig/%{name}-%{api}.pc %changelog * Sun Mar 20 2022 tv <tv> 1.4.0-0.8.mga9 + Revision: 1808686 - fix build with OpenSSL 3.0 - Fix internal BIO control function + wally <wally> - rebuild for openssl 3.0.0 * Sun Feb 16 2020 umeabot <umeabot> 1.4.0-0.7.mga8 + Revision: 1533970 - Mageia 8 Mass Rebuild * Thu Sep 26 2019 daviddavid <daviddavid> 1.4.0-0.6.mga8 + Revision: 1446180 - switch build to python3-scons * Fri Apr 05 2019 daviddavid <daviddavid> 1.4.0-0.6.mga7 + Revision: 1386029 - switch to Python2 scons support * Fri Nov 30 2018 umeabot <umeabot> 1.4.0-0.5.mga7 + Revision: 1336881 - Mageia 7 Mass Rebuild * Sun Sep 24 2017 cjw <cjw> 1.4.0-0.4.mga7 + Revision: 1158550 - update to 20170921 snapshot - patch3: fix build with scons 3.0 - patch1: fix infinite loop in a test program - patch2: add a workaround so 1 test case does not fail * Sun Nov 27 2016 wally <wally> 1.4.0-0.3.mga6 + Revision: 1070377 - fix lib and devel pkg names - add rediffed patch from Fedora to skip RPATH - build with our LDFLAGS * Wed Sep 07 2016 luigiwalser <luigiwalser> 1.4.0-0.2.mga6 + Revision: 1050402 - update to svn snapshot from 2016-09-02 with fixes from serf 1.3.9 * Thu Mar 03 2016 luigiwalser <luigiwalser> 1.4.0-0.1.mga6 + Revision: 985027 - update to svn snapshot from 2016-01-28 (future version 1.4.0) - library major is now 2 - update URLs + umeabot <umeabot> - Rebuild for openssl * Fri Feb 12 2016 umeabot <umeabot> 1.3.8-3.mga6 + Revision: 958847 - Mageia 6 Mass Rebuild - Mageia 6 Mass Rebuild * Thu Nov 13 2014 luigiwalser <luigiwalser> 1.3.8-1.mga5 + Revision: 796746 - 1.3.8 - fix C++ style comment in C source file - disable newly added bad test in test suite * Wed Oct 15 2014 umeabot <umeabot> 1.3.7-3.mga5 + Revision: 741702 - Second Mageia 5 Mass Rebuild * Tue Sep 16 2014 umeabot <umeabot> 1.3.7-2.mga5 + Revision: 689113 - Mageia 5 Mass Rebuild * Fri Aug 15 2014 luigiwalser <luigiwalser> 1.3.7-1.mga5 + Revision: 662853 - 1.3.7 (fixes CVE-2014-3504) * Mon Jun 16 2014 sander85 <sander85> 1.3.6-1.mga5 + Revision: 637603 - New version: 1.3.6 * Tue Oct 22 2013 umeabot <umeabot> 1.3.2-2.mga4 + Revision: 542069 - Mageia 4 Mass Rebuild * Mon Oct 14 2013 oden <oden> 1.3.2-1.mga4 + Revision: 496852 - 1.3.2 * Mon Jan 14 2013 umeabot <umeabot> 1.1.1-2.mga3 + Revision: 381941 - Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild * Sun Oct 07 2012 luigiwalser <luigiwalser> 1.1.1-1.mga3 + Revision: 303180 - 1.1.1 * Mon Aug 13 2012 luigiwalser <luigiwalser> 1.1.0-1.mga3 + Revision: 281039 - 1.1.0 - remove patch 0 (fixed upstream) + pterjan <pterjan> - Add upstream patch fixing tests + kamil <kamil> - new version 1.0.0 - clean .spec * Fri Sep 09 2011 tv <tv> 0.7.2-1.mga2 + Revision: 141808 - new release * Mon Jan 17 2011 blino <blino> 0.7.0-4.mga1 + Revision: 21704 - remove old ldconfig scriptlets - imported package serf