From 07562e3f281492cb040072e78468114d1a960bee Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Sat, 23 Aug 2025 16:02:40 +0100 Subject: tree.sh: don't re-check xgcc needlessly instead, create a file indicating that a given xgcc target had already been built successfully, within a given coreboot tree. this will considerably speed up the building of release archives, especially when there are a lot of boards. Signed-off-by: Leah Rowe --- include/tree.sh | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'include/tree.sh') diff --git a/include/tree.sh b/include/tree.sh index 093d5d9c..75dd230b 100644 --- a/include/tree.sh +++ b/include/tree.sh @@ -222,6 +222,10 @@ project_up_to_date() check_cross_compiler() { cbdir="src/coreboot/$tree" + xfix="${1%-*}" && [ "$xfix" = "x86_64" ] && xfix="x64" + xgccfile="elf/coreboot/$tree/xgcc_${xfix}_was_compiled" + x_ mkdir -p "elf/coreboot/$tree" + [ "$project" != "coreboot" ] && cbdir="src/coreboot/default" [ -n "$xtree" ] && cbdir="src/coreboot/$xtree" @@ -231,13 +235,16 @@ check_cross_compiler() export CROSS_COMPILE="${xarch% *}-" [ -n "$xlang" ] && export BUILD_LANGUAGES="$xlang" + [ -f "$xgccfile" ] && return 0 # skip build if already done + # match gnat-X to gcc check_gnu_path gcc gnat || x_ check_gnu_path gnat gcc - xfix="${1%-*}" && [ "$xfix" = "x86_64" ] && xfix="x64" xgccargs="crossgcc-$xfix UPDATED_SUBMODULES=1 CPUS=$XBMK_THREADS" make -C "$cbdir" $xgccargs || x_ make -C "$cbdir" $xgccargs + x_ touch "$xgccfile" + # we only want to mess with hostcc to build xgcc remkdir "$XBMK_CACHE/gnupath" } -- cgit v1.2.1