C++11 requirement?

Ivan Cukic ivan.cukic at kde.org
Fri Aug 3 12:54:53 BST 2012


> So, that surprised me, because it was not discussed at all here.

There was a discussion regarding this. This is not abour Platform 4.

The summary was:
- kdelibs need to be compilable with old compilers (all that Qt supports 
obviously)
- linux-specific parts can require gcc 4.5 (kwin, kactivities ...) for 4.10, 
with possibility to be increased to 4.6 after 4.10
- other things left kinda uncovered, but I guess 4.5 if they don't care about 
mac osx with gcc 4.2.

> 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

KAMD-specific answer:

So, the library in kactivities is compilable with any C++ compiler that 
compiles Qt.

The service will not be built if the compiler doesn't support some C++11 
features. The build should not break, if it does, please report.

Required features for KAMD:
auto - gcc 4.4
lambda - 4.5
unique_ptr - 4.3
variadic-templates - 4.3

*Optional* features (macro-defined if not supported)
nullptr - 4.6
override - 4.7

So, no, Platform 4 doesn't require C++11.

> 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).

I sometimes do this when the history of the branch is bad - in the case of 
refactoring most of the time.

Cheerio


-- 
You know, there are many people in the country today who,
through no fault of their own, are sane. Some of them were born sane.
Some of them became sane later in their lives...
  -- Monty Python's Flying Circus





More information about the kde-core-devel mailing list