[Buildroot] [PATCH 13/15] Makefile: Rsync global {TARGET, HOST}_DIR using exclusion file list
Yann E. MORIN
yann.morin.1998 at free.fr
Fri Jun 25 12:50:18 UTC 2021
Hervé, All,
On 2021-06-25 13:59 +0200, Herve Codina spake thusly:
> On Thu, 24 Jun 2021 22:34:10 +0200
> "Yann E. MORIN" <yann.morin.1998 at free.fr> wrote:
> > On 2021-06-24 22:20 +0200, Yann E. MORIN spake thusly:
> > > On 2021-06-21 16:11 +0200, Herve Codina spake thusly:
> > > > On a per-package build, rsync final {TARGET,HOST}_DIR using
> > > > exclusion file list computed for each packages.
> > > > As we rsync only files generated by each packages, we need to
> > > > to do this rsync recursively on each dependencies to collect
> > > > all needed files. This is done based on existing
> > > > <PKG>_FINAL_RECURSIVE_DEPENDENCIES
> > > I am not sure I understand why this is needed...
> > >
> > > One thing that comes to mind is speedup. Indeed, now that we can ensure
> > > that packages only install new files and don;t change existing files, we
> > > can speedup the final aggregation by just handling the new files.
> > >
> > > But since we are using hardlinks, the aggregation is rather fast...
> > >
> > > Can you expand on the rationale in the commit log when you respin,
> > > please?
> >
> > Now I have seen the next patch, it makes sense. Yet, it should be
> > explained here nonetheless. ;-)
>
> The next patch just breaks the hardlinks had nothing to do with
> the use of <PKG>_FINAL_RECURSIVE_DEPENDENCIES here.
Oh, I was not commenting about the _FINAL_RECURSIVE_DEPENDENCIES, but
about the need for an exclusion list to begin with. I totally agree
witht the rationale for using _FINAL_RECURSIVE_DEPENDENCIES.
[--SNIP--]
> > And to begin with, why are we generating an _exclude_ list, rather than
> > an _include_ list?
[--SNIP--]
> > (Totally untested, slippery code, excersise caution.)
> Inclusion filter is not so simple ...
>
> In rsync man, we can read:
[--SNIP--]
Indeed, I see now. The rsync filter is not about listing files; it is
deciding what should be or should not be transferred. Anything that is
not filtered-out is transferred.
So OK, using an exclude list toally makes sense.
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
More information about the buildroot
mailing list