kicad-developers team mailing list archive
Mailing list archive
Re: [PATCH] Adapt CMake 3.0 compatibility code for C++14
On 2019-07-17 13:53, Simon Richter wrote:
On Wed, Jul 17, 2019 at 01:24:26PM -0400, Seth Hillbrand wrote:
Any reason to be using the gnu++14 extensions? I thought we were
trying to stay with the vanilla c++14.
I went for consistency. This code is pretty much unused anyway, since
only handles the very old CMake versions that don't know the properties
that's why there is a version check in front that causes a fatal error
someone bumps the minimum CMake version without removing the
We currently have the respective compiler extensions enabled (both GNU
Visual Studio), because we don't have
set( CMAKE_CXX_EXTENSIONS OFF )
The problem is that doing that breaks msys2 builds with wx 3.0, because
provides a POSIX-compliant strlen implementation as an extension that
becomes unavailable in standards-compliant mode. A wx header decides to
redirect missing functions to replacements in the DLL, but building the
with extensions enabled means that the function is missing -- so builds
with -std=c++14 fail to link with a missing symbol.
I dimly remember that this is fixed in wx 3.1 (just provide the CRT
functions unconditionally), but I can't find the bug report anymore.
Got it. Thanks Simon! Patch is pushed.