[Development] Announcing moc_combine
Oswald Buddenhagen
oswald.buddenhagen at qt.io
Tue May 31 11:24:14 CEST 2016
> On segunda-feira, 30 de maio de 2016 17:53:48 BRT Marc Mutz wrote:
> > So this would meet everyones requirements: a single moc run on all headers
> > (and cpps) of a library, generating one output file with one large data
> > table, and one file per class (or file), to be included in the class' .cpp
> > file.
>
sounds sensible.
On Mon, May 30, 2016 at 02:43:32PM -0300, Thiago Macieira wrote:
> Except one requirement: the buildsytem. Each build target must produce exactly
> one output file. Anything else is not representable.
>
> $ gmake -f /dev/stdin foo bar <<<'foo bar: ; true'
> true
> true
>
that's a pretty bad test, as you're not using a file as a dep to
synchronize on.
also, we already employ a mild hack to represent compilers with multiple
outputs in several places (e.g., yacc.prf).
> I also don't like that the string tables and other details would be extern
> symbols. Right now, they are static. For Qt code, we do have -
> fvisibility=hidden, but that's not required for users' code
> (though we could force Q_DECL_HIDDEN).
>
and why wouldn't we? it's auto-generated code ...
> > This would even preserve Q_PRIVATE_SLOT, leading to less churn
> > (unless that transition is desireable for other reasons than
> > "doesn't work with moc_combine").
>
> It's desireable in most cases, but it's not always easy.
>
can you get any more cryptic? ;)
More information about the Development
mailing list