[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Testing parallel builds



On Fri, 12 Oct 2007 15:34:45 +0200, Pierre THIERRY <nowhere.man@levallois.eu.org> said: 

> Scribit Manoj Srivastava dies 09/10/2007 hora 00:04:
>> It is kinda scary that my typical ./debian/rules has a minimum of 61
>> targets, and that is just the base number.  But it sure makes for
>> pretty pictures :)

> How did you generate those dependency graphs, BTW? I didn't find
> anything relevant in the reverse dependencies of graphviz...

        Heh. It was simple:
 1) use sed to substitute '/#.*$//g' from target.mk, and pipe the output
    to 
 2)  grep for ^[^^I:]+:  in targets.mk (bot tab, not : stuff, followed
     by colons and save
 3) eliminate anything that is extraneous (nothing in my case)
 4) now, you have a file full of lines like 
    target target : deendency dependency (or ::)
 5) Write a little Perl script that reads that, and creates
    dependencies: for each target, add a dependency as needed, so the
    line above will break out into 4 dependencies.
 6) For all targets, spit out a node line
 7) for all targets, spit uout an edge line for all dependencies
 8) Go in with emacs and replace color values for different nodes, make
    some filled, others not, and so on. Not too bad, really.

        The interesting thing is, now I realize that my dependency graph
 is suboptimal: for example, if you wanted to do just arch-dependent or
 arch-indep packages, my new dependency graph does config for both arch
 dependenct and arch indep packages -- though only arch-dependent or
 arch-independent packages are created. This is because the dependency
 graph comes together at choke points.

        I need to change my Make dependencies to allow for parrallel
 dependency lines -- so you can build just arch dependent package, or
 arch-indep packages, and not have to go through targets on the other
 side.

        Would there be any interest in my final target dependency tree?
 Please let me know off-list.

        manoj
-- 
History tends to exaggerate. Col. Green, "The Savage Curtain", stardate
5906.4
Manoj Srivastava <srivasta@debian.org> <http://www.debian.org/~srivasta/>
1024D/BF24424C print 4966 F272 D093 B493 410B  924B 21BA DABB BF24 424C



Reply to: