-GCC_VERSION:=$(strip $(subst ",, $(BR2_GCC_VERSION)))
-#"
-GCC_USE_SJLJ_EXCEPTIONS:=$(strip $(subst ",, $(BR2_GCC_USE_SJLJ_EXCEPTIONS)))
-#"
-TARGET_OPTIMIZATION:=$(strip $(subst ",, $(BR2_TARGET_OPTIMIZATION)))
-#""
+ifeq (${shell [ "$(V)" -ge 10 ] && echo 1},)
+EXTRA_MAKEFLAGS:=-s
+MAKE_TRACE:=2>&1 >&/dev/null || { echo "Build failed. Please re-run make with V=99 to see what's going on"; /bin/false; }
+else
+MAKE_TRACE:=
+EXTRA_MAKEFLAGS:=
+TRACE:=:
+PKG_TRACE:=:
+CMD_TRACE:=:
+START_TRACE:=:
+END_TRACE:=:
+endif
+
+CP=cp -fpR
+MAKE1=make
+MAKEFLAGS=-j$(CONFIG_JLEVEL) V=$(V) $(EXTRA_MAKEFLAGS)
+# Strip off the annoying quoting
+ARCH:=$(strip $(subst ",, $(CONFIG_ARCH)))
+WGET:=$(strip $(subst ",, $(CONFIG_WGET)))
+GCC_VERSION:=$(strip $(subst ",, $(CONFIG_GCC_VERSION)))
+GCC_USE_SJLJ_EXCEPTIONS:=$(strip $(subst ",, $(CONFIG_GCC_USE_SJLJ_EXCEPTIONS)))
+TARGET_OPTIMIZATION:=$(strip $(subst ",, $(CONFIG_TARGET_OPTIMIZATION)))
+#"))"))"))"))")) # for vim's broken syntax highlighting :)