I have a few large projects I am working on in my new place of work, which have a complicated set of statically linked library dependencies between them.
The libs number around 40-50 and it's really hard to determine what the structure was initially meant to be, there isn't clear documentation on the full dependency map.
What tools would anyone recommend to extract such data?
Presumably, in the simplest manner, if did the following:
define the set of paths which correspond to library units
set all .cpp/.h files within those to belong to those compilation units
capture the 1st order #include dependency tree
One would have enough information to compose a map - refactor - and recompose the map, until one has created some order.
I note that http://www.ndepend.com have something nice but that's exclusively .NET unfortunately.
I read something about Doxygen being able accomplish some static dependency analysis with configuration; has anyone ever pressed it into service to accomplish such a task?