[CMake] CMake/Ninja support in Qt Creator

Nils Gladitz gladitz at sci-vis.de
Mon Sep 24 05:04:44 EDT 2012


When I tried with one of my larger projects the first no-op build after 
a full build took something between 20 and 30 seconds but no-op builds 
after that were below a second.

I'm not really sure what would cause this (I guess disk or filesystem 
caching?).

Nils

On 09/24/2012 10:42 AM, Peter Kümmel wrote:
> On 23.09.2012 15:04, Wouter van Kleunen wrote:
>>
>> 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 ?
>
> I assume Qt Creator does it this way for qbs.
> But for ninja this would be too much work.
>
> You think even ninja is too slow?
>
> Peter
> -- 
>
> 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


-- 
Nils Gladitz, B.Sc.
DICOM, Konnektivität und Entwicklung

Scivis wissenschaftliche Bildverarbeitung GmbH
Bertha-von-Suttner-Str. 5
D-37085 Göttingen
GERMANY
Handelsregister Nr. / Trade Register No. B3100 Göttingen
Geschäftsführer / Managing Directors Dr. Gernot Ebel, Dr. Uwe Engeland

Tel: 0049 (0)551 634181-28
E-Mail: gladitz at scivis.de
Web: www.scivis.de



More information about the CMake mailing list