On Fri, 12 Oct 2007 15:34:45 +0200, Pierre THIERRY <[EMAIL PROTECTED]> 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 <[EMAIL PROTECTED]> <http://www.debian.org/~srivasta/> 1024D/BF24424C print 4966 F272 D093 B493 410B 924B 21BA DABB BF24 424C -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]