lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

LilyPond C/C++ #include cleanup


From: Andreas Scherer
Subject: LilyPond C/C++ #include cleanup
Date: Tue, 16 Nov 2004 12:06:57 +0100
User-agent: KMail/1.7.1

Hello list,

Has anyone considered to apply Doxygen to the LilyPond sources?  I'm aware 
that the internal comments are not doxygen'erated, however, Doxygen is 
capable to analyze plain C/C++ codes and to generate at least rudimentary 
"documentation" in various output formats.

One of the major advantages is the creation of graphical displays of specific 
aspects of a bundle of source codes, e.g., class hierarchy, class graphs, and 
include/included-by graphs.  With the tool doxywizard (1.3.9) I have created 
a rudimentary "Doxyfile" and run Doxygen over the CVS content of current 
LilyPond.  This definition file is attached to this submission for those who 
would like to apply Doxygen themselves.

Now, when I click through the HTML "documentation" and look at the images of 
the include graphs, I find that many "#include" directives are redundant, 
i.e., define transitive connections between header a/o source files (plus at 
least one cyclic dependency between "flower/include/string.hh" and 
"flower/include/international.hh").  It is common knowledge (John Lakos and 
other experts come to mind) that the #include hierarchy can be an important 
backbone of a C/C++ software system as well as an elementary entry point to 
understanding such a system.

If there is interest in this group for such an improvement of the C/C++ 
sources of LilyPond, I would volunteer to make the necessary modifications, 
i.e., to remove the superfluous #include directives, while guaranteeing the 
correct compilability of the system.  Any comments?

Cheers,
Andreas

Attachment: Doxyfile.gz
Description: GNU Zip compressed data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]