Why is C90 enforced in KDE?

Boudewijn Rempt boud at valdyas.org
Thu Dec 10 07:27:13 GMT 2015


On Thu, 10 Dec 2015, Boudhayan Gupta wrote:

> On 10 December 2015 at 12:04, Boudewijn Rempt <boud at valdyas.org> wrote:
>> I'm right now using msvc 2015 myself -- which gives other problems with
>> other
>> dependencies.
>
> Microsoft now has clang (running on the Microsoft Code Generator as
> well as LLVM) - maybe we could look into using that on Windows? It's
> supposed to be an (optional, IIRC) part of VS2015 and will be
> continually supported and updated.
>
> So if we can kick out cl.exe support, that's one less compiler
> frontend to support. Note that clang with Microsoft CodeGen is
> theoretically pretty much the same as cl.exe (in both cases the AST is
> converted to machine code by MSCG only), except that with clang we get
> superior parser and C++11/14 and C90 support.

Well, it's more like "building boost with msvc 2015 doesn't add the compiler
version number to the dll names, which means that the cmake code that looks for
boost fails to find the dll's, even though they are there, because the name
pattern cmake is hard-coded for fails, so you need to manually rename the
dll's" or "msvc 2015 still insists on really small stacks, so g'mic's stack
based recursive parser, which needs 8mb of stack minimum, runs out of stack".

It's all those effing little things that add up and make building an application
with a few dozen dependencies a herculean task. And every dependency seems to
have _something_. In the Qt4 days, Qt didn't want to link to zlib.lib, it needed
libzlib.lib, for instance.

-- 
Boudewijn Rempt | http://www.krita.org, http://www.valdyas.org




More information about the kde-core-devel mailing list