Looks like +Eric Raymond
and collaborators have been doing spectacular work on NTP. This looks to have a lot of parallels to what I've been doing with GDAL with help from Even and a few others behind the scenes. With GDAL it's less about the build system. I don't feel like touching the autoconf right now. One thing that I haven't seen ESR mention is test coverage. For me, it's been productive to use tools like AFL to do fuzz testing and use the code path tracing to help generate better test coverage. In old code, it can be difficult to figure out what test input to give to make sure you hit all the error cases so you can check that errors are handled as expected. Eric, I'd be curious to hear your take on test coverage for legacy code.
GDAL is C++, so we've got some different set of tools and issues than straight C99. Here is an example of one of my cleanup changes. Really boring, but hopefully the results are easier to read, easier to work with for future maintainers and easier for static and runtime analyzers to work through. Things like ASAN/MSAN/TSAN and the automatic build systems really make this work easier.