On 31/05/2016 19:42, Thiago Macieira wrote:

This feature is nice for source distributions but isn't suitable for
code being developed.

We can easily disable it for developer builds.

Yes, please!

But note that due to rebases and touching central files like qglobal.h or
qobject.h, everything rebuilds anyway.

This depends on the area and branch you're working on.
I can see how you're affected. ;)

The best of both worlds would be if:
  * moc could output more than one file
  * moc could be run once for however many files needed updating
  * moc could be given the list of files that have changed, but no others

GNU make helps us for the last option:

$?

The good thing is, nmake also supports $?:
All dependents with a later timestamp than the current target.
[https://msdn.microsoft.com/en-us/library/cbes8ded.aspx]

I don't know how to implement the first two.

moc could output combined_moc.cpp which includes every moc_XXX.cpp.
The update run of moc then regenerates the single moc_XXX.cpp files.

This still leaves the issue that compilation of combined_moc.cpp will be slower for the incremental build case. So I'm not sure it's worth it. Turning moc_combine off for developer builds seems OK to me.


BR,

Joerg
_______________________________________________
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development

Reply via email to