[OE-core] [PATCH] sstate: add manifest info for shared file matches

Martin Jansa martin.jansa at gmail.com
Fri Oct 19 11:29:20 UTC 2012


On Fri, Oct 19, 2012 at 12:07:05PM +0100, Richard Purdie wrote:
> On Fri, 2012-10-19 at 12:55 +0200, Martin Jansa wrote:
> > On Thu, Oct 18, 2012 at 12:25:05PM -0700, Saul Wold wrote:
> > > Present the manifest file that contains the matches for
> > > files being installed to a location that already contains
> > > that file. This will help to determine which is the correct
> > > recipe to fix when this occurs.
> > > 
> > > [YOCTO #3191]
> > 
> > Can we do the same when removing files from sysroot?
> > 
> > To catch errors like this:
> > http://git.openembedded.org/openembedded-core/commit/?id=6b12d4cd39bacb087654b59e25f5052a4e839b26
> > 
> > 12:40:15 < JaMa> it depends on order of tasks
> > 12:41:27 < JaMa> gettext-native depends on gettext-minimal-native, so gettext-minimal-native installs own config.rpath to sysroot (when gettext-native "owns"
> >                  it too)
> > 12:41:55 < JaMa> then gettext-native is built and before populting sysroot it removes own files there (including config.rpath)
> > 12:43:45 < JaMa> and because sstate assumes that every file in sysroot is provided by exactly one recipe, gettext-minimal-native looses his config.rpath
> > 12:44:49 < JaMa> now there is at least warning when 2 recipes are installing the same file to sysroot, but that doesn't resolve this issues when some file is
> >                  "moved" between recipes
> > 12:47:30 < JaMa> because gettext-minimal-native is only recipe installing it
> > 12:47:39 < JaMa> and gettext-native is only removing it
> > 
> > If we check manifests from other recipes before removing files we can show warning that
> > gettext-native is trying to remove config.rpath now provided by gettext-minimal-native
> > and keep config.rpath in sysroot.
> 
> The plan is to make it a hard error if something installs a file that
> already exists. This issue will be resolved when that happens and I want
> to get there sooner than later.

For new recipes yes, but that does not resolve this case when one file
is moved from one recipe to another.
 
> Running the check at sysroot clean time is therefore going to complicate
> the code a lot and damage performance with no real end need...
> 
> > Now everybody doing incremental builds needs to call
> > bitbake -c cleansstate gettext-minimal-native
> 
> -c clean should be sufficient. I wish people would use appropriately
> sized hammers and this is why I never wanted cleansstate in the first
> place :(.

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20121019/108aa9b0/attachment-0002.sig>


More information about the Openembedded-core mailing list