Improve include dependency script
authorTeemu Murtola <teemu.murtola@gmail.com>
Fri, 13 Dec 2013 18:48:32 +0000 (20:48 +0200)
committerGerrit Code Review <gerrit@gerrit.gromacs.org>
Tue, 7 Jan 2014 05:24:19 +0000 (06:24 +0100)
commit1e06bdef560077e074f907611a152783e9d0a41b
treee2f8229958acd91e801a85fee2edf953bd28e7d5
parent05488f3c1bed1d3ed7bafad1427c5c4db44a2a15
Improve include dependency script

- Make the depcheck, doccheck, and depgraphs targets work on the whole
  src/gromacs/ directory.  Now it is possible to run these checks on new
  or reorganized code without touching the scripts themselves.
- Fix the script to correctly recognize relative paths in #include
  directives again.
- Fix some issues the script complains about, and suppress some messages
  within the script itself.
- Make the colors in the module dependency graph somewhat more
  intuitive, and show legacy dependencies in gray instead of bright red
  to make it look reasonable.
- The module dependency graph now includes the legacy modules
  (gmxlib etc.) as well, with a gray background.  This makes the graph a
  bit messier, but still readable (in particular since most of the lines
  to and from them are gray, making them fade into the background).

Now, 'make depcheck' doesn't report any issues, and we should keep it
that way.  'make doccheck' (with the current, somewhat relaxed rules)
reports only a few issues that should be relatively easy to fix, but
left those for separate changes.  Other Doxygen documentation checks
(not only about file dependencies) could also perhaps be included in
this same target.

Change-Id: I3f837c69f2608d2a6a25ed4062102d252a85a0cf
13 files changed:
admin/includedeps.cmake
admin/includedeps.py
src/gromacs/fft/fft.h
src/gromacs/gmxana/legacytests/gmx_traj_tests.cpp
src/gromacs/mdlib/groupcoord.h
src/gromacs/mdlib/nbnxn_cuda/nbnxn_cuda_kernels.cuh
src/gromacs/selection/centerofmass.h
src/gromacs/selection/selvalue.h
src/gromacs/timing/cyclecounter.h
src/gromacs/trajectoryanalysis/modules.cpp
src/gromacs/trajectoryanalysis/modules.h
src/gromacs/utility/gmxomp.h
src/testutils/integrationtests.h