diff options
author | David Spickett <david.spickett@linaro.org> | 2020-05-18 12:12:21 +0100 |
---|---|---|
committer | David Spickett <david.spickett@linaro.org> | 2020-05-20 14:10:32 +0100 |
commit | 31e16ccd5389f9513f7bea6785ad390553511893 (patch) | |
tree | ff46cd56359301df09d5c52257fc8d63198f5532 | |
parent | ed174d49aaef2c9640a8d513c905f962e09e91ed (diff) |
round-robin.sh: Fix "bootstrap check" build step
When I fixed a shellcheck warning here I changed
an expression that previously would always
delete the build folders. To one that would only
do so when we were running a check step.
Without deleting the build folders you got this
in the "bootstrap check" step:
00:01:25 configure: loading cache ./config.cache
00:01:25 configure: error: `CC' has changed since the previous run:
00:01:25 configure: former value: `gcc'
00:01:25 configure: current value:
`armv8l-unknown-linux-gnueabihf-gcc'
(since the compiler built in "bootstrap" has
been added to the PATH)
The old behaviour works but only acidentally.
Instead we should only update the source checkouts
during non check steps. This means that ABE doesn't
see a change and try to reconfigure. With that,
there's no need for us to clean out the .stamp
files for a check step anymore.
Change-Id: Ifc5574fe422ae8a01618a1de02affceb7733ae0b
-rw-r--r-- | round-robin.sh | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/round-robin.sh b/round-robin.sh index 3361f0ce..1f3d73f3 100644 --- a/round-robin.sh +++ b/round-robin.sh @@ -346,7 +346,9 @@ build_abe () # Use our custom sources for everything, but kernel headers. local custom_abe_src_opt="" local git_dir="$project" - if [ x"$component" != x"linux" ]; then + if $check; then + : # Don't update anything for a check step + elif [ x"$component" != x"linux" ]; then clone_repo $project # Don't use ABE's repo clone functions and setup abe/snapshots/ directory @@ -367,8 +369,11 @@ build_abe () gnu_target=$(print_gnu_target ${rr[target]}) # Remove previous build directories and .stamp files. - # We rely on ccache for fast rebuilds. - if [ ! $check ]; then + # (we rely on ccache for fast rebuilds) + # These stamp files tell ABE whether it needs to re-run + # checkout/configure/build steps. Which we do not want + # to do on a check step. + if ! $check; then set +f; rm -rf builds/*/*/$git_dir*; set -f fi |