[riot-notifications] [RIOT-OS/RIOT] WIP CLEANUP TESTING NEEDED pkg/pkg.mk: use intermediate state files (#11553)
notifications at github.com
Mon May 20 16:42:52 CEST 2019
### Contribution description
Rely on file creation and dependencies instead of .PHONY targets.
Files will be rebuilt when changing version as the main `Makefile` will
have been updated. All steps are re-done on version change.
When deleting patches, the '.prepare' step should be redone thanks
to the included 'patch-dep.inc' file (TODO TEST ME).
Implementation in order:
* '.git': means the repository has been cloned.
* '.git-downloaded': Fetches the wanted version
* '.git-prepared': will clean checkout the version and apply patches
Somehow the base is that `patching` can only be done on the correct commit, so lets do it all at once.
* This is a one commit change to first see if it makes sense at all.
* This currently do not use the 'smart fetch' from https://github.com/RIOT-OS/RIOT/pull/11491
* Some parts may be possible to not re-do. Maybe the `.prepare` should use the content of `.git-downloaded` instead of the variable.
* Did not remove the `::` rules but should maybe be the occasion to clean this.
Should git-downloaded be updated only with `lazy_sponge` to not trigger more rebuild ?
I think `.git-prepare` must be always re-done as the package makefile may do further modifications afterwards… so not sure it would change anything
Change so that packages include `pkg/pkg.mk` earlier. Some packages use `PKG_BUILDDIR` before it is defined.
Update to use `$(PKG_PREPARED)` instead of the .PHONY target.
### Testing/Reviewing procedure
* Build all packages (lets see CI)
* See if it is indeed incremental
* See if it detects package deletion
* Any ideas on what to test ?
### Issues/PRs references
Discussions coming out of https://github.com/RIOT-OS/RIOT/pull/11491
You can view, comment on, or merge this pull request online at:
-- Commit Summary --
* WIP CLEANUP TESTING NEEDED pkg/pkg.mk: use intermediate state files
-- File Changes --
M pkg/pkg.mk (77)
-- Patch Links --
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the notifications