Changing compiler options

Andreas Pakulat apaku at gmx.de
Thu Nov 1 18:45:24 UTC 2012


Hi,

On Tue, Oct 30, 2012 at 12:19 PM, Gilles Caulier
<caulier.gilles at gmail.com> wrote:
> 2012/10/30 Andreas Pakulat <apaku at gmx.de>:
>> On Tue, Oct 30, 2012 at 10:52 AM, Ben Cooksley <bcooksley at kde.org> wrote:
>>> Recently build.kde.org ran into some problems with building libkdcraw,
>>> due to CMake using the -std=iso9899:1990 option with GCC.
>>> It seems that this appears to be incompatible with LCMS' use of inline
>>> functions.
>>
>> I don't think CMake does this itself. I can at least not find this
>> anywhere in the platform cmake files that are usually used to setup
>> the default arguments used for compiling something. Are you sure this
>> is not set by the project in question or one of the non-core CMake
>> modules it uses to find its dependencies?
>
> Yes, i'm sure. Code is here :
>
> https://projects.kde.org/projects/kde/kdegraphics/libs/libkdcraw/repository/revisions/master/entry/libraw/CMakeLists.txt#L305
>
> I already traced where  -std=iso9899:1990 option is plug. It come from :
>
> CMAKE_C_FLAGS:  -Wno-long-long -std=iso9899:1990 -Wundef -Wcast-align
> -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W
> -Wpointer-arith -Wwrite-strings -Wformat-security
> -Wmissing-format-attribute -fno-common

Well, that does not prove that cmake sets this, at least CMake 2.8.9
has no reference to std in its standard platform files. On an empty
project CMAKE_C_FLAGS is set to an empty string. So I'm thinking that
the variable is set by some cmake file that libkcdraw uses directly or
indirectly.

Andreas


More information about the Kde-buildsystem mailing list