One other note that might help you - the key to using clang-tidy without completely overhauling your build system is generating a compile_commands.json file, which is a format that most clang tools can use as input - including clang-tidy.
Several projects aim to bridge the gap here. I have no personal experience with them, since we decided to go the route of CMake for other reasons, but we looked into them at the time.
https://github.com/nickdiego/compiledb-generatorhttps://github.com/rizsotto/Bearthese work as a sort of wrapper to make, in which your command line to build your project becomes (in the case of bear)
"bear make" instead of just "make"
They they run your normal make build, taking note of everything that happens during the build and in the end spit out compile_commands.json for you to pass to clang-tidy.
The main downside to both compiledb-generator and Bear is lack of support for windows platforms (which was ultimately the dealbreaker for my needs).