diff --git a/src/libs/cplusplus/cplusplus-lib.pri b/src/libs/cplusplus/cplusplus-lib.pri
index 57b2e2ffdf8a40ca2642aa020811dbf261192e99..a48a23d11b684e12ad103f3080a15d95a1e80c68 100644
--- a/src/libs/cplusplus/cplusplus-lib.pri
+++ b/src/libs/cplusplus/cplusplus-lib.pri
@@ -53,9 +53,7 @@ HEADERS += \
     $$PWD/pp-engine.h \
     $$PWD/pp-macro-expander.h \
     $$PWD/pp-scanner.h \
-    $$PWD/ModelManagerInterface.h \
-    $$PWD/findcdbbreakpoint.h \
-    $$PWD/TypeHierarchyBuilder.h
+    $$PWD/findcdbbreakpoint.h
 
 SOURCES += \
     $$PWD/SimpleLexer.cpp \
@@ -82,8 +80,6 @@ SOURCES += \
     $$PWD/pp-engine.cpp \
     $$PWD/pp-macro-expander.cpp \
     $$PWD/pp-scanner.cpp \
-    $$PWD/ModelManagerInterface.cpp \
-    $$PWD/findcdbbreakpoint.cpp \
-    $$PWD/TypeHierarchyBuilder.cpp
+    $$PWD/findcdbbreakpoint.cpp
 
 RESOURCES += $$PWD/cplusplus.qrc
diff --git a/src/plugins/analyzerbase/analyzerutils.cpp b/src/plugins/analyzerbase/analyzerutils.cpp
index 902bac340400f22f8c64cc0f5e8ee925bf198a31..870cb160df485e92312a040d3b499b7e24c9ab3a 100644
--- a/src/plugins/analyzerbase/analyzerutils.cpp
+++ b/src/plugins/analyzerbase/analyzerutils.cpp
@@ -41,7 +41,7 @@
 #include <utils/qtcassert.h>
 
 #include <cplusplus/ExpressionUnderCursor.h>
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <cplusplus/LookupItem.h>
 #include <cplusplus/TypeOfExpression.h>
 
diff --git a/src/plugins/autotoolsprojectmanager/autotoolsproject.cpp b/src/plugins/autotoolsprojectmanager/autotoolsproject.cpp
index 132f80593754158d75c50b08b61778f704141d6c..79e58a9ca9c0bd2d41a7f2fd57e5f3454b563822 100644
--- a/src/plugins/autotoolsprojectmanager/autotoolsproject.cpp
+++ b/src/plugins/autotoolsprojectmanager/autotoolsproject.cpp
@@ -48,7 +48,7 @@
 #include <projectexplorer/buildsteplist.h>
 #include <projectexplorer/projectexplorerconstants.h>
 #include <extensionsystem/pluginmanager.h>
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <coreplugin/icore.h>
 #include <utils/qtcassert.h>
 
diff --git a/src/plugins/classview/classview_dependencies.pri b/src/plugins/classview/classview_dependencies.pri
index 19ddab5e9ad3da8f484f32f34bf5cfa4aa1e0a63..b130241048abdfacb7af9df820f4d182e26a2629 100644
--- a/src/plugins/classview/classview_dependencies.pri
+++ b/src/plugins/classview/classview_dependencies.pri
@@ -2,5 +2,4 @@ include(../../libs/utils/utils.pri)
 include(../../plugins/coreplugin/coreplugin.pri)
 include(../../plugins/cpptools/cpptools.pri)
 include(../../plugins/projectexplorer/projectexplorer.pri)
-include(../../libs/cplusplus/cplusplus.pri)
 include(../../plugins/texteditor/texteditor.pri)
diff --git a/src/plugins/classview/classviewmanager.cpp b/src/plugins/classview/classviewmanager.cpp
index e3e78ccbffca2e5dbe37ffaae315a1238f15c82d..d2bedb4f42ef7f906c6123ce76f57f584c5d5e39 100644
--- a/src/plugins/classview/classviewmanager.cpp
+++ b/src/plugins/classview/classviewmanager.cpp
@@ -40,7 +40,7 @@
 #include <projectexplorer/projectexplorer.h>
 #include <projectexplorer/session.h>
 #include <texteditor/basetexteditor.h>
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <cpptools/cpptoolsconstants.h>
 #include <coreplugin/icore.h>
 #include <coreplugin/progressmanager/progressmanager.h>
diff --git a/src/plugins/classview/classviewparser.cpp b/src/plugins/classview/classviewparser.cpp
index 0056918976be58cfaa6eedacf02b428ad046dd74..2eff6ab8e3ff03645d000ffa3818708990cdd453 100644
--- a/src/plugins/classview/classviewparser.cpp
+++ b/src/plugins/classview/classviewparser.cpp
@@ -41,7 +41,7 @@
 #include <Name.h>
 
 // other
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <cplusplus/Overview.h>
 #include <cplusplus/Icons.h>
 #include <projectexplorer/projectexplorer.h>
diff --git a/src/plugins/classview/classviewparser.h b/src/plugins/classview/classviewparser.h
index 07069918606502bf7429aae8529a12d3937b44fe..a74d7e4360855004e2b2bdeb9f941e7f80a6d427 100644
--- a/src/plugins/classview/classviewparser.h
+++ b/src/plugins/classview/classviewparser.h
@@ -38,7 +38,7 @@
 #include "classviewparsertreeitem.h"
 
 #include <CPlusPlusForwardDeclarations.h>
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <cplusplus/CppDocument.h>
 
 // might be changed to forward declaration - is not done to be less dependent
diff --git a/src/plugins/cmakeprojectmanager/cmakeproject.cpp b/src/plugins/cmakeprojectmanager/cmakeproject.cpp
index ba79dff82c438f6b4a473d13023b5a0259a4b4ff..8f70cfc19abf979c06c6533fc6c68fae4484bd17 100644
--- a/src/plugins/cmakeprojectmanager/cmakeproject.cpp
+++ b/src/plugins/cmakeprojectmanager/cmakeproject.cpp
@@ -47,7 +47,7 @@
 #include <projectexplorer/buildsteplist.h>
 #include <projectexplorer/buildmanager.h>
 #include <projectexplorer/toolchain.h>
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <extensionsystem/pluginmanager.h>
 #include <utils/qtcassert.h>
 #include <coreplugin/icore.h>
diff --git a/src/plugins/cmakeprojectmanager/cmakeuicodemodelsupport.cpp b/src/plugins/cmakeprojectmanager/cmakeuicodemodelsupport.cpp
index fb1a727936484726ea70be84d1c62bed20fa6511..1a4e427cf94aa5a2cae530c06dfe60717f984918 100644
--- a/src/plugins/cmakeprojectmanager/cmakeuicodemodelsupport.cpp
+++ b/src/plugins/cmakeprojectmanager/cmakeuicodemodelsupport.cpp
@@ -35,7 +35,7 @@
 #include "cmaketarget.h"
 #include "cmakebuildconfiguration.h"
 
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 
 #include <QProcess>
 
diff --git a/src/plugins/cmakeprojectmanager/cmakeuicodemodelsupport.h b/src/plugins/cmakeprojectmanager/cmakeuicodemodelsupport.h
index 2fe7cc0ffc001bdcf5f54cdd9ededd9185fe4253..b04b9a5f8bfdd773baf314e5f2e5501204be95fc 100644
--- a/src/plugins/cmakeprojectmanager/cmakeuicodemodelsupport.h
+++ b/src/plugins/cmakeprojectmanager/cmakeuicodemodelsupport.h
@@ -33,7 +33,7 @@
 #ifndef CMAKEUICODEMODELSUPPORT_H
 #define CMAKEUICODEMODELSUPPORT_H
 
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <cpptools/uicodecompletionsupport.h>
 
 #include <QDateTime>
diff --git a/src/plugins/cppeditor/cppeditor.cpp b/src/plugins/cppeditor/cppeditor.cpp
index e6149b9bacd1cc7e68837b0e0203156fc4518b0f..44fce2a77f4fcd94fd2d6372433a401eb608e374 100644
--- a/src/plugins/cppeditor/cppeditor.cpp
+++ b/src/plugins/cppeditor/cppeditor.cpp
@@ -49,7 +49,7 @@
 #include <SymbolVisitor.h>
 #include <TranslationUnit.h>
 #include <cplusplus/ASTPath.h>
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <cplusplus/ExpressionUnderCursor.h>
 #include <cplusplus/TypeOfExpression.h>
 #include <cplusplus/Overview.h>
diff --git a/src/plugins/cppeditor/cppeditor.h b/src/plugins/cppeditor/cppeditor.h
index 999e4dacc76eec92df3d90fd7b4bba484cd0bd07..bcdcf3e15c05589bbae5aad0310b768e083ae1db 100644
--- a/src/plugins/cppeditor/cppeditor.h
+++ b/src/plugins/cppeditor/cppeditor.h
@@ -36,7 +36,7 @@
 #include "cppeditorenums.h"
 #include "cppfunctiondecldeflink.h"
 
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <cplusplus/CppDocument.h>
 #include <cplusplus/LookupContext.h>
 #include <texteditor/basetexteditor.h>
diff --git a/src/plugins/cppeditor/cppelementevaluator.cpp b/src/plugins/cppeditor/cppelementevaluator.cpp
index faa723a2158d23209afadd09342006e8c9ddf23d..56d9660997a9d8ef73a4f10f1cd98396d650578a 100644
--- a/src/plugins/cppeditor/cppelementevaluator.cpp
+++ b/src/plugins/cppeditor/cppelementevaluator.cpp
@@ -42,8 +42,8 @@
 #include <Scope.h>
 #include <Symbol.h>
 #include <Symbols.h>
-#include <TypeHierarchyBuilder.h>
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/TypeHierarchyBuilder.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <cplusplus/ExpressionUnderCursor.h>
 #include <cplusplus/Overview.h>
 #include <cplusplus/TypeOfExpression.h>
diff --git a/src/plugins/cppeditor/cpphoverhandler.cpp b/src/plugins/cppeditor/cpphoverhandler.cpp
index 6e6d3e30eef31046d49dceb4a24f86a44aaeca18..0c1ed57da9181214fab469ca54ee6054345b78fd 100644
--- a/src/plugins/cppeditor/cpphoverhandler.cpp
+++ b/src/plugins/cppeditor/cpphoverhandler.cpp
@@ -37,7 +37,7 @@
 #include <coreplugin/editormanager/ieditor.h>
 #include <coreplugin/editormanager/editormanager.h>
 #include <coreplugin/helpmanager.h>
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <extensionsystem/pluginmanager.h>
 #include <texteditor/itexteditor.h>
 #include <texteditor/basetexteditor.h>
diff --git a/src/plugins/cppeditor/cppplugin.cpp b/src/plugins/cppeditor/cppplugin.cpp
index ca3476bd401e37b6f625677e3eef18a09bad33ff..b96205e43c4a8f851cd05a2545698a319342054e 100644
--- a/src/plugins/cppeditor/cppplugin.cpp
+++ b/src/plugins/cppeditor/cppplugin.cpp
@@ -57,7 +57,7 @@
 #include <texteditor/texteditorplugin.h>
 #include <texteditor/texteditorsettings.h>
 #include <texteditor/texteditorconstants.h>
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <cpptools/cpptoolsconstants.h>
 #include <cpptools/cpptoolssettings.h>
 
diff --git a/src/plugins/cppeditor/cppquickfixes.cpp b/src/plugins/cppeditor/cppquickfixes.cpp
index 7833f99099527c27d40875f540e7a44fc6e96815..44292fe0757a84627fb9876ca843b17b3af71d48 100644
--- a/src/plugins/cppeditor/cppquickfixes.cpp
+++ b/src/plugins/cppeditor/cppquickfixes.cpp
@@ -56,7 +56,7 @@
 #include <cplusplus/DependencyTable.h>
 #include <cplusplus/Overview.h>
 #include <cplusplus/TypeOfExpression.h>
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <cplusplus/CppRewriter.h>
 #include <cpptools/cpptoolsconstants.h>
 #include <cpptools/cpprefactoringchanges.h>
diff --git a/src/libs/cplusplus/ModelManagerInterface.cpp b/src/plugins/cpptools/ModelManagerInterface.cpp
similarity index 100%
rename from src/libs/cplusplus/ModelManagerInterface.cpp
rename to src/plugins/cpptools/ModelManagerInterface.cpp
diff --git a/src/libs/cplusplus/ModelManagerInterface.h b/src/plugins/cpptools/ModelManagerInterface.h
similarity index 94%
rename from src/libs/cplusplus/ModelManagerInterface.h
rename to src/plugins/cpptools/ModelManagerInterface.h
index fdcfa7a66d64413737e9dd30a4062b3570fdba85..b873e880fe9ca3ba72587a50c64c79896f04b27f 100644
--- a/src/libs/cplusplus/ModelManagerInterface.h
+++ b/src/plugins/cpptools/ModelManagerInterface.h
@@ -35,8 +35,7 @@
 
 #include <cplusplus/CppDocument.h>
 #include <languageutils/fakemetaobject.h>
-#include <projectexplorer/project.h>
-#include <projectexplorer/toolchain.h>
+#include "cpptools_global.h"
 
 #include <QObject>
 #include <QHash>
@@ -66,18 +65,20 @@ namespace CppTools {
 
 namespace CPlusPlus {
 
-class CPLUSPLUS_EXPORT CppModelManagerInterface : public QObject
+class CPPTOOLS_EXPORT CppModelManagerInterface : public QObject
 {
     Q_OBJECT
 
 public:
     enum Language { CXX, OBJC };
 
-    class CPLUSPLUS_EXPORT ProjectPart
+    class CPPTOOLS_EXPORT ProjectPart
     {
     public:
         ProjectPart()
-            : qtVersion(UnknownQt)
+            : language(CXX)
+            , cxx11Enabled(false)
+            , qtVersion(UnknownQt)
         {}
 
     public: //attributes
@@ -87,7 +88,7 @@ public:
         QStringList frameworkPaths;
         QStringList precompiledHeaders;
         Language language;
-        ProjectExplorer::ToolChain::CompilerFlags flags;
+        bool cxx11Enabled;
         enum QtVersion {
             UnknownQt = -1,
             NoQt = 0,
@@ -96,16 +97,13 @@ public:
         };
         QtVersion qtVersion;
 
-        bool cpp0xEnabled() const
-        { return flags == ProjectExplorer::ToolChain::STD_CXX11; }
-
         bool objcEnabled() const
         { return language == CppModelManagerInterface::OBJC; }
 
         typedef QSharedPointer<ProjectPart> Ptr;
     };
 
-    class CPLUSPLUS_EXPORT ProjectInfo
+    class CPPTOOLS_EXPORT ProjectInfo
     {
     public:
         ProjectInfo()
@@ -155,7 +153,7 @@ public:
         QByteArray m_defines;
     };
 
-    class CPLUSPLUS_EXPORT WorkingCopy
+    class CPPTOOLS_EXPORT WorkingCopy
     {
     public:
         void insert(const QString &fileName, const QString &source, unsigned revision = 0)
diff --git a/src/libs/cplusplus/TypeHierarchyBuilder.cpp b/src/plugins/cpptools/TypeHierarchyBuilder.cpp
similarity index 100%
rename from src/libs/cplusplus/TypeHierarchyBuilder.cpp
rename to src/plugins/cpptools/TypeHierarchyBuilder.cpp
diff --git a/src/libs/cplusplus/TypeHierarchyBuilder.h b/src/plugins/cpptools/TypeHierarchyBuilder.h
similarity index 95%
rename from src/libs/cplusplus/TypeHierarchyBuilder.h
rename to src/plugins/cpptools/TypeHierarchyBuilder.h
index 1fd8a8201693adb8d5000c7a3330e3bd18840155..93727f548e85a14b4fe4b82b59ded48e61a21abb 100644
--- a/src/libs/cplusplus/TypeHierarchyBuilder.h
+++ b/src/plugins/cpptools/TypeHierarchyBuilder.h
@@ -36,6 +36,7 @@
 #include "CppDocument.h"
 #include "ModelManagerInterface.h"
 #include "Overview.h"
+#include "cpptools_global.h"
 
 #include <QList>
 #include <QStringList>
@@ -43,7 +44,7 @@
 
 namespace CPlusPlus {
 
-class CPLUSPLUS_EXPORT TypeHierarchy
+class CPPTOOLS_EXPORT TypeHierarchy
 {
     friend class TypeHierarchyBuilder;
 
@@ -59,7 +60,7 @@ private:
     QList<TypeHierarchy> _hierarchy;
 };
 
-class CPLUSPLUS_EXPORT TypeHierarchyBuilder
+class CPPTOOLS_EXPORT TypeHierarchyBuilder
 {
 public:
     TypeHierarchyBuilder(Symbol *symbol, const Snapshot &snapshot);
diff --git a/src/plugins/cpptools/abstracteditorsupport.cpp b/src/plugins/cpptools/abstracteditorsupport.cpp
index e6e3e20651192b5563cbfc969654e360cf27f1fe..3fb2d76983edcc627ffc1095161dd471d9be9d41 100644
--- a/src/plugins/cpptools/abstracteditorsupport.cpp
+++ b/src/plugins/cpptools/abstracteditorsupport.cpp
@@ -37,7 +37,7 @@
 #include <cplusplus/Overview.h>
 #include <cplusplus/CppDocument.h>
 #include <cplusplus/ExpressionUnderCursor.h>
-#include <cplusplus/ModelManagerInterface.h>
+#include "ModelManagerInterface.h"
 #include <CoreTypes.h>
 #include <Names.h>
 #include <Symbols.h>
diff --git a/src/plugins/cpptools/cppfindreferences.cpp b/src/plugins/cpptools/cppfindreferences.cpp
index 99361c5f38490de7f4025d2ff56eb3f78c60dbcc..b6305a359ee208070839106737464026820a6afb 100644
--- a/src/plugins/cpptools/cppfindreferences.cpp
+++ b/src/plugins/cpptools/cppfindreferences.cpp
@@ -55,7 +55,7 @@
 #include <Names.h>
 #include <Scope.h>
 
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <cplusplus/CppDocument.h>
 #include <cplusplus/Overview.h>
 #include <cplusplus/FindUsages.h>
diff --git a/src/plugins/cpptools/cppmodelmanager.cpp b/src/plugins/cpptools/cppmodelmanager.cpp
index 7f2030fdb77f61c3933b452e4ea428cd2fcdee7e..bd2998d5884bb662727c8b1d65b46cb14c191bca 100644
--- a/src/plugins/cpptools/cppmodelmanager.cpp
+++ b/src/plugins/cpptools/cppmodelmanager.cpp
@@ -96,7 +96,7 @@
 namespace CPlusPlus {
 uint qHash(const CppModelManagerInterface::ProjectPart &p)
 {
-    uint h = qHash(p.defines) ^ p.language ^ p.flags;
+    uint h = qHash(p.defines) ^ p.language ^ ((int) p.cxx11Enabled);
 
     foreach (const QString &i, p.includePaths)
         h ^= qHash(i);
@@ -113,7 +113,7 @@ bool operator==(const CppModelManagerInterface::ProjectPart &p1,
         return false;
     if (p1.language != p2.language)
         return false;
-    if (p1.flags != p2.flags)
+    if (p1.cxx11Enabled != p2.cxx11Enabled)
         return false;
     if (p1.includePaths != p2.includePaths)
         return false;
diff --git a/src/plugins/cpptools/cppmodelmanager.h b/src/plugins/cpptools/cppmodelmanager.h
index 7cf4b85685796759cfc528b826804721843686bc..75cb35ca5b518d71417e668d0c9ee41f42966b56 100644
--- a/src/plugins/cpptools/cppmodelmanager.h
+++ b/src/plugins/cpptools/cppmodelmanager.h
@@ -35,7 +35,7 @@
 
 #include "cpptools_global.h"
 #include "cpptoolsconstants.h"
-#include <cplusplus/ModelManagerInterface.h>
+#include "ModelManagerInterface.h"
 #ifndef ICHECK_BUILD
 #  include <projectexplorer/project.h>
 #endif
diff --git a/src/plugins/cpptools/cpprefactoringchanges.h b/src/plugins/cpptools/cpprefactoringchanges.h
index e5612a9a2c8706ebc8f800044377375a1b7e2790..b59a7d48eda9b29af4854e424e75824e2bf98091 100644
--- a/src/plugins/cpptools/cpprefactoringchanges.h
+++ b/src/plugins/cpptools/cpprefactoringchanges.h
@@ -34,7 +34,7 @@
 #define CPPREFACTORINGCHANGES_H
 
 #include <ASTfwd.h>
-#include <cplusplus/ModelManagerInterface.h>
+#include "ModelManagerInterface.h"
 #include <cplusplus/CppDocument.h>
 #include <cplusplus/LookupContext.h>
 
diff --git a/src/plugins/cpptools/cpptools.pro b/src/plugins/cpptools/cpptools.pro
index c53c6e8a71fd49b8c3e8ebc5389c36060ecd8215..d0a78e76766f7852307c175020a36b8b7fbb036f 100644
--- a/src/plugins/cpptools/cpptools.pro
+++ b/src/plugins/cpptools/cpptools.pro
@@ -45,7 +45,9 @@ HEADERS += completionsettingspage.h \
     cppchecksymbols.h \
     cpplocalsymbols.h \
     cppsemanticinfo.h \
-    cppcompletionassistprovider.h
+    cppcompletionassistprovider.h \
+    ModelManagerInterface.h \
+    TypeHierarchyBuilder.h
 
 SOURCES += completionsettingspage.cpp \
     cppclassesfilter.cpp \
@@ -82,7 +84,9 @@ SOURCES += completionsettingspage.cpp \
     cppchecksymbols.cpp \
     cpplocalsymbols.cpp \
     cppsemanticinfo.cpp \
-    cppcompletionassistprovider.cpp
+    cppcompletionassistprovider.cpp \
+    ModelManagerInterface.cpp \
+    TypeHierarchyBuilder.cpp
 
 FORMS += completionsettingspage.ui \
     cppfilesettingspage.ui \
diff --git a/src/plugins/cpptools/uicodecompletionsupport.h b/src/plugins/cpptools/uicodecompletionsupport.h
index ad0495942cdec7efc576922135a9a0009e843ce2..acd8f5f81e25e1b428dccb283630c5ae49c5292a 100644
--- a/src/plugins/cpptools/uicodecompletionsupport.h
+++ b/src/plugins/cpptools/uicodecompletionsupport.h
@@ -37,7 +37,7 @@
 #include "cpptools_global.h"
 #include "abstracteditorsupport.h"
 
-#include <cplusplus/ModelManagerInterface.h>
+#include "ModelManagerInterface.h"
 
 #include <QDateTime>
 
diff --git a/src/plugins/debugger/cdb/cdbengine.cpp b/src/plugins/debugger/cdb/cdbengine.cpp
index eac606895294d1d25f0339747bcba127ee15c70a..bce3ac191089d430e55aff6e9a41e5a90378e41b 100644
--- a/src/plugins/debugger/cdb/cdbengine.cpp
+++ b/src/plugins/debugger/cdb/cdbengine.cpp
@@ -75,7 +75,7 @@
 
 #include <cplusplus/findcdbbreakpoint.h>
 #include <cplusplus/CppDocument.h>
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 
 #include <QCoreApplication>
 #include <QFileInfo>
diff --git a/src/plugins/debugger/debuggerplugin.cpp b/src/plugins/debugger/debuggerplugin.cpp
index d072f370ae907912a09bb6c69581ffacf68d0dc3..477fbf696e6bdb4991b4e95ea891076bf9526989 100644
--- a/src/plugins/debugger/debuggerplugin.cpp
+++ b/src/plugins/debugger/debuggerplugin.cpp
@@ -84,7 +84,7 @@
 #include <coreplugin/modemanager.h>
 
 #include <cppeditor/cppeditorconstants.h>
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 
 #include <extensionsystem/pluginmanager.h>
 #include <extensionsystem/invoker.h>
diff --git a/src/plugins/debugger/watchutils.cpp b/src/plugins/debugger/watchutils.cpp
index d95834e481d37fa0c66868acae15b46a73e75b51..317a4887bc5d1195b380b751a24c928211df236f 100644
--- a/src/plugins/debugger/watchutils.cpp
+++ b/src/plugins/debugger/watchutils.cpp
@@ -47,7 +47,7 @@
 #include <cpptools/cpptoolsconstants.h>
 #include <cpptools/abstracteditorsupport.h>
 
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <cplusplus/ExpressionUnderCursor.h>
 #include <cplusplus/Overview.h>
 #include <Symbols.h>
diff --git a/src/plugins/designer/codemodelhelpers.cpp b/src/plugins/designer/codemodelhelpers.cpp
index 0cf6eb48dfaeff0a9b2f7371eda92644b58be085..d6f150d5500868a4d4cfbd5dd2ab0b33d1629ce5 100644
--- a/src/plugins/designer/codemodelhelpers.cpp
+++ b/src/plugins/designer/codemodelhelpers.cpp
@@ -32,7 +32,7 @@
 
 #include "codemodelhelpers.h"
 
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <cplusplus/Symbols.h>
 #include <cplusplus/CoreTypes.h>
 #include <cplusplus/Name.h>
diff --git a/src/plugins/designer/qtcreatorintegration.cpp b/src/plugins/designer/qtcreatorintegration.cpp
index e1ebe0cabd532ad96107c3108c706143e3b41815..e0b57248237111c456f62cc015f9351c8f9670ef 100644
--- a/src/plugins/designer/qtcreatorintegration.cpp
+++ b/src/plugins/designer/qtcreatorintegration.cpp
@@ -43,7 +43,7 @@
 #include <cpptools/cpptoolsconstants.h>
 #include <cpptools/insertionpointlocator.h>
 #include <cpptools/symbolfinder.h>
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <cplusplus/Symbols.h>
 #include <cplusplus/Overview.h>
 #include <cplusplus/CoreTypes.h>
diff --git a/src/plugins/designer/qtcreatorintegration.h b/src/plugins/designer/qtcreatorintegration.h
index 87b52e5ca17f5f34455279cdec05194a07e21ea3..50e97bb5d9e1a66dde848d873d99f1b062c0d57f 100644
--- a/src/plugins/designer/qtcreatorintegration.h
+++ b/src/plugins/designer/qtcreatorintegration.h
@@ -33,7 +33,7 @@
 #ifndef QTCREATORINTEGRATION_H
 #define QTCREATORINTEGRATION_H
 
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 
 #if QT_VERSION >= 0x050000
 #    include <QDesignerIntegration>
diff --git a/src/plugins/genericprojectmanager/genericproject.cpp b/src/plugins/genericprojectmanager/genericproject.cpp
index db917e4249320f637b598b2587f92c9c33d7e843..2e98b1252c96c7a269b6ebf42712c3f95b98c624 100644
--- a/src/plugins/genericprojectmanager/genericproject.cpp
+++ b/src/plugins/genericprojectmanager/genericproject.cpp
@@ -42,7 +42,7 @@
 #include <projectexplorer/customexecutablerunconfiguration.h>
 #include <projectexplorer/toolchainmanager.h>
 #include <projectexplorer/projectexplorerconstants.h>
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <extensionsystem/pluginmanager.h>
 #include <utils/pathchooser.h>
 #include <utils/qtcassert.h>
diff --git a/src/plugins/qmljstools/qmljsfindexportedcpptypes.cpp b/src/plugins/qmljstools/qmljsfindexportedcpptypes.cpp
index e10c15e4e8bc183ecf356e738c4d07bdbcced916..1f064dc6acad7f3dd4ef21d06307c7c6f88247cb 100644
--- a/src/plugins/qmljstools/qmljsfindexportedcpptypes.cpp
+++ b/src/plugins/qmljstools/qmljsfindexportedcpptypes.cpp
@@ -45,7 +45,7 @@
 #include <cplusplus/CoreTypes.h>
 #include <cplusplus/Symbols.h>
 #include <cplusplus/SimpleLexer.h>
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <utils/qtcassert.h>
 
 #include <QDebug>
diff --git a/src/plugins/qmljstools/qmljsmodelmanager.cpp b/src/plugins/qmljstools/qmljsmodelmanager.cpp
index 35f141539a20f48c4e25d3fae7d00abd52545d25..ea67158e796406715829812831457488de26a6fc 100644
--- a/src/plugins/qmljstools/qmljsmodelmanager.cpp
+++ b/src/plugins/qmljstools/qmljsmodelmanager.cpp
@@ -40,7 +40,7 @@
 #include <coreplugin/progressmanager/progressmanager.h>
 #include <coreplugin/mimedatabase.h>
 #include <coreplugin/messagemanager.h>
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <cplusplus/CppDocument.h>
 #include <qmljs/qmljscontext.h>
 #include <qmljs/qmljsbind.h>
diff --git a/src/plugins/qmljstools/qmljstools_dependencies.pri b/src/plugins/qmljstools/qmljstools_dependencies.pri
index b9b7d70c88808b185a46d3d0dce2a380b82e20f2..fe173668db5570c144b0912d57cf945cf27feba0 100644
--- a/src/plugins/qmljstools/qmljstools_dependencies.pri
+++ b/src/plugins/qmljstools/qmljstools_dependencies.pri
@@ -4,3 +4,4 @@ include($$IDE_SOURCE_TREE/src/libs/qmljs/qmljs.pri)
 include($$IDE_SOURCE_TREE/src/plugins/projectexplorer/projectexplorer.pri)
 include($$IDE_SOURCE_TREE/src/plugins/qtsupport/qtsupport.pri)
 include($$IDE_SOURCE_TREE/src/plugins/texteditor/texteditor.pri)
+include($$IDE_SOURCE_TREE/src/plugins/cpptools/cpptools.pri)
diff --git a/src/plugins/qt4projectmanager/qt4nodes.cpp b/src/plugins/qt4projectmanager/qt4nodes.cpp
index 002eb5fd1aef8a3a32f1d3ce30a49f5f493b85a2..ca0751318d667f7c731007ddf1b1bfbf7e766857 100644
--- a/src/plugins/qt4projectmanager/qt4nodes.cpp
+++ b/src/plugins/qt4projectmanager/qt4nodes.cpp
@@ -50,7 +50,7 @@
 #include <coreplugin/iversioncontrol.h>
 #include <coreplugin/vcsmanager.h>
 
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <cplusplus/CppDocument.h>
 #include <extensionsystem/pluginmanager.h>
 #include <projectexplorer/projectexplorer.h>
diff --git a/src/plugins/qt4projectmanager/qt4project.cpp b/src/plugins/qt4projectmanager/qt4project.cpp
index bb7a830193814fb8023ae674e6026d4365125647..bc8e4a6f87d78ed6848ed8c11effc6aecdabbdd9 100644
--- a/src/plugins/qt4projectmanager/qt4project.cpp
+++ b/src/plugins/qt4projectmanager/qt4project.cpp
@@ -51,7 +51,7 @@
 #include <coreplugin/coreconstants.h>
 #include <coreplugin/progressmanager/progressmanager.h>
 #include <extensionsystem/pluginmanager.h>
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <qmljs/qmljsmodelmanagerinterface.h>
 #include <projectexplorer/toolchain.h>
 #include <projectexplorer/headerpath.h>
@@ -542,7 +542,7 @@ void Qt4Project::updateCppCodeModel()
         part->language = CPlusPlus::CppModelManagerInterface::CXX;
         // part->flags
         if (tc)
-            part->flags = tc->compilerFlags(pro->variableValue(CppFlagsVar));
+            part->cxx11Enabled = tc->compilerFlags(pro->variableValue(CppFlagsVar)) == ToolChain::STD_CXX11;
 
         part->sourceFiles = pro->variableValue(CppSourceVar);
         pinfo.appendProjectPart(part);
diff --git a/src/plugins/todo/cpptodoitemsscanner.h b/src/plugins/todo/cpptodoitemsscanner.h
index dc5ff1d8daadd44542ee2b3681d9f3917ea44383..8ce7fb208a9fdb7e94f671bba394fc85c45ab042 100644
--- a/src/plugins/todo/cpptodoitemsscanner.h
+++ b/src/plugins/todo/cpptodoitemsscanner.h
@@ -36,7 +36,7 @@
 
 #include "todoitemsscanner.h"
 
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 
 namespace Todo {
 namespace Internal {
diff --git a/src/plugins/vcsbase/vcsbase_dependencies.pri b/src/plugins/vcsbase/vcsbase_dependencies.pri
index 672a4f65cf424bde879eab196c89b12e6d6d18a0..3f3f1c378f89b17e1c87e0586095d2cd5661f84b 100644
--- a/src/plugins/vcsbase/vcsbase_dependencies.pri
+++ b/src/plugins/vcsbase/vcsbase_dependencies.pri
@@ -2,4 +2,4 @@ include(../../plugins/coreplugin/coreplugin.pri)
 include(../../plugins/texteditor/texteditor.pri)
 include(../../plugins/projectexplorer/projectexplorer.pri)
 include(../../plugins/find/find.pri)
-include(../../libs/cplusplus/cplusplus.pri)
+include(../../plugins/cpptools/cpptools.pri)
diff --git a/src/plugins/vcsbase/vcsbasesubmiteditor.cpp b/src/plugins/vcsbase/vcsbasesubmiteditor.cpp
index 38edfae95413d6a75608dd05b264f59497e8c68d..41360a54584c9bc10293ce310073980aa8a50588 100644
--- a/src/plugins/vcsbase/vcsbasesubmiteditor.cpp
+++ b/src/plugins/vcsbase/vcsbasesubmiteditor.cpp
@@ -43,7 +43,7 @@
 #include <cplusplus/CoreTypes.h>
 #include <cplusplus/FullySpecifiedType.h>
 #include <cplusplus/Literals.h>
-#include <cplusplus/ModelManagerInterface.h>
+#include <cpptools/ModelManagerInterface.h>
 #include <cplusplus/Symbol.h>
 #include <cplusplus/Symbols.h>
 #include <cplusplus/TranslationUnit.h>