%package -n %{-n*}-kmp-%1 %define _this_kmp_kernel_version k%(echo %2 | sed -r 'y/-/_/') %define _this_kmp_version %{-v*}_%_this_kmp_kernel_version Version: %_this_kmp_version Release: %{-r*} %( for spec in {%_sourcedir,%_specdir}/%name.spec /dev/null; do [ -e $spec ] && break done awk ' BEGIN { tags["summary"] = "Summary: %summary" tags["group"] = "" } /^%%/ { in_pkg_header = \ ($0 ~ /^%%package[ \t]+KMP[ \t]*$/ || $0 ~ /^%%package[ \t]+-n[ \t]*%name-KMP[ \t]*$/) next } in_pkg_header && /^(Summary|Group):[ \t]*/ \ { tag = tolower($1) ; sub(/:$/, "", tag) tags[tag] = $0 } END { print tags["summary"] if ( tags["group"] != "" ) print tags["group"] } ' $spec ) Provides: %{-n*}-kmp = %_this_kmp_version Provides: %{-n*}-kmp = %{-v*} Provides: multiversion(kernel) Provides: %{-n*}-kmp-%1-%_this_kmp_kernel_version Requires: coreutils grep Requires(pre): suse-kernel-rpm-scriptlets Requires(post): suse-kernel-rpm-scriptlets Requires: suse-kernel-rpm-scriptlets Requires(preun): suse-kernel-rpm-scriptlets Requires(postun): suse-kernel-rpm-scriptlets %{-c:Requires: %{-n*}-ueficert} Enhances: kernel-%1 Supplements: packageand(kernel-%1:%{-n*}) Conflicts: %{-n*}-kmp-%1-%_this_kmp_kernel_version AutoReqProv: on %define run_if_exists run_if_exists() { \ if [ -x "$1" ] ; then \ "$@" \ else \ echo Cannot execute "$1" >&2 \ fi \ } \ run_if_exists %{-p:%{expand:%(cd %_sourcedir; cat %{-p*})}} %description -n %{-n*}-kmp-%1 %( for spec in {%_sourcedir,%_specdir}/%name.spec /dev/null; do [ -e $spec ] && break done awk ' /^%%/ { in_desc = \ ($0 ~ /^%%description[ \t]+KMP[ \t]*$/ || $0 ~ /^%%description[ \t]+-n[ \t]*%name-KMP[ \t]*$/) next } in_desc { print; good = 1 } END { exit(! good) } ' $spec || \ awk ' /^%%/ { in_desc = \ ($0 ~ /^%%description[ \t]*$/ || $0 ~ /^%%description[ \t]+-n[ \t]*%name[ \t]*$/) next } in_desc { print; good = 1 } END { exit(! good) } ' $spec ) %pre -n %{-n*}-kmp-%1 %{-b:KMP_NEEDS_MKINITRD=1; export KMP_NEEDS_MKINITRD} %run_if_exists /usr/lib/module-init-tools/kernel-scriptlets/kmp-pre --name "%{-n*}-kmp-%1" \ --version "%_this_kmp_version" --release "%{-r*}" --kernelrelease "%2" \ --flavor "%1" --usrmerged "%{usrmerged}" "$@" %post -n %{-n*}-kmp-%1 %{-b:KMP_NEEDS_MKINITRD=1; export KMP_NEEDS_MKINITRD} %run_if_exists /usr/lib/module-init-tools/kernel-scriptlets/kmp-post --name "%{-n*}-kmp-%1" \ --version "%_this_kmp_version" --release "%{-r*}" --kernelrelease "%2" \ --flavor "%1" --usrmerged "%{usrmerged}" "$@" %preun -n %{-n*}-kmp-%1 %{-b:KMP_NEEDS_MKINITRD=1; export KMP_NEEDS_MKINITRD} %run_if_exists /usr/lib/module-init-tools/kernel-scriptlets/kmp-preun --name "%{-n*}-kmp-%1" \ --version "%_this_kmp_version" --release "%{-r*}" --kernelrelease "%2" \ --flavor "%1" --usrmerged "%{usrmerged}" "$@" %postun -n %{-n*}-kmp-%1 %{-b:KMP_NEEDS_MKINITRD=1; export KMP_NEEDS_MKINITRD} %run_if_exists /usr/lib/module-init-tools/kernel-scriptlets/kmp-postun --name "%{-n*}-kmp-%1" \ --version "%_this_kmp_version" --release "%{-r*}" --kernelrelease "%2" \ --flavor "%1" --usrmerged "%{usrmerged}" "$@" %posttrans -n %{-n*}-kmp-%1 %{-b:KMP_NEEDS_MKINITRD=1; export KMP_NEEDS_MKINITRD} %run_if_exists /usr/lib/module-init-tools/kernel-scriptlets/kmp-posttrans --name "%{-n*}-kmp-%1" \ --version "%_this_kmp_version" --release "%{-r*}" --kernelrelease "%2" \ --flavor "%1" --usrmerged "%{usrmerged}" "$@" %files -n %{-n*}-kmp-%1 %{-f:%{expand:%(cd %_sourcedir; cat %{-f*})}} %{!-f:%defattr (-,root,root)} %{!-f:%{kernel_module_directory}/%2-%1}