> Qbs has by definition more features than cmake because it is a make tool.
I understand Qbs may have greater potential by design, but it has far less features than CMake today. I refer features as ability to detect various components, such as CUDA, OpenGL and support many platforms. However I don't claim Cmake is perfect, i.e. it has ugly confusing syntax (yet it is just a matter of getting used to that). So far I managed to build & run Qbs on my Mac. However I can't see any advantage over Qmake (yet?), of course from my standpoint as potential Qbs user. It takes few seconds to start qbs qt-creator rebuild (reading BG from disk), where it is almost instant for LLVM/Clang ninja build. Moreover it takes more to build qt-creator with Qbs (20min) than Qmake+make (18min). Also it doesn't support precompiled headers, at least not for qt-creator, where Qmake+make+PCH goes down to 9min. > Neither cmake nor qmake build anything, they just generate makefiles or > project files. In that respect qmake and cmake are quite alike. Qbs is a > full-featured build tool: it takes care of generating the DAG *and* executing > it. It’s like qmake and ninja in one. Qbs doing both configure & build isn't really advantage to me. Once Qbs have similar feature coverage as CMake and (re)builds faster than ninja, or maybe generates less bloated ninja/Makefile/Xcode projects, supports some caching, or distributed build and finally has decent documentation, then it may be considered as new promising alternative. Opposite, I take as advantage ninja being little independent build only tool, because anyone can decide how to generate build files for Ninja. > In the long run I think Qt either need Qbs as the default build system, or > ninja support in qmake. Agreed. > Ninja makes all the difference when building llvm. On a modern system I can > get null llvm rebuild times on the order of 100ms with ninja, and under a > second with a single changed .cpp file - and that’s a big project. The 1 > second single-file rebuilds on fairly small make-based projects (like > examples bundled with Qt) are really bad. With cmake+ninja, a single changed > .cpp rebuild of a small Qt example on OS X takes about 250ms. Yes, this was whole point starting this thread. Working on big project with ninja is awesome if you rebuild and run many times. Also I wish to express my thanks to Qt developers for great CMake+ninja support in Qt Creator, as IMHO Qt Creator is best C++ editor (IDE) around the globe. Working with such huge codebase like LLVM/Clang is a pleasure in QtC. Regards, -- Adam _______________________________________________ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development