-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Makefile.include: remove rule to remake PKGs' Makefile.include #10344
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
Makefile.include: remove rule to remake PKGs' Makefile.include #10344
Conversation
Makefile.include
Outdated
| $(RIOTPKG)/%/Makefile.include:: | ||
| $(Q)"$(MAKE)" -C $(RIOTPKG)/$* Makefile.include | ||
|
|
||
| $(USEPKG:%=$(RIOTPKG)/%/Makefile.include): FORCE |
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.
This next line should go away too.
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.
done
|
This is in theory an API change as a package could rely on this rule to define a dynamic Also currently, no packages are using this at all as they all define a even if a package could be without a |
|
This also removes unneeded output In master. I even needed to remove them for the Release-Specs test script: |
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.
By checking for other usage of RIOTPKG/*/Makefile.include I found another line that should be cleaned: (git grep -n Makefile.include | grep PKG)
all $(BASELIBS) $(USEPKG:%=$(RIOTPKG)/%/Makefile.include) $(BUILDDEPS): clean
https://github.com/RIOT-OS/RIOT/pull/10344/files#diff-ebbb3165b3276a049759e5cb4e04d6a4R482
You can squash directly with this change. I would do a last check after but I should be good to ACK.
41dad19 to
71747bf
Compare
71747bf to
1a08387
Compare
|
I rebased on top of #10456 . I should have just cherry-picked those three commits, but it's done already. |
|
Please rebase as #10456 is merged. |
1a08387 to
59f2e48
Compare
|
Rebased. |
|
To notify next developers ending up here by bisecting, this PR could introduce other issues where running |
|
I will try running the compilation all applications for |
|
I currently cannot build in docker with this as the |
|
I will do a PR. |
|
I am re-running the local tests rebased on top of #10461 . |
|
I could re-run all compilation in parallel for And also without Except one error that is unrelated, and was there before that I will fix in a dedicated PR. Please rebase as |
59f2e48 to
8945a95
Compare
|
Rebased. |
This rule is not being used, it complicates the makefile and causes make clean to permform unnecessary actions. All packages have a Makefile.include, so the rule is not needed anyways. Also, it is defined with a double colon for no reason.
cladmi
left a comment
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.
ACK I agree with removing these Makefile.include targets.
Also the parallel building was tested.
If there are a need for something like this, it should be handled in the pkg/Makefile.include itself.
But if it does, it should not create or modify files in the source tree. |
|
You can directly merge when murdock is green. |
Contribution description
This rule is not being used, it complicates the makefile and causes make clean to permform unnecessary actions.
All packages have a Makefile.include, so the rule is not needed anyways:
Also, it is defined with a double colon for no reason.
Testing procedure
Everything should continue to work as always (this can be tested by the CI.)
Run
make cleanfrom the RIOT base with and without this commit. Without this commit you will see that there are severalMakefile.includethat are processed for nothing.Issues/PRs references
Undoes part of #576.
Depends on #10456 (fixes weird make concurrency issues).