-
Notifications
You must be signed in to change notification settings - Fork 2k
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
makefiles/dependency_resolution: add outer loop for DEFAULT_MODULE deps #17632
Conversation
Looks like something broke |
@benpicco all green, can I squash? I run the dependency check script in parallel after I squash |
Yes please squash! |
cc4583e
to
9fc8937
Compare
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.
looks good to me
I ran the
So with de previous DEFAULT_MODULE inclusion
IMO these differences are OK, since they are based in changes in order of inclusions, this will always happen, and simply adding If you agree please hit the green button @benpicco |
Maybe @maribu or @leandrolanzieri would like to give it the go, since they have looked at build system a lot :) |
makefiles/default_modules.deps.mk
Outdated
USEMODULE += ztimer_init | ||
endif | ||
|
||
ifneq (,$(filter auto_init_gnrc_netif,$(USEMODULE))) |
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.
auto_init_gnrc_netif
is not a DEFAULT_MODULE
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.
Ahh, I thought it was because of the auto_init_
prefix..., I'll remove it from here then..
Modules select by auto-init modules MUST NOT have dependencies themselfs, dhcp_relay was not respecting that. Instead of having the auto-init module select dhcp_relay, do it the other way around.
Some DEFAULT_MODULEs in tree have dependencies of their own. This is usually done for aliases of init modules, and do not have dependencies themselves. This adds the final stage to dependency resolutions where DEFAULT_MODULEs dependencies MAY be included. These included modules MUST NOT have dependencies themselves. This allows for modules to disable DEFAULT_MODULEs during dependencies resolution independent of the inclusion order. auto_init and periph_init modules are moved to this outer-loop, allowing therefore for modules to disable them during the dependency resolution
9fc8937
to
3de5549
Compare
Thanks @benpicco! |
Contribution description
Some DEFAULT_MODULEs in tree have dependencies of their own. This is
usually done for aliases of init modules, and do not have dependencies
themselves.
This adds the final stage to dependency resolutions where DEFAULT_MODULEs
dependencies MAY be included. These included modules MUST NOT have
dependencies themselves.
This allows for modules to disable DEFAULT_MODULEs during dependencies
resolution independent of the inclusion order.
auto_init and periph_init modules are moved to this outer-loop, allowing
therefore for modules to disable them during the dependency resolution
Testing procedure
Dependencies should not have changed.
Issues/PRs references
Could be used by #17584