kmod/kmod.spec

203 lines
5.9 KiB
RPMSpec

Name: kmod
Version: 27
Release: 12
Summary: Kernel module management
# GPLv2+ is used by programs, LGPLv2+ is used for libraries.
License: GPLv2+ and LGPLv2+
URL: http://git.kernel.org/?p=utils/kernel/kmod/kmod.git;a=summary
Source0: https://www.kernel.org/pub/linux/utils/kernel/kmod/%{name}-%{version}.tar.xz
Source1: weak-modules
Source2: depmod.conf.dist
Patch6000: backport-libkmod-fix-return-error-when-opening-index.patch
Patch6001: backport-libkmod-allow-modules.alias.builtin-to-be-optional.patch
Patch6002: backport-depmod-do-not-output-.bin-to-stdout.patch
Patch6003: backport-libkmod-kmod_builtin_get_modinfo-free-modinfo-on-err.patch
Patch6004: backport-depmod-output_builtin_alias_bin-free-idx-on-error-pa.patch
Patch6005: backport-libkmod-kmod_log_null-qualify-ctx-argument-as-const.patch
Patch6006: backprot-libkmod-config-fix-a-memory-leak-when-kmod_list_appe.patch
Patch6007: backport-libkmod-Set-builtin-to-no-when-module-is-created-fro.patch
Patch9000: bugfix-kmod-20-8-depmod-Don-t-unlinkat-orig-depfile-and-add-fsync.patch
BuildRequires: gcc chrpath zlib-devel xz-devel libxslt openssl-devel
Provides: module-init-tools = 4.0-1
Provides: /sbin/modprobe
%description
The kmod package provides several commands to manage the kernel modules,
such as insmod to load and rmmod to unload the modules.
%package libs
Summary: Libraries to handle kernel module loading and unloading
License: LGPLv2+
%description libs
The kmod-libs package provides runtime libraries for any application that
wishes to load or unload Linux kernel modules from the running system.
%package devel
Summary: Header files for kmod development
Requires: %{name} = %{version}-%{release}
%description devel
The kmod-devel package provides header files used for loading or unloading
kernel modules.
%package -n python3-kmod
Summary: Python3 bindings for kmod/libkmod.
BuildRequires: python3 python3-devel python3-Cython kmod-devel kmod-libs
Requires: python3
%description -n python3-kmod
python3-kmod is a Python3 wrapper module for libkmod, exposing common
module operations: listing installed modules, modprobe, and rmmod.
%package help
Summary: Documents and man pages for the kmod
Requires: man info
%description help
The kmod-help package provides several documents and the man pages to help
developers to understand the kmod.
%prep
%autosetup -n %{name}-%{version} -p1
%build
%configure --with-openssl --with-zlib --with-xz --enable-python
%make_build
%install
%make_install
rm -f %{buildroot}%{python3_sitearch}/kmod/*.la
pushd $RPM_BUILD_ROOT/%{_mandir}/man5
ln -s modprobe.d.5.gz modprobe.conf.5.gz
popd
mkdir -p $RPM_BUILD_ROOT%{_sbindir}
for i in $RPM_BUILD_ROOT%{_sbindir}/modprobe $RPM_BUILD_ROOT%{_sbindir}/modinfo $RPM_BUILD_ROOT%{_sbindir}/insmod \
$RPM_BUILD_ROOT%{_sbindir}/rmmod $RPM_BUILD_ROOT%{_sbindir}/depmod $RPM_BUILD_ROOT%{_sbindir}/lsmod
do
ln -sf ../bin/kmod $i
done
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/depmod.d
mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib/modprobe.d
mkdir -p $RPM_BUILD_ROOT/sbin
install -m 755 %{SOURCE1} $RPM_BUILD_ROOT%{_sbindir}/weak-modules
install -m 0644 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/depmod.d/dist.conf
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%exclude %{_libdir}/*.la
%dir %{_sysconfdir}/*.d
%dir %{_prefix}/lib/modprobe.d
%{_bindir}/kmod
%{_sbindir}/*
%{_datadir}/bash-completion/
%{_sysconfdir}/depmod.d/dist.conf
%files libs
%{!?_licensedir:%global license %%doc}
%license COPYING
%{_libdir}/libkmod.so.*
%files devel
%{_includedir}/libkmod.h
%{_libdir}/pkgconfig/libkmod.pc
%{_libdir}/libkmod.so
%files -n python3-kmod
%{python3_sitearch}/kmod/
%files help
%attr(0644,root,root) %{_mandir}/man5/*.5*
%attr(0644,root,root) %{_mandir}/man8/*.8*
%doc TODO NEWS README
%changelog
* Wed Dec 18 2024 wangxiao <wangxiao184@h-partners.com> - 27-12
- libkmod: Set builtin to no when module is created from path
* Thu Jul 21 2022 liwenchong <liwenchong@kylinos.cn> - 27-11
- fix memeory leak
* Fri Aug 13 2021 YangYanchao <yangyanchao6@huawei.com> - 27-10
- weak-modules: fix a bug when using weak_modules without '$'
* Fri Aug 13 2021 YangYanchao <yangyanchao6@huawei.com> - 27-9
- weak-modules: fix a bug when /lib/modules/`uname -r`/weak-update does not exist
* Wed Apr 7 2021 YangYanchao <yangyanchao6@huawei.com> - 27-8
- backport weak-modules script from fedora
* Thu Jan 14 2021 xinghe <xinghe1@huawei.com> - 27-7
- fix memory leak in kmodinfo
* Fri Jan 8 2020 xinghe <xinghe1@huawei.com> - 27-6
- fix compilation warning
* Thu Jan 14 2021 xinghe <xinghe1@huawei.com> - 27-5
- fix memory leak in modinfo and build warning
* Fri Aug 21 2020 WangShuo <wangshuo_1994@foxmail.com> - 27-4
- unnecessary message
* Tue Aug 18 2020 chenyaqiang <chenyaqiang@huawei.com> - 27-3
- rebuild for package build
* Tue May 5 2020 Wang Shuo<wangshuo47@huawei.com> - 27-2
- Type:bugfix
- ID:NA
- SUG:NA
- DESC: backport patch to deal with lspci -v error report
* Fri Apr 17 2020 Wang Shuo<wangshuo47@huawei.com> - 27-1
- Type:enhancement
- ID:NA
- SUG:NA
- DESC: update kmod to 27
* Wed Feb 28 2020 Wang Shuo<wangshuo47@huawei.com> - 25-6
- Type:enhancement
- ID:NA
- SUG:NA
- DESC: move libs files to libs package
* Sat Apr 6 2019 luochunsheng<luochunsheng@huawei.com> - 25-5
- Type:enhancement
- ID:NA
- SUG:NA
* Fri Mar 22 2019 kangenbo<kangenbo@huawei.com> - 25-4
- Type:enhancement
- ID:NA
- SUG:NA
- DESC: backport patches from communities
* Tue Mar 19 2019 hexiaowen<hexiaowen@huawei.com> - 25-3
- Type:enhancement
- ID:NA
- SUG:NA
- DESC: add /etc/depmod.d/dist.conf
* Fri Jan 25 2019 Xiaoqi Guo<guoxiaoqi2@huawei.com> - 25-2
- Type:bugfix
- ID:NA
- SUG:NA
- DESC:add patches, include
bugfix-kmod-20-8-depmod-Don-t-unlinkat-orig-depfile-and-add-fsync.patch
* Thu Jan 24 2019 openEuler Buildteam <buildteam@openeuler.org> - 25-1
- Package init