util/xcompile: parallelize compiler checks
Speed up the execution of this script from ~6 seconds to ~1 on my system. There are some changes to its output, but they're actually _more_ correct: so far, architectures without compiler support kept compiler options for architectures that ran successfully earlier. Change-Id: I0532ea2178fbedb114a75cfd5ba39301e534e742 Signed-off-by: Patrick Georgi <pgeorgi@google.com> Reviewed-on: https://review.coreboot.org/18262 Tested-by: build bot (Jenkins) Reviewed-by: Martin Roth <martinroth@google.com>
This commit is contained in:
parent
7328cf948e
commit
be182ad380
|
@ -56,9 +56,6 @@ clean_up() {
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# Create temporary file(s).
|
|
||||||
TMPFILE="$(mktemp /tmp/temp.XXXXXX 2>/dev/null || echo /tmp/temp.coreboot.$RANDOM)"
|
|
||||||
touch "$TMPFILE"
|
|
||||||
trap clean_up EXIT
|
trap clean_up EXIT
|
||||||
|
|
||||||
|
|
||||||
|
@ -438,11 +435,24 @@ test_architecture() {
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# This loops over all supported architectures.
|
OUT="$(mktemp /tmp/temp.XXXXXX 2>/dev/null || echo /tmp/temp.coreboot.$RANDOM)"
|
||||||
|
rm -f $OUT
|
||||||
|
|
||||||
for architecture in $SUPPORTED_ARCHITECTURES; do
|
for architecture in $SUPPORTED_ARCHITECTURES; do
|
||||||
|
(
|
||||||
|
TMPFILE="$(mktemp /tmp/temp.XXXXXX 2>/dev/null || echo /tmp/temp.coreboot.$RANDOM)"
|
||||||
|
touch $TMPFILE
|
||||||
test_architecture "$architecture"
|
test_architecture "$architecture"
|
||||||
detect_special_flags "$architecture"
|
detect_special_flags "$architecture"
|
||||||
detect_compiler_runtime "$architecture"
|
detect_compiler_runtime "$architecture"
|
||||||
report_arch_toolchain
|
report_arch_toolchain
|
||||||
|
clean_up
|
||||||
|
) > $OUT.$architecture &
|
||||||
|
done
|
||||||
|
wait
|
||||||
|
|
||||||
|
for architecture in $SUPPORTED_ARCHITECTURES; do
|
||||||
|
cat $OUT.$architecture
|
||||||
|
rm -f $OUT.$architecture
|
||||||
done
|
done
|
||||||
echo XCOMPILE_COMPLETE:=1
|
echo XCOMPILE_COMPLETE:=1
|
||||||
|
|
Loading…
Reference in New Issue