75 lines
2.8 KiB
Diff
75 lines
2.8 KiB
Diff
|
From 5c4c5cdc3110bf02b93be9d5eb744235c8f49e33 Mon Sep 17 00:00:00 2001
|
||
|
From: Martin Roth <martin@coreboot.org>
|
||
|
Date: Sun, 9 May 2021 11:44:15 -0600
|
||
|
Subject: [PATCH 08/17] util/genbuild_h: Update IASL location finding code
|
||
|
|
||
|
Update the iasl path finding code to use XGCCPATH if it's set, and to
|
||
|
look for iasl on the path if it's not set and not under util/crossgcc.
|
||
|
|
||
|
On the jenkins builders, iasl is in the path, not in util/crossgcc/xgcc.
|
||
|
|
||
|
On the systems of people who have multiple copies of coreboot, it makes
|
||
|
sense to just have a single copy of the toolchain and define XGCCPATH in
|
||
|
the environment to point to it.
|
||
|
|
||
|
Previously, either of these situations resulted in a warning from the
|
||
|
genbuild_h tool that iasl was not found under util/crossgcc, which was
|
||
|
true, but not particularly relevant, and generated confusion.
|
||
|
|
||
|
If xcompile already existed before make was run, the correct path would
|
||
|
be found, but on an initial build, this check couldn't find iasl.
|
||
|
|
||
|
BUG=None
|
||
|
TEST=Build with iasl in /util/crossgcc/xgcc/bin, in the path and in a
|
||
|
directory pointed to with XGCCPATH.
|
||
|
|
||
|
Signed-off-by: Martin Roth <martin@coreboot.org>
|
||
|
Change-Id: Ic2f8dca0be8bfb54d3c672fab6cf6f005bb394c3
|
||
|
Reviewed-on: https://review.coreboot.org/c/coreboot/+/54001
|
||
|
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
|
||
|
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
|
||
|
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
|
||
|
---
|
||
|
util/genbuild_h/genbuild_h.sh | 12 ++++++++++--
|
||
|
1 file changed, 10 insertions(+), 2 deletions(-)
|
||
|
|
||
|
diff --git a/util/genbuild_h/genbuild_h.sh b/util/genbuild_h/genbuild_h.sh
|
||
|
index 10ca0c5fa3..c898fb6e3f 100755
|
||
|
--- a/util/genbuild_h/genbuild_h.sh
|
||
|
+++ b/util/genbuild_h/genbuild_h.sh
|
||
|
@@ -5,6 +5,7 @@
|
||
|
DATE=""
|
||
|
GITREV=""
|
||
|
TIMESOURCE=""
|
||
|
+XGCCPATH="${XGCCPATH:-util/crossgcc/xgcc/bin/}"
|
||
|
|
||
|
export LANG=C
|
||
|
export LC_ALL=C
|
||
|
@@ -47,8 +48,15 @@ NetBSD|OpenBSD|DragonFly|FreeBSD|Darwin)
|
||
|
esac
|
||
|
}
|
||
|
|
||
|
-IASL=util/crossgcc/xgcc/bin/iasl
|
||
|
+# Look for IASL in XGCCPATH and xcompile. Unfortunately,
|
||
|
+# xcompile isn't available on the first build.
|
||
|
+# If neither of those gives a valid iasl, check the path.
|
||
|
+IASL="${XGCCPATH}iasl"
|
||
|
eval $(grep ^IASL:= "$XCOMPILE" 2>/dev/null | sed s,:=,=,)
|
||
|
+if [ ! -x "${IASL}" ]; then
|
||
|
+ IASL=$(command -v iasl)
|
||
|
+fi
|
||
|
+IASLVERSION="$(${IASL} -v | grep version | sed 's/.*version //')" >/dev/null
|
||
|
|
||
|
#Print out the information that goes into build.h
|
||
|
printf "/* build system definitions (autogenerated) */\n"
|
||
|
@@ -72,5 +80,5 @@ printf "#define COREBOOT_BUILD_EPOCH \"$(our_date "$DATE" +%s)\"\n"
|
||
|
printf "#define COREBOOT_DMI_DATE \"$(our_date "$DATE" +%m/%d/%Y)\"\n"
|
||
|
printf "\n"
|
||
|
printf "#define COREBOOT_COMPILE_TIME \"$(our_date "$DATE" +%T)\"\n"
|
||
|
-printf "#define ASL_VERSION 0x%d\n" `$IASL -v | grep version | sed 's/.*version //'`
|
||
|
+printf "#define ASL_VERSION 0x%d\n" "${IASLVERSION}"
|
||
|
printf "#endif\n"
|
||
|
--
|
||
|
2.25.1
|
||
|
|