config: Make tfa robust to parameter changes
The TFA build system does not notice when a build parameter changes
between incremental builds and this can lead to stale compilation units.
An example of this is when switching between v8.x and v9.x
architectures; v9.x adds CTX_INCLUDE_AARCH32_REGS=0. Where the v8.x
default is CTX_INCLUDE_AARCH32_REGS=1.
Up until now, the advice has been to workaround this by explicitly doing
a clean when changing arch versions. But this continues to bite people,
so let's workaround this in the tfa config by storing the parameters for
each build. Then we can compare to the previous build and do a clean if
they have changed. This provides a robust solution that does not incur
any performance penalty for the common case of rebuilding without any
parameter changes.
To make this work, ensure the parameters are always in the same order
when generating the parameters string. Previously their order was
arbitrary and would change from run to run.
Signed-off-by:
Ryan Roberts <ryan.roberts@arm.com>
Loading
Please register or sign in to comment