[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [IA64] sparse-merge: check SPARSEDIR for modifications



# HG changeset patch
# User awilliam@xxxxxxxxxxx
# 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@xxxxxx>
---
 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@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.