-
Notifications
You must be signed in to change notification settings - Fork 2.1k
tools/insufficient_memory: add create_makefile.ci.sh and Makefile.ci make target #16109
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
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 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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
@@ -143,6 +143,9 @@ info-boards-features-blacklisted: | |||
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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.sh
to automatically update allMakefile.ci
lists 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.ci
by compiling the application for all supported boards.Testing procedure
For any test / application run
In the end, a new
Makefile.ci
should be created that is indistinguishable from the original one, if that one was correct.Issues/PRs references