3 %bcond_without libfabric # RPMEM component
4 %bcond_without ndctl # daxio component
5 %bcond_without pandoc # do not build manpages using pandoc
7 Summary: Persistent Memory Development Kit
8 Summary(pl.UTF-8): Persistent Memory Development Kit - oprogramowanie do obsługi pamięci nieulotnej
13 Group: Applications/System
14 #Source0Download: https://github.com/pmem/pmdk/releases
15 Source0: https://github.com/pmem/pmdk/releases/download/%{version}/%{name}-%{version}.tar.gz
16 # Source0-md5: 96cbc6a55598c367836ce6e83c5b1674
17 URL: http://pmem.io/pmdk/
18 %{?with_ndctl:BuildRequires: daxctl-devel >= 64.1}
19 %{?with_libfabric:BuildRequires: libfabric-devel >= 1.4.2}
20 %{?with_ndctl:BuildRequires: ndctl-devel >= 64.1}
21 %{?with_pandoc:BuildRequires: pandoc}
22 BuildRequires: pkgconfig
23 BuildRequires: rpmbuild(macros) >= 1.673
24 Requires: %{name}-libs = %{version}-%{release}
25 ExclusiveArch: %{x8664} aarch64 ppc64 riscv64
26 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
29 PMDK is a collection of libraries and utilities for using Non-Volatile
32 This package contains command-line utility pmempool - standalone tool
33 for off-line pool management.
35 %description -l pl.UTF-8
36 PMDK to zbiór bibliotek i narzędzi do wykorzystywania pamięci
37 nieulotnej (Non-Volatile Memory).
39 Ten pakiet zawiera narzędzie linii poleceń pmemtool - samodzielne
40 narzędzie do zarządzania pamięcią off-line.
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}
49 Python based PMDK utilities. Currently it contains:
50 - pmreorder: store reordering tool
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
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}
61 Requires: bash-completion >= 2.0
63 %description -n bash-completion-pmdk
64 Bash completion for PMDK pmempool utility.
66 %description -n bash-completion-pmdk -l pl.UTF-8
67 Bashowe uzupełnianie parametrów polecenia PMDK pmempool.
70 Summary: Persistent Memory Development Kit shared libraries
71 Summary(pl.UTF-8): Biblioteki współdzielone Persistent Memory Development Kit
75 This package contains a collection of libraries for using Non-Volatile
77 - libpmem - basic pmem operations like flushing
78 - libpmemblk, libpmemlog, libpmemobj - pmem transactions
79 - libpmempool - persistent memory pool management
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
86 - libpmempool - zarządzanie pulą pamięci nieulotnej
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}
95 Header files for PMDK libraries.
97 %description devel -l pl.UTF-8
98 Pliki nagłówkowe bibliotek PMDK.
101 Summary: Static PMDK libraries
102 Summary(pl.UTF-8): Statyczne biblioteki PMDK
103 Group: Development/Libraries
104 Requires: %{name}-devel = %{version}-%{release}
107 Static PMDK libraries.
109 %description static -l pl.UTF-8
110 Statyczne biblioteki PMDK.
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}
117 Requires: daxctl-libs >= 64.1
118 Requires: ndctl-libs >= 64.1
121 PMDK is a collection of libraries and utilities for using Non-Volatile
124 This package contains command-line utility daxio - perform I/O on
125 Device-DAX devices or zero a Device-DAX device.
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).
131 Ten pakiet zawiera narzędzie linii poleceń daxio - wykonywanie
132 operacji we/wy lub zerowanie urządzeń Device-DAX.
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}
141 PMDK is a collection of libraries and utilities for using Non-Volatile
144 This package contains rpmemd - librpmem target node process.
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).
150 Ten pakiet zawiera rpmemd - proces librpmem uruchamiany na docelowych
154 Summary: Library for remote access to persistent memory
155 Summary(pl.UTF-8): Biblioteka do zdalnego dostępu do pamięci nieulotnej
157 Requires: %{name}-libs = %{version}-%{release}
158 Requires: libfabric >= 1.4.2
160 %description rpmem-libs
161 This package contains a collection of libraries for using Non-Volatile
163 - librpmem - remote access to persistent memory (EXPERIMENTAL)
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)
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
178 %description rpmem-devel
179 Header file for rpmem library.
181 %description rpmem-devel -l pl.UTF-8
182 Plik nagłówkowy biblioteki rpmem.
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}
190 %description rpmem-static
191 Static rpmem library.
193 %description rpmem-static -l pl.UTF-8
194 Statyczna biblioteka rpmem.
203 CFLAGS="%{rpmcflags} %{rpmcppflags}" \
206 %{!?with_libfabric:BUILD_RPMEM=n} \
207 %{?with_ndctl:NDCTL_ENABLE=y} \
208 includedir=%{_includedir} \
211 sysconfdir=%{_sysconfdir}
214 rm -rf $RPM_BUILD_ROOT
219 %{__make} -C src install \
221 DESTDIR=$RPM_BUILD_ROOT \
222 %{!?with_libfabric:BUILD_RPMEM=n} \
223 %{?with_ndctl:NDCTL_ENABLE=y} \
224 bashcompdir=%{bash_compdir} \
225 includedir=%{_includedir} \
228 sysconfdir=%{_sysconfdir}
230 # debug libraries - needed for anything?
231 %{__rm} -r $RPM_BUILD_ROOT%{_libdir}/pmdk_debug
234 rm -rf $RPM_BUILD_ROOT
236 %post libs -p /sbin/ldconfig
237 %postun libs -p /sbin/ldconfig
239 %post rpmem-libs -p /sbin/ldconfig
240 %postun rpmem-libs -p /sbin/ldconfig
243 %defattr(644,root,root,755)
244 %doc src/tools/pmempool/README
245 %attr(755,root,root) %{_bindir}/pmempool
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*
252 %{_mandir}/man1/pmempool-feature.1*
253 %{_mandir}/man1/pmempool-info.1*
254 %{_mandir}/man1/pmempool-rm.1*
255 %{_mandir}/man1/pmempool-sync.1*
256 %{_mandir}/man1/pmempool-transform.1*
257 %{_mandir}/man5/pmem_ctl.5*
258 %{_mandir}/man5/poolset.5*
262 %defattr(644,root,root,755)
263 %attr(755,root,root) %{_bindir}/pmreorder
265 %{_mandir}/man1/pmreorder.1*
267 %{_datadir}/pmreorder
269 %files -n bash-completion-pmdk
270 %defattr(644,root,root,755)
271 %{bash_compdir}/pmempool
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
278 %attr(755,root,root) %{_libdir}/libpmem2.so.*.*.*
279 %attr(755,root,root) %ghost %{_libdir}/libpmem2.so.1
280 %attr(755,root,root) %{_libdir}/libpmemblk.so.*.*.*
281 %attr(755,root,root) %ghost %{_libdir}/libpmemblk.so.1
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
290 %defattr(644,root,root,755)
291 %attr(755,root,root) %{_libdir}/libpmem.so
292 %attr(755,root,root) %{_libdir}/libpmem2.so
293 %attr(755,root,root) %{_libdir}/libpmemblk.so
294 %attr(755,root,root) %{_libdir}/libpmemlog.so
295 %attr(755,root,root) %{_libdir}/libpmemobj.so
296 %attr(755,root,root) %{_libdir}/libpmempool.so
297 %{_includedir}/libpmem2
298 %{_includedir}/libpmemobj
299 %{_includedir}/libpmem*.h
300 %{_pkgconfigdir}/libpmem.pc
301 %{_pkgconfigdir}/libpmem2.pc
302 %{_pkgconfigdir}/libpmemblk.pc
303 %{_pkgconfigdir}/libpmemlog.pc
304 %{_pkgconfigdir}/libpmemobj.pc
305 %{_pkgconfigdir}/libpmempool.pc
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*
315 %{_mandir}/man3/pmem2_*.3*
316 %{_mandir}/man3/pmemblk_*.3*
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*
324 %{_mandir}/man7/libpmem.7*
325 %{_mandir}/man7/libpmem2.7*
326 %{_mandir}/man7/libpmem2_unsafe_shutdown.7*
327 %{_mandir}/man7/libpmemblk.7*
328 %{_mandir}/man7/libpmemlog.7*
329 %{_mandir}/man7/libpmemobj.7*
330 %{_mandir}/man7/libpmempool.7*
334 %defattr(644,root,root,755)
336 %{_libdir}/libpmem2.a
337 %{_libdir}/libpmemblk.a
338 %{_libdir}/libpmemlog.a
339 %{_libdir}/libpmemobj.a
340 %{_libdir}/libpmempool.a
344 %defattr(644,root,root,755)
345 %doc src/tools/daxio/README
346 %attr(755,root,root) %{_bindir}/daxio
348 %{_mandir}/man1/daxio.1*
352 %if %{with libfabric}
354 %defattr(644,root,root,755)
355 %doc src/tools/rpmemd/README
356 %attr(755,root,root) %{_bindir}/rpmemd
358 %{_mandir}/man1/rpmemd.1*
362 %defattr(644,root,root,755)
363 %attr(755,root,root) %{_libdir}/librpmem.so.*.*.*
364 %attr(755,root,root) %ghost %{_libdir}/librpmem.so.1
367 %defattr(644,root,root,755)
368 %attr(755,root,root) %{_libdir}/librpmem.so
369 %{_includedir}/librpmem.h
370 %{_pkgconfigdir}/librpmem.pc
372 %{_mandir}/man3/rpmem_*.3*
373 %{_mandir}/man7/librpmem.7*
377 %defattr(644,root,root,755)
378 %{_libdir}/librpmem.a