
On Tue, Mar 10, 2020 at 08:27:47PM -0600, Simon Glass wrote:
Hi Tom,
On Mon, 9 Mar 2020 at 11:42, Tom Rini trini@konsulko.com wrote:
On Mon, Mar 09, 2020 at 11:10:55AM -0600, Stephen Warren wrote:
On 3/6/20 8:07 PM, Simon Glass wrote:
It is a pain to have to set the ARCH and CROSS_COMPILE environment variables when using test.py's --build option. It is possible to get these using the -A and -a options from buildman. But it seems better to just use buildman to do the build.
Remove the manual 'make' logic in test/py and use buildman instead.
I far prefer using make here; this requires zero setup of buildman (e.g. the config file and specific toolchains), and so it much *less* of a pain.
I have to agree here. Keeping our test suite as dependency-free as possible is important. But... that's also not what's going on in the code. We don't set ARCH from what I can see, and of course don't use it. We don't set the CROSS_COMPILER from the snippet in question, only the output directory. Today, looking at the Travis/GitLab CI scripts we don't even build via test.py but rather buildman prior to calling test.py. And I don't think I saw that changing in this series either.
I mean that to run pytest I have to do:
PATH=$PATH:tools/buildman ARCH=`buildman -a zynq_zybo` CROSS_COMPILE=`buildman -A zynq_zybo` \ test/py/test.py -B zynq_zybo --id sjg-zynq_zybo --build-dir ../current/zynq_zybo --build
which is a bit of a pain.
With this change I can do:
test/py/test.py -B zynq_zybo --id sjg-zynq_zybo --build-dir ../current/zynq_zybo --build
Right. The commit message isn't clear as the CI loops build the board with buildman first. Second, we don't use ARCH= when building U-Boot, so we could just drop that from buildman I suspect. Third, no, I think it's important to NOT require buildman to be builder here and setting CROSS_COMPILE in the environment is fine and makes integration with other systems easier. Thanks!