There is a Makefile dependency problem regarding the "tests_list.h" as it mentioned in https://git.trustedfirmware.org/TF-A/tf-a-tests.git/tree/docs/change-log.rst
I have a fix to that (in one way) but not perfect: https://github.com/AlamyLiu/tf-a-tests/commit/33929aca35c7ad65e9acde71260595...
Thanks for your patch! I see that you've pushed it to Github, could you please post it to the official Gerrit review server instead? We conduct code reviews on https://review.trustedfirmware.org/ The contribution guidelines are highlighted in the following document:
I think the root cause is that
- It uses `eval` in Makefile to `do` the job that should be done by `make`.
- Makefile should have only the `rules` (none), not the action (verb - eval) for compiling.
Using `eval` to compile the code hide the information to `make`. Let `make` know the rules & dependency so the problem could be solved cleanly.
I agree with you. The build system would need to be re-designed for better clarity and ease of maintenance.
The build system of TF-A Tests is inherited from TF-A, which unfortunately had these issues already. We are planning to rework the TF-A build system in the future (see https://lists.trustedfirmware.org/pipermail/tf-a/2018-December/000000.html). When that work is complete, I'm hoping we'll be able to import it in TF-A Tests as well.