From c9b5bc49231f0fff1811106281a899e962f73030 Mon Sep 17 00:00:00 2001 From: Michal Suchanek Date: May 05 2023 11:38:28 +0000 Subject: kernel-spec-macros: Fix up obsolete_rebuilds_subpackage to generate obsoletes correctly (boo#1172073 bsc#1191731). rpm only supports full length release, no provides Signed-off-by: Michal Suchanek --- diff --git a/rpm/kernel-spec-macros b/rpm/kernel-spec-macros index 3f087e7..d4c4dab 100644 --- a/rpm/kernel-spec-macros +++ b/rpm/kernel-spec-macros @@ -30,15 +30,17 @@ %define obsolete_rebuilds() %( \ set -- $(echo %release | sed -rn 's/(.*\\.)([0-9]+)($|\\.[^.]*[^.0-9][^.]*$)/\\1 \\2 \\3/p') \ if test -n "$2" && test "$2" -gt 99; then echo "warning: Rebuild counter too high in %release" >&2; exit 0; fi \ - seq 1 $(($2-1)) | sed "s/.*/Obsoletes: %1 = %version-$1&$3/" \ + for i in $(seq 1 $(($2-1))) ; do echo "Obsoletes: %1 = %version-$1$i$3" ; done \ ) -%define obsolete_rebuilds_subpackage() %( %{verbose:set -x} \ +%define obsolete_rebuilds_subpackage() %( \ set -- $(echo %release | sed -rn 's/(.*\\.)([0-9]+)($|\\.[^.]*[^.0-9][^.]*$)/\\1 \\2 \\3/p') \ if test -n "$2" && test "$2" -gt 99; then echo "warning: Rebuild counter too high in %release" >&2; exit 0; fi \ - seq 1 $(($2-1)) | sed "s/.*/Obsoletes: %1 = %version-$1&$3/" \ + cnt=$2 set -- $(echo %source_rel | sed -rn 's/(.*\\.)([0-9]+)($|\\.[^.]*[^.0-9][^.]*$)/\\1 \\2 \\3/p') \ - if test -n "$2" && test "$2" -gt 99; then echo "warning: Upload counter too high in %release" >&2; exit 0; fi \ - seq 1 $(($2-1)) | sed "s/.*/Obsoletes: %1 = %version-$1&$3/" \ + if test -n "$2" && test "$2" -gt 99; then echo "warning: Upload counter too high in %source_rel" >&2; exit 0; fi \ + for i in $(seq 1 $2) ; do for j in $(seq 1 $cnt) ; do [ $i = $2 ] && [ $j = $cnt ] && break \ + echo "Obsoletes: %1 = %version-$1$i.$j$3" \ + done ; done \ ) %endif