Mailing List Archive

[IA64] sparse-merge: check SPARSEDIR for modifications
# HG changeset patch
# User awilliam@xenbuild.aw
# Node ID 2e85df9329f8febd21895a16a7cde1ca3777d4ff
# Parent 03424ac6fd58106092784351c9b46d7185897d7a
[IA64] sparse-merge: check SPARSEDIR for modifications

Check SPARSEDIR for modifications before allowing the merge.
This removes the need for the FIXME. Additionally clean up
empty diffs at the end of the run.

Signed-off-by: Aron Griffis <aron@hp.com>
---
xen/arch/ia64/tools/sparse-merge | 21 +++++++++++++--------
1 files changed, 13 insertions(+), 8 deletions(-)

diff -r 03424ac6fd58 -r 2e85df9329f8 xen/arch/ia64/tools/sparse-merge
--- a/xen/arch/ia64/tools/sparse-merge Sun May 21 07:22:58 2006 -0600
+++ b/xen/arch/ia64/tools/sparse-merge Sun May 21 07:24:51 2006 -0600
@@ -14,16 +14,23 @@
: ${ARCH:=ia64}

SPARSEDIR=linux-2.6-xen-sparse
+WD=$PWD

if [ ! -d $SPARSEDIR ]; then
echo "Can't find $SPARSEDIR directory."
exit
fi

-WD=$PWD
-# We want the linux upsream tree to be at the OLDTAG to get the OLDTAG-Xen diff.
+# Check for modified files in the sparse tree before starting
+if hg st $SPARSEDIR | head | grep .; then
+ echo
+ echo "$SPARSEDIR contains modifications, please clean it up first"
+ exit
+fi
+
+# We want the linux upstream tree to be at the OLDTAG to get the OLDTAG-Xen diff.
# Save current revision to restore when done
-cd $LINUXPATH
+cd $LINUXPATH || exit 1
OLDCSET=$(hg parents | awk '/^changeset:/{print($2)}' | cut -f 1 -d :)
for t in $OLDTAG $NEWTAG; do
if ! hg tags | cut -f1 -d' ' | grep -Fx $t; then
@@ -36,6 +43,7 @@ for t in $OLDTAG $NEWTAG; do
fi
done
hg up -C $OLDTAG || exit 1
+
cd $WD
for i in $(hg manifest | awk '{print($3)}' | grep $SPARSEDIR | grep "$ARCH"); do
cd $WD
@@ -57,9 +65,6 @@ for i in $(hg manifest | awk '{print($3)

cd $DIRNAME
XENDIR=$(pwd)
-
- ### FIXME ###
- hg revert $FILENAME

ORIGPATH=$(echo $i | sed -e "s/^$SPARSEDIR/./")
APATH=$(echo $i | sed -e "s/^$SPARSEDIR/a/")
@@ -85,7 +90,7 @@ for i in $(hg manifest | awk '{print($3)
fi
TONEWREJ=$(wc -l ${FILENAME}.rej | \
awk '{print($1)}')
- hg revert $FILENAME
+ hg st $FILENAME | grep -q . && hg revert $FILENAME
rm -f ${FILENAME}.rej ${FILENAME}.orig
diff -uN $DIFFPATH $FILENAME | \
sed -e "s,^--- $DIFFPATH,--- $FILENAME," \
@@ -134,6 +139,6 @@ for i in $(hg manifest | awk '{print($3)
echo "SUCCESS (Upstream applied)"
fi
done
+find $SPARSEDIR -name \*.diff -empty | xargs -r rm -f
cd $LINUXPATH
hg up -C $OLDCSET
-cd $WD

_______________________________________________
Xen-changelog mailing list
Xen-changelog@lists.xensource.com
http://lists.xensource.com/xen-changelog