If you think your project will have more than half a dozen developers then you should probably start thinking about something like Bazel. But both have their idiosyncrasies and Bazel for a small project is overkill.
If you think your project will have more than half a dozen developers then you should probably start thinking about something like Bazel. But both have their idiosyncrasies and Bazel for a small project is overkill.
https://github.com/llvm/llvm-project/blob/main/llvm/CMakeLis...
How many active contributors does LLVM have? Hmmm
https://github.com/pytorch/pytorch/blob/main/CMakeLists.txt
How many active contributors does PyTorch have? Hmmm
https://github.com/boostorg/boost/blob/master/CMakeLists.txt
How many active contributors does boost have? Hmmm
I could go on...
While it might look like technicality the number of projects that kept their own build systems is substantial. I would say there are dozens open and many more not so open build systems out there that support large projects and organizations. I don't see anyone rushing to "rewrite it in CMake" anytime soon. At least in gamedev where I work.
CMake was created in 2000 with large, cross-platform projects involving multiple organizations in mind. The development was funded by the National Library of Medicine (NLM) for the ITK project (https://github.com/InsightSoftwareConsortium/ITK). As of 2025, ITK consists of millions of lines of code and has received contributions from hundreds of developers. Other projects of similar scale include VTK and ParaView.