[CMake] CMake/Ninja support in Qt Creator
Wouter van Kleunen
wouter.van at kleunen.nl
Sun Sep 23 09:04:17 EDT 2012
I had the following idea to speed up the building even more, if a tool
can be build in ninja to list all files that need to be stat when
building a project. These files can be monitored by qtcreator and later
be provided as input again to ninja. So my idea works as follows:
1. Build project using cmake + ninja
2. Get file list of all dependencies by using ninja (something like
ninja -t deplist).
3. Monitor the files using qt creator + qfilesystemwatcher
When the user requests a rebuild:
4. Execute a ninja build command + provide the list of changed files.
This way ninja won't have to stat any file.
5. Ninja builds
Is this feasible ?
Op 22-9-2012 8:30, Loaden schreef:
> Works well under Ubuntu 12.04 + Ninja 1.0.
> Thanks a lot!
>
> 2012/9/20 Peter Kümmel <syntheticpp at gmx.net <mailto:syntheticpp at gmx.net>>
>
> On 19.09.2012 08:08, Wouter van Kleunen wrote:
>
>
> Peter,
>
> i had 2.8.9-pre3 before, i upgraded to 2.8.9. But only after
> deleting
> the CMakeLists user file from qtcreator, deleting the build
> directory
> and restarting qtcreator I was able to get the option to build
> with Ninja.
>
> Anyway, it seems to work fine now, and the building is much
> faster.
>
>
> I've uploaded a new version:
>
> - Now out-of-source project files are supported (for cmake projects).
> There will be two new files in the build folder CMake.qtcreator
> and CMakeLists.txt.user
> CMake.qtcreator should be opened with creator.
>
> - out-of-source is default, could be changed by a check box in the
> wizard
>
> - shipped ninja.exe (>1.0.0) is found automatically
>
> - generators are updated when cmake is selected in the wizard
>
> - a cmake warning about QT_QMAKE_EXECUTABLE could be suppressed
> when the project doesn't use Qt
>
> Peter
>
>
>
>
> Wouter
>
>
> Op 18-9-2012 22:50, Peter Kümmel schreef:
>
> Hi Wouter,
>
> you need the latest cmake version, 2.8.9.
>
> Under Tools/Options/Build&Run/CMake
> the ninja binary could be set, or have it PATH.
>
> Peter
>
> On 18.09.2012 22:29, Wouter van Kleunen wrote:
>
>
> So how do you make it to use ninja ? Should I enable
> ninja somewhere ?
> Because when I run cmake from the gui it now still
> generates nmakefiles.
>
> Wouter
>
> Op 17-9-2012 18:08, Peter Kümmel schreef:
>
> Qt Creator 2.6 is beta now.
>
> On github I've uploaded a patched version with
> Ninja support for CMake
> based projects:
>
> https://github.com/syntheticpp/qt-creator/downloads
>
> When CDB is installed
>
> http://doc-snapshot.qt-project.org/qtcreator-2.5/creator-debugger-engines.html#supported-cdb-versions
>
>
> debugging works even with the 32bit/64bit
> compilers of Visual Studio
> Express 2012.
>
>
> Currently I'm trying to bring the patches
> upstream, but for 2.6 it
> seems too late.
>
> Peter
> --
>
> Powered by www.kitware.com <http://www.kitware.com>
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the CMake
> FAQ at:
> http://www.cmake.org/Wiki/CMake_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.cmake.org/mailman/listinfo/cmake
>
>
>
>
>
> --
>
> Powered by www.kitware.com <http://www.kitware.com>
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the CMake FAQ at:
> http://www.cmake.org/Wiki/CMake_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.cmake.org/mailman/listinfo/cmake
>
>
>
>
> --
> Best Regards
> Yuchen
>
>
>
> --
>
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.cmake.org/mailman/listinfo/cmake
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20120923/74cad6be/attachment-0001.htm>
More information about the CMake
mailing list