dependencies: test all programs before bailing out

The current dependencies code abort as soon as one program is
missing. It is quite annoying when multiple programs are
missing. Instead, bail out if needed after testing all programs.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit is contained in:
Thomas Petazzoni 2013-03-23 22:26:44 +00:00 committed by Peter Korsgaard
parent b2406e4a78
commit 11f4c694e9

View File

@ -131,9 +131,11 @@ if ! $SHELL --version 2>&1 | grep -q '^GNU bash'; then
fi; fi;
# Check that a few mandatory programs are installed # Check that a few mandatory programs are installed
missing_progs="no"
for prog in patch perl tar wget cpio python unzip rsync ${DL_TOOLS} ; do for prog in patch perl tar wget cpio python unzip rsync ${DL_TOOLS} ; do
if ! which $prog > /dev/null ; then if ! which $prog > /dev/null ; then
/bin/echo -e "You must install '$prog' on your build machine"; /bin/echo -e "You must install '$prog' on your build machine";
missing_progs="yes"
if test $prog = "svn" ; then if test $prog = "svn" ; then
/bin/echo -e " svn is usually part of the subversion package in your distribution" /bin/echo -e " svn is usually part of the subversion package in your distribution"
elif test $prog = "hg" ; then elif test $prog = "hg" ; then
@ -143,10 +145,13 @@ for prog in patch perl tar wget cpio python unzip rsync ${DL_TOOLS} ; do
elif test $prog = "bzcat" ; then elif test $prog = "bzcat" ; then
/bin/echo -e " bzcat is usually part of the bzip2 package in your distribution" /bin/echo -e " bzcat is usually part of the bzip2 package in your distribution"
fi fi
exit 1;
fi fi
done done
if test "${missing_progs}" = "yes" ; then
exit 1
fi
if grep ^BR2_TOOLCHAIN_BUILDROOT=y $BUILDROOT_CONFIG > /dev/null && \ if grep ^BR2_TOOLCHAIN_BUILDROOT=y $BUILDROOT_CONFIG > /dev/null && \
grep ^BR2_ENABLE_LOCALE=y $BUILDROOT_CONFIG > /dev/null ; then grep ^BR2_ENABLE_LOCALE=y $BUILDROOT_CONFIG > /dev/null ; then
if ! which locale > /dev/null ; then if ! which locale > /dev/null ; then