I'm starting a new project and need to pick a build system. I hate having to manually add every C++ source file to my build rules, because it's the kind of thing that should be automated by 2016 and it makes for extra busywork when refactoring (rename the class in the header, and the source file, and the build system file...).
I was starting to use CMake with recursive file globbing when I came across this post: Specify source files globally with GLOB?
Which suggests that globbing is evil, because of CMake using two phases for builds (cmake and make) and in normal use the user only rerunning the second phase (make).
At first glance Bazel also allows file globbing. Is it evil to use with Bazel? Is running find
over a code base such a scaling problem that build systems really need to avoid it?