1
0
forked from pool/userspace-rcu
userspace-rcu/userspace-rcu.spec
Adam Majer f608601823 Accepting request 877845 from home:dirkmueller:Factory
- update to 0.12.2:
  * fix: exclude clang from GCC version blacklists
  * aarch64: blacklist gcc prior to 5.1
  * Fix: configure: support Autoconf 2.70
  * fix: bump tests thread limit to 4096
  * cleanup: Improve wording of CONFIG_RCU_DEBUG description
  * fix: explicitly include urcu/config.h in files using CONFIG_RCU_ defines
  * Fix typo in README.md
  * fix: add -lurcu-common to pkg-config libs for each flavor
  * call_rcu: Fix race between rcu_barrier() and call_rcu_data_free()

OBS-URL: https://build.opensuse.org/request/show/877845
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/userspace-rcu?expand=0&rev=30
2021-03-11 14:20:17 +00:00

128 lines
4.4 KiB
RPMSpec

# vim: set sw=4 ts=4 et nu:
#
# spec file for package userspace-rcu
#
# Copyright (c) 2021 SUSE LLC
# Copyright (c) 2012 Pascal Bleser <pascal.bleser@opensuse.org>
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define soname 6
Name: userspace-rcu
Version: 0.12.2
Release: 0
Summary: Userspace Read-Copy-Update Library
License: LGPL-2.1-or-later AND MIT AND GPL-2.0-or-later AND GPL-3.0-or-later
Group: System/Libraries
URL: http://lttng.org/urcu
Source0: http://lttng.org/files/urcu/userspace-rcu-%{version}.tar.bz2
Source1: http://lttng.org/files/urcu/userspace-rcu-%{version}.tar.bz2.asc
Source2: userspace-rcu.keyring
Source99: baselibs.conf
BuildRequires: automake
BuildRequires: gcc
BuildRequires: glibc-devel
BuildRequires: libtool
BuildRequires: make
BuildRequires: pkgconfig
%description
liburcu is a LGPLv2.1 userspace RCU (read-copy-update) library. This data
synchronization library provides read-side access which scales linearly with
the number of cores. It does so by allowing multiples copies of a given data
structure to live at the same time, and by monitoring the data structure
accesses to detect grace periods after which memory reclamation is possible.
%package -n liburcu%{soname}
Summary: Userspace Read-Copy-Update Library
Group: System/Libraries
%description -n liburcu%{soname}
liburcu is a LGPLv2.1 userspace RCU (read-copy-update) library. This data
synchronization library provides read-side access which scales linearly with
the number of cores. It does so by allowing multiples copies of a given data
structure to live at the same time, and by monitoring the data structure
accesses to detect grace periods after which memory reclamation is possible.
Accesses to detect grace periods after which memory reclamation is possible.
%package -n liburcu-devel
Summary: Userspace Read-Copy-Update Library
Group: Development/Libraries/C and C++
Requires: liburcu%{soname} = %{version}
%description -n liburcu-devel
liburcu is a LGPLv2.1 userspace RCU (read-copy-update) library. This data
synchronization library provides read-side access which scales linearly with
the number of cores. It does so by allowing multiples copies of a given data
structure to live at the same time, and by monitoring the data structure
accesses to detect grace periods after which memory reclamation is possible.
%prep
%setup -q
%build
autoreconf -fi
%configure --disable-silent-rules --disable-static
%make_build
%install
%make_install
rm -rf "%{buildroot}%{_datadir}/doc"
find %{buildroot} -type f -name "*.la" -delete -print
%post -n liburcu%{soname} -p /sbin/ldconfig
%postun -n liburcu%{soname} -p /sbin/ldconfig
%files -n liburcu%{soname}
%license LICENSE
%doc ChangeLog README.md *.txt doc/*.md
%{_libdir}/liburcu.so.%{soname}
%{_libdir}/liburcu.so.%{soname}.*
%{_libdir}/liburcu-bp.so.%{soname}
%{_libdir}/liburcu-bp.so.%{soname}.*
%{_libdir}/liburcu-cds.so.%{soname}
%{_libdir}/liburcu-cds.so.%{soname}.*
%{_libdir}/liburcu-common.so.%{soname}
%{_libdir}/liburcu-common.so.%{soname}.*
%{_libdir}/liburcu-mb.so.%{soname}
%{_libdir}/liburcu-mb.so.%{soname}.*
%{_libdir}/liburcu-memb.so.%{soname}
%{_libdir}/liburcu-memb.so.%{soname}.*
%{_libdir}/liburcu-qsbr.so.%{soname}
%{_libdir}/liburcu-qsbr.so.%{soname}.*
%{_libdir}/liburcu-signal.so.%{soname}
%{_libdir}/liburcu-signal.so.%{soname}.*
%files -n liburcu-devel
%{_includedir}/urcu*.h
%{_includedir}/urcu
%{_libdir}/liburcu.so
%{_libdir}/liburcu-bp.so
%{_libdir}/liburcu-cds.so
%{_libdir}/liburcu-common.so
%{_libdir}/liburcu-mb.so
%{_libdir}/liburcu-memb.so
%{_libdir}/liburcu-qsbr.so
%{_libdir}/liburcu-signal.so
%{_libdir}/pkgconfig/liburcu.pc
%{_libdir}/pkgconfig/liburcu-bp.pc
%{_libdir}/pkgconfig/liburcu-cds.pc
%{_libdir}/pkgconfig/liburcu-mb.pc
%{_libdir}/pkgconfig/liburcu-qsbr.pc
%{_libdir}/pkgconfig/liburcu-signal.pc
%changelog