You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
825 lines
27 KiB
825 lines
27 KiB
6 years ago
|
Name: nvml
|
||
|
Version: 1.4
|
||
|
Release: 3%{?dist}
|
||
|
Summary: Non-Volatile Memory Library
|
||
|
License: BSD
|
||
|
URL: http://pmem.io/pmdk
|
||
|
Source0: https://github.com/pmem/pmdk/archive/%{version}.tar.gz#/pmdk-%{version}.tar.gz
|
||
|
|
||
|
BuildRequires: glibc-devel
|
||
|
BuildRequires: autoconf
|
||
|
BuildRequires: automake
|
||
|
BuildRequires: man
|
||
|
BuildRequires: pkgconfig
|
||
|
BuildRequires: doxygen
|
||
|
BuildRequires: gdb
|
||
|
BuildRequires: ndctl-devel >= 59.2-1
|
||
|
BuildRequires: daxctl-devel >= 59.2-1
|
||
|
|
||
|
%define min_libfabric_ver 1.4.2
|
||
|
BuildRequires: libfabric-devel >= %{min_libfabric_ver}
|
||
|
|
||
|
# Debug variants of the libraries should be filtered out of the provides.
|
||
|
%global __provides_exclude_from ^%{_libdir}/pmdk_debug/.*\\.so.*$
|
||
|
|
||
|
# By design, NVML does not support any 32-bit architecture.
|
||
|
# Due to dependency on xmmintrin.h and some inline assembly, it can be
|
||
|
# compiled only for x86_64 at the moment.
|
||
|
# Other 64-bit architectures could also be supported, if only there is
|
||
|
# a request for that, and if somebody provides the arch-specific
|
||
|
# implementation of the low-level routines for flushing to persistent
|
||
|
# memory.
|
||
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1340634
|
||
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1340635
|
||
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1340636
|
||
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1340637
|
||
|
#ExclusiveArch: x86_64
|
||
|
|
||
|
%description
|
||
|
The NVM Library is a collection of libraries for using memory-mapped
|
||
|
persistence, optimized specifically for persistent memory.
|
||
|
|
||
|
|
||
|
%package -n libpmem
|
||
|
Summary: Low-level persistent memory support library
|
||
|
Group: System Environment/Libraries
|
||
|
%description -n libpmem
|
||
|
The libpmem provides low level persistent memory support. In particular,
|
||
|
support for the persistent memory instructions for flushing changes
|
||
|
to pmem is provided.
|
||
|
|
||
|
%files -n libpmem
|
||
|
%defattr(-,root,root,-)
|
||
|
%dir %{_datadir}/pmdk
|
||
|
%{_libdir}/libpmem.so.*
|
||
|
%{_datadir}/pmdk/pmdk.magic
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libpmem-devel
|
||
|
Summary: Development files for the low-level persistent memory library
|
||
|
Group: Development/Libraries
|
||
|
Requires: libpmem = %{version}-%{release}
|
||
|
%description -n libpmem-devel
|
||
|
The libpmem provides low level persistent memory support. In particular,
|
||
|
support for the persistent memory instructions for flushing changes
|
||
|
to pmem is provided.
|
||
|
|
||
|
This library is provided for software which tracks every store to
|
||
|
pmem and needs to flush those changes to durability. Most developers
|
||
|
will find higher level libraries like libpmemobj to be much more
|
||
|
convenient.
|
||
|
|
||
|
%files -n libpmem-devel
|
||
|
%defattr(-,root,root,-)
|
||
|
%{_libdir}/libpmem.so
|
||
|
%{_libdir}/pkgconfig/libpmem.pc
|
||
|
%{_includedir}/libpmem.h
|
||
|
%{_mandir}/man7/libpmem.7.gz
|
||
|
%{_mandir}/man3/pmem_*.3.gz
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libpmem-debug
|
||
|
Summary: Debug variant of the low-level persistent memory library
|
||
|
Group: Development/Libraries
|
||
|
Requires: libpmem = %{version}-%{release}
|
||
|
%description -n libpmem-debug
|
||
|
The libpmem provides low level persistent memory support. In particular,
|
||
|
support for the persistent memory instructions for flushing changes
|
||
|
to pmem is provided.
|
||
|
|
||
|
This sub-package contains debug variant of the library, providing
|
||
|
run-time assertions and trace points. The typical way to access the
|
||
|
debug version is to set the environment variable LD_LIBRARY_PATH to
|
||
|
/usr/lib64/pmdk_debug.
|
||
|
|
||
|
%files -n libpmem-debug
|
||
|
%defattr(-,root,root,-)
|
||
|
%dir %{_libdir}/pmdk_debug
|
||
|
%{_libdir}/pmdk_debug/libpmem.so
|
||
|
%{_libdir}/pmdk_debug/libpmem.so.*
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libpmemblk
|
||
|
Summary: Persistent Memory Resident Array of Blocks library
|
||
|
Group: System Environment/Libraries
|
||
|
Requires: libpmem = %{version}-%{release}
|
||
|
%description -n libpmemblk
|
||
|
The libpmemblk implements a pmem-resident array of blocks, all the same
|
||
|
size, where a block is updated atomically with respect to power
|
||
|
failure or program interruption (no torn blocks).
|
||
|
|
||
|
%files -n libpmemblk
|
||
|
%defattr(-,root,root,-)
|
||
|
%{_libdir}/libpmemblk.so.*
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libpmemblk-devel
|
||
|
Summary: Development files for the Persistent Memory Resident Array of Blocks library
|
||
|
Group: Development/Libraries
|
||
|
Requires: libpmemblk = %{version}-%{release}
|
||
|
Requires: libpmem-devel = %{version}-%{release}
|
||
|
%description -n libpmemblk-devel
|
||
|
The libpmemblk implements a pmem-resident array of blocks, all the same
|
||
|
size, where a block is updated atomically with respect to power
|
||
|
failure or program interruption (no torn blocks).
|
||
|
|
||
|
For example, a program keeping a cache of fixed-size objects in pmem
|
||
|
might find this library useful. This library is provided for cases
|
||
|
requiring large arrays of objects at least 512 bytes each. Most
|
||
|
developers will find higher level libraries like libpmemobj to be
|
||
|
more generally useful.
|
||
|
|
||
|
%files -n libpmemblk-devel
|
||
|
%defattr(-,root,root,-)
|
||
|
%{_libdir}/libpmemblk.so
|
||
|
%{_libdir}/pkgconfig/libpmemblk.pc
|
||
|
%{_includedir}/libpmemblk.h
|
||
|
%{_mandir}/man7/libpmemblk.7.gz
|
||
|
%{_mandir}/man5/poolset.5.gz
|
||
|
%{_mandir}/man3/pmemblk_*.3.gz
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libpmemblk-debug
|
||
|
Summary: Debug variant of the Persistent Memory Resident Array of Blocks library
|
||
|
Group: Development/Libraries
|
||
|
Requires: libpmemblk = %{version}-%{release}
|
||
|
Requires: libpmem = %{version}-%{release}
|
||
|
%description -n libpmemblk-debug
|
||
|
The libpmemblk implements a pmem-resident array of blocks, all the same
|
||
|
size, where a block is updated atomically with respect to power
|
||
|
failure or program interruption (no torn blocks).
|
||
|
|
||
|
This sub-package contains debug variant of the library, providing
|
||
|
run-time assertions and trace points. The typical way to access the
|
||
|
debug version is to set the environment variable LD_LIBRARY_PATH to
|
||
|
/usr/lib64/pmdk_debug.
|
||
|
|
||
|
%files -n libpmemblk-debug
|
||
|
%defattr(-,root,root,-)
|
||
|
%dir %{_libdir}/pmdk_debug
|
||
|
%{_libdir}/pmdk_debug/libpmemblk.so
|
||
|
%{_libdir}/pmdk_debug/libpmemblk.so.*
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libpmemlog
|
||
|
Summary: Persistent Memory Resident Log File library
|
||
|
Group: System Environment/Libraries
|
||
|
Requires: libpmem = %{version}-%{release}
|
||
|
%description -n libpmemlog
|
||
|
The libpmemlog library provides a pmem-resident log file. This is
|
||
|
useful for programs like databases that append frequently to a log
|
||
|
file.
|
||
|
|
||
|
%files -n libpmemlog
|
||
|
%defattr(-,root,root,-)
|
||
|
%{_libdir}/libpmemlog.so.*
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libpmemlog-devel
|
||
|
Summary: Development files for the Persistent Memory Resident Log File library
|
||
|
Group: Development/Libraries
|
||
|
Requires: libpmemlog = %{version}-%{release}
|
||
|
Requires: libpmem-devel = %{version}-%{release}
|
||
|
%description -n libpmemlog-devel
|
||
|
The libpmemlog library provides a pmem-resident log file. This
|
||
|
library is provided for cases requiring an append-mostly file to
|
||
|
record variable length entries. Most developers will find higher
|
||
|
level libraries like libpmemobj to be more generally useful.
|
||
|
|
||
|
%files -n libpmemlog-devel
|
||
|
%defattr(-,root,root,-)
|
||
|
%{_libdir}/libpmemlog.so
|
||
|
%{_libdir}/pkgconfig/libpmemlog.pc
|
||
|
%{_includedir}/libpmemlog.h
|
||
|
%{_mandir}/man7/libpmemlog.7.gz
|
||
|
%{_mandir}/man5/poolset.5.gz
|
||
|
%{_mandir}/man3/pmemlog_*.3.gz
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libpmemlog-debug
|
||
|
Summary: Debug variant of the Persistent Memory Resident Log File library
|
||
|
Group: Development/Libraries
|
||
|
Requires: libpmemlog = %{version}-%{release}
|
||
|
Requires: libpmem = %{version}-%{release}
|
||
|
%description -n libpmemlog-debug
|
||
|
The libpmemlog library provides a pmem-resident log file. This
|
||
|
library is provided for cases requiring an append-mostly file to
|
||
|
record variable length entries. Most developers will find higher
|
||
|
level libraries like libpmemobj to be more generally useful.
|
||
|
|
||
|
This sub-package contains debug variant of the library, providing
|
||
|
run-time assertions and trace points. The typical way to access the
|
||
|
debug version is to set the environment variable LD_LIBRARY_PATH to
|
||
|
/usr/lib64/pmdk_debug.
|
||
|
|
||
|
%files -n libpmemlog-debug
|
||
|
%defattr(-,root,root,-)
|
||
|
%dir %{_libdir}/pmdk_debug
|
||
|
%{_libdir}/pmdk_debug/libpmemlog.so
|
||
|
%{_libdir}/pmdk_debug/libpmemlog.so.*
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libpmemobj
|
||
|
Summary: Persistent Memory Transactional Object Store library
|
||
|
Group: System Environment/Libraries
|
||
|
Requires: libpmem = %{version}-%{release}
|
||
|
%description -n libpmemobj
|
||
|
The libpmemobj library provides a transactional object store,
|
||
|
providing memory allocation, transactions, and general facilities for
|
||
|
persistent memory programming.
|
||
|
|
||
|
%files -n libpmemobj
|
||
|
%defattr(-,root,root,-)
|
||
|
%{_libdir}/libpmemobj.so.*
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libpmemobj-devel
|
||
|
Summary: Development files for the Persistent Memory Transactional Object Store library
|
||
|
Group: Development/Libraries
|
||
|
Requires: libpmemobj = %{version}-%{release}
|
||
|
Requires: libpmem-devel = %{version}-%{release}
|
||
|
%description -n libpmemobj-devel
|
||
|
The libpmemobj library provides a transactional object store,
|
||
|
providing memory allocation, transactions, and general facilities for
|
||
|
persistent memory programming. Developers new to persistent memory
|
||
|
probably want to start with this library.
|
||
|
|
||
|
%files -n libpmemobj-devel
|
||
|
%defattr(-,root,root,-)
|
||
|
%{_libdir}/libpmemobj.so
|
||
|
%{_libdir}/pkgconfig/libpmemobj.pc
|
||
|
%{_includedir}/libpmemobj.h
|
||
|
%{_includedir}/libpmemobj/*.h
|
||
|
%{_mandir}/man7/libpmemobj.7.gz
|
||
|
%{_mandir}/man5/poolset.5.gz
|
||
|
%{_mandir}/man3/pmemobj_*.3.gz
|
||
|
%{_mandir}/man3/pobj_*.3.gz
|
||
|
%{_mandir}/man3/oid_*.3.gz
|
||
|
%{_mandir}/man3/toid*.3.gz
|
||
|
%{_mandir}/man3/direct_*.3.gz
|
||
|
%{_mandir}/man3/d_r*.3.gz
|
||
|
%{_mandir}/man3/tx_*.3.gz
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libpmemobj-debug
|
||
|
Summary: Debug variant of the Persistent Memory Transactional Object Store library
|
||
|
Group: Development/Libraries
|
||
|
Requires: libpmemobj = %{version}-%{release}
|
||
|
Requires: libpmem = %{version}-%{release}
|
||
|
%description -n libpmemobj-debug
|
||
|
The libpmemobj library provides a transactional object store,
|
||
|
providing memory allocation, transactions, and general facilities for
|
||
|
persistent memory programming. Developers new to persistent memory
|
||
|
probably want to start with this library.
|
||
|
|
||
|
This sub-package contains debug variant of the library, providing
|
||
|
run-time assertions and trace points. The typical way to access the
|
||
|
debug version is to set the environment variable LD_LIBRARY_PATH to
|
||
|
/usr/lib64/pmdk_debug.
|
||
|
|
||
|
%files -n libpmemobj-debug
|
||
|
%defattr(-,root,root,-)
|
||
|
%dir %{_libdir}/pmdk_debug
|
||
|
%{_libdir}/pmdk_debug/libpmemobj.so
|
||
|
%{_libdir}/pmdk_debug/libpmemobj.so.*
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libvmem
|
||
|
Summary: Volatile Memory allocation library
|
||
|
Group: System Environment/Libraries
|
||
|
%description -n libvmem
|
||
|
The libvmem library turns a pool of persistent memory into a volatile
|
||
|
memory pool, similar to the system heap but kept separate and with
|
||
|
its own malloc-style API.
|
||
|
|
||
|
%files -n libvmem
|
||
|
%defattr(-,root,root,-)
|
||
|
%{_libdir}/libvmem.so.*
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libvmem-devel
|
||
|
Summary: Development files for the Volatile Memory allocation library
|
||
|
Group: Development/Libraries
|
||
|
Requires: libvmem = %{version}-%{release}
|
||
|
%description -n libvmem-devel
|
||
|
The libvmem library turns a pool of persistent memory into a volatile
|
||
|
memory pool, similar to the system heap but kept separate and with
|
||
|
its own malloc-style API.
|
||
|
|
||
|
This sub-package contains libraries and header files for developing
|
||
|
applications that want to make use of libvmem.
|
||
|
|
||
|
%files -n libvmem-devel
|
||
|
%defattr(-,root,root,-)
|
||
|
%{_libdir}/libvmem.so
|
||
|
%{_libdir}/pkgconfig/libvmem.pc
|
||
|
%{_includedir}/libvmem.h
|
||
|
%{_mandir}/man7/libvmem.7.gz
|
||
|
%{_mandir}/man3/vmem_*.3.gz
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libvmem-debug
|
||
|
Summary: Debug variant of the Volatile Memory allocation library
|
||
|
Group: Development/Libraries
|
||
|
Requires: libvmem = %{version}-%{release}
|
||
|
%description -n libvmem-debug
|
||
|
The libvmem library turns a pool of persistent memory into a volatile
|
||
|
memory pool, similar to the system heap but kept separate and with
|
||
|
its own malloc-style API.
|
||
|
|
||
|
This sub-package contains debug variant of the library, providing
|
||
|
run-time assertions and trace points. The typical way to access the
|
||
|
debug version is to set the environment variable LD_LIBRARY_PATH to
|
||
|
/usr/lib64/pmdk_debug.
|
||
|
|
||
|
%files -n libvmem-debug
|
||
|
%defattr(-,root,root,-)
|
||
|
%dir %{_libdir}/pmdk_debug
|
||
|
%{_libdir}/pmdk_debug/libvmem.so
|
||
|
%{_libdir}/pmdk_debug/libvmem.so.*
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libvmmalloc
|
||
|
Summary: Dynamic to Persistent Memory allocation translation library
|
||
|
Group: System Environment/Libraries
|
||
|
%description -n libvmmalloc
|
||
|
The libvmmalloc library transparently converts all the dynamic memory
|
||
|
allocations into persistent memory allocations. This allows the use
|
||
|
of persistent memory as volatile memory without modifying the target
|
||
|
application.
|
||
|
|
||
|
The typical usage of libvmmalloc is to load it via the LD_PRELOAD
|
||
|
environment variable.
|
||
|
|
||
|
%files -n libvmmalloc
|
||
|
%defattr(-,root,root,-)
|
||
|
%{_libdir}/libvmmalloc.so.*
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libvmmalloc-devel
|
||
|
Summary: Development files for the Dynamic-to-Persistent allocation library
|
||
|
Group: Development/Libraries
|
||
|
Requires: libvmmalloc = %{version}-%{release}
|
||
|
%description -n libvmmalloc-devel
|
||
|
The libvmmalloc library transparently converts all the dynamic memory
|
||
|
allocations into persistent memory allocations. This allows the use
|
||
|
of persistent memory as volatile memory without modifying the target
|
||
|
application.
|
||
|
|
||
|
This sub-package contains libraries and header files for developing
|
||
|
applications that want to specifically make use of libvmmalloc.
|
||
|
|
||
|
%files -n libvmmalloc-devel
|
||
|
%defattr(-,root,root,-)
|
||
|
%{_libdir}/libvmmalloc.so
|
||
|
%{_libdir}/pkgconfig/libvmmalloc.pc
|
||
|
%{_includedir}/libvmmalloc.h
|
||
|
%{_mandir}/man7/libvmmalloc.7.gz
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libvmmalloc-debug
|
||
|
Summary: Debug variant of the Dynamic-to-Persistent allocation library
|
||
|
Group: Development/Libraries
|
||
|
Requires: libvmmalloc = %{version}-%{release}
|
||
|
%description -n libvmmalloc-debug
|
||
|
The libvmmalloc library transparently converts all the dynamic memory
|
||
|
allocations into persistent memory allocations. This allows the use
|
||
|
of persistent memory as volatile memory without modifying the target
|
||
|
application.
|
||
|
|
||
|
This sub-package contains debug variant of the library, providing
|
||
|
run-time assertions and trace points. The typical way to access the
|
||
|
debug version is to set the environment variable LD_LIBRARY_PATH to
|
||
|
/usr/lib64/pmdk_debug.
|
||
|
|
||
|
%files -n libvmmalloc-debug
|
||
|
%defattr(-,root,root,-)
|
||
|
%dir %{_libdir}/pmdk_debug
|
||
|
%{_libdir}/pmdk_debug/libvmmalloc.so
|
||
|
%{_libdir}/pmdk_debug/libvmmalloc.so.*
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
# Specify a virtual Provide for libpmemobj++-static package, so the package
|
||
|
# usage can be tracked.
|
||
|
%package -n libpmemobj++-devel
|
||
|
Summary: C++ bindings for Persistent Memory Transactional Object Store library
|
||
|
Group: Development/Libraries
|
||
|
Provides: libpmemobj++-static = %{version}-%{release}
|
||
|
Requires: libpmemobj-devel = %{version}-%{release}
|
||
|
%description -n libpmemobj++-devel
|
||
|
The libpmemobj library provides a transactional object store,
|
||
|
providing memory allocation, transactions, and general facilities for
|
||
|
persistent memory programming.
|
||
|
|
||
|
This sub-package contains header files for libpmemobj C++ bindings.
|
||
|
|
||
|
%files -n libpmemobj++-devel
|
||
|
%defattr(-,root,root,-)
|
||
|
%{_libdir}/pkgconfig/libpmemobj++.pc
|
||
|
%{_includedir}/libpmemobj++/*.hpp
|
||
|
%{_includedir}/libpmemobj++/detail/*.hpp
|
||
|
%{_docdir}/libpmemobj++-devel/*
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libpmempool
|
||
|
Summary: Persistent Memory pool management library
|
||
|
Group: System Environment/Libraries
|
||
|
Requires: libpmem = %{version}-%{release}
|
||
|
%description -n libpmempool
|
||
|
The libpmempool library provides a set of utilities for off-line
|
||
|
administration, analysis, diagnostics and repair of persistent memory
|
||
|
pools created by libpmemlog, libpemblk and libpmemobj libraries.
|
||
|
|
||
|
%files -n libpmempool
|
||
|
%defattr(-,root,root,-)
|
||
|
%{_libdir}/libpmempool.so.*
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libpmempool-devel
|
||
|
Summary: Development files for Persistent Memory pool management library
|
||
|
Group: Development/Libraries
|
||
|
Requires: libpmempool = %{version}-%{release}
|
||
|
Requires: libpmem-devel = %{version}-%{release}
|
||
|
%description -n libpmempool-devel
|
||
|
The libpmempool library provides a set of utilities for off-line
|
||
|
administration, analysis, diagnostics and repair of persistent memory
|
||
|
pools created by libpmemlog, libpemblk and libpmemobj libraries.
|
||
|
|
||
|
%files -n libpmempool-devel
|
||
|
%defattr(-,root,root,-)
|
||
|
%{_libdir}/libpmempool.so
|
||
|
%{_libdir}/pkgconfig/libpmempool.pc
|
||
|
%{_includedir}/libpmempool.h
|
||
|
%{_mandir}/man7/libpmempool.7.gz
|
||
|
%{_mandir}/man5/poolset.5.gz
|
||
|
%{_mandir}/man3/pmempool_*.3.gz
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libpmempool-debug
|
||
|
Summary: Debug variant of the Persistent Memory pool management library
|
||
|
Group: Development/Libraries
|
||
|
Requires: libpmempool = %{version}-%{release}
|
||
|
Requires: libpmem = %{version}-%{release}
|
||
|
%description -n libpmempool-debug
|
||
|
The libpmempool library provides a set of utilities for off-line
|
||
|
administration, analysis, diagnostics and repair of persistent memory
|
||
|
pools created by libpmemlog, libpemblk and libpmemobj libraries.
|
||
|
|
||
|
This sub-package contains debug variant of the library, providing
|
||
|
run-time assertions and trace points. The typical way to access the
|
||
|
debug version is to set the environment variable LD_LIBRARY_PATH to
|
||
|
/usr/lib64/pmdk_debug.
|
||
|
|
||
|
%files -n libpmempool-debug
|
||
|
%defattr(-,root,root,-)
|
||
|
%dir %{_libdir}/pmdk_debug
|
||
|
%{_libdir}/pmdk_debug/libpmempool.so
|
||
|
%{_libdir}/pmdk_debug/libpmempool.so.*
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
%package -n librpmem
|
||
|
Summary: Remote Access to Persistent Memory library
|
||
|
Group: System Environment/Libraries
|
||
|
Requires: libfabric >= %{min_libfabric_ver}
|
||
|
Requires: openssh-clients
|
||
|
%description -n librpmem
|
||
|
The librpmem library provides low-level support for remote access
|
||
|
to persistent memory utilizing RDMA-capable NICs. It can be used
|
||
|
to replicate peristent memory regions over RDMA protocol.
|
||
|
|
||
|
%files -n librpmem
|
||
|
%defattr(-,root,root,-)
|
||
|
%{_libdir}/librpmem.so.*
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n librpmem-devel
|
||
|
Summary: Development files for the Remote Access to Persistent Memory library
|
||
|
Group: Development/Libraries
|
||
|
Requires: librpmem = %{version}-%{release}
|
||
|
%description -n librpmem-devel
|
||
|
The librpmem library provides low-level support for remote access
|
||
|
to persistent memory utilizing RDMA-capable NICs. It can be used
|
||
|
to replicate peristent memory regions over RDMA protocol.
|
||
|
|
||
|
This sub-package contains libraries and header files for developing
|
||
|
applications that want to specifically make use of librpmem.
|
||
|
|
||
|
%files -n librpmem-devel
|
||
|
%defattr(-,root,root,-)
|
||
|
%{_libdir}/librpmem.so
|
||
|
%{_libdir}/pkgconfig/librpmem.pc
|
||
|
%{_includedir}/librpmem.h
|
||
|
%{_mandir}/man7/librpmem.7.gz
|
||
|
%{_mandir}/man3/rpmem_*.3.gz
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n librpmem-debug
|
||
|
Summary: Debug variant of the Remote Access to Persistent Memory library
|
||
|
Group: Development/Libraries
|
||
|
Requires: librpmem = %{version}-%{release}
|
||
|
%description -n librpmem-debug
|
||
|
The librpmem library provides low-level support for remote access
|
||
|
to persistent memory utilizing RDMA-capable NICs. It can be used
|
||
|
to replicate peristent memory regions over RDMA protocol.
|
||
|
|
||
|
This sub-package contains debug variant of the library, providing
|
||
|
run-time assertions and trace points. The typical way to access the
|
||
|
debug version is to set the environment variable LD_LIBRARY_PATH to
|
||
|
/usr/lib64/pmdk_debug.
|
||
|
|
||
|
%files -n librpmem-debug
|
||
|
%defattr(-,root,root,-)
|
||
|
%dir %{_libdir}/pmdk_debug
|
||
|
%{_libdir}/pmdk_debug/librpmem.so
|
||
|
%{_libdir}/pmdk_debug/librpmem.so.*
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n rpmemd
|
||
|
Group: System Environment/Base
|
||
|
Summary: Target node process executed by librpmem
|
||
|
Requires: libpmem = %{version}-%{release}
|
||
|
Requires: libfabric >= %{min_libfabric_ver}
|
||
|
%description -n rpmemd
|
||
|
The rpmemd process is executed on a target node by librpmem library
|
||
|
and facilitates access to persistent memory over RDMA.
|
||
|
|
||
|
%files -n rpmemd
|
||
|
%{_bindir}/rpmemd
|
||
|
%{_mandir}/man1/rpmemd.1.gz
|
||
|
|
||
|
|
||
|
%package -n libpmemcto
|
||
|
Summary: Close-to-Open Persistence library
|
||
|
Group: System Environment/Libraries
|
||
|
Requires: libpmem = %{version}-%{release}
|
||
|
%description -n libpmemcto
|
||
|
The libpmemcto library is a Persistent Memory allocator with no overhead
|
||
|
imposed by run-time flushing or transactional updates.
|
||
|
|
||
|
%files -n libpmemcto
|
||
|
%defattr(-,root,root,-)
|
||
|
%{_libdir}/libpmemcto.so.*
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libpmemcto-devel
|
||
|
Summary: Development files for Close-to-Open Persistence library
|
||
|
Group: Development/Libraries
|
||
|
Requires: libpmemcto = %{version}-%{release}
|
||
|
%description -n libpmemcto-devel
|
||
|
The libpmemcto library is a Persistent Memory allocator with no overhead
|
||
|
imposed by run-time flushing or transactional updates.
|
||
|
|
||
|
%files -n libpmemcto-devel
|
||
|
%defattr(-,root,root,-)
|
||
|
%{_libdir}/libpmemcto.so
|
||
|
%{_libdir}/pkgconfig/libpmemcto.pc
|
||
|
%{_includedir}/libpmemcto.h
|
||
|
%{_mandir}/man7/libpmemcto.7.gz
|
||
|
%{_mandir}/man5/poolset.5.gz
|
||
|
%{_mandir}/man3/pmemcto*.3.gz
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n libpmemcto-debug
|
||
|
Summary: Debug variant of the Close-to-Open Persistence library
|
||
|
Group: Development/Libraries
|
||
|
Requires: libpmemcto = %{version}-%{release}
|
||
|
%description -n libpmemcto-debug
|
||
|
The libpmemcto library is a Persistent Memory allocator with no overhead
|
||
|
imposed by run-time flushing or transactional updates.
|
||
|
|
||
|
This sub-package contains debug variant of the library, providing
|
||
|
run-time assertions and trace points. The typical way to access the
|
||
|
debug version is to set the environment variable LD_LIBRARY_PATH to
|
||
|
/usr/lib64/pmdk_debug.
|
||
|
|
||
|
%files -n libpmemcto-debug
|
||
|
%defattr(-,root,root,-)
|
||
|
%dir %{_libdir}/pmdk_debug
|
||
|
%{_libdir}/pmdk_debug/libpmemcto.so
|
||
|
%{_libdir}/pmdk_debug/libpmemcto.so.*
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n pmempool
|
||
|
Summary: Utilities for Persistent Memory
|
||
|
Group: System Environment/Base
|
||
|
Requires: libpmem = %{version}-%{release}
|
||
|
Requires: libpmemlog = %{version}-%{release}
|
||
|
Requires: libpmemblk = %{version}-%{release}
|
||
|
Requires: libpmemobj = %{version}-%{release}
|
||
|
Requires: libpmempool = %{version}-%{release}
|
||
|
Requires: libpmemcto = %{version}-%{release}
|
||
|
Obsoletes: nvml-tools < %{version}-%{release}
|
||
|
%description -n pmempool
|
||
|
The pmempool is a standalone utility for management and off-line analysis
|
||
|
of Persistent Memory pools created by PMDK libraries. It provides a set
|
||
|
of utilities for administration and diagnostics of Persistent Memory pools.
|
||
|
The pmempool may be useful for troubleshooting by system administrators
|
||
|
and users of the applications based on PMDK libraries.
|
||
|
|
||
|
%files -n pmempool
|
||
|
%{_bindir}/pmempool
|
||
|
%{_mandir}/man1/pmempool.1.gz
|
||
|
%{_mandir}/man1/pmempool-*.1.gz
|
||
|
%config(noreplace) %{_sysconfdir}/bash_completion.d/pmempool.sh
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%package -n daxio
|
||
|
Summary: Perform I/O on Device DAX devices or zero a Device DAX device
|
||
|
Group: System Environment/Base
|
||
|
Requires: libpmem = %{version}-%{release}
|
||
|
%description -n daxio
|
||
|
The daxio utility performs I/O on Device DAX devices or zero
|
||
|
a Device DAX device. Since the standard I/O APIs (read/write) cannot be used
|
||
|
with Device DAX, data transfer is performed on a memory-mapped device.
|
||
|
The daxio may be used to dump Device DAX data to a file, restore data from
|
||
|
a backup copy, move/copy data to another device or to erase data from
|
||
|
a device.
|
||
|
|
||
|
%files -n daxio
|
||
|
%{_bindir}/daxio
|
||
|
%{_mandir}/man1/daxio.1.gz
|
||
|
%license LICENSE
|
||
|
%doc ChangeLog CONTRIBUTING.md README.md
|
||
|
|
||
|
|
||
|
%prep
|
||
|
%setup -q -n pmdk-%{version}
|
||
|
|
||
|
%build
|
||
|
# Currently, NVML makefiles do not allow to easily override CFLAGS,
|
||
|
# so the build flags are passed via EXTRA_CFLAGS. For debug build
|
||
|
# selected flags are overriden to disable compiler optimizations.
|
||
|
EXTRA_CFLAGS_RELEASE="%{optflags}" \
|
||
|
EXTRA_CFLAGS_DEBUG="%{optflags} -Wp,-U_FORTIFY_SOURCE -O0" \
|
||
|
EXTRA_CXXFLAGS="%{optflags}" \
|
||
|
NDCTL_ENABLE=y make %{?_smp_mflags}
|
||
|
|
||
|
|
||
|
# Override LIB_AR with empty string to skip installation of static libraries
|
||
|
%install
|
||
|
NDCTL_ENABLE=y make install DESTDIR=%{buildroot} \
|
||
|
LIB_AR= \
|
||
|
prefix=%{_prefix} \
|
||
|
libdir=%{_libdir} \
|
||
|
includedir=%{_includedir} \
|
||
|
mandir=%{_mandir} \
|
||
|
bindir=%{_bindir} \
|
||
|
sysconfdir=%{_sysconfdir} \
|
||
|
docdir=%{_docdir} \
|
||
|
CPP_DOC_DIR=libpmemobj++-devel
|
||
|
mkdir -p %{buildroot}%{_datadir}/pmdk
|
||
|
cp utils/pmdk.magic %{buildroot}%{_datadir}/pmdk/pmdk.magic
|
||
|
|
||
|
|
||
|
%post -n libpmem -p /sbin/ldconfig
|
||
|
%postun -n libpmem -p /sbin/ldconfig
|
||
|
%post -n libpmemblk -p /sbin/ldconfig
|
||
|
%postun -n libpmemblk -p /sbin/ldconfig
|
||
|
%post -n libpmemlog -p /sbin/ldconfig
|
||
|
%postun -n libpmemlog -p /sbin/ldconfig
|
||
|
%post -n libpmemobj -p /sbin/ldconfig
|
||
|
%postun -n libpmemobj -p /sbin/ldconfig
|
||
|
%post -n libvmem -p /sbin/ldconfig
|
||
|
%postun -n libvmem -p /sbin/ldconfig
|
||
|
%post -n libvmmalloc -p /sbin/ldconfig
|
||
|
%postun -n libvmmalloc -p /sbin/ldconfig
|
||
|
%post -n libpmempool -p /sbin/ldconfig
|
||
|
%postun -n libpmempool -p /sbin/ldconfig
|
||
|
%post -n libpmemcto -p /sbin/ldconfig
|
||
|
%postun -n libpmemcto -p /sbin/ldconfig
|
||
|
%post -n librpmem -p /sbin/ldconfig
|
||
|
%postun -n librpmem -p /sbin/ldconfig
|
||
|
|
||
|
%if 0%{?__debug_package} == 0
|
||
|
%debug_package
|
||
|
%endif
|
||
|
|
||
|
|
||
|
%changelog
|
||
|
* Wed Jun 27 2018 Jeff Moyer <jmoyer@redhat.com> - 1.4-3.el7
|
||
|
- Fix up rpmemd dependency on libfabric
|
||
|
- Resolves: rhbz#1595671
|
||
|
|
||
|
* Fri Jun 22 2018 Jeff Moyer <jmoyer@redhat.com> - 1.4-2.el7
|
||
|
- Make library version dependencies more strict (Jeff Moyer)
|
||
|
- Related: rhbz#1487676
|
||
|
|
||
|
* Fri Jun 08 2018 Jeff Moyer <jmoyer@redhat.com> - 1.4-1.el7
|
||
|
- rebase to upstream 1.4
|
||
|
- disable make check
|
||
|
- Resolves: rhbz#1487676
|
||
|
|
||
|
* Thu Oct 19 2017 Jeff Moyer <jmoyer@redhat.com> - 1.3-3.el7
|
||
|
- fix up issues found by the clang static checker
|
||
|
- Related: rhbz#1455216
|
||
|
|
||
|
* Wed Oct 18 2017 Jeff Moyer <jmoyer@redhat.com> - 1.3-2.el7
|
||
|
- pull in spec changes from upstream
|
||
|
- Related: rhbz#1455216
|
||
|
|
||
|
* Mon Oct 16 2017 Jeff Moyer <jmoyer@redhat.com> - 1.3-1.el7
|
||
|
- rebase to version 1.3
|
||
|
- Resolves: rhbz#1455216
|
||
|
|
||
|
* Wed Apr 05 2017 Jeff Moyer <jmoyer@redhat.com> - 1.2.1-4.el7
|
||
|
- Fix mapping type in pool params parse
|
||
|
- Resolves: bz#1436820
|
||
|
|
||
|
* Tue Mar 28 2017 Jeff Moyer <jmoyer@redhat.com> - 1.2.1-3.el7
|
||
|
- Add 'Requires: libpmem' lines for debug packages.
|
||
|
- Related: bz#1383467 bz#1382407
|
||
|
|
||
|
* Tue Mar 28 2017 Jeff Moyer <jmoyer@redhat.com> - 1.2.1-2.el7
|
||
|
- Actually apply stable update patches
|
||
|
- Related: bz#1383467 bz#1382407
|
||
|
|
||
|
* Tue Mar 28 2017 Jeff Moyer <jmoyer@redhat.com> - 1.2.1-1.el7
|
||
|
- Update to latest stable release
|
||
|
- Pull in pending stable patches for the test harness
|
||
|
- disable % check temporarily until all test issues are resolved
|
||
|
- Resolves: bz#1383467 bz#1382407
|
||
|
|
||
|
* Thu Jul 14 2016 Jeff Moyer <jmoyer@redhat.com> - 1.1-4.el7
|
||
|
- Add missing version dependencies between packages
|
||
|
- Resolves: bz#1274541
|
||
|
|
||
|
* Mon Jul 11 2016 Jeff Moyer <jmoyer@redhat.com> - 1.1-3.el7
|
||
|
- Initial import for RHEL 7
|
||
|
- Resolves: bz#1274541
|
||
|
|
||
|
* Mon Jul 11 2016 Krzysztof Czurylo <krzysztof.czurylo@intel.com> - 1.1-2
|
||
|
- Move debug variants of the libraries to -debug subpackages
|
||
|
|
||
|
* Sun Jun 26 2016 Krzysztof Czurylo <krzysztof.czurylo@intel.com> - 1.1-1
|
||
|
- NVML 1.1 release
|
||
|
- Update link to source tarball
|
||
|
- Add libpmempool subpackage
|
||
|
- Remove obsolete patches
|
||
|
|
||
|
* Wed Jun 01 2016 Dan Horák <dan[at]danny.cz> - 1.0-3
|
||
|
- switch to ExclusiveArch
|
||
|
|
||
|
* Sun May 29 2016 Krzysztof Czurylo <krzysztof.czurylo@intel.com> - 1.0-2
|
||
|
- Exclude PPC architecture
|
||
|
- Add bug numbers for excluded architectures
|
||
|
|
||
|
* Tue May 24 2016 Krzysztof Czurylo <krzysztof.czurylo@intel.com> - 1.0-1
|
||
|
- Initial RPM release
|