+export PATH="${PREFIX}/bin:${PATH}"
+
+SUMMON_DIR=$(pwd)
+SOURCES=${SUMMON_DIR}/sources
+STAMPS=${SUMMON_DIR}/stamps
+
+##############################################################################
+# OS and Tooldetection section
+# Detects which tools to use
+##############################################################################
+
+case "$(uname)" in
+ Linux)
+ echo "Found Linux OS."
+ TAR=tar
+ ;;
+ Darwin)
+ echo "Found Darwin OS."
+
+ # darwin dependencies
+ DARWINDEPS="gnutar mpfr libmpc gmp"
+ DARWINDEPSCOUNT=4
+
+ GCCFLAGS="${GCCFLAGS} \
+ --with-gmp=${DARWIN_OPT_PATH} \
+ --with-mpfr=${DARWIN_OPT_PATH} \
+ --with-mpc=${DARWIN_OPT_PATH} \
+ -with-libiconv-prefix=${DARWIN_OPT_PATH}"
+
+ echo "Attempting to automatically check if common dependencies are installed on your system"
+ if ! which port > /dev/null; then
+ echo "MacPorts not installed."
+ else
+ pc=`port installed ${DARWINDEPS} | wc -l | tr -d " "`
+ if [ ${pc} -lt ${DARWINDEPSCOUNT} ];
+ then
+ echo "Something is missing, do you want to install everything needed?"
+ echo "(You need super user rights to do this.)"
+
+ if [ read = "y" || read = "yes" ];
+ then
+ sudo port install ${DARWINDEPS}
+ fi
+ else
+ echo "Found: "${DARWINDEPS}"!"
+ fi
+ fi
+
+ TAR=gnutar
+
+ ;;
+
+ *)
+ echo "Found unknown OS. Aborting!"
+ exit 1
+ ;;
+esac
+
+##############################################################################
+# Building section
+# You probably don't have to touch anything after this
+##############################################################################
+
+# Fetch a versioned file from a URL
+function fetch {
+ if [ ! -e ${STAMPS}/$1.fetch ]; then
+ log "Downloading $1 sources..."
+ wget -c --no-passive-ftp $2
+ touch ${STAMPS}/$1.fetch
+ fi
+}
+
+# Log a message out to the console
+function log {
+ echo "******************************************************************"
+ echo "* $*"
+ echo "******************************************************************"
+}
+
+# Unpack an archive
+function unpack {
+ log Unpacking $*
+ if [ -f ${SOURCES}/$1.tar.gz ];
+ then
+ ${TAR} xfz${TARFLAGS} ${SOURCES}/$1.tar.gz
+ else
+ ${TAR} xfj${TARFLAGS} ${SOURCES}/$1.tar.bz2
+ fi
+}
+
+# Install a build
+function install {
+ log $1
+ ${SUDO} make ${MAKEFLAGS} $2 $3 $4 $5 $6 $7 $8
+}
+
+
+mkdir -p ${STAMPS} ${SOURCES}
+
+cd ${SOURCES}
+
+fetch ${BINUTILS} http://ftp.gnu.org/gnu/binutils/${BINUTILS}.tar.bz2
+fetch ${GCC} ${GCCURL}
+fetch ${NEWLIB} ftp://sources.redhat.com/pub/newlib/${NEWLIB}.tar.gz
+fetch ${GDB} http://ftp.gnu.org/gnu/gdb/${GDB}.tar.bz2
+
+if [ ${LIBSTM32_EN} != 0 ]; then