File libnvme.spec of Package failed_libnvme

Name:           libnvme
Version:        1.4
Release:        1.1
Summary:        Userspace NVMe library and tools

License:        BSD-3-Clause
URL:            https://github.com/linux-nvme/libnvme
Source0:        %{name}-%{version}.tar.gz

BuildRequires:  meson
BuildRequires:  ninja
BuildRequires:  python3-devel
BuildRequires:  swig
BuildRequires:  pkg-config
BuildRequires:  openssl-devel
BuildRequires:  libkeyutils-devel
BuildRequires:  json-c-devel
BuildRequires:  gcc
BuildRequires:  gcc-c++

Requires:       libcrypto.so.3
Requires:       libjson-c.so.5
Requires:       libkeyutils.so.1
Requires:       /sbin/ldconfig

%description
libnvme provides a user-space library and tools to work with NVMe devices
and NVMe over Fabrics.

%package -n libnvme1
Summary: Shared library for libnvme
Group:   System/Libraries
Requires: %{name} = %{version}-%{release}

%package -n libnvme-mi1
Summary: Shared library for libnvme MI (Management Interface)
Group:   System/Libraries
Requires: libnvme1 = %{version}-%{release}

%package -n libnvme-devel
Summary: Development files for libnvme
Group:   Development/Libraries
Requires: libnvme1 = %{version}-%{release}
Requires: pkgconfig(libnvme) = %{version}

%package -n python3-libnvme
Summary: Python 3 bindings for libnvme
Group:   Development/Languages
Requires: libnvme1

%package -n libnvme-debugsource
Summary: Debug sources for libnvme

%prep
%autosetup -n %{name}-%{version}

%build
%meson_build

%install
%meson_install

# Ensure python files are byte-compiled in build root (meson usually does this),
# but list the generated .pyc files explicitly so RPM packages them.
%files -n libnvme1
%defattr(-,root,root,-)
/usr/lib*/libnvme.so.*
/usr/lib*/libnvme.so

%files -n libnvme-mi1
%defattr(-,root,root,-)
/usr/lib*/libnvme-mi.so.*
/usr/lib*/libnvme-mi.so

%files -n libnvme-devel
%defattr(-,root,root,-)
/usr/include/libnvme.h
/usr/include/nvme/*
/usr/lib*/pkgconfig/libnvme.pc
/usr/lib*/pkgconfig/libnvme-mi.pc

%files -n python3-libnvme
%defattr(-,root,root,-)
%doc README.md
%license COPYING
# Python package directory (compiled .pyc files may be present)
# We list both the package files and any __pycache__ contents so RPM
# does not fail with "Installed but unpackaged file(s) found".
/usr/lib64/python3.13/site-packages/libnvme
/usr/lib64/python3.13/site-packages/libnvme/*
/usr/lib64/python3.13/site-packages/libnvme/__pycache__/*
/usr/lib64/python3.13/site-packages/libnvme/__pycache__/**

%files -n libnvme-debugsource
%defattr(-,root,root,-)
%doc debugsourcefiles.list

%changelog
* Wed Aug 13 2025 Packager <packager@example.org> - 1.4-1.1
- Include python __pycache__ files in python3-libnvme subpackage to avoid
  "Installed (but unpackaged) file(s) found" RPM build error.
openSUSE Build Service is sponsored by