Binary archive/Only direct patches

1 view
Skip to first unread message

lland...@gmail.com

unread,
Nov 9, 2008, 1:36:23 PM11/9/08
to DepGraph
Hi all,

I'm using depgraph to show dependencies between glib/gstreamer
components.
So I wrote a new binary_archive nodefinder to list dependencies
between .o files inside .a files.
Here is a basic example :

Let's say you have compiled glib sources. You will have several .libs
directories created inside each
subdirectory of the glib sources (gio,glib,gmodule,gobject,gthread).
For each of theses directories,
pack every .o files into one .a. Then just launch :

depgraph -type binary_archive -location "../gio.a, ../glib.a,../
gmodule.a,../gobject.a,../gthread.a" -output test.dot

result: http://potipota.net/~djdeath/all_trans.svg

This will produces a nice graph of dependencies :)

The other thing is, now you want to display direct dependencies of the
gtimer.o object inside glib.a, then launch:

depgraph -type binary_archive -location "../gio.a, ../glib.a,../
gmodule.a,../gobject.a,../gthread.a" -output test.dot -only_direct
glib.a/gtimer.o

result : http://potipota.net/~djdeath/gtimer.svg

This will produce a nice display of the direct dependencies of
gtimer.o through all .a files.

Here is my plans :
- I want to pack every .o files from one .a into a box (just like this
http://www.graphviz.org/Gallery/undirected/fdpclust.html)
- integrate everything in a nice gtk2 gui to select which nodes have
to be removed to shrink the size of glib on embedded systems.

Hope you enjoy theses patches.

Regards,

--
Lionel Landwerlin

Daniel Cadenas

unread,
Nov 10, 2008, 8:40:42 AM11/10/08
to DepGraph
Thanks Lionel, I'll check it and patch depgraph as soon as I have some
free time

On 9 nov, 16:36, "llandwer...@gmail.com" <llandwer...@gmail.com>
wrote:
> Hi all,
>
> I'm using depgraph to show dependencies between glib/gstreamer
> components.
> So I wrote a new binary_archive nodefinder to list dependencies
> between .o files inside .a files.
> Here is a basic example :
>
> Let's say you have compiled glib sources. You will have several .libs
> directories created inside each
> subdirectory of the glib sources (gio,glib,gmodule,gobject,gthread).
> For each of theses directories,
> pack every .o files into one .a. Then just launch :
>
> depgraph -type binary_archive -location "../gio.a, ../glib.a,../
> gmodule.a,../gobject.a,../gthread.a" -output test.dot
>
> result:http://potipota.net/~djdeath/all_trans.svg
>
> This will produces a nice graph of dependencies :)
>
> The other thing is, now you want to display direct dependencies of the
> gtimer.o object inside glib.a, then launch:
>
> depgraph -type binary_archive -location "../gio.a, ../glib.a,../
> gmodule.a,../gobject.a,../gthread.a" -output test.dot -only_direct
> glib.a/gtimer.o
>
> result :http://potipota.net/~djdeath/gtimer.svg
>
> This will produce a nice display of the direct dependencies of
> gtimer.o through all .a files.
>
> Here is my plans :
> - I want to pack every .o files from one .a into a box (just like thishttp://www.graphviz.org/Gallery/undirected/fdpclust.html)
Reply all
Reply to author
Forward
0 new messages