tools/insufficient_memory: add create_makefile.ci.sh and Makefile.ci make target#16109
Conversation
You need to make it a global command ;-) (so add it to |
miri64
left a comment
There was a problem hiding this comment.
Some of the shellcheck suggestions seem reasonable. Please apply.
|
Th logic is almost the same as the one in |
The boilerplate in the beginning is the same, but the actual logic is slightly different enough that generalizing it would lead to a more messy result. (If you know of an elegant way to do it, patches welcome of course) |
41cd632 to
c96f97b
Compare
| info-boards-features-conflicting: | ||
| @for f in $(BOARDS_FEATURES_CONFLICTING); do echo $${f}; done | column -t | ||
|
|
||
| Makefile.ci: |
There was a problem hiding this comment.
| Makefile.ci: | |
| .PHONY: Makefile.ci | |
| Makefile.ci: |
This is needed if you want to be able to update an existing Makefile.ci. Otherwise it will skip with make: 'Makefile.ci' is up to date.
There was a problem hiding this comment.
I don't think (but do not know and remember the exact rules) that a file that is actually be produced should be marked PHONY; shouldn't this (on an explicit rerun) rather be manually removed and then rebuilt?
Otherwise, make's behavior of rebuilding any stale includes would trigger, and it'd be rebuilt on ever use.
There was a problem hiding this comment.
Otherwise it will skip with make:
'Makefile.ci' is up to date.
I did consider that a feature 😉
There was a problem hiding this comment.
Interestingly, with .PHONY make just eats CPU time without ever doing anything...
c96f97b to
0b3e4cd
Compare
|
Aehm ... I just ran a |
OK, that seems to be on me: All failures were due to different things than "out of memory", so leaving it empty was the right call. |
Contribution description
For adding a new board we have
add_insufficient_memory_board.shto automatically update allMakefile.cilists for tests that do not fit the memory of the CPU.This adds a similar script for doing the same when adding / modifying a test and generates a
Makefile.ciby compiling the application for all supported boards.Testing procedure
For any test / application run
In the end, a new
Makefile.cishould be created that is indistinguishable from the original one, if that one was correct.Issues/PRs references