[GNC-dev] Dependency graphs

Christian Gruber christian.gruber at posteo.de
Sun Feb 9 16:27:12 EST 2020


Hi Geert,

I tried to generate a dependency graph now as well using CMake. And I 
played around a little bit with configuration using a 
CMakeGraphVizOptions.cmake 
<https://cmake.org/cmake/help/latest/module/CMakeGraphVizOptions.html> file.

I have two suggestions:

  * set(GRAPHVIZ_EXTERNAL_LIBS OFF)
  * set(GRAPHVIZ_IGNORE_TARGETS "test-*")

Furthermore it seems useful to set graph attribute rankdir to "LR" when 
invoking dot (-Grankdir=LR).

I attached a dependency graph using these settings built from current 
maint branch.

I was wondering why there are no scheme targets included. But then I saw 
that CMake is currently not able to include custom targets into the 
dependency graphs and scheme targets are custom targets.

Regards,
Christian


Am 08.12.19 um 14:55 schrieb Geert Janssens:
> While discussing cmake target dependencies on irc with Chris I started
> wondering how hard it would be to visualize our current dependency tree.
>
> Turns out with cmake it's pretty straightforward to export the dependency info
> in a format that's understood by the graphviz tool.
>
> So I have created two graphs: one for current maint and one for current
> master.
>
> My plan is to put them in the wiki for reference, together with the commands
> used to create them. Currently the wiki won't allow uploads of svg files, so
> that bit has to wait some more.
>
> Meanwhile I'll post them here for those interested.
>
> Regards,
>
> Geert
>
> _______________________________________________
> gnucash-devel mailing list
> gnucash-devel at gnucash.org
> https://lists.gnucash.org/mailman/listinfo/gnucash-devel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: gnucash-maint-58ddb47.svg
Type: image/svg+xml
Size: 71845 bytes
Desc: not available
URL: <http://lists.gnucash.org/pipermail/gnucash-devel/attachments/20200209/190a9c5c/attachment-0001.svg>


More information about the gnucash-devel mailing list