summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Georgi <patrick@georgi-clan.de>2014-05-14 14:26:07 +0200
committerPatrick Georgi <patrick@georgi-clan.de>2014-05-15 10:07:09 +0200
commit004295d86d7bbd6cfb0ce9767cbc1a2adbf61891 (patch)
tree8dde4fbd8ebcb417377b50aa70e8896539217f25
parentd387c63576098f63d18e11a45faf0fe5d1f57dee (diff)
downloadcoreboot-004295d86d7bbd6cfb0ce9767cbc1a2adbf61891.tar.xz
xcompile: fail earlier on missing host tools
No need to test all the cross compiler things if there's no host compiler or iasl. Also test that the alternatives work, instead of assuming iasl or cc are in the path. Change-Id: I1d2293873f4bf1bb525d794851ec20adddb05ac6 Signed-off-by: Patrick Georgi <patrick@georgi-clan.de> Reviewed-on: http://review.coreboot.org/5742 Tested-by: build bot (Jenkins) Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com> Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
-rw-r--r--util/xcompile/xcompile47
1 files changed, 27 insertions, 20 deletions
diff --git a/util/xcompile/xcompile b/util/xcompile/xcompile
index 2ac82b62dd..81d5b3cda5 100644
--- a/util/xcompile/xcompile
+++ b/util/xcompile/xcompile
@@ -20,6 +20,7 @@
#
TMPFILE=""
+XGCCPATH=${1:-"`pwd`/util/crossgcc/xgcc/bin/"}
die() {
echo "ERROR: $*" >&2
@@ -36,6 +37,32 @@ program_exists() {
type "$1" >/dev/null 2>&1
}
+
+if [ "$(${XGCCPATH}/iasl 2>/dev/null | grep -c ACPI)" -gt 0 ]; then
+ IASL=${XGCCPATH}iasl
+elif [ "$(iasl 2>/dev/null | grep -c ACPI)" -gt 0 ]; then
+ IASL=iasl
+else
+ echo "no iasl found"
+ exit 1
+fi
+
+if program_exists gcc; then
+ HOSTCC=gcc
+elif program_exists cc; then
+ HOSTCC=cc
+else
+ echo "no host compiler found"
+ exit 1
+fi
+
+cat <<EOF
+# platform agnostic and host tools
+IASL:=${IASL}
+HOSTCC:=${HOSTCC}
+
+EOF
+
testcc() {
local tmp_c="$TMPFILE.c"
local tmp_o="$TMPFILE.o"
@@ -163,8 +190,6 @@ arch_config_x86() {
TWIDTH="32"
}
-XGCCPATH=${1:-"`pwd`/util/crossgcc/xgcc/bin/"}
-
# This loops over all supported architectures.
for architecture in $SUPPORTED_ARCHITECTURE; do
GCCPREFIX="invalid"
@@ -207,21 +232,3 @@ for architecture in $SUPPORTED_ARCHITECTURE; do
report_arch_toolchain
done
-if [ "$(${XGCCPATH}/iasl 2>/dev/null | grep -c ACPI)" -gt 0 ]; then
- IASL=${XGCCPATH}iasl
-else
- IASL=iasl
-fi
-
-if program_exists gcc; then
- HOSTCC=gcc
-else
- HOSTCC=cc
-fi
-
-cat <<EOF
-IASL:=${IASL}
-
-# native toolchain
-HOSTCC:=${HOSTCC}
-EOF