diff --git a/buildscript.sh b/buildscript.sh
index 573e56183d267a19f80884ca148ce6a05f4b6ee6..0940319d9ea3df2252b027437d42647e7f11c0f5 100755
--- a/buildscript.sh
+++ b/buildscript.sh
@@ -151,65 +151,38 @@ prepare_sitemk(){
 }
 
 gluon_build(){
+  preflags=" -C $EXECDIR/.."
+  midflags=""
+  postflags=" GLUON_TARGET=$1 GLUON_AUTOUPDATER_ENABLED=1 GLUON_IMAGEDIR=output/images/$(cat "$EXECDIR"/.prepare)/$(cat "$EXECDIR"/.GLUON_RELEASE) GLUON_PACKAGEDIR=output/packages/$(cat "$EXECDIR"/.prepare)"
   error_build=0
   if [ "$2" == "fast" ] && [ -a "/proc/cpuinfo" ]; then
-      if [ "$3" == "silent" ]; then
-        if [ -a "$EXECDIR/.BROKEN" ]; then
-          if ! make --silent -C "$EXECDIR/.." -j $(($(grep -c processor /proc/cpuinfo)+1)) BROKEN=1 GLUON_TARGET="$1" GLUON_AUTOUPDATER_ENABLED=1 GLUON_IMAGEDIR="output/images/$(cat "$EXECDIR/.prepare")/$(cat "$EXECDIR/.GLUON_RELEASE")" GLUON_PACKAGEDIR="output/packages/$(cat "$EXECDIR/.prepare")";
-          then
-            error_build=1
-          fi
-        else
-          if ! make --silent -C "$EXECDIR/.." -j $(($(grep -c processor /proc/cpuinfo)+1)) GLUON_TARGET="$1" GLUON_AUTOUPDATER_ENABLED=1 GLUON_IMAGEDIR="output/images/$(cat "$EXECDIR/.prepare")/$(cat "$EXECDIR/.GLUON_RELEASE")" GLUON_PACKAGEDIR="output/packages/$(cat "$EXECDIR/.prepare")";
-          then
-            error_build=1
-          fi
-        fi
-      else
-        if [ -a "$EXECDIR/.BROKEN" ]; then
-          if ! make -C "$EXECDIR/.." -j $(($(grep -c processor /proc/cpuinfo)+1)) BROKEN=1 GLUON_TARGET="$1" GLUON_AUTOUPDATER_ENABLED=1 GLUON_IMAGEDIR="output/images/$(cat "$EXECDIR/.prepare")/$(cat "$EXECDIR/.GLUON_RELEASE")" GLUON_PACKAGEDIR="output/packages/$(cat "$EXECDIR/.prepare")";
-          then
-            error_build=1
-          fi
-        else
-          if ! make -C "$EXECDIR/.." -j $(($(grep -c processor /proc/cpuinfo)+1)) GLUON_TARGET="$1" GLUON_AUTOUPDATER_ENABLED=1 GLUON_IMAGEDIR="output/images/$(cat "$EXECDIR/.prepare")/$(cat "$EXECDIR/.GLUON_RELEASE")" GLUON_PACKAGEDIR="output/packages/$(cat "$EXECDIR/.prepare")";
-          then
-            error_build=1
-          fi
-        fi
-      fi
-  else
-    if [ -a "$EXECDIR/.BROKEN" ]; then
-      if ! make -C "$EXECDIR/.." BROKEN=1 GLUON_TARGET="$1" GLUON_AUTOUPDATER_ENABLED=1 GLUON_IMAGEDIR="output/images/$(cat "$EXECDIR/.prepare")/$(cat "$EXECDIR/.GLUON_RELEASE")" GLUON_PACKAGEDIR="output/packages/$(cat "$EXECDIR/.prepare")";
-      then
-        error_build=1
-      fi
-    else
-      if ! make -C "$EXECDIR/.." GLUON_TARGET="$1" GLUON_AUTOUPDATER_ENABLED=1 GLUON_IMAGEDIR="output/images/$(cat "$EXECDIR/.prepare")/$(cat "$EXECDIR/.GLUON_RELEASE")" GLUON_PACKAGEDIR="output/packages/$(cat "$EXECDIR/.prepare")";
-      then
-        error_build=1
-      fi
-    fi
+    midflags=$midflags" -j $(($(grep -c processor /proc/cpuinfo)+1))"
   fi
+  if [ "$3" == "silent" ]; then
+    preflags=" --silent"$preflags
+  fi;
+  if [ -a "$EXECDIR/.BROKEN" ]; then
+    midflags=$midflags" BROKEN=1"
+  fi;
+  if ! make "$preflags" "$midflags" "$postflags"; then
+    error_build=1
+  fi;
   if [ $error_build -eq 1 ]; then
     exit 1
   fi
 }
 
 gluon_clean(){
+  preflags=" -C $EXECDIR/.."
+  midflags=""
+  postflags=" GLUON_TARGET=$1 GLUON_IMAGEDIR=output/images/$(cat "$EXECDIR"/.prepare)/$(cat "$EXECDIR"/.GLUON_RELEASE) GLUON_PACKAGEDIR=output/packages/$(cat "$EXECDIR"/.prepare)"
   if [ "$2" == "fast" ] && [ -a "/proc/cpuinfo" ]; then
-    if [ -a "$EXECDIR/.BROKEN" ]; then
-      make -C "$EXECDIR/.." -j $(($(grep -c processor /proc/cpuinfo)+1)) BROKEN=1 GLUON_TARGET="$1" GLUON_IMAGEDIR="output/images/$(cat "$EXECDIR/.prepare")/$(cat "$EXECDIR/.GLUON_RELEASE")" GLUON_PACKAGEDIR="output/packages/$(cat "$EXECDIR/.prepare")" clean
-    else
-      make -C "$EXECDIR/.." -j $(($(grep -c processor /proc/cpuinfo)+1)) GLUON_TARGET="$1" GLUON_IMAGEDIR="output/images/$(cat "$EXECDIR/.prepare")/$(cat "$EXECDIR/.GLUON_RELEASE")" GLUON_PACKAGEDIR="output/packages/$(cat "$EXECDIR/.prepare")" clean
-    fi
-  else
-    if [ -a "$EXECDIR/.BROKEN" ]; then
-      make -C "$EXECDIR/.." BROKEN=1 GLUON_TARGET="$1" GLUON_IMAGEDIR="output/images/$(cat "$EXECDIR/.prepare")/$(cat "$EXECDIR/.GLUON_RELEASE")" GLUON_PACKAGEDIR="output/packages/$(cat "$EXECDIR/.prepare")" clean
-    else
-      make -C "$EXECDIR/.." GLUON_TARGET="$1" GLUON_IMAGEDIR="output/images/$(cat "$EXECDIR/.prepare")/$(cat "$EXECDIR/.GLUON_RELEASE")" GLUON_PACKAGEDIR="output/packages/$(cat "$EXECDIR/.prepare")" clean
-    fi
+    midflags=$midflags" -j $(($(grep -c processor /proc/cpuinfo)+1))"
+  fi
+  if [ -a "$EXECDIR/.BROKEN" ]; then
+    midflags=$midflags" BROKEN=1"
   fi
+  make "$preflags" "$midflags" "$postflags" clean
 }