On tor, 2003-11-06 at 11:58, Paul de Vrieze wrote: [SNIP] > There are basically only two ways to do rebuilding when necessary: > - - use a revdep like approach. This does not work perfectly and is a big > resource drain as all libraries and binaries need to be checked for a > dependency on the lib. Further this does not work for on-demand loaded > libraries so is only a partial "solution". It is basically a shotgun > solution that still manages to miss things. > Well - one way of detecting this, could be to only look through every installed packages USE flags (as used on compile) and look for the use flag for the certain package. This will handle openssl upgrades atleast. In regards to gcc and glibc, we know they all depend on it - so we needn't check that much - only need to set a timestamp, and until every program on the machine, has been recompiled (so their timestamp is newer than when gcc/glibc was upgraded) the gcc or glibc libs, has to be available.
IMHO we could devise a logic like this, that would work. If we need more finetuned stuff, portage should save this info, while compiling the package (as it saves USE flags and other things), so we can just wade through the package-info files. Using a db3 or db4 format for this, would probably not be all bad :) v0.1 doesn't have to be bullitproof - it should just catch the obvious ones (which are the ones which have their own useflag IMHO),and ofcourse be the right way, so it can be improved upon for next release. > - - Devise a way that emerge knows (either automatically or specified) that > the libraries in a package have changed and rebuild all packages that > depend on the package. Finding out the change automatically should not > be too complicated. However finding out which packages need to be > rebuild is. Especially since dependencies can be indirect. This > approach is a lot cleaner although even here there can be no guarantee > of correctness. > > I like the second way. However it requires significant changes to portage > so is unlikely to happen soon. > I believe qpkg implemented some reverse dependency thing - where it can show you what packages depend on it - rather quickly. It may not be perfect though ? -- Regards, Klavs Klavsen, GSEC - [EMAIL PROTECTED] - http://www.vsen.dk PGP: 7E063C62/2873 188C 968E 600D D8F8 B8DA 3D3A 0B79 7E06 3C62 See my new managed CMS Hosting Service at http://www.VirkPaaNettet.dk Working with Unix is like wrestling a worthy opponent. Working with windows is like attacking a small whining child who is carrying a .38.
signature.asc
Description: This is a digitally signed message part
