8
0
forked from pool/userspace-rcu
Files
userspace-rcu/userspace-rcu.spec
Marcus Meissner 7d2deab580 Accepting request 1070224 from home:dirkmueller:Factory
- update to 0.14.0:
  * Fix: urcu-bp: only teardown call-rcu worker in destructor
  * Fix: rculfhash: urcu_die() takes positive error value
  * Fix: call_rcu: teardown default call_rcu worker on
    application exit
  * Fix: join worker thread in call_rcu_data_free
  * Docs: clarify grace period polling API
  * Document grace period polling in rcu-api.md
  * Implement poll rcu stress test in rcutorture
  * urcu-memb,mb,signal: Implement grace period polling
  * Fix: auto-resize hash table destroy deadlock
  * Fix building on MSYS2
  * rculfhash: Include rculfhash-internal.h from local directory
  * Remove "Darwin" from "should also work on list"
  * Merge branch 'adah1972-improve-md'
  * Add semicolons at the end of function prototypes
  * Wrap a file name in backticks
  * Wrap command-line options in backticks
  * Fix a wrong format
  * Wrap URLs in angle brackets
  * Fix Markdown issues
  * Fix: Always check pthread_create for failures
  * Disable signals in URCU background threads
  * Fix: futex.h: include headers outside extern C
  * Fix: add missing unused attribute to _rcu_dereference
  * Fix: change method used by _rcu_dereference to strip type
    constness
  * Fix: remove type constness in URCU_FORCE_CAST's C++ version
  * Move extern "C" down in include/urcu/urcu-bp.h
  * fix: ifdef linux specific cpu count compat

OBS-URL: https://build.opensuse.org/request/show/1070224
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/userspace-rcu?expand=0&rev=36
2023-03-13 13:55:54 +00:00

126 lines
4.4 KiB
RPMSpec

# vim: set sw=4 ts=4 et nu:
#
# spec file for package userspace-rcu
#
# Copyright (c) 2023 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 8
Name: userspace-rcu
Version: 0.14.0
Release: 0
Summary: Userspace Read-Copy-Update Library
License: GPL-2.0-or-later AND LGPL-2.1-or-later AND MIT AND GPL-3.0-or-later
Group: System/Libraries
URL: https://liburcu.org/
Source0: https://lttng.org/files/urcu/userspace-rcu-%{version}.tar.bz2
Source1: https://lttng.org/files/urcu/userspace-rcu-%{version}.tar.bz2.asc
Source2: userspace-rcu.keyring
Source99: baselibs.conf
BuildRequires: gcc-c++
BuildRequires: glibc-devel
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
%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-memb.pc
%{_libdir}/pkgconfig/liburcu-qsbr.pc
%{_libdir}/pkgconfig/liburcu-signal.pc
%changelog