mirror of
https://abf.rosa.ru/djam/kernel-5.15.git
synced 2025-02-23 18:42:55 +00:00
51 lines
1.9 KiB
Text
51 lines
1.9 KiB
Text
# ksobirator RPM macros
|
|
# For now they are bundled in the kernel package,
|
|
# in the future, after testing, ksobirator will become a separate package
|
|
# which will be BuildRequired from kernel packages
|
|
|
|
# TODO: define it somewhere else...
|
|
# TODO: avoid depending from %%flavour, %%buildrel etc ?!
|
|
# TODO: fail if needed macros are not defined
|
|
%ksob_kernel %{flavour}-%{buildrel}
|
|
|
|
# %%ksob_mk_module_pkg -n module name -s module section [ -r additional requires for this package ]
|
|
# Examples:
|
|
# %%ksob_mk_module_pkg -n shredder -s extra -r /usr/bin/wipe
|
|
# %%ksob_mk_module_pkg -n shredder -s extra
|
|
%ksob_mk_module_pkg(n:s:r:) \
|
|
\
|
|
%define module_name %{-n:%{-n*}}%{!-n:%{error:Module name not defined!}} \
|
|
%define pkg_main kernel-module-%{module_name}-%{ksob_kernel} \
|
|
%define pkg_latest kernel-module-%{module_name}-%{flavour}-%{kernelversion}.%{patchlevel}-latest \
|
|
%define module_section %{-s:%{-s*}}%{!-s:%{error:Module section (e.g. extra) not defined!}} \
|
|
\
|
|
%{expand: \
|
|
%package -n %{pkg_main} \
|
|
# TODO: convert long kernel name to one macro \
|
|
Summary: Binary module %{module_name} for kernel-%{ksob_kernel} \
|
|
Group: System/Kernel and hardware \
|
|
Version: 1 \
|
|
Release: 1 \
|
|
%{-r:Requires: %{-r*}} \
|
|
\
|
|
%description -n %{pkg_main} \
|
|
Binary module %{module_name} for kernel-%{ksob_kernel} \
|
|
\
|
|
%files -n %{pkg_main} \
|
|
# XXX TODO: how to %%exclude these files from the main package automatically? \
|
|
%{_modulesdir}/%{kver_full}/kernel/%{module_section}/%{module_name}.ko%{kmod_suffix} \
|
|
\
|
|
%package -n %{pkg_latest} \
|
|
Summary: Meta package for the latest binary module %{module_name} for the latest kernel-%{flavour} in %{kernelversion}.%{patchlevel} series \
|
|
Group: System/Kernel and hardware \
|
|
Version: %{kversion} \
|
|
Release: %{fullrpmrel} \
|
|
Requires: %{pkg_main} \
|
|
\
|
|
%description -n %{pkg_latest} \
|
|
Meta package for the latest binary module %{module_name} for the latest \
|
|
kernel-%{flavour} in %{kernelversion}.%{patchlevel} series \
|
|
# No files \
|
|
%files -n %{pkg_latest} \
|
|
%{nil} \
|
|
}
|