r2483 - trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian
Simon Horman
horms@costa.debian.org
Mon, 14 Feb 2005 06:36:11 +0100
Author: horms
Date: 2005-02-14 06:36:09 +0100 (Mon, 14 Feb 2005)
New Revision: 2483
Modified:
trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/apply
trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/changelog
Log:
Updated apply script so it can handle point versions
Modified: trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/apply
===================================================================
--- trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/apply 2005-02-13 07:27:52 UTC (rev 2482)
+++ trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/apply 2005-02-14 05:36:09 UTC (rev 2483)
@@ -103,6 +103,39 @@
echo "--> $(basename $series) fully applied."
}
+bubble_sort ()
+{
+ SORTED=$@
+
+ SWAPED=1
+ while [ $SWAPED = 1 ]; do
+ X=0
+ A=""
+ SWAPED=0
+ NEW=""
+ for i in $SORTED; do
+ if [ -z "$A" ]; then
+ A="$i"
+ continue
+ fi
+ B="$i"
+
+ if dpkg --compare-versions $A "lt" $B; then
+ SWAPED=1
+ NEW="$NEW $B"
+ else
+ NEW="$NEW $A"
+ A="$B"
+ fi
+
+ X=$(($X + 1))
+ done
+ SORTED="$NEW $A"
+ done
+
+ echo $SORTED
+}
+
if ! [ -d Documentation ] || ! [ -d kernel ]; then
die 'Not in kernel top level directory. Exiting'
exit 1
@@ -135,10 +168,12 @@
target_up=${target%-*}
# Sanity checks
-if [ "$target_up" != "$upstream" ]; then
+if dpkg --compare-versions "$target_up" ne "$upstream"; then
die "Upstream $target_up doesn't match $upstream!"
# We don't have that version out yet!
-elif [ ! -n "$target_rev" ] || ( [ "$target_rev" != "$target" ] && [ $target_rev -gt $revision ] ); then
+elif [ ! -n "$target_rev" ] ||
+ ( dpkg --compare-versions "$target_rev" ne "$target" &&
+ dpkg --compare-versions "$target_rev" gt "$revision" ); then
year=$(($(date +%Y) + 1))
die "Can't patch to nonexistent revision $target_rev (wait until $year)"
fi
@@ -157,39 +192,42 @@
exit 0
fi
- for sver in $(ls -d $home/series/* | sort -r); do
+ for sver in $(bubble_sort $(ls -d $home/series/*) ); do
base=$(basename "$sver")
srev=${base#*-}
if [ -n "$srev" ]; then
- if [ $srev -le $current_rev ]; then
+ if dpkg --compare-versions $srev "<=" $current_rev; then
unpatch_series $sver
fi
else
die "Series doesn't have a revision!"
fi
done
-elif [ "$current_rev" = "$upstream" ] || [ $target_rev -gt $current_rev ]; then
+elif dpkg --compare-versions "$current_rev" eq "$upstream" ||
+ dpkg --compare-versions "$target_rev" gt "$current_rev"; then
for sver in $home/series/*; do
base=$(basename "$sver")
srev=${base#*-}
if [ -n "$srev" ]; then
- if [ $srev -gt $current_rev ] && [ $srev -le $target_rev ]; then
+ if dpkg --compare-versions "$srev" gt "$current_rev" &&
+ dpkg --compare-versions "$srev" le "$target_rev"; then
patch_series $sver
fi
else
die "Series doesn't have a revision!"
fi
done
-elif [ $target_rev -eq $current_rev ]; then
+elif dpkg --compare-versions "$target_rev" eq "$current_rev"; then
echo "Nothing to do, exiting."
exit 0
-elif [ $target_rev -lt $current_rev ]; then
- for sver in $(ls -d $home/series/* | sort -r); do
+elif dpkg --compare-versions "$target_rev" lt "$current_rev"; then
+ for sver in $(bubble_sort $(ls -d $home/series/*) ); do
base=$(basename "$sver")
srev=${base#*-}
if [ -n "$srev" ]; then
- # -gt because you don't want to unapply the target series
- if [ $srev -le $current_rev ] && [ $srev -gt $target_rev ]; then
+ # gt because you don't want to unapply the target series
+ if dpkg --compare-versions "$srev" le "$current_rev" &&
+ dpkg --compare-versions "$srev" gt "$target_rev"; then
unpatch_series $sver
fi
else
Modified: trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/changelog
===================================================================
--- trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/changelog 2005-02-13 07:27:52 UTC (rev 2482)
+++ trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/changelog 2005-02-14 05:36:09 UTC (rev 2483)
@@ -6,8 +6,11 @@
* Updated kernel-tree description from Martin F Krafft
(Simon Horman)
- -- Simon Horman <horms@debian.org> Fri, 11 Feb 2005 16:17:49 +0900
+ * Updated apply script so it can handle point versions
+ (Simon Horman)
+ -- Simon Horman <horms@debian.org> Mon, 14 Feb 2005 14:34:54 +0900
+
kernel-source-2.4.27 (2.4.27-8) unstable; urgency=high
* add dh_fixperms to the build targets to kernel-patch-debian-2.4.27