detect not having cksum, and prefer md5sum
authorRudolf Polzer <rpolzer@grawp.(none)>
Fri, 2 Apr 2010 18:43:07 +0000 (20:43 +0200)
committerRudolf Polzer <rpolzer@grawp.(none)>
Fri, 2 Apr 2010 18:43:07 +0000 (20:43 +0200)
all

diff --git a/all b/all
index d217389619a38a01c9d1d77b483ba53707a49df9..5e713f9c3d0164670f499badd7562e3230af5f25 100755 (executable)
--- a/all
+++ b/all
@@ -33,10 +33,23 @@ msg()
        echo "\e[1m$*\e[m"
 }
 
-self=`cksum "$SELF"`
+checksum()
+{
+       if [ -x /usr/bin/md5sum ]; then
+               /usr/bin/md5sum "$@"
+       elif [ -x /bin/md5sum ]; then
+               /bin/md5sum "$@"
+       elif [ -x /usr/bin/cksum ]; then
+               /usr/bin/cksum "$@"
+       else
+               echo "NOCHECKSUM"
+       fi
+}
+
+self=`checksum "$SELF"`
 checkself()
 {
-       self_new=`cksum "$SELF"`
+       self_new=`checksum "$SELF"`
        if [ x"$self" != x"$self_new" ]; then
                msg "./all has changed."
                if [ -z "$XONOTIC_FORBID_RERUN_ALL" ]; then
@@ -105,7 +118,7 @@ case "$cmd" in
                                                fi
                                                ;;
                                esac
-                               verbose git pull
+                               verbose git pull || true # errors if the branch is not tracking anything
                                cd "$d00"
                                checkself "$SELF" "$@"
                                cd "$d0/$d"