libnvme/libnvme.spec

125 lines
3.2 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: libuuid-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)}
%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 1033045 from home:wagi:branches:Base:System - Update to version 1.2: * Add more details for return code of MI admin cmds * Parse dhchap_host_key on controller level * Update json config schema for missing dhchap host key * fabrics: Add new TP8010 definitions * fabrics: Add nvmf_get_discovery_wargs() * fabrics: Duplicate strings when merging configs * fabrics: Filter out empty strings in add_argument() * fabrics: Use fallthrough statement * ioctl: Set log page offset for nvme_get_log_telemetry_host * json-schema: add dhchap_key details to host section * json: Enforce correctly formatted JSON config files * json: Verify JSON config file starts with an array * mi: Add Get Log Page helpers * mi: Add Identify function for secondary controller list * mi: Add Identify helper for ns-descs and primary-ctrl-caps * mi: Add firmware download and commit commands * mi: Add identify helper for nsid-capable Controller List * mi: Add identify helpers for namespace lists * mi: Add identify helpers for namespaces * mi: Allow Admin-message sized More Processing Required responses * mi: Distinguish MI status from NVMe (CDW3) status * mi: Fix C++ compiler errors * mi: Implement Format NVM command * mi: Implement Get & Set Features Admin commands * mi: Implement NS attach command and helpers * mi: Implement Namespace Management command and create/delete helpers * mi: Implement Sanitize command * mi: Init ctrl_id within xfer * mi: Introduce a helper for response status, unify values with ioctls * mi: Set log page offset for nvme_get_log_telemetry_host * mi: add nvme_mi_status_to_string() * mi: fix a memory leak in nvme_mi_open_mctp() * mi: fix get_log_page chunked offset check * nvme-tree: avoid segfault if auth keys are unavailable * python: Use nvmf_get_discovery_wargs() * tree: rename controller 'dhchap_key' to 'dhchap_ctrl_key' * types: Move enum nvme_data_tfr to types * util: Add LINE_MAX define * util: Add get feature length 2 API to support direction parameter * util: Add simple UUID type * util: Do not expose fallthrough defines - Make man page build conditiional. Install man page location has been fixed upstream. - Mark the Python directory own by the libnvme3-python package OBS-URL: https://build.opensuse.org/request/show/1033045 OBS-URL: https://build.opensuse.org/package/show/Base:System/libnvme?expand=0&rev=29
2022-11-03 12:32:15 +01:00
%dir %{python3_sitearch}/libnvme
%{python3_sitearch}/libnvme/*.so
%{python3_sitearch}/libnvme/__init__.py
%{python3_sitearch}/libnvme/nvme.py
%pycache_only %{python3_sitearch}/libnvme/__pycache__
%changelog