C++11 requirement?

Stephen Kelly steveire at gmail.com
Fri Aug 3 12:28:45 BST 2012


Hi there,

I learned recently that central parts of KDE Platform 4 are depending on 
C++11 features:

http://ivan.fomentgroup.org/blog/2012/08/02/module-giveaway-sessions-and-
activities-updated/

Using C++11 features in central parts of KDE Platform 4 effectively means 
that a C++11 compiler is needed for all of KDE Platform 4 (If you start with 
a non C++11 compiler, you'll only hit the hard requirement later after hours 
of compiling). So if any part of the KDE Platform 4 requires C++11, we need 
to have a CMake check in kdelibs ensuring that the required features of 
C++11 are available.

So, that surprised me, because it was not discussed at all here. I tried to 
find out what code is relevant to what Ivan wrote. 

It's presumably in 241f48a01d9d33e9d3bb193ac1aace4cf0f19737 "Merged 
activity-manager-v3 branch", which is not a merge at all, but a single giant 
patch (therefore making git blame git log and gitk useless in the entire 
repo from now on. Don't we care about history??? Ivan, please use --rebase 
when you pull, you're creating a lot of needless merges that don't 
communicate what a 'merge' usually needs to communicate).

So I don't even know which C++11 features are required now by KDE4, whether 
they are optional (eg guarded by macros), whether there is significant 
feature degradation without them, etc.

Notes:

* I didn't state my opinion on whether I think we should have a hard 
requirement C++11 in KDE4. I'm saying it was never discussed here.
* The question/answer for KDE Frameworks 5 is independent
* I think it's important to even attempt to discuss things like that with 
the community before going ahead and just doing it unilaterally.


So, lets do it now:

C++11 as a hard requirement for KDE Platform/Workspaces/Applications 4. 
Discuss.

Thanks,

Steve.






More information about the kde-core-devel mailing list