@@ -1,21 +1,50 @@
#!/bin/bash
+here=$(dirname $(readlink -f "$0"))
+
tag_prefix=`dpkg-parsechangelog -S Source | sed 's/linux-signed/Ubuntu/'`-
-if [ "$#" -ne 1 ]; then
- echo "Usage: $0 <linux-source-directory>" 1>&2
- exit 1
-fi
-master_dir="$1"
+commit=:
+no_update=false
+master_version=
+master_dir=
+while :
+do
+ if [ "$1" = "--commit" ]; then
+ shift
+ commit=
+
+ elif [ "$1" = "--no-update" ]; then
+ shift
+ no_update=true
+
+ elif [ "$1" = "--master-version" ]; then
+ master_version="$2"
+ shift 2
-# Work out the master kernel version.
-if [ -f "$master_dir/debian/debian.env" ]; then
- branch=`sed -ne 's/DEBIAN=//p' <"$master_dir/debian/debian.env"`
- changelog="-l$branch/changelog"
+ else
+ break
+ fi
+done
+
+if [ "$master_version" = "" ]; then
+ if [ "$#" -ne 1 ]; then
+ echo "Usage: $0 <linux-source-directory>" 1>&2
+ exit 1
+ fi
+ master_dir="$1"
+
+ # Work out the master kernel version.
+ if [ -f "$master_dir/debian/debian.env" ]; then
+ branch=`sed -ne 's/DEBIAN=//p' <"$master_dir/debian/debian.env"`
+ changelog="-l$branch/changelog"
+ else
+ changelog=""
+ fi
+ master_version=`(cd "$master_dir" && LC_ALL=C dpkg-parsechangelog -SVersion $changelog)`
else
- changelog=""
+ no_update=true
fi
-master_version=`(cd "$master_dir" && LC_ALL=C dpkg-parsechangelog -S Version $changelog)`
# Work out our current version taking into account closed sections.
here_series=$( LC_ALL=C dpkg-parsechangelog -S Distribution )
@@ -34,6 +63,22 @@ if [ "$count" != 1 ]; then
exit 1
fi
+update_file()
+{
+ local src="$1"
+ local dst="$2"
+ cp -p "$src" "$dst" || exit 1
+ if ! git diff --exit-code -- "$dst" >/dev/null; then
+ git commit -m "UBUNTU: $dst -- update from master" -s -- "$dst"
+ else
+ echo "$dst: no changes from master"
+ fi
+}
+
+# Update things from the primary package.
+if [ "$no_update" = 'false' ]; then
+ update_file "$master_dir/$branch/tracking-bug" "debian/tracking-bug"
+fi
#echo "here_version<$here_version>"
#echo "master_version<$master_version>"
@@ -81,5 +126,7 @@ dch --distribution "$here_series" --release ''
# Emit final closing commands.
echo "git commit -s -m 'UBUNTU: $tag_prefix$here_newversion' debian/changelog"
+$commit git commit -s -m "UBUNTU: $tag_prefix$here_newversion" debian/changelog
here_tagversion=$( echo "$tag_prefix$here_newversion" | sed -e 's/~/_/g' )
echo "git tag -s -m '$tag_prefix$here_newversion' '$here_tagversion'"
+$commit git tag -s -m "$tag_prefix$here_newversion" "$here_tagversion"
Signed-off-by: Andy Whitcroft <apw@canonical.com> --- update-version | 69 ++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 58 insertions(+), 11 deletions(-)