Cleaning up KDevelop's CMake

Milian Wolff mail at milianw.de
Mon Dec 9 23:38:41 UTC 2013


Please CC me, I'm not registered to this list.

Hey all!

When I configure KDevelop with CMake 2.8.12.1 I get tons of these warnings:

>  CMake Warning (dev) in sublime/CMakeLists.txt:
>    Policy CMP0022 is not set: INTERFACE_LINK_LIBRARIES defines the link
>    interface.  Run "cmake --help-policy CMP0022" for policy details.  Use
>    the
>    cmake_policy command to set the policy and suppress this warning.
>    
>    Target "sublime" has an INTERFACE_LINK_LIBRARIES property which differs
>    from its LINK_INTERFACE_LIBRARIES properties.
>    
>    INTERFACE_LINK_LIBRARIES:
>      KDE4__kdeui;KDE4__kparts;KDE4__kparts
>    
>    LINK_INTERFACE_LIBRARIES:
>      KDE4__kparts
>  
>  This warning is for project developers.  Use -Wno-dev to suppress it.

>From reading the docs, I cannot figure out what this means nor what I should 
do to get rid of these warnings. Should I just replace this by 
INTERFACE_LINK_LIBRARIES? But that cannot be backwards-compatible with older 
CMake versions, or?

Also, while at it: I want to enforce C++11 support in KDevelop master or what 
will become 4.7. What is the recommended way of doing it? Do I have to set 
INTERFACE_COMPILE_DEFINITIONS to "-std=c++11" for every library in 
KDevplatform? Or should I use "add_definitions"? I'll probably also need to 
set this only when the compiler ID matches GNU, Clang or ICPC, right? How is 
this handled for KF5?

Bye and thanks for the help!
-- 
Milian Wolff
mail at milianw.de
http://milianw.de


More information about the Kde-buildsystem mailing list