gnumake module deps ...
Michael Meeks
michael.meeks at suse.com
Mon Mar 11 04:32:25 PDT 2013
On Sat, 2013-03-09 at 23:39 +0100, David Ostrovsky wrote:
> You are a funny one ;-)
> First you are starting that project on write only language and then
> looking for a mantainer??? ;-)
Hah ;-) seems you defeated the write-only language at the first attempt
however; nice work.
> so we have now manual page with developer guide, just try
> bin/module-deps.pl --man
Beautiful - all the changes look great.
> As Stephan pointed out we have "include only" dependencies that we
> should take care of. Anyway now we have something that start to make sense:
>
> http://ostrovsky.org/libo/lo.png
> http://ostrovsky.org/libo/lo.graphviz
Nice - then again, it looks a little different ( I rather preferred the
library graph - it seemed simpler - can we have an option to print that
out as well ?).
One thing I noticed in this graph was (perhaps as an artifact of it's
production), that the raft of pure UNO components depending on just
comphelper seems to have mostly gone ;-) which IMHO confuses the
picture; some oddnesses: eg. 'UnoXML' depends on sax and comphelper -
but sax depends on comphelper itself - look like they may point to some
redundant linkages (?).
I suspect that if we instead of do the create_lib_module_map higher up:
my $tree = clean_tree($deps)
my $reduced_tree;
if ($arg_dump_modules) {
$reduced_tree = collapse_libs_to_modules($tree);
} else {
$reduced_tree = $tree;
}
prune_redundant_deps($reduced_tree);
dump_graphviz($reduced_tree);
Where the collapse_libs_to_modules would just build a new list of
collapsed module nodes from the library ones - renaming each of the
library deps as it went.
Then we might get a more precise redundancy pruning & hence prettier /
more minimal graph again. There are other examples of deps that jump out
eg. slideshow->cppcanvas->canvas and also direct ->canvas etc.
> Let me print it on say 2-3 meters and bring it to the next Hackfest/LO
> Congress ;-)
Quite ! it's starting to look rather sexy.
Having said that if someone can create the graphviz fragment that would
group lots of modules eg. animations, binaryurp, io, desktopbe1 etc.
into a single vertically listed meta-module - then I'd be happy to
collapse the horizontal width to aid readability with that.
Anyhow,
Thanks David !
Michael.
--
michael.meeks at suse.com <><, Pseudo Engineer, itinerant idiot
More information about the LibreOffice
mailing list