39 lines
1.8 KiB
Plaintext
39 lines
1.8 KiB
Plaintext
# Defines %flavor and %kernel_source() as a side effect.
|
|
# Also defines %flavors_to_build for backward compatibility.
|
|
#
|
|
# Macro %variant should be defined in the spec file before %klp_module_package
|
|
# is used. The flavor value is guessed from the macro %variant. The value
|
|
# "default" is used as a fallback.
|
|
%klp_module_package(n:) \
|
|
%{expand:%( \
|
|
subpkg=/usr/lib/rpm/kernel-livepatch-subpackage \
|
|
variant=%{?variant}%{!?variant:"-default"} \
|
|
[ -z "$variant" ] && variant="-default" \
|
|
flavor=${variant#-} \
|
|
if [ -z "$flavor" ] || [ ! -d "/usr/src/linux-obj/%_target_cpu/$flavor" ]; then \
|
|
echo "Error: Kernel flavor '$flavor' derived from '%%variant' not found or empty at /usr/src/linux-obj/%_target_cpu/$flavor." >&2 \
|
|
echo "%%%%internal_kmp_error" \
|
|
exit 1 \
|
|
fi \
|
|
echo "%%define _suse_klp_module_subpackage(n:v:r:f:p:bc) %%{expand:%%(cd %_sourcedir; cat $subpkg; echo %%%%nil)}" \
|
|
krel=$(make -s -C /usr/src/linux-obj/%_target_cpu/$flavor kernelrelease) \
|
|
krpmver_flavor=${krel/.0-rc/.rc} \
|
|
krpmver=${krpmver_flavor%%-*} \
|
|
kprovide="kernel-$flavor-$krpmver" \
|
|
khashprovide=$(rpm -q --whatprovides "$kprovide" --provides | grep "^kernel-$flavor-srchash-") \
|
|
if [ -n "$khashprovide" ]; then \
|
|
kprovide="$khashprovide" \
|
|
fi \
|
|
echo "%%_suse_klp_module_subpackage -n %{-n*}%{!-n:kernel-livepatch} -r %{release} $krel $krpmver_flavor $kprovide" \
|
|
echo "%%global flavors_to_build ${flavor}" \
|
|
echo "%%global flavor ${flavor}"
|
|
echo "%%{expand:%%(test -z '%flavors_to_build' && echo %%%%internal_kmp_error)}" \
|
|
echo "%%global kernel_source() /usr/src/linux-obj/%_target_cpu/%%%%{1}" \
|
|
\
|
|
echo "%package -n %{-n*}%{!-n:kernel-livepatch}-kmp-_dummy_" \
|
|
echo "Version: %version" \
|
|
echo "Summary: %summary" \
|
|
echo "Group: %group" \
|
|
echo "%description -n %{-n*}%{!-n:kernel-livepatch}-kmp-_dummy_" \
|
|
)}
|