kernel-6.1/macros.ksobirator
Mikhail Novosyolov 01757d8892 add more realteks
2022-10-18 20:06:06 +03:00

68 lines
2.5 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 %{kernelversion}.%{patchlevel}-%{flavour}
# %%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 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 \
\
%{-r:Requires: %{-r*}} \
Requires: %{name}%{_isa} = %{EVRD} \
Provides: installonlypkg(kernel-module) = %{EVRD}.module.%{module_name} \
\
%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} \
\
%{nil} \
}
# %%ksob_mk_modules_pkg -s module section [ -r additional requires for this package ]
# Examples:
# %%ksob_mk_modules_pkg -n rtw89 -s net/wireless/realtek/rtw89p -r rtw89-firmware
# %%ksob_mk_modules_pkg -n rtw89 -s net/wireless/realtek/rtw89p
%ksob_mk_modules_pkg(n:s:r:) \
\
%define module_name %{-n:%{-n*}}%{!-n:%{error:Module name not defined!}} \
%define pkg_main kernel-modules-%{module_name}-%{ksob_kernel} \
%define module_section %{-s:%{-s*}}%{!-s:%{error:Module section (e.g. extra/foo) not defined!}} \
\
%{expand: \
%package -n %{pkg_main} \
Summary: Binary modules %{module_name} for kernel-%{ksob_kernel} \
Group: System/Kernel and hardware \
\
%{-r:Requires: %{-r*}} \
Requires: %{name}%{_isa} = %{EVRD} \
Provides: installonlypkg(kernel-module) = %{EVRD}.module.%{module_name} \
\
%description -n %{pkg_main} \
Binary module %{module_name} for kernel-%{ksob_kernel} \
\
%files -n %{pkg_main} \
%dir %{_modulesdir}/%{kver_full}/kernel/%{module_section}
%{_modulesdir}/%{kver_full}/kernel/%{module_section}/*.ko%{kmod_suffix} \
\
%{nil} \
}