On Thu, 14 Feb 2002, R.I.P. Deaddog wrote:

> On Thu, 14 Feb 2002, Alexander Skwar wrote:

> Definitely. Most of the extra BuildRequires results from missing
> Requires in devel packages. Fixing this is possible, but requires
> human eyes instead of any sort of automagic scripts, since there's
> some black magic not detectable such as
> 
> #if 0
> #include <blah.h>
> #endif

... Actually, this turns out not to be the case;  

There is a script which walks the rebuild process 
(forget the name at the moment) and does essentially:

1. Build in a chrooted environment from a known base; 
        Pre-install any 'BuildRequires hints' in existing 
        .spec file
2. Auto detect a failed build and install the needed 
        BuildDependency
3. Repeat until it builds
4. Using file, check every changed file access time, 
        generating a list
5. Using   rpm -qf --qf '%{name}\n'   build a list of all 
        owning packages called.
6. Sort | uniq | grep -v anything in the absolute minimum base 
        install | grep -v 'existing hints'

What is left is all of the new BuildRequires: of that package
-- add to .spec file -- restore base build environment to a
pristine state -- go to next package

I am working on a variant of of this for the LvR project.

- Russ Herrold



Reply via email to