4 ms·
Given blaze and it's descendants have all the megacorp mind share, in which industry/environments is cmake king?
by codemac 4y ago
Given blaze and it's descendants have all the megacorp mind share, in which industry/environments is cmake king?
- nickelpro 4y agoThe C++ industry/environment The latest Jetbrains survey has cmake usage at 57%, Bazel 3%, and Meson 2% [1] Cmake isn't competing with Bazel and Meson, Bazel and Meson are interesting and worth talking about, but as a percentage of developer share they're irrelevant. Cmake is competing with legacy, the 33% of developers who still interact Make and VS Projects [1]: https://www.jetbrains.com/lp/devecosystem-2022/cpp/ https://www.jetbrains.com/lp/devecosystem-2022/cpp/
- codemac 4y agoSure, I also don't know anyone who uses jetbrains at work. I've only programmed in C and C++ for 20 years professionally, and I've never used CMake. I'm just in a very specific bubble, so I was curious what the others were.
- nickelpro 4y agoI guess I wouldn't think of cmake as a bubble, it's a part of the ocean the bubbles float in. Blaze/Bazel are a bubble, the only place they see a lot of use are Google-involved projects. Facebook, MS, Bloomberg, are heavy into CMake. Bloomberg notably so, and MS built vcpkg which is basically a CMake package distribution system. Netflix is mostly a Java/Scala house, and what C/C++ they do have sort of uses a "whatever" approach to build systems (variously, make, cmake, bazel, bash scripts, *gradle*). "Where is CMake used" is a difficult question. Everywhere.
- codemac 4y agoYes, I'm trying to state openly that I am in a bubble :P > Facebook [&c] are heavily into CMake As an employee, I can tell you this is not accurate re: C++ dev at FB. I'm sure someone somewhere is using it heavily, but largely we use buck, our build system.
- JohnFen 4y agoI've also never worked at a place that used CMake, but I do see it used a fair amount in OSS. I'm not allergic to CMake. It seems fine. Ugly and a bit baroque, but it's hardly the only tool like that.