libnvme/libnvme.spec

124 lines
3.1 KiB
RPMSpec
Raw Normal View History

#
# spec file for package libnvme
#
# Copyright (c) 2023 SUSE LLC
#
# 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 sover 1
%bcond_without check
Name: libnvme
Accepting request 1114408 from home:wagi:branches:Base:System - Update to version 1.6: * docs: Fix Read-the-Docs configuration (deprecated config param) * mi-mctp: Fix free() in error path of mi_open_mctp * types: Use NVME_SET for status type mask to get status value * types: Define FLBAS MASK and SHIFT to use NVME_GET * types: Support Phy Rx Eye Opening Measurement Log * log: Add nvme root global variable to set for default output * types: Add support for the OAQD ID controller field * test: use non deprecated API * test: add tests for Get/Set Features functions * ioctl: implement nvme_set_features_lba_range() * ioctl: pass NSID in Get/Set Features commands that use it * ioctl: fix swapped parameters in nvme_set_features_host_id() * ioctl: export nvme_{g,s}et_features_iocs_profile() * ioctl: pass ENDGID in nvme_get_features_endurance_event_cfg() * ioctl: don't set SAVE bit on unsaveable features * ioctl: avoid sending uninitialized timestamp * ioctl: pass data for Get/Set Features commands * ioctl: set correct bits in Set Features commands * ioctl: correct feature IDs in Get/Set Features commands * tree: Add 2 new public functions to lookup existing controllers * ioctl: Add debugging feature to show command outputs * Fix incorrect article 'an' as 'a' to use for a description * linux: Added functions to enable faster telemetry data retrieval. Moved telemetry data area support detection into separate function. Added possibility to modify data transfer chunk size. Enable telemetry extraction up to specified data area. Removed some printf() and perror(). * test: account for discovery log page entry stripping * fabrics: unconditionally strip discovery entry strings * fabrics: only look for spaces in strchomp() * tree: Use early return instead of else statements * test: fix lookup test case * test: make all function static OBS-URL: https://build.opensuse.org/request/show/1114408 OBS-URL: https://build.opensuse.org/package/show/Base:System/libnvme?expand=0&rev=40
2023-09-29 18:19:18 +02:00
Version: 1.6
Release: 0
Summary: Linux-native nvme device management library
License: LGPL-2.1-or-later
URL: https://github.com/linux-nvme/libnvme/
Source0: libnvme-%{version}.tar.gz
BuildRequires: dbus-1-devel
BuildRequires: gcc
BuildRequires: gcc-c++
Accepting request 1076523 from home:wagi:branches:Base:System - Update to version 1.4: * fabrics: Filter out invalid UUIDs from DMI * fabrics: Add define for DMI sysinfo * Print out correct TREQ strings for discovery * tree: fix generic device open failure * fabrics: add configuration option 'tls_key' * fabrics: add configuration option 'keyring' * linux: add key helper functions * nvme: add 'nvme_insert_tls_key()' function * linux: add nvme_lookup_keyring() * python: Change python option from combo to feature * types: add opcode field to error log page (TP4113) * python: Add setter property for controller DHCHAP Key * python: Remove redundant host.set_key() method * build, meson: Print option summary * Python: Add support for setting/getting Host DHCHAP key * Python: Add hostnqn_from_file() and hostid_from_file() * types: Update position of elbatm in struct nvme_copy_range{_f1} * doc: fix kernel-doc-check warning * python, meson: Assert that deps are present for -Dpython=true * python: Reformat SWIG input file * python test: Check there is no SIGSEGV during garbage collection * python: Return PyObject* from __str__() instead of a static char[] * python: Fix segmentation fault during garbage collection * build: Enable test in muon minimal build * build: Streamline workflows with nvme-cli * mi: Add nvme_mi_admin_get_log_page * ioctl: Set file descriptor in nvme_get_log_page() * fix endians * fabrics: Do not ignore one char whitespace when string sanitizing OBS-URL: https://build.opensuse.org/request/show/1076523 OBS-URL: https://build.opensuse.org/package/show/Base:System/libnvme?expand=0&rev=33
2023-03-31 18:01:20 +02:00
BuildRequires: keyutils-devel
BuildRequires: libjson-c-devel
BuildRequires: meson
BuildRequires: openssl-devel
BuildRequires: python3-devel
BuildRequires: swig
%description
Provides library functions for accessing and managing NVMe devices on a Linux
system.
%package -n %{name}%{sover}
Summary: Linux-native nvme device management library
%description -n %{name}%{sover}
Provides library functions for accessing and managing NVMe devices on a Linux
system.
%package devel
Summary: Development files for %{name}
Requires: %{name}%{sover} = %{version}
Requires: %{name}-mi%{sover} = %{version}
%description devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
%package mi%{sover}
Summary: NVMe Managament Interface library for %{name}
%description mi%{sover}
Provides library functions for managing NVMe devices via the NVMe
Managament Interface.
%package -n python3-libnvme
Summary: Python binding for %{name}
%description -n python3-libnvme
Provides library functions for accessing and managing NVMe devices on a Linux
system.
Python binding part.
%prep
%autosetup -p1
%build
export KBUILD_BUILD_TIMESTAMP=@${SOURCE_DATE_EPOCH:-$(date +%s)}
Accepting request 1116605 from home:wagi:branches:Base:System - Use glob for python3-libnvme file listening. Workaround pycache_only problems for SLE/Leap builds. - Drop usused libuuid dependency - Update to version 1.6: (jsc#PED-3610 jsc#PED-4879 jsc#PED-5061) * tree: fix segfault in nvme_scan_subsystem() (bsc#1213993) * src/nvme/tree.c: make __nvme_scan_subsystem() returning bool (bsc#1213993) * nvme-tree: avoid warning in 'list-subsys' (bsc#1212598) * tree: Add getter for subsystem iopolicy (bsc#1124564) * tree: Scan all subsystems (bsc#1212598) (bsc#1213527 bsc#1213686) * ioctl: fix RAE bit on last Get Log Page command (bsc#1213618) * fabrics: check genctr after getting discovery entries (bsc#1213618) - Enabled unit test on s390x again (bsc#1207687, bsc#1207686) - Fix invalid string lenght calculcation for UUID (bsc#1209906) - Fix segmentation fault during garbage collection (bsc#1209905) - Always sanitize traddr and trsvcid entries (bsc#1207435) - Allow tracking unique discover controllers (bsc#1186689) - temporarily disable unit tests on s390x (bsc#1207687, bsc#1207686) * tree: Factor lookup code for controller (bsc#1199503) * fabrics: Consider config from file when adding new controller (bsc#1199503) * fabrics: Lower log level in __nvmf_add_ctrl (bsc#1199994 bsc#1199503) * fabrics: Remove double connection error logging (bsc#1199994 bsc#1199503) * Fixes for controller authentication (bsc#1201501 bsc#1201700 bsc#1201701 bsc#1201717) OBS-URL: https://build.opensuse.org/request/show/1116605 OBS-URL: https://build.opensuse.org/package/show/Base:System/libnvme?expand=0&rev=45
2023-10-10 09:41:36 +02:00
%meson \
-Ddocs=man \
%{?_with_docs_build:-Ddocs-build=true} \
-Dversion-tag=%{version} \
-Dlibdbus=enabled
%meson_build
%if %{with check}
%check
%meson_test
%endif
%install
%meson_install
%post -n %{name}%{sover} -p /sbin/ldconfig
%postun -n %{name}%{sover} -p /sbin/ldconfig
%post -n %{name}-mi%{sover} -p /sbin/ldconfig
%postun -n %{name}-mi%{sover} -p /sbin/ldconfig
%files -n %{name}%{sover}
%license COPYING
%doc README.md
%{_libdir}/%{name}.so.%{sover}*
%files devel
%doc README.md
%{_includedir}/*
%{_libdir}/%{name}*.so
%{_libdir}/pkgconfig/%{name}.pc
%{_libdir}/pkgconfig/%{name}-mi.pc
%{_mandir}/*/*.gz
%files -n %{name}-mi%{sover}
%license COPYING
%doc README.md
%{_libdir}/%{name}-mi.so.%{sover}*
%files -n python3-libnvme
Accepting request 1116605 from home:wagi:branches:Base:System - Use glob for python3-libnvme file listening. Workaround pycache_only problems for SLE/Leap builds. - Drop usused libuuid dependency - Update to version 1.6: (jsc#PED-3610 jsc#PED-4879 jsc#PED-5061) * tree: fix segfault in nvme_scan_subsystem() (bsc#1213993) * src/nvme/tree.c: make __nvme_scan_subsystem() returning bool (bsc#1213993) * nvme-tree: avoid warning in 'list-subsys' (bsc#1212598) * tree: Add getter for subsystem iopolicy (bsc#1124564) * tree: Scan all subsystems (bsc#1212598) (bsc#1213527 bsc#1213686) * ioctl: fix RAE bit on last Get Log Page command (bsc#1213618) * fabrics: check genctr after getting discovery entries (bsc#1213618) - Enabled unit test on s390x again (bsc#1207687, bsc#1207686) - Fix invalid string lenght calculcation for UUID (bsc#1209906) - Fix segmentation fault during garbage collection (bsc#1209905) - Always sanitize traddr and trsvcid entries (bsc#1207435) - Allow tracking unique discover controllers (bsc#1186689) - temporarily disable unit tests on s390x (bsc#1207687, bsc#1207686) * tree: Factor lookup code for controller (bsc#1199503) * fabrics: Consider config from file when adding new controller (bsc#1199503) * fabrics: Lower log level in __nvmf_add_ctrl (bsc#1199994 bsc#1199503) * fabrics: Remove double connection error logging (bsc#1199994 bsc#1199503) * Fixes for controller authentication (bsc#1201501 bsc#1201700 bsc#1201701 bsc#1201717) OBS-URL: https://build.opensuse.org/request/show/1116605 OBS-URL: https://build.opensuse.org/package/show/Base:System/libnvme?expand=0&rev=45
2023-10-10 09:41:36 +02:00
%{python3_sitearch}/*
%changelog