Hi,

 

This requirement could be addressed with a user specific metadata file which is processed by the build-system. Implementation wise the easiest would be to include a file like UserCfg.cmake. This file could contain set(<option> CACHE <STRING|BOOL|PATH> “”) commands to set the option variables. User experience wise a text file parsed by cmake scripts would be the best. Such a file could contain variable=value lines.

Longer term when Kconfig support is ready, it could cover these options too. Running Kconfig is a an act done less often, and most of the times, the user is expected to save the Kconfig input and output files. Most of the time the build-system would just use the pre-generated config. I imagine a workflow similar to the one used by the Linux Kernel.

 

Just my two cent’s though.


/George

 

From: TF-M <tf-m-bounces@lists.trustedfirmware.org> On Behalf Of David Hu via TF-M
Sent: 12 June 2020 07:33
To: Adrian Shaw <Adrian.Shaw@arm.com>; Raef Coles <Raef.Coles@arm.com>; tf-m@lists.trustedfirmware.org
Cc: nd <nd@arm.com>
Subject: Re: [TF-M] CMake flags

 

Hi Adrian,

 

Actually we have been investigating configuration alternatives and making some prototypes of Kconfig.

 

Kconfig can bring some advantages:

 

But Kconfig may not cover all the flags in command line. Flags such as compiler selections, build type and project config file, may vary in each build. It can be inconvenient to put them into Kconfig.

 

Best regards,

Hu Ziji

 

From: TF-M <tf-m-bounces@lists.trustedfirmware.org> On Behalf Of Adrian Shaw via TF-M
Sent: Friday, June 12, 2020 12:24 AM
To: Raef Coles <Raef.Coles@arm.com>
Cc: tf-m@lists.trustedfirmware.org
Subject: [TF-M] CMake flags

 

Hi Raef. Thanks for the presentation today.

 

If I remember correctly, TF-M's CMake has quite a lot of command line flags now (the ones that are set with -D). And I think this will grow in the future as more options are needed.

 

From a command line point of view, this is kind of annoying because the commands end up being quite long. Do you guys think something like Kconfig could help?

 

Adrian