Merge pull request #3 from swetland/master

Some assorted tinkering.
diff --git a/cleanit b/cleanit
index 90f7a38..140f2f2 100755
--- a/cleanit
+++ b/cleanit
@@ -10,3 +10,4 @@
 rm -rf gmp-$GMPVER
 rm -rf mpc-$MPCVER
 rm -rf mpfr-$MPFRVER
+rm -f .extracted-stamp
diff --git a/doit b/doit
index 85d43c9..1941f02 100755
--- a/doit
+++ b/doit
@@ -4,6 +4,7 @@
 HOSTARCH=`uname -m`
 PARALLEL=-j8
 GNU_FTP=ftp://ftp.gnu.org/gnu
+FETCH=1
 
 if [ "x$ARCHES" = "x" ]; then
     echo need to specify architectures to build in the ARCHES environment variable
@@ -36,12 +37,24 @@
 . toolvers
 
 if [ "$FETCH" = "1" ]; then
-    wget -N $GNU_FTP/binutils/binutils-$BINVER.tar.bz2
-    wget -N $GNU_FTP/gcc/gcc-$GCCVER/gcc-$GCCVER.tar.bz2
-    wget -N $GNU_FTP/gdb/gdb-$GDBVER.tar.bz2
-    wget -N $GNU_FTP/mpfr/mpfr-$MPFRVER.tar.bz2
-    wget -N $GNU_FTP/mpc/mpc-$MPCVER.tar.gz
-    wget -N $GNU_FTP/gmp/gmp-$GMPVER.tar.bz2
+    if [ ! -f binutils-$BINVER.tar.bz2 ]; then
+        wget -N $GNU_FTP/binutils/binutils-$BINVER.tar.bz2
+    fi
+    if [ ! -f gcc-$GCCVER.tar.bz2 ]; then
+        wget -N $GNU_FTP/gcc/gcc-$GCCVER/gcc-$GCCVER.tar.bz2
+    fi
+    if [ ! -f gdb-$GDBVER.tar.bz2 ]; then
+        wget -N $GNU_FTP/gdb/gdb-$GDBVER.tar.bz2
+    fi
+    if [ ! -f mpfr-$MPFRVER.tar.bz2 ]; then
+        wget -N $GNU_FTP/mpfr/mpfr-$MPFRVER.tar.bz2
+    fi
+    if [ ! -f mpc-$MPCVER.tar.gz ]; then
+        wget -N $GNU_FTP/mpc/mpc-$MPCVER.tar.gz
+    fi
+    if [ ! -f gmp-$GMPVER.tar.bz2 ]; then
+        wget -N $GNU_FTP/gmp/gmp-$GMPVER.tar.bz2
+    fi
 fi
 
 function extract-tool()
@@ -71,12 +84,15 @@
     touch $TARGETDIR/.extracted || exit 1
 }
 
-extract-tool binutils $BINVER .bz2 binutils-patch.txt
-extract-tool gcc $GCCVER .bz2 gcc-patch.txt
-extract-tool gdb $GDBVER .bz2 gdb-patch.txt
-extract-tool gmp $GMPVER .bz2
-extract-tool mpc $MPCVER .gz
-extract-tool mpfr $MPFRVER .bz2
+if [ ! -f .extracted-stamp ]; then
+    extract-tool binutils $BINVER .bz2 binutils-patch.txt
+    extract-tool gcc $GCCVER .bz2 gcc-patch.txt
+    extract-tool gdb $GDBVER .bz2 gdb-patch.txt
+    extract-tool gmp $GMPVER .bz2
+    extract-tool mpc $MPCVER .gz
+    extract-tool mpfr $MPFRVER .bz2
+    touch .extracted-stamp
+fi
 
 # link the last three libs into gcc
 pushd gcc-$GCCVER
diff --git a/toolvers b/toolvers
index ab397ea..7c3089b 100644
--- a/toolvers
+++ b/toolvers
@@ -1,5 +1,5 @@
 GCCVER=4.8.2
-BINVER=2.23.2
+BINVER=2.24
 GDBVER=7.6.1
 GMPVER=5.1.3
 MPCVER=1.0.1