]> git.pld-linux.org Git - packages/userspace-rcu.git/blob - userspace-rcu.spec
fd2ccd0c19a259a8979fa3cc788b88a67353d7ad
[packages/userspace-rcu.git] / userspace-rcu.spec
1 Summary:        Userspace RCU implementation
2 Summary(pl.UTF-8):      Implementacja RCU w przestrzeni użytkownika
3 Name:           userspace-rcu
4 Version:        0.13.1
5 Release:        1
6 License:        LGPL v2.1+ (library), GPL v2 (tests)
7 Group:          Libraries
8 Source0:        https://lttng.org/files/urcu/%{name}-%{version}.tar.bz2
9 # Source0-md5:  eecffc78f89938424b328298d76d856f
10 Patch0:         no_examples.patch
11 URL:            http://liburcu.org/
12 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
13
14 %description
15 liburcu is a LGPL userspace RCU (read-copy-update) library. This data
16 synchronization library provides read-side access which scales
17 linearly with the number of cores. It does so by allowing multiples
18 copies of a given data structure to live at the same time, and by
19 monitoring the data structure accesses to detect grace periods after
20 which memory reclamation is possible.
21
22 liburcu-cds provides efficient data structures based on RCU and
23 lock-free algorithms. Those structures include hash tables, queues,
24 stacks, and doubly-linked lists.
25
26 %description -l pl.UTF-8
27 liburcu to dostępna na licencji LGPL biblioteka będąca implementacją
28 algorytmu RCU (read-copy-update) w przestrzeni użytkownika. Ta
29 biblioteka synchronizacji danych pozwala na dostęp w trybie odczytu
30 skalujący się liniowo wraz z liczbą rdzeni. Jest to osiągalne poprzez
31 zezwolenie na istnienie naraz wielu kopii struktur danych i śledzenie
32 dostępów do tych struktur, aby wykryć okresy, kiedy możliwe jest
33 odzyskanie pamięci.
34
35 liburdu-cms udostępnia wydajne struktury danych oparte na algorytmach
36 RCU oraz bez blokad. Struktury te obejmują tablice haszujące, kolejki,
37 stosy i listy dwukierunkowe.
38
39 %package devel
40 Summary:        Header files for Userspace RCU libraries
41 Summary(pl.UTF-8):      Pliki nagłówkowe bibliotek Userspace RCU
42 Group:          Development/Libraries
43 Requires:       %{name} = %{version}-%{release}
44
45 %description devel
46 Header files for Userspace RCU libraries.
47
48 %description devel -l pl.UTF-8
49 Pliki nagłówkowe bibliotek Userspace RCU.
50
51 %package static
52 Summary:        Static Userspace RCU libraries
53 Summary(pl.UTF-8):      Statyczne biblioteki Userspace RCU
54 Group:          Development/Libraries
55 Requires:       %{name}-devel = %{version}-%{release}
56
57 %description static
58 Static Userspace RCU libraries.
59
60 %description static -l pl.UTF-8
61 Statyczne biblioteki Userspace RCU.
62
63 %prep
64 %setup -q
65 %patch -p1
66
67 %build
68 %{__aclocal}
69 %{__autoconf} -I m4
70 %{__automake}
71 %configure \
72         --disable-silent-rules
73
74 %{make}
75
76 %install
77 rm -rf $RPM_BUILD_ROOT
78
79 %{__make} install \
80         DESTDIR=$RPM_BUILD_ROOT
81
82 # *.la kept - urcu-common not handled in any way in .pc files
83
84 # packaged as %doc
85 %{__rm} $RPM_BUILD_ROOT%{_docdir}/userspace-rcu/{{rcu,cds,uatomic}-api.md,LICENSE,README.md,solaris-build.md}
86
87 %clean
88 rm -rf $RPM_BUILD_ROOT
89
90 %post   -p /sbin/ldconfig
91 %postun -p /sbin/ldconfig
92
93 %files
94 %defattr(644,root,root,755)
95 %doc ChangeLog LICENSE README.md lgpl-relicensing.txt
96 %attr(755,root,root) %{_libdir}/liburcu.so.*.*.*
97 %attr(755,root,root) %ghost %{_libdir}/liburcu.so.8
98 %attr(755,root,root) %{_libdir}/liburcu-bp.so.*.*.*
99 %attr(755,root,root) %ghost %{_libdir}/liburcu-bp.so.8
100 %attr(755,root,root) %{_libdir}/liburcu-cds.so.*.*.*
101 %attr(755,root,root) %ghost %{_libdir}/liburcu-cds.so.8
102 %attr(755,root,root) %{_libdir}/liburcu-common.so.*.*.*
103 %attr(755,root,root) %ghost %{_libdir}/liburcu-common.so.8
104 %attr(755,root,root) %{_libdir}/liburcu-mb.so.*.*.*
105 %attr(755,root,root) %ghost %{_libdir}/liburcu-mb.so.8
106 %attr(755,root,root) %{_libdir}/liburcu-memb.so.*.*.*
107 %attr(755,root,root) %ghost %{_libdir}/liburcu-memb.so.8
108 %attr(755,root,root) %{_libdir}/liburcu-qsbr.so.*.*.*
109 %attr(755,root,root) %ghost %{_libdir}/liburcu-qsbr.so.8
110 %attr(755,root,root) %{_libdir}/liburcu-signal.so.*.*.*
111 %attr(755,root,root) %ghost %{_libdir}/liburcu-signal.so.8
112
113 %files devel
114 %defattr(644,root,root,755)
115 %doc doc/{rcu,cds,uatomic}-api.md
116 %attr(755,root,root) %{_libdir}/liburcu.so
117 %attr(755,root,root) %{_libdir}/liburcu-bp.so
118 %attr(755,root,root) %{_libdir}/liburcu-cds.so
119 %attr(755,root,root) %{_libdir}/liburcu-common.so
120 %attr(755,root,root) %{_libdir}/liburcu-mb.so
121 %attr(755,root,root) %{_libdir}/liburcu-memb.so
122 %attr(755,root,root) %{_libdir}/liburcu-qsbr.so
123 %attr(755,root,root) %{_libdir}/liburcu-signal.so
124 %{_libdir}/liburcu.la
125 %{_libdir}/liburcu-bp.la
126 %{_libdir}/liburcu-cds.la
127 %{_libdir}/liburcu-common.la
128 %{_libdir}/liburcu-mb.la
129 %{_libdir}/liburcu-memb.la
130 %{_libdir}/liburcu-qsbr.la
131 %{_libdir}/liburcu-signal.la
132 %{_includedir}/urcu
133 %{_includedir}/urcu*.h
134 %{_pkgconfigdir}/liburcu.pc
135 %{_pkgconfigdir}/liburcu-bp.pc
136 %{_pkgconfigdir}/liburcu-cds.pc
137 %{_pkgconfigdir}/liburcu-mb.pc
138 %{_pkgconfigdir}/liburcu-memb.pc
139 %{_pkgconfigdir}/liburcu-qsbr.pc
140 %{_pkgconfigdir}/liburcu-signal.pc
141
142 %files static
143 %defattr(644,root,root,755)
144 %{_libdir}/liburcu.a
145 %{_libdir}/liburcu-bp.a
146 %{_libdir}/liburcu-cds.a
147 %{_libdir}/liburcu-common.a
148 %{_libdir}/liburcu-mb.a
149 %{_libdir}/liburcu-memb.a
150 %{_libdir}/liburcu-qsbr.a
151 %{_libdir}/liburcu-signal.a
This page took 0.091643 seconds and 2 git commands to generate.