Why is C90 enforced in KDE?

Scott Kitterman kde at kitterman.com
Mon Dec 7 15:41:06 GMT 2015


On Monday, December 07, 2015 04:33:37 PM Thomas Lübking wrote:
> On Montag, 7. Dezember 2015 15:54:40 CEST, Luca Beltrame wrote:
> > Given you've said this multiple times, with my packager hat on I'll just
> > mention this: just don't make it harder *for us* to work just because
> > you're targeting another platform.
> 
> I actually don't think this related at all.
> 
> Compiling C99 (beyond some minor additions like the comments, but that's not
> guaranteed to be the only usage) on MSVC is a general problem to begin with
> (if you care about elder versions of what MS calls a "compiler"), so
> Boudewijn's primary problem is the usage of flex/yacc to begin with and
> he'll prefer pre-translated C-fixed-to-90 (hello sed ;-) OR flex/yacc being
> translated to *.cpp (where "i build every shit and just guess what the
> developer meant" MSVC still sucks, but not that much)
> 
> Distros and notably self-builders would probably prefer such as well (less
> build time dependency, yeah!), so there's no conflict.
> 
> Otoh, developers will prefer to have flex/yacc in the CI and will require a
> cmake rule to include *.l & *.y in the source list (so it's regenerated on
> local changes) but otherwise there's (afaik) no strong reason to not simply
> ship the pre-translated sources (along the lex sources which are usually
> not invoked on build)
> 
> The situation is (afaik) slightly different w/ *.moc since you might run
> into "the moc that generated this header is too old" issues (latter
> happens, so we can/should not ship pre-built mocs; but I'm not sure whether
> such problems can show up with lex as well)

As long as you also ship the source, as a Debian packager, I'm happy.  We have 
to have preferred form of modification and the ability to rebuild from that 
source.  It's not 100% required that we rebuild, but how do you know you can, 
unless you do.  I don't mind the additional dependency at all.

My preference would be that on Linux, at least, if flex/yacc are detected, the 
rebuilding is automatic.

Scott K




More information about the kde-core-devel mailing list