We have been using the Makedep perl scripts for over two years now, quite successfully. There have been a couple of problems, though which I have been trying to alleviate. One is the requirement for Perl on Win32, which is moot now that there is a full Perl distro in the lib bundle. The other is that the original code is very unreadable, and difficult to maintain. The original SF.net project seems to have gone into hibernation, and the owner hasn't responded to my emails.
Also, it would be a great benefit to us if we could process the data in various forms to analyze the inter-file dependencies, and maybe generate charts from it.
So, last week I did a reimplementation of the Makedep functionality in C++, calling it DepTool. The file was added to the tree this morning. The makefiles were tweaked to use it instead of mkdep.pl.
When it runs, it produces 3 files: make.files : a listing of all of the files which will be analyzed further make.dep : the OBJECTS and INCLUDES definitions, and the dependency list make.ref : a new thing, this is basically the inverse of a dependency list. It lists all .h files, and all files recursively which depend of them. This has the potential to be -very- useful.
It takes about 15 seconds to run on the /src directory. It -seems- like it is taking longer, but that it because it doesn't output progress info, to save CPU. It is actually -much- faster than Perl. This is with the added burden of make.ref, which is a slow search.
Let me know if you have any major problems with it.
bob