Standalone code comprehension tools and similar features of integrated development
environments (IDE) both aim to support the development and the maintenance of large
(legacy) software. When applied to actively developed projects, it is essential to
process the most recent revision of the source code in real time. Since a complete
analysis of the codebase might take up significant time (even hours), the inclusion
of incremental parsing is indispensable. However, the utilized build system of a software
project is tightly coupled with the source code: over the time not only the content
of the source files can be amended, but translation units can be added or removed
and the parameters of the existing build instructions might also change.
This paper intends to describe how the incremental update of the build system of a
software facilitates the maintenance of the software workspace database in a code
comprehension tool by completing the workflow of incremental parsing. We describe
why including the build system in incremental parsing is relevant as well as the actual
method of parsing build commands. We show that updating the build system is more cost-effective
to a ratio than disposing of the existing build command database. The paper also compares
the incremental parsing of build systems to that of actual source code.