buildgcc: Clarify required user action

When required tools are missing, try to give the user more detailed
information on how to solve the problem.

Change-Id: Ifa21c1af38a036a7d4f5a786041a87a7d45f4ec5
Signed-off-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Reviewed-on: http://review.coreboot.org/10555
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
diff --git a/util/crossgcc/buildgcc b/util/crossgcc/buildgcc
index 552a6a2..0c6193d 100755
--- a/util/crossgcc/buildgcc
+++ b/util/crossgcc/buildgcc
@@ -107,6 +107,18 @@
 	perl -pi -e "s,/lib64,/lib," $DESTDIR$TARGETDIR/lib/*.la
 }
 
+please_install()
+{
+	test -r /etc/os-release && source /etc/os-release
+	case "$ID_LIKE" in
+	debian) solution="sudo apt-get install $1" ;;
+	suse) solution="sudo zypper install $1" ;;
+	*) solution="using your OS packaging system" ;;
+	esac
+
+	printf "${RED}ERROR:${red} Missing tool: Please install \'$1\' utility. (eg $solution)${NC}\n" >&2
+}
+
 searchtool()
 {
 	# $1 short name
@@ -157,7 +169,7 @@
 			fi
 		fi
 	fi
-	printf "${RED}ERROR:${red} Missing tool: Please install $1 (eg using your OS packaging system)${NC}\n" >&2
+	please_install $1
 	[ -z "$3" ] && exit 1
 	false
 }