]>
Commit | Line | Data |
---|---|---|
c9fe5483 JB |
1 | # |
2 | # Conditional build: | |
c9fe5483 JB |
3 | %bcond_without libfabric # RPMEM component |
4 | %bcond_without ndctl # daxio component | |
a599a94d | 5 | %bcond_without pandoc # do not build manpages using pandoc |
c9fe5483 JB |
6 | # |
7 | Summary: Persistent Memory Development Kit | |
8 | Summary(pl.UTF-8): Persistent Memory Development Kit - oprogramowanie do obsługi pamięci nieulotnej | |
9 | Name: pmdk | |
657b0f6d | 10 | Version: 1.12.1 |
2df3ae9c | 11 | Release: 1 |
c9fe5483 JB |
12 | License: BSD |
13 | Group: Applications/System | |
14 | #Source0Download: https://github.com/pmem/pmdk/releases | |
2df3ae9c | 15 | Source0: https://github.com/pmem/pmdk/releases/download/%{version}/%{name}-%{version}.tar.gz |
657b0f6d | 16 | # Source0-md5: 96cbc6a55598c367836ce6e83c5b1674 |
c9fe5483 | 17 | URL: http://pmem.io/pmdk/ |
85f66601 | 18 | %{?with_ndctl:BuildRequires: daxctl-devel >= 64.1} |
c9fe5483 | 19 | %{?with_libfabric:BuildRequires: libfabric-devel >= 1.4.2} |
85f66601 | 20 | %{?with_ndctl:BuildRequires: ndctl-devel >= 64.1} |
a599a94d | 21 | %{?with_pandoc:BuildRequires: pandoc} |
c9fe5483 | 22 | BuildRequires: pkgconfig |
ab389158 | 23 | BuildRequires: rpmbuild(macros) >= 1.673 |
c9fe5483 | 24 | Requires: %{name}-libs = %{version}-%{release} |
2df3ae9c | 25 | ExclusiveArch: %{x8664} aarch64 ppc64 riscv64 |
c9fe5483 JB |
26 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
27 | ||
28 | %description | |
29 | PMDK is a collection of libraries and utilities for using Non-Volatile | |
30 | Memory. | |
31 | ||
32 | This package contains command-line utility pmempool - standalone tool | |
33 | for off-line pool management. | |
34 | ||
35 | %description -l pl.UTF-8 | |
36 | PMDK to zbiór bibliotek i narzędzi do wykorzystywania pamięci | |
37 | nieulotnej (Non-Volatile Memory). | |
38 | ||
39 | Ten pakiet zawiera narzędzie linii poleceń pmemtool - samodzielne | |
40 | narzędzie do zarządzania pamięcią off-line. | |
41 | ||
ab389158 JB |
42 | %package python |
43 | Summary: Python based PMDK utilities | |
44 | Summary(pl.UTF-8): Narzędzia PMDK napisane w Pythonie | |
45 | Group: Applications/System | |
46 | Requires: %{name} = %{version}-%{release} | |
47 | ||
48 | %description python | |
49 | Python based PMDK utilities. Currently it contains: | |
50 | - pmreorder: store reordering tool | |
51 | ||
52 | %description python -l pl.UTF-8 | |
53 | Narzędzia PMDK napisane w Pythonie. Obecnie zawierają: | |
54 | - pmreorder: narzędzie do zmiany kolejności zapisów | |
55 | ||
c9fe5483 JB |
56 | %package -n bash-completion-pmdk |
57 | Summary: Bash completion for PMDK utilities | |
58 | Summary(pl.UTF-8): Bashowe uzupełnianie parametrów poleceń PMDK | |
59 | Group: Applications/Shells | |
60 | Requires: %{name} = %{version}-%{release} | |
ab389158 | 61 | Requires: bash-completion >= 2.0 |
c9fe5483 JB |
62 | |
63 | %description -n bash-completion-pmdk | |
64 | Bash completion for PMDK pmempool utility. | |
65 | ||
66 | %description -n bash-completion-pmdk -l pl.UTF-8 | |
67 | Bashowe uzupełnianie parametrów polecenia PMDK pmempool. | |
68 | ||
69 | %package libs | |
70 | Summary: Persistent Memory Development Kit shared libraries | |
71 | Summary(pl.UTF-8): Biblioteki współdzielone Persistent Memory Development Kit | |
72 | Group: Libraries | |
73 | ||
74 | %description libs | |
75 | This package contains a collection of libraries for using Non-Volatile | |
76 | Memory (NVM): | |
77 | - libpmem - basic pmem operations like flushing | |
78 | - libpmemblk, libpmemlog, libpmemobj - pmem transactions | |
c9fe5483 | 79 | - libpmempool - persistent memory pool management |
c9fe5483 JB |
80 | |
81 | %description libs -l pl.UTF-8 | |
82 | Ten pakiet zawiera zestaw bibliotek do wykorzystywania pamięci | |
83 | nieulotnej (NVM - Non-Volatile Memory): | |
84 | - libpmem - podstawowe operacje pmem, takie jak flush | |
85 | - libpmemblk, libpmemlog, libpmemobj - transakcje pmem | |
c9fe5483 | 86 | - libpmempool - zarządzanie pulą pamięci nieulotnej |
c9fe5483 JB |
87 | |
88 | %package devel | |
89 | Summary: Header files for PMDK libraries | |
90 | Summary(pl.UTF-8): Pliki nagłówkowe bibliotek PMDK | |
91 | Group: Development/Libraries | |
92 | Requires: %{name}-libs = %{version}-%{release} | |
93 | ||
94 | %description devel | |
95 | Header files for PMDK libraries. | |
96 | ||
97 | %description devel -l pl.UTF-8 | |
98 | Pliki nagłówkowe bibliotek PMDK. | |
99 | ||
100 | %package static | |
101 | Summary: Static PMDK libraries | |
102 | Summary(pl.UTF-8): Statyczne biblioteki PMDK | |
103 | Group: Development/Libraries | |
104 | Requires: %{name}-devel = %{version}-%{release} | |
105 | ||
106 | %description static | |
107 | Static PMDK libraries. | |
108 | ||
109 | %description static -l pl.UTF-8 | |
110 | Statyczne biblioteki PMDK. | |
111 | ||
c9fe5483 JB |
112 | %package dax |
113 | Summary: PMDK utility for Device-DAX devices | |
114 | Summary(pl.UTF-8): Narzędzie PMDK do urządzeń Device-DAX | |
115 | Group: Applications/System | |
116 | Requires: %{name}-libs = %{version}-%{release} | |
85f66601 JB |
117 | Requires: daxctl-libs >= 64.1 |
118 | Requires: ndctl-libs >= 64.1 | |
c9fe5483 JB |
119 | |
120 | %description dax | |
121 | PMDK is a collection of libraries and utilities for using Non-Volatile | |
122 | Memory. | |
123 | ||
124 | This package contains command-line utility daxio - perform I/O on | |
125 | Device-DAX devices or zero a Device-DAX device. | |
126 | ||
127 | %description dax -l pl.UTF-8 | |
128 | PMDK to zbiór bibliotek i narzędzi do wykorzystywania pamięci | |
129 | nieulotnej (Non-Volatile Memory). | |
130 | ||
131 | Ten pakiet zawiera narzędzie linii poleceń daxio - wykonywanie | |
132 | operacji we/wy lub zerowanie urządzeń Device-DAX. | |
133 | ||
134 | %package rpmem | |
135 | Summary: PMDK process for remote persistent memory access | |
136 | Summary(pl.UTF-8): Proces PMDK do zdalnego dostępu do pamięci nieulotnej | |
137 | Group: Applications/System | |
138 | Requires: %{name}-rpmem-libs = %{version}-%{release} | |
139 | ||
140 | %description rpmem | |
141 | PMDK is a collection of libraries and utilities for using Non-Volatile | |
142 | Memory. | |
143 | ||
144 | This package contains rpmemd - librpmem target node process. | |
145 | ||
146 | %description rpmem -l pl.UTF-8 | |
147 | PMDK to zbiór bibliotek i narzędzi do wykorzystywania pamięci | |
148 | nieulotnej (Non-Volatile Memory). | |
149 | ||
150 | Ten pakiet zawiera rpmemd - proces librpmem uruchamiany na docelowych | |
151 | węzłach. | |
152 | ||
153 | %package rpmem-libs | |
154 | Summary: Library for remote access to persistent memory | |
155 | Summary(pl.UTF-8): Biblioteka do zdalnego dostępu do pamięci nieulotnej | |
156 | Group: Libraries | |
157 | Requires: %{name}-libs = %{version}-%{release} | |
158 | Requires: libfabric >= 1.4.2 | |
159 | ||
160 | %description rpmem-libs | |
161 | This package contains a collection of libraries for using Non-Volatile | |
162 | Memory (NVM): | |
163 | - librpmem - remote access to persistent memory (EXPERIMENTAL) | |
164 | ||
165 | %description rpmem-libs -l pl.UTF-8 | |
166 | Ten pakiet zawiera zestaw bibliotek do wykorzystywania pamięci | |
167 | nieulotnej (NVM - Non-Volatile Memory): | |
168 | - librpmem - zdalny dostęp do pamięci nieulotnej (EKSPERYMENTALNA) | |
169 | ||
170 | %package rpmem-devel | |
171 | Summary: Header file for rpmem library | |
172 | Summary(pl.UTF-8): Plik nagłówkowy biblioteki rpmem | |
173 | Group: Development/Libraries | |
174 | Requires: %{name}-devel = %{version}-%{release} | |
175 | Requires: %{name}-rpmem-libs = %{version}-%{release} | |
176 | Requires: libfabric-devel >= 1.4.2 | |
177 | ||
178 | %description rpmem-devel | |
179 | Header file for rpmem library. | |
180 | ||
181 | %description rpmem-devel -l pl.UTF-8 | |
182 | Plik nagłówkowy biblioteki rpmem. | |
183 | ||
184 | %package rpmem-static | |
185 | Summary: Static rpmem library | |
186 | Summary(pl.UTF-8): Statyczna biblioteka rpmem | |
187 | Group: Development/Libraries | |
188 | Requires: %{name}-rpmem-devel = %{version}-%{release} | |
189 | ||
190 | %description rpmem-static | |
191 | Static rpmem library. | |
192 | ||
193 | %description rpmem-static -l pl.UTF-8 | |
194 | Statyczna biblioteka rpmem. | |
195 | ||
196 | %prep | |
197 | %setup -q | |
198 | ||
199 | %build | |
a599a94d MK |
200 | %if !%{with pandoc} |
201 | touch .skip-doc | |
202 | %endif | |
c9fe5483 JB |
203 | CFLAGS="%{rpmcflags} %{rpmcppflags}" \ |
204 | %{__make} -j1 \ | |
205 | CC="%{__cc}" \ | |
206 | %{!?with_libfabric:BUILD_RPMEM=n} \ | |
207 | %{?with_ndctl:NDCTL_ENABLE=y} \ | |
208 | includedir=%{_includedir} \ | |
209 | libdir=%{_libdir} \ | |
210 | prefix=%{_prefix} \ | |
211 | sysconfdir=%{_sysconfdir} | |
212 | ||
213 | %install | |
214 | rm -rf $RPM_BUILD_ROOT | |
215 | ||
a599a94d | 216 | %if %{with pandoc} |
c9fe5483 | 217 | %{__make} install \ |
a599a94d MK |
218 | %else |
219 | %{__make} -C src install \ | |
220 | %endif | |
c9fe5483 JB |
221 | DESTDIR=$RPM_BUILD_ROOT \ |
222 | %{!?with_libfabric:BUILD_RPMEM=n} \ | |
223 | %{?with_ndctl:NDCTL_ENABLE=y} \ | |
ab389158 | 224 | bashcompdir=%{bash_compdir} \ |
c9fe5483 JB |
225 | includedir=%{_includedir} \ |
226 | libdir=%{_libdir} \ | |
227 | prefix=%{_prefix} \ | |
228 | sysconfdir=%{_sysconfdir} | |
229 | ||
230 | # debug libraries - needed for anything? | |
231 | %{__rm} -r $RPM_BUILD_ROOT%{_libdir}/pmdk_debug | |
c9fe5483 JB |
232 | |
233 | %clean | |
234 | rm -rf $RPM_BUILD_ROOT | |
235 | ||
236 | %post libs -p /sbin/ldconfig | |
237 | %postun libs -p /sbin/ldconfig | |
238 | ||
239 | %post rpmem-libs -p /sbin/ldconfig | |
240 | %postun rpmem-libs -p /sbin/ldconfig | |
241 | ||
242 | %files | |
243 | %defattr(644,root,root,755) | |
244 | %doc src/tools/pmempool/README | |
245 | %attr(755,root,root) %{_bindir}/pmempool | |
a599a94d | 246 | %if %{with pandoc} |
c9fe5483 JB |
247 | %{_mandir}/man1/pmempool.1* |
248 | %{_mandir}/man1/pmempool-check.1* | |
249 | %{_mandir}/man1/pmempool-convert.1* | |
250 | %{_mandir}/man1/pmempool-create.1* | |
251 | %{_mandir}/man1/pmempool-dump.1* | |
ab389158 | 252 | %{_mandir}/man1/pmempool-feature.1* |
c9fe5483 JB |
253 | %{_mandir}/man1/pmempool-info.1* |
254 | %{_mandir}/man1/pmempool-rm.1* | |
255 | %{_mandir}/man1/pmempool-sync.1* | |
256 | %{_mandir}/man1/pmempool-transform.1* | |
ab389158 | 257 | %{_mandir}/man5/pmem_ctl.5* |
c9fe5483 | 258 | %{_mandir}/man5/poolset.5* |
a599a94d | 259 | %endif |
c9fe5483 | 260 | |
ab389158 JB |
261 | %files python |
262 | %defattr(644,root,root,755) | |
263 | %attr(755,root,root) %{_bindir}/pmreorder | |
a599a94d | 264 | %if %{with pandoc} |
ab389158 | 265 | %{_mandir}/man1/pmreorder.1* |
a599a94d | 266 | %endif |
ab389158 JB |
267 | %{_datadir}/pmreorder |
268 | ||
c9fe5483 JB |
269 | %files -n bash-completion-pmdk |
270 | %defattr(644,root,root,755) | |
ab389158 | 271 | %{bash_compdir}/pmempool |
c9fe5483 JB |
272 | |
273 | %files libs | |
274 | %defattr(644,root,root,755) | |
275 | %doc ChangeLog LICENSE | |
276 | %attr(755,root,root) %{_libdir}/libpmem.so.*.*.* | |
277 | %attr(755,root,root) %ghost %{_libdir}/libpmem.so.1 | |
2df3ae9c JB |
278 | %attr(755,root,root) %{_libdir}/libpmem2.so.*.*.* |
279 | %attr(755,root,root) %ghost %{_libdir}/libpmem2.so.1 | |
c9fe5483 JB |
280 | %attr(755,root,root) %{_libdir}/libpmemblk.so.*.*.* |
281 | %attr(755,root,root) %ghost %{_libdir}/libpmemblk.so.1 | |
c9fe5483 JB |
282 | %attr(755,root,root) %{_libdir}/libpmemlog.so.*.*.* |
283 | %attr(755,root,root) %ghost %{_libdir}/libpmemlog.so.1 | |
284 | %attr(755,root,root) %{_libdir}/libpmemobj.so.*.*.* | |
285 | %attr(755,root,root) %ghost %{_libdir}/libpmemobj.so.1 | |
286 | %attr(755,root,root) %{_libdir}/libpmempool.so.*.*.* | |
287 | %attr(755,root,root) %ghost %{_libdir}/libpmempool.so.1 | |
c9fe5483 JB |
288 | |
289 | %files devel | |
290 | %defattr(644,root,root,755) | |
291 | %attr(755,root,root) %{_libdir}/libpmem.so | |
2df3ae9c | 292 | %attr(755,root,root) %{_libdir}/libpmem2.so |
c9fe5483 | 293 | %attr(755,root,root) %{_libdir}/libpmemblk.so |
c9fe5483 JB |
294 | %attr(755,root,root) %{_libdir}/libpmemlog.so |
295 | %attr(755,root,root) %{_libdir}/libpmemobj.so | |
296 | %attr(755,root,root) %{_libdir}/libpmempool.so | |
2df3ae9c | 297 | %{_includedir}/libpmem2 |
c9fe5483 JB |
298 | %{_includedir}/libpmemobj |
299 | %{_includedir}/libpmem*.h | |
c9fe5483 | 300 | %{_pkgconfigdir}/libpmem.pc |
2df3ae9c | 301 | %{_pkgconfigdir}/libpmem2.pc |
c9fe5483 | 302 | %{_pkgconfigdir}/libpmemblk.pc |
c9fe5483 JB |
303 | %{_pkgconfigdir}/libpmemlog.pc |
304 | %{_pkgconfigdir}/libpmemobj.pc | |
305 | %{_pkgconfigdir}/libpmempool.pc | |
a599a94d | 306 | %if %{with pandoc} |
c9fe5483 JB |
307 | %{_mandir}/man3/d_ro.3* |
308 | %{_mandir}/man3/d_rw.3* | |
309 | %{_mandir}/man3/direct_ro.3* | |
310 | %{_mandir}/man3/direct_rw.3* | |
311 | %{_mandir}/man3/oid_equals.3* | |
312 | %{_mandir}/man3/oid_instanceof.3* | |
313 | %{_mandir}/man3/oid_is_null.3* | |
314 | %{_mandir}/man3/pmem_*.3* | |
2df3ae9c | 315 | %{_mandir}/man3/pmem2_*.3* |
c9fe5483 | 316 | %{_mandir}/man3/pmemblk_*.3* |
c9fe5483 JB |
317 | %{_mandir}/man3/pmemlog_*.3* |
318 | %{_mandir}/man3/pmemobj_*.3* | |
319 | %{_mandir}/man3/pmempool_*.3* | |
320 | %{_mandir}/man3/pobj_*.3* | |
321 | %{_mandir}/man3/toid.3* | |
322 | %{_mandir}/man3/toid_*.3* | |
323 | %{_mandir}/man3/tx_*.3* | |
c9fe5483 | 324 | %{_mandir}/man7/libpmem.7* |
2df3ae9c JB |
325 | %{_mandir}/man7/libpmem2.7* |
326 | %{_mandir}/man7/libpmem2_unsafe_shutdown.7* | |
c9fe5483 | 327 | %{_mandir}/man7/libpmemblk.7* |
c9fe5483 JB |
328 | %{_mandir}/man7/libpmemlog.7* |
329 | %{_mandir}/man7/libpmemobj.7* | |
330 | %{_mandir}/man7/libpmempool.7* | |
a599a94d | 331 | %endif |
c9fe5483 JB |
332 | |
333 | %files static | |
334 | %defattr(644,root,root,755) | |
335 | %{_libdir}/libpmem.a | |
2df3ae9c | 336 | %{_libdir}/libpmem2.a |
c9fe5483 | 337 | %{_libdir}/libpmemblk.a |
c9fe5483 JB |
338 | %{_libdir}/libpmemlog.a |
339 | %{_libdir}/libpmemobj.a | |
340 | %{_libdir}/libpmempool.a | |
c9fe5483 | 341 | |
c9fe5483 JB |
342 | %if %{with ndctl} |
343 | %files dax | |
344 | %defattr(644,root,root,755) | |
345 | %doc src/tools/daxio/README | |
346 | %attr(755,root,root) %{_bindir}/daxio | |
a599a94d | 347 | %if %{with pandoc} |
c9fe5483 JB |
348 | %{_mandir}/man1/daxio.1* |
349 | %endif | |
a599a94d | 350 | %endif |
c9fe5483 JB |
351 | |
352 | %if %{with libfabric} | |
353 | %files rpmem | |
354 | %defattr(644,root,root,755) | |
355 | %doc src/tools/rpmemd/README | |
356 | %attr(755,root,root) %{_bindir}/rpmemd | |
a599a94d | 357 | %if %{with pandoc} |
c9fe5483 | 358 | %{_mandir}/man1/rpmemd.1* |
a599a94d | 359 | %endif |
c9fe5483 JB |
360 | |
361 | %files rpmem-libs | |
362 | %defattr(644,root,root,755) | |
363 | %attr(755,root,root) %{_libdir}/librpmem.so.*.*.* | |
364 | %attr(755,root,root) %ghost %{_libdir}/librpmem.so.1 | |
365 | ||
366 | %files rpmem-devel | |
367 | %defattr(644,root,root,755) | |
368 | %attr(755,root,root) %{_libdir}/librpmem.so | |
369 | %{_includedir}/librpmem.h | |
370 | %{_pkgconfigdir}/librpmem.pc | |
a599a94d | 371 | %if %{with pandoc} |
c9fe5483 JB |
372 | %{_mandir}/man3/rpmem_*.3* |
373 | %{_mandir}/man7/librpmem.7* | |
a599a94d | 374 | %endif |
c9fe5483 JB |
375 | |
376 | %files rpmem-static | |
377 | %defattr(644,root,root,755) | |
378 | %{_libdir}/librpmem.a | |
379 | %endif |