diff --git a/src/qml/animations/qabstractanimationjob_p.h b/src/qml/animations/qabstractanimationjob_p.h
index d26aa868cef1fe7adad88c7a02950de61c696f43..47869826ec0e296e19dbd4a22a02cdd48345b024 100644
--- a/src/qml/animations/qabstractanimationjob_p.h
+++ b/src/qml/animations/qabstractanimationjob_p.h
@@ -42,7 +42,7 @@
 #ifndef QABSTRACTANIMATIONJOB_P_H
 #define QABSTRACTANIMATIONJOB_P_H
 
-#include <QtQml/qtqmlglobal.h>
+#include <private/qtqmlglobal_p.h>
 #include <QtCore/QObject>
 #include <QtCore/private/qabstractanimation_p.h>
 #include "private/qpodvector_p.h"
@@ -55,7 +55,7 @@ QT_MODULE(Qml)
 
 class QAnimationGroupJob;
 class QAnimationJobChangeListener;
-class Q_QML_EXPORT QAbstractAnimationJob
+class Q_QML_PRIVATE_EXPORT QAbstractAnimationJob
 {
     Q_DISABLE_COPY(QAbstractAnimationJob)
 public:
@@ -171,7 +171,7 @@ public:
     virtual void animationCurrentLoopChanged(QAbstractAnimationJob *) {}
 };
 
-class Q_QML_EXPORT QQmlAnimationTimer : public QAbstractAnimationTimer
+class Q_QML_PRIVATE_EXPORT QQmlAnimationTimer : public QAbstractAnimationTimer
 {
     Q_OBJECT
 private:
diff --git a/src/qml/animations/qanimationgroupjob_p.h b/src/qml/animations/qanimationgroupjob_p.h
index 303dc898d9d5655e1d079c2a2dd407a1acfd6941..408ac08af74afb49058fa6a96197817aa0e41f62 100644
--- a/src/qml/animations/qanimationgroupjob_p.h
+++ b/src/qml/animations/qanimationgroupjob_p.h
@@ -50,7 +50,7 @@ QT_BEGIN_NAMESPACE
 
 QT_MODULE(Qml)
 
-class Q_QML_EXPORT QAnimationGroupJob : public QAbstractAnimationJob
+class Q_QML_PRIVATE_EXPORT QAnimationGroupJob : public QAbstractAnimationJob
 {
     Q_DISABLE_COPY(QAnimationGroupJob)
 public:
diff --git a/src/qml/animations/qparallelanimationgroupjob_p.h b/src/qml/animations/qparallelanimationgroupjob_p.h
index d77a8c84f93f020530ad1362607619ba113fd882..584bd88e9bf5fea46d59bd957906f232b35bcc08 100644
--- a/src/qml/animations/qparallelanimationgroupjob_p.h
+++ b/src/qml/animations/qparallelanimationgroupjob_p.h
@@ -50,7 +50,7 @@ QT_BEGIN_NAMESPACE
 
 QT_MODULE(Qml)
 
-class Q_QML_EXPORT QParallelAnimationGroupJob : public QAnimationGroupJob
+class Q_QML_PRIVATE_EXPORT QParallelAnimationGroupJob : public QAnimationGroupJob
 {
     Q_DISABLE_COPY(QParallelAnimationGroupJob)
 public:
diff --git a/src/qml/animations/qpauseanimationjob_p.h b/src/qml/animations/qpauseanimationjob_p.h
index 82462be10118bc7c807d5e5defb06b820347c233..9e64c92c3dc91e149c4db9e642b30e036552e55d 100644
--- a/src/qml/animations/qpauseanimationjob_p.h
+++ b/src/qml/animations/qpauseanimationjob_p.h
@@ -50,7 +50,7 @@ QT_BEGIN_NAMESPACE
 
 QT_MODULE(Qml)
 
-class Q_QML_EXPORT QPauseAnimationJob : public QAbstractAnimationJob
+class Q_QML_PRIVATE_EXPORT QPauseAnimationJob : public QAbstractAnimationJob
 {
     Q_DISABLE_COPY(QPauseAnimationJob)
 public:
diff --git a/src/qml/animations/qsequentialanimationgroupjob_p.h b/src/qml/animations/qsequentialanimationgroupjob_p.h
index b406d04f6f8a2cb989e3fdcc10ccdc21b333d6e3..889e013118e04ec5b29618de94f5024e6590a780 100644
--- a/src/qml/animations/qsequentialanimationgroupjob_p.h
+++ b/src/qml/animations/qsequentialanimationgroupjob_p.h
@@ -51,7 +51,7 @@ QT_BEGIN_NAMESPACE
 QT_MODULE(Qml)
 
 class QPauseAnimationJob;
-class Q_QML_EXPORT QSequentialAnimationGroupJob : public QAnimationGroupJob
+class Q_QML_PRIVATE_EXPORT QSequentialAnimationGroupJob : public QAnimationGroupJob
 {
     Q_DISABLE_COPY(QSequentialAnimationGroupJob)
 public:
diff --git a/src/qml/debugger/qqmldebugserver_p.h b/src/qml/debugger/qqmldebugserver_p.h
index be02602f38bcb506299da9bbe1c5150af09733b2..13baa1884874cc0928ec8a1226ce90d0731667e6 100644
--- a/src/qml/debugger/qqmldebugserver_p.h
+++ b/src/qml/debugger/qqmldebugserver_p.h
@@ -63,7 +63,7 @@ QT_BEGIN_NAMESPACE
 
 
 class QQmlDebugServerPrivate;
-class Q_QML_EXPORT QQmlDebugServer : public QObject
+class Q_QML_PRIVATE_EXPORT QQmlDebugServer : public QObject
 {
     Q_OBJECT
     Q_DECLARE_PRIVATE(QQmlDebugServer)
diff --git a/src/qml/debugger/qqmldebugserverconnection_p.h b/src/qml/debugger/qqmldebugserverconnection_p.h
index 920e82ed47b3cd1eaaaed214c3cc1e26cbdf0e4b..66e7abf99994253a38c9a21399eabb5642c7462a 100644
--- a/src/qml/debugger/qqmldebugserverconnection_p.h
+++ b/src/qml/debugger/qqmldebugserverconnection_p.h
@@ -62,7 +62,7 @@ QT_BEGIN_NAMESPACE
 
 
 class QQmlDebugServer;
-class Q_QML_EXPORT QQmlDebugServerConnection
+class Q_QML_PRIVATE_EXPORT QQmlDebugServerConnection
 {
 public:
     QQmlDebugServerConnection() {}
diff --git a/src/qml/debugger/qqmlinspectorinterface_p.h b/src/qml/debugger/qqmlinspectorinterface_p.h
index 5b015d36dfb606abdd59e88a787c67909037b5e4..3cba863eae47aea1b6e691005806369b43be617f 100644
--- a/src/qml/debugger/qqmlinspectorinterface_p.h
+++ b/src/qml/debugger/qqmlinspectorinterface_p.h
@@ -61,7 +61,7 @@ QT_BEGIN_HEADER
 QT_BEGIN_NAMESPACE
 
 
-class Q_QML_EXPORT QQmlInspectorInterface
+class Q_QML_PRIVATE_EXPORT QQmlInspectorInterface
 {
 public:
     QQmlInspectorInterface() {}
diff --git a/src/qml/debugger/qqmlinspectorservice_p.h b/src/qml/debugger/qqmlinspectorservice_p.h
index 557dc38aa8200971641a05324f145fa6febedd84..3f989589d017999ae970332e29978c363f1d80ee 100644
--- a/src/qml/debugger/qqmlinspectorservice_p.h
+++ b/src/qml/debugger/qqmlinspectorservice_p.h
@@ -65,7 +65,7 @@ QT_BEGIN_NAMESPACE
 
 class QQmlInspectorInterface;
 
-class Q_QML_EXPORT QQmlInspectorService : public QQmlDebugService
+class Q_QML_PRIVATE_EXPORT QQmlInspectorService : public QQmlDebugService
 {
     Q_OBJECT
 
diff --git a/src/qml/debugger/qqmlprofilerservice_p.h b/src/qml/debugger/qqmlprofilerservice_p.h
index 5d1002157bdb119ece73d22f494caf9c5064cd6d..02481e514737a1c8f2c8fe3dea4d7d9dc7cacce4 100644
--- a/src/qml/debugger/qqmlprofilerservice_p.h
+++ b/src/qml/debugger/qqmlprofilerservice_p.h
@@ -91,7 +91,7 @@ class QUrl;
 class QQmlEngine;
 
 
-class Q_QML_EXPORT QQmlProfilerService : public QQmlDebugService
+class Q_QML_PRIVATE_EXPORT QQmlProfilerService : public QQmlDebugService
 {
 public:
     enum Message {
diff --git a/src/qml/qml/ftw/qqmlpool_p.h b/src/qml/qml/ftw/qqmlpool_p.h
index 8e8f367890bfe70f64a55d207f15f48b9d0b2c37..d4b766825a89bbddb078c93b265f0a3741b5b174 100644
--- a/src/qml/qml/ftw/qqmlpool_p.h
+++ b/src/qml/qml/ftw/qqmlpool_p.h
@@ -53,14 +53,13 @@
 // We mean it.
 //
 
-#include <QtQml/qtqmlglobal.h>
+#include <private/qtqmlglobal_p.h>
 #include <QtCore/qstring.h>
 #include <QtCore/qurl.h>
 
 QT_BEGIN_NAMESPACE
 
-// Exported for QtQuick1
-class Q_QML_EXPORT QQmlPool
+class Q_QML_PRIVATE_EXPORT QQmlPool
 {
 public:
     // The class has a destructor that needs to be called
diff --git a/src/qml/qml/qqml.h b/src/qml/qml/qqml.h
index 1dbca44a08dda1f9210394b26808bdca8e107ee6..b7f5cb714dbbce57ad474e201f9410235549c584 100644
--- a/src/qml/qml/qqml.h
+++ b/src/qml/qml/qqml.h
@@ -410,7 +410,6 @@ QObject *qmlAttachedPropertiesObject(const QObject *obj, bool create = true)
     return qmlAttachedPropertiesObject(&idx, obj, &T::staticMetaObject, create);
 }
 
-// For the use of QtQuick1 module
 Q_QML_EXPORT void qmlRegisterBaseTypes(const char *uri, int versionMajor, int versionMinor);
 
 inline int qmlRegisterModuleApi(const char *uri, int versionMajor, int versionMinor,
diff --git a/src/qml/qml/qqmlaccessors_p.h b/src/qml/qml/qqmlaccessors_p.h
index 5685869f73ef7e93864f3d7360c8ea295975b634..43379978701d9b7953219c9b70b9cd1e748ae67d 100644
--- a/src/qml/qml/qqmlaccessors_p.h
+++ b/src/qml/qml/qqmlaccessors_p.h
@@ -42,7 +42,7 @@
 #ifndef QQMLACCESSORS_P_H
 #define QQMLACCESSORS_P_H
 
-#include <QtQml/qtqmlglobal.h>
+#include <private/qtqmlglobal_p.h>
 #include <QtCore/qvector.h>
 #include <QtCore/qhash.h>
 #include <QtCore/QReadWriteLock>
@@ -133,7 +133,7 @@ namespace QQmlAccessorProperties {
     };
 
     Properties properties(const QMetaObject *);
-    void Q_QML_EXPORT registerProperties(const QMetaObject *, int, Property *);
+    void Q_QML_PRIVATE_EXPORT registerProperties(const QMetaObject *, int, Property *);
 };
 
 QQmlAccessorProperties::Property *
diff --git a/src/qml/qml/qqmlboundsignal_p.h b/src/qml/qml/qqmlboundsignal_p.h
index c0544251b1416e5565fcb9bce261a44f5811184d..a81060021c17239276dba0de798ac0d522aa4733 100644
--- a/src/qml/qml/qqmlboundsignal_p.h
+++ b/src/qml/qml/qqmlboundsignal_p.h
@@ -103,7 +103,7 @@ private:
     bool m_expressionFunctionRewritten:1;
 };
 
-class Q_QML_EXPORT QQmlAbstractBoundSignal
+class Q_QML_PRIVATE_EXPORT QQmlAbstractBoundSignal
 {
 public:
     QQmlAbstractBoundSignal();
@@ -128,8 +128,8 @@ private:
 };
 
 class QQmlBoundSignalParameters;
-class Q_QML_EXPORT QQmlBoundSignal : public QQmlAbstractBoundSignal,
-                                     public QQmlNotifierEndpoint
+class Q_QML_PRIVATE_EXPORT QQmlBoundSignal : public QQmlAbstractBoundSignal,
+                                             public QQmlNotifierEndpoint
 {
 public:
     QQmlBoundSignal(QObject *scope, const QMetaMethod &signal, QObject *owner, QQmlEngine *engine);
diff --git a/src/qml/qml/qqmlboundsignalexpressionpointer_p.h b/src/qml/qml/qqmlboundsignalexpressionpointer_p.h
index cc2106f49614a65606954c2610ac25d7cc9a9a7e..94675e34ce4df4bc073b0896bfd8f415bdedaaa1 100644
--- a/src/qml/qml/qqmlboundsignalexpressionpointer_p.h
+++ b/src/qml/qml/qqmlboundsignalexpressionpointer_p.h
@@ -57,7 +57,7 @@
 QT_BEGIN_NAMESPACE
 
 class QQmlBoundSignalExpression;
-class Q_QML_EXPORT QQmlBoundSignalExpressionPointer
+class Q_QML_PRIVATE_EXPORT QQmlBoundSignalExpressionPointer
 {
 public:
     inline QQmlBoundSignalExpressionPointer() : o(0) {}
diff --git a/src/qml/qml/qqmlbundle_p.h b/src/qml/qml/qqmlbundle_p.h
index f09447c011975595b3ac7e41d4d67cccf4b22876..8c2cc55d95f07671fbde9e4ef99c4b661b5330e3 100644
--- a/src/qml/qml/qqmlbundle_p.h
+++ b/src/qml/qml/qqmlbundle_p.h
@@ -44,7 +44,7 @@
 
 #include <QtCore/qfile.h>
 #include <QtCore/qstring.h>
-#include <QtQml/qtqmlglobal.h>
+#include <private/qtqmlglobal_p.h>
 
 #ifdef Q_CC_MSVC
 // nonstandard extension used : zero-sized array in struct/union.
@@ -53,11 +53,11 @@
 
 QT_BEGIN_NAMESPACE
 
-class Q_QML_EXPORT QQmlBundle
+class Q_QML_PRIVATE_EXPORT QQmlBundle
 {
     Q_DISABLE_COPY(QQmlBundle)
 public:
-    struct Q_PACKED Q_QML_EXPORT Entry
+    struct Q_PACKED Q_QML_PRIVATE_EXPORT Entry
     {
         enum Kind {
             File = 123, // Normal file
@@ -71,12 +71,12 @@ public:
         quint64 size;
     };
 
-    struct Q_PACKED Q_QML_EXPORT RawEntry : public Entry
+    struct Q_PACKED Q_QML_PRIVATE_EXPORT RawEntry : public Entry
     {
         char data[]; // trailing data
     };
 
-    struct Q_PACKED Q_QML_EXPORT FileEntry : public Entry
+    struct Q_PACKED Q_QML_PRIVATE_EXPORT FileEntry : public Entry
     {
         quint64 link;
         int fileNameLength;
diff --git a/src/qml/qml/qqmlcleanup_p.h b/src/qml/qml/qqmlcleanup_p.h
index 2b7747d6308fad99d29bf89fad07318f35793aed..8fd53c59d0ae445c4446acb2729830574b07a3b1 100644
--- a/src/qml/qml/qqmlcleanup_p.h
+++ b/src/qml/qml/qqmlcleanup_p.h
@@ -42,7 +42,7 @@
 #ifndef QQMLCLEANUP_P_H
 #define QQMLCLEANUP_P_H
 
-#include <QtQml/qtqmlglobal.h>
+#include <private/qtqmlglobal_p.h>
 
 // 
 //  W A R N I N G
@@ -59,8 +59,7 @@ QT_BEGIN_NAMESPACE
 
 class QQmlEngine;
 
-// Exported for QtQuick1
-class Q_QML_EXPORT QQmlCleanup
+class Q_QML_PRIVATE_EXPORT QQmlCleanup
 {
 public:
     QQmlCleanup();
diff --git a/src/qml/qml/qqmlcontext_p.h b/src/qml/qml/qqmlcontext_p.h
index 4eb31177f63872f8066af049cb6bb2300a75de79..9daec85c5ec280c5df198b980aa6ca529af04bcf 100644
--- a/src/qml/qml/qqmlcontext_p.h
+++ b/src/qml/qml/qqmlcontext_p.h
@@ -113,7 +113,7 @@ public:
 class QQmlVME;
 class QQmlComponentAttached;
 class QQmlGuardedContextData;
-class Q_QML_EXPORT QQmlContextData
+class Q_QML_PRIVATE_EXPORT QQmlContextData
 {
 public:
     QQmlContextData();
diff --git a/src/qml/qml/qqmlcustomparser_p.h b/src/qml/qml/qqmlcustomparser_p.h
index ecc4bae4c3beb15aaaa5e99eb8f8e6716d5827ff..0207797ce9090fc18516cd4ccaec67f578676ec0 100644
--- a/src/qml/qml/qqmlcustomparser_p.h
+++ b/src/qml/qml/qqmlcustomparser_p.h
@@ -69,7 +69,7 @@ QT_BEGIN_NAMESPACE
 class QQmlCompiler;
 
 class QQmlCustomParserPropertyPrivate;
-class Q_QML_EXPORT QQmlCustomParserProperty
+class Q_QML_PRIVATE_EXPORT QQmlCustomParserProperty
 {
 public:
     QQmlCustomParserProperty();
@@ -92,7 +92,7 @@ private:
 };
 
 class QQmlCustomParserNodePrivate;
-class Q_QML_EXPORT QQmlCustomParserNode
+class Q_QML_PRIVATE_EXPORT QQmlCustomParserNode
 {
 public:
     QQmlCustomParserNode();
@@ -110,7 +110,7 @@ private:
     QQmlCustomParserNodePrivate *d;
 };
 
-class Q_QML_EXPORT QQmlCustomParser
+class Q_QML_PRIVATE_EXPORT QQmlCustomParser
 {
 public:
     enum Flag {
diff --git a/src/qml/qml/qqmldata_p.h b/src/qml/qml/qqmldata_p.h
index f7180b9332191565fb6a04284d22d305a683afac..6547e19f3ee51f6e2276e7d4e1a334ec4661dedd 100644
--- a/src/qml/qml/qqmldata_p.h
+++ b/src/qml/qml/qqmldata_p.h
@@ -74,7 +74,7 @@ class QQmlNotifierEndpoint;
 // default state for elemental object allocations.  This is crucial in the
 // workings of the QQmlInstruction::CreateSimpleObject instruction.
 // Don't change anything here without first considering that case!
-class Q_QML_EXPORT QQmlData : public QAbstractDeclarativeData
+class Q_QML_PRIVATE_EXPORT QQmlData : public QAbstractDeclarativeData
 {
 public:
     QQmlData()
diff --git a/src/qml/qml/qqmlengine_p.h b/src/qml/qml/qqmlengine_p.h
index d3e7bc2e4db6fac4bd5d6a0d64b82982acc66a8c..8048e409f954dee5a70adc1a737734de2aa39688 100644
--- a/src/qml/qml/qqmlengine_p.h
+++ b/src/qml/qml/qqmlengine_p.h
@@ -118,7 +118,7 @@ public:
     QQmlJavaScriptExpressionGuard *next;
 };
 
-class Q_QML_EXPORT QQmlEnginePrivate : public QJSEnginePrivate
+class Q_QML_PRIVATE_EXPORT QQmlEnginePrivate : public QJSEnginePrivate
 {
     Q_DECLARE_PUBLIC(QQmlEngine)
 public:
diff --git a/src/qml/qml/qqmlexpression_p.h b/src/qml/qml/qqmlexpression_p.h
index d32e2d314c3b8594ca40c707382044fb353e0a5b..372d72c655649ae4f06c26337318a0da98b86896 100644
--- a/src/qml/qml/qqmlexpression_p.h
+++ b/src/qml/qml/qqmlexpression_p.h
@@ -69,9 +69,9 @@ QT_BEGIN_NAMESPACE
 
 class QQmlExpression;
 class QString;
-class Q_QML_PRIVATE_EXPORT QQmlExpressionPrivate : public QObjectPrivate,
-                                                   public QQmlJavaScriptExpression,
-                                                   public QQmlAbstractExpression
+class QQmlExpressionPrivate : public QObjectPrivate,
+                              public QQmlJavaScriptExpression,
+                              public QQmlAbstractExpression
 {
     Q_DECLARE_PUBLIC(QQmlExpression)
 public:
diff --git a/src/qml/qml/qqmlglobal_p.h b/src/qml/qml/qqmlglobal_p.h
index e5515b60cbb64b4ddaaa8abc4538b0cfb6b5679f..6e233c9fae5f4a107d8795ec2e6162818a0afa7f 100644
--- a/src/qml/qml/qqmlglobal_p.h
+++ b/src/qml/qml/qqmlglobal_p.h
@@ -89,7 +89,7 @@ QT_BEGIN_NAMESPACE
     QMetaObject::connect(sender, signalIdx, receiver, methodIdx, Qt::DirectConnection); \
 }
 
-bool Q_QML_EXPORT QQml_isSignalConnected(QObject*, int, int);
+bool Q_QML_PRIVATE_EXPORT QQml_isSignalConnected(QObject*, int, int);
 
 #define IS_SIGNAL_CONNECTED(Sender, Signal) \
 do { \
diff --git a/src/qml/qml/qqmlimport_p.h b/src/qml/qml/qqmlimport_p.h
index 111bf29641042afdafc99e72a287efed1994341d..c88516dc95f3a80d063afe3215085a23854dbcd2 100644
--- a/src/qml/qml/qqmlimport_p.h
+++ b/src/qml/qml/qqmlimport_p.h
@@ -71,8 +71,7 @@ class QQmlImportsPrivate;
 class QQmlImportDatabase;
 class QQmlTypeLoader;
 
-// Exported for QtQuick1
-class Q_QML_EXPORT QQmlImports
+class Q_QML_PRIVATE_EXPORT QQmlImports
 {
 public:
     QQmlImports(QQmlTypeLoader *);
diff --git a/src/qml/qml/qqmlnotifier_p.h b/src/qml/qml/qqmlnotifier_p.h
index 26fa6846e7719d91a25572c34bb11103eac4e298..a81d73b6227532d373dc831c44e4ce1bf449ffe3 100644
--- a/src/qml/qml/qqmlnotifier_p.h
+++ b/src/qml/qml/qqmlnotifier_p.h
@@ -48,7 +48,7 @@
 QT_BEGIN_NAMESPACE
 
 class QQmlNotifierEndpoint;
-class Q_QML_EXPORT QQmlNotifier
+class Q_QML_PRIVATE_EXPORT QQmlNotifier
 {
 public:
     inline QQmlNotifier();
diff --git a/src/qml/qml/qqmlpropertycache_p.h b/src/qml/qml/qqmlpropertycache_p.h
index a128cd9055383d15c9739daabf58ec308ceb8320..98322b0275b18f68c920e9976584beb26f1f3e95 100644
--- a/src/qml/qml/qqmlpropertycache_p.h
+++ b/src/qml/qml/qqmlpropertycache_p.h
@@ -223,7 +223,7 @@ private:
     bool notFullyResolved() const { return flags & NotFullyResolved; }
 };
 
-class Q_QML_EXPORT QQmlPropertyCache : public QQmlRefCount, public QQmlCleanup
+class Q_QML_PRIVATE_EXPORT QQmlPropertyCache : public QQmlRefCount, public QQmlCleanup
 {
 public:
     QQmlPropertyCache(QQmlEngine *);
diff --git a/src/qml/qml/qqmlpropertyvalueinterceptor_p.h b/src/qml/qml/qqmlpropertyvalueinterceptor_p.h
index 6cd94b3fd1d4646628eb996eab94714b9961ccdf..16cd4fc853c1fadf815d6617936ecf0ac1fb696a 100644
--- a/src/qml/qml/qqmlpropertyvalueinterceptor_p.h
+++ b/src/qml/qml/qqmlpropertyvalueinterceptor_p.h
@@ -53,13 +53,13 @@
 // We mean it.
 //
 
-#include <QtQml/qtqmlglobal.h>
+#include <private/qtqmlglobal_p.h>
 #include <QtCore/qobject.h>
 
 QT_BEGIN_NAMESPACE
 
 class QQmlProperty;
-class Q_QML_EXPORT QQmlPropertyValueInterceptor
+class Q_QML_PRIVATE_EXPORT QQmlPropertyValueInterceptor
 {
 public:
     QQmlPropertyValueInterceptor();
diff --git a/src/qml/qml/qqmlscript_p.h b/src/qml/qml/qqmlscript_p.h
index 65dd406476aadb4953926c6b2562e49995cabb21..daf9fdce14518cbbb37e72421aef7bff75d2a9b7 100644
--- a/src/qml/qml/qqmlscript_p.h
+++ b/src/qml/qml/qqmlscript_p.h
@@ -136,7 +136,7 @@ public:
 class Object;
 class Property;
 
-class Q_QML_EXPORT Variant 
+class Q_QML_PRIVATE_EXPORT Variant
 {
 public:
     enum Type {
@@ -467,7 +467,7 @@ public:
 };
 
 class ParserJsASTData;
-class Q_QML_EXPORT Parser
+class Q_QML_PRIVATE_EXPORT Parser
 {
 public:
     Parser();
diff --git a/src/qml/qml/qqmlstringconverters_p.h b/src/qml/qml/qqmlstringconverters_p.h
index 3e637db83b833687a89a263517cc18e6303bfb28..2b2131d5e17a654a854c1d2aaf47878434355ad3 100644
--- a/src/qml/qml/qqmlstringconverters_p.h
+++ b/src/qml/qml/qqmlstringconverters_p.h
@@ -66,7 +66,6 @@ class QRectF;
 class QString;
 class QByteArray;
 
-// XXX - Bauhaus currently uses these methods which is why they're exported
 namespace QQmlStringConverters
 {
     Q_QML_PRIVATE_EXPORT QVariant variantFromString(const QString &);
diff --git a/src/qml/qml/qqmltypeloader_p.h b/src/qml/qml/qqmltypeloader_p.h
index ab700805c47cf312da79dba695642208675b833c..a795d3c816795cd4871fddcc13ce1f19d1d1cfe7 100644
--- a/src/qml/qml/qqmltypeloader_p.h
+++ b/src/qml/qml/qqmltypeloader_p.h
@@ -81,7 +81,6 @@ class QQmlTypeData;
 class QQmlDataLoader;
 class QQmlExtensionInterface;
 
-// Exported for QtQuick1
 class Q_QML_PRIVATE_EXPORT QQmlDataBlob : public QQmlRefCount
 {
 public:
@@ -205,8 +204,7 @@ private:
 };
 
 class QQmlDataLoaderThread;
-// Exported for QtQuick1
-class Q_QML_PRIVATE_EXPORT QQmlDataLoader 
+class QQmlDataLoader
 {
 public:
     QQmlDataLoader(QQmlEngine *);
@@ -254,8 +252,7 @@ public:
     QString fileName;
 };
 
-// Exported for QtQuick1
-class Q_QML_PRIVATE_EXPORT QQmlTypeLoader : public QQmlDataLoader
+class QQmlTypeLoader : public QQmlDataLoader
 {
     Q_DECLARE_TR_FUNCTIONS(QQmlTypeLoader)
 public:
diff --git a/src/qml/qml/qqmlvaluetype_p.h b/src/qml/qml/qqmlvaluetype_p.h
index d55c839c7dd6a694f0cef97480b8d00cad7f34d4..c72d2fc182ca7719db96fef1709e01b12f768227 100644
--- a/src/qml/qml/qqmlvaluetype_p.h
+++ b/src/qml/qml/qqmlvaluetype_p.h
@@ -167,8 +167,6 @@ private:
     mutable QQmlValueType *valueTypes[QVariant::UserType - 1];
 };
 
-// These exports of these value types are obsolete since QtQuick1 no longer
-// needs them - they should become Q_AUTOTEST_EXPORT
 class Q_QML_PRIVATE_EXPORT QQmlPointFValueType : public QQmlValueTypeBase<QPointF>
 {
     Q_PROPERTY(qreal x READ x WRITE setX)
diff --git a/src/qml/qml/qquicklistmodel_p.h b/src/qml/qml/qquicklistmodel_p.h
index 2941de91488b6a8c08f0e94fc3b88f05ae027ba7..28b374dc3bc403e9fd6aa75e25c9aa30c2c8349f 100644
--- a/src/qml/qml/qquicklistmodel_p.h
+++ b/src/qml/qml/qquicklistmodel_p.h
@@ -64,7 +64,7 @@ class QQuickListModelWorkerAgent;
 class ListModel;
 class ListLayout;
 
-class Q_QML_PRIVATE_EXPORT QQuickListModel : public QListModelInterface
+class Q_AUTOTEST_EXPORT QQuickListModel : public QListModelInterface
 {
     Q_OBJECT
     Q_PROPERTY(int count READ count NOTIFY countChanged)
diff --git a/src/qml/qml/v8/qv8engine_p.h b/src/qml/qml/v8/qv8engine_p.h
index ca1d29011eb8e7e7360ba15113764208d9c3be2f..772fa82c5a145ffb6a9d2eddc2aa7070257b012f 100644
--- a/src/qml/qml/v8/qv8engine_p.h
+++ b/src/qml/qml/v8/qv8engine_p.h
@@ -225,7 +225,7 @@ public:
     static void addGcCallbackNode(Node *node);
 };
 
-class Q_QML_EXPORT QV8Engine
+class Q_QML_PRIVATE_EXPORT QV8Engine
 {
 public:
     static QV8Engine* get(QJSEngine* q) { Q_ASSERT(q); return q->handle(); }
diff --git a/src/qml/qml/v8/qv8qobjectwrapper_p.h b/src/qml/qml/v8/qv8qobjectwrapper_p.h
index 47023ffd81fc39c48c29c703d7461b24af566c6e..de2ec30e44b706f14a8c2ff72a46c6da3f379781 100644
--- a/src/qml/qml/v8/qv8qobjectwrapper_p.h
+++ b/src/qml/qml/v8/qv8qobjectwrapper_p.h
@@ -85,7 +85,7 @@ public:
     QIntrusiveListNode weakResource;
 };
 
-class Q_QML_EXPORT QV8QObjectWrapper
+class Q_QML_PRIVATE_EXPORT QV8QObjectWrapper
 {
 public:
     QV8QObjectWrapper();
diff --git a/src/qml/qml/v8/qv8stringwrapper_p.h b/src/qml/qml/v8/qv8stringwrapper_p.h
index 1609720298dd83fdc4a584c628221e88e2c2c07a..e70f427df57ba4000779b5bd57a734a96733a582 100644
--- a/src/qml/qml/v8/qv8stringwrapper_p.h
+++ b/src/qml/qml/v8/qv8stringwrapper_p.h
@@ -53,14 +53,14 @@
 // We mean it.
 //
 
-#include <QtQml/qtqmlglobal.h>
+#include <private/qtqmlglobal_p.h>
 
 #include <QtCore/qstring.h>
 #include <private/qv8_p.h>
 
 QT_BEGIN_NAMESPACE
 
-class Q_QML_EXPORT QV8StringWrapper
+class Q_QML_PRIVATE_EXPORT QV8StringWrapper
 {
 public:
     QV8StringWrapper();
diff --git a/src/quick/items/context2d/qquickcanvasitem_p.h b/src/quick/items/context2d/qquickcanvasitem_p.h
index c7fce7299e55e2f75849c8366b42dea6bf0e4f06..8e7b992387a1acf1a9e0f64dc697a0e7e39a2840 100644
--- a/src/quick/items/context2d/qquickcanvasitem_p.h
+++ b/src/quick/items/context2d/qquickcanvasitem_p.h
@@ -53,7 +53,7 @@ QT_BEGIN_NAMESPACE
 class QQuickCanvasContext;
 
 class QQuickCanvasItemPrivate;
-class Q_QUICK_EXPORT QQuickCanvasItem : public QQuickItem
+class QQuickCanvasItem : public QQuickItem
 {
     Q_OBJECT
     Q_ENUMS(RenderTarget)
diff --git a/src/quick/items/context2d/qquickcontext2d_p.h b/src/quick/items/context2d/qquickcontext2d_p.h
index 4112d4ebf02e80cb1572e643bcc22b2c8f00b633..909c95fc3b44d578cb2bd1385838583f56b91d10 100644
--- a/src/quick/items/context2d/qquickcontext2d_p.h
+++ b/src/quick/items/context2d/qquickcontext2d_p.h
@@ -72,7 +72,7 @@ class QQuickPixmap;
 class QSGTexture;
 
 
-class Q_QUICK_EXPORT QQuickContext2D : public QQuickCanvasContext
+class QQuickContext2D : public QQuickCanvasContext
 {
 public:
     enum TextBaseLineType { Alphabetic=0, Top, Middle, Bottom, Hanging};
diff --git a/src/quick/items/qquickcanvas_p.h b/src/quick/items/qquickcanvas_p.h
index d5921219387f2c4cb4aac7de0a7e4e2cbc182402..404501f7255e3b96d619f99247f12eee3dc496fc 100644
--- a/src/quick/items/qquickcanvas_p.h
+++ b/src/quick/items/qquickcanvas_p.h
@@ -93,7 +93,7 @@ class QTouchEvent;
 class QQuickCanvasRenderLoop;
 class QQuickCanvasIncubationController;
 
-class Q_QUICK_EXPORT QQuickCanvasPrivate : public QWindowPrivate
+class Q_QUICK_PRIVATE_EXPORT QQuickCanvasPrivate : public QWindowPrivate
 {
 public:
     Q_DECLARE_PUBLIC(QQuickCanvas)
diff --git a/src/quick/items/qquickevents_p_p.h b/src/quick/items/qquickevents_p_p.h
index 004daafb044b9eeb3614c86fdb99ea8d5f684290..9b67c2b0dad7cb1d505fa82fc634b3e8cd135b22 100644
--- a/src/quick/items/qquickevents_p_p.h
+++ b/src/quick/items/qquickevents_p_p.h
@@ -53,7 +53,7 @@
 // We mean it.
 //
 
-#include <QtQuick/qtquickglobal.h>
+#include <private/qtquickglobal_p.h>
 #include <qqml.h>
 
 #include <QtCore/qobject.h>
@@ -92,7 +92,7 @@ private:
 };
 
 // used in QtLocation
-class Q_QUICK_EXPORT QQuickMouseEvent : public QObject
+class Q_QUICK_PRIVATE_EXPORT QQuickMouseEvent : public QObject
 {
     Q_OBJECT
     Q_PROPERTY(qreal x READ x)
diff --git a/src/quick/items/qquickflickable_p.h b/src/quick/items/qquickflickable_p.h
index 7a19b0c05a7326cb205e56ce5cf5d44f2ba73141..109bca2112a5758ba5ca6e3e47f61c6a9209f616 100644
--- a/src/quick/items/qquickflickable_p.h
+++ b/src/quick/items/qquickflickable_p.h
@@ -43,6 +43,7 @@
 #define QQUICKFLICKABLE_P_H
 
 #include "qquickitem.h"
+#include <private/qtquickglobal_p.h>
 
 QT_BEGIN_HEADER
 
@@ -50,7 +51,7 @@ QT_BEGIN_NAMESPACE
 
 class QQuickFlickablePrivate;
 class QQuickFlickableVisibleArea;
-class Q_QUICK_EXPORT QQuickFlickable : public QQuickItem
+class Q_QUICK_PRIVATE_EXPORT QQuickFlickable : public QQuickItem
 {
     Q_OBJECT
 
diff --git a/src/quick/items/qquickimplicitsizeitem_p.h b/src/quick/items/qquickimplicitsizeitem_p.h
index be2b479d7a2699e4542d54b433b1336da2e99ccb..4943656d600c46126ca57b8e80fb58a4c9d50afc 100644
--- a/src/quick/items/qquickimplicitsizeitem_p.h
+++ b/src/quick/items/qquickimplicitsizeitem_p.h
@@ -43,13 +43,14 @@
 #define QQUICKIMPLICITSIZEITEM_H
 
 #include "qquickpainteditem.h"
+#include <private/qtquickglobal_p.h>
 
 QT_BEGIN_HEADER
 
 QT_BEGIN_NAMESPACE
 
 class QQuickImplicitSizeItemPrivate;
-class Q_QUICK_EXPORT QQuickImplicitSizeItem : public QQuickItem
+class Q_QUICK_PRIVATE_EXPORT QQuickImplicitSizeItem : public QQuickItem
 {
     Q_OBJECT
     Q_PROPERTY(qreal implicitWidth READ implicitWidth NOTIFY implicitWidthChanged)
diff --git a/src/quick/items/qquickitem_p.h b/src/quick/items/qquickitem_p.h
index ed762d011a7313b95171abcce6f8c606c181cfc5..8699a56b662cf0a1ed9c108dc7cd86ca581ec82b 100644
--- a/src/quick/items/qquickitem_p.h
+++ b/src/quick/items/qquickitem_p.h
@@ -229,7 +229,7 @@ private:
     QQuickShaderEffectSource *m_effectSource;
 };
 
-class Q_QUICK_EXPORT QQuickItemPrivate : public QObjectPrivate
+class Q_QUICK_PRIVATE_EXPORT QQuickItemPrivate : public QObjectPrivate
 {
     Q_DECLARE_PUBLIC(QQuickItem)
 
diff --git a/src/quick/items/qquickitemanimation_p.h b/src/quick/items/qquickitemanimation_p.h
index a3a7e77871d8b21860b88f17cc30b607600d1472..ad971bba60cd0e7e8c97b35fce000a8ebaa7cf34 100644
--- a/src/quick/items/qquickitemanimation_p.h
+++ b/src/quick/items/qquickitemanimation_p.h
@@ -51,7 +51,7 @@ QT_BEGIN_HEADER
 QT_BEGIN_NAMESPACE
 
 class QQuickParentAnimationPrivate;
-class Q_QUICK_PRIVATE_EXPORT QQuickParentAnimation : public QQuickAnimationGroup
+class Q_AUTOTEST_EXPORT QQuickParentAnimation : public QQuickAnimationGroup
 {
     Q_OBJECT
     Q_DECLARE_PRIVATE(QQuickParentAnimation)
@@ -86,7 +86,7 @@ protected:
 };
 
 class QQuickAnchorAnimationPrivate;
-class Q_QUICK_PRIVATE_EXPORT QQuickAnchorAnimation : public QQuickAbstractAnimation
+class Q_AUTOTEST_EXPORT QQuickAnchorAnimation : public QQuickAbstractAnimation
 {
     Q_OBJECT
     Q_DECLARE_PRIVATE(QQuickAnchorAnimation)
@@ -120,7 +120,7 @@ protected:
 class QQuickItem;
 class QQuickPath;
 class QQuickPathAnimationPrivate;
-class Q_QUICK_PRIVATE_EXPORT QQuickPathAnimation : public QQuickAbstractAnimation
+class Q_AUTOTEST_EXPORT QQuickPathAnimation : public QQuickAbstractAnimation
 {
     Q_OBJECT
     Q_DECLARE_PRIVATE(QQuickPathAnimation)
diff --git a/src/quick/items/qquickmousearea_p.h b/src/quick/items/qquickmousearea_p.h
index 7eb9e5da057a4cd6ef4822b1c2015e63256b761c..177d2839f116cf4cccbf059c2c681d3b196c7073 100644
--- a/src/quick/items/qquickmousearea_p.h
+++ b/src/quick/items/qquickmousearea_p.h
@@ -43,7 +43,7 @@
 #define QQUICKMOUSEAREA_P_H
 
 #include "qquickitem.h"
-
+#include <private/qtquickglobal_p.h>
 #include <QtCore/qstringlist.h>
 
 QT_BEGIN_HEADER
@@ -121,7 +121,7 @@ private:
 class QQuickMouseAreaPrivate;
 class QQuickWheelEvent;
 // used in QtLocation
-class Q_QUICK_EXPORT QQuickMouseArea : public QQuickItem
+class Q_QUICK_PRIVATE_EXPORT QQuickMouseArea : public QQuickItem
 {
     Q_OBJECT
 
diff --git a/src/quick/items/qquickrectangle_p.h b/src/quick/items/qquickrectangle_p.h
index 52aa9e81f9dd7b9bd38ff6832496c40f27d85085..f077e7fbe2052cfcd6e74b63f18452ce0e674cb8 100644
--- a/src/quick/items/qquickrectangle_p.h
+++ b/src/quick/items/qquickrectangle_p.h
@@ -52,7 +52,7 @@ QT_BEGIN_HEADER
 
 QT_BEGIN_NAMESPACE
 
-class Q_QUICK_PRIVATE_EXPORT QQuickPen : public QObject
+class Q_AUTOTEST_EXPORT QQuickPen : public QObject
 {
     Q_OBJECT
 
@@ -136,7 +136,7 @@ private:
 };
 
 class QQuickRectanglePrivate;
-class Q_QUICK_PRIVATE_EXPORT QQuickRectangle : public QQuickItem
+class Q_AUTOTEST_EXPORT QQuickRectangle : public QQuickItem
 {
     Q_OBJECT
 
diff --git a/src/quick/items/qquickscalegrid_p_p.h b/src/quick/items/qquickscalegrid_p_p.h
index ae5627a48e95a6c5f898a9ec90b6f7186bcf6f37..2af18bf48f6a4566499a2410b83ed37ef9f3573c 100644
--- a/src/quick/items/qquickscalegrid_p_p.h
+++ b/src/quick/items/qquickscalegrid_p_p.h
@@ -54,7 +54,7 @@ QT_BEGIN_HEADER
 
 QT_BEGIN_NAMESPACE
 
-class Q_QUICK_PRIVATE_EXPORT QQuickScaleGrid : public QObject
+class QQuickScaleGrid : public QObject
 {
     Q_OBJECT
     Q_ENUMS(TileRule)
@@ -92,7 +92,7 @@ private:
     int _bottom;
 };
 
-class Q_QUICK_PRIVATE_EXPORT QQuickGridScaledImage
+class Q_AUTOTEST_EXPORT QQuickGridScaledImage
 {
 public:
     QQuickGridScaledImage();
diff --git a/src/quick/items/qquickshadereffect_p.h b/src/quick/items/qquickshadereffect_p.h
index 541bb34a2e5d09e44bd4361fe6fa94760ce1b93b..2f41324f0fec4ef0c4b9331c6e1480142d2e47bc 100644
--- a/src/quick/items/qquickshadereffect_p.h
+++ b/src/quick/items/qquickshadereffect_p.h
@@ -91,7 +91,7 @@ struct Q_QUICK_PRIVATE_EXPORT QQuickShaderEffectCommon
 };
 
 
-class Q_QUICK_EXPORT QQuickShaderEffect : public QQuickItem
+class Q_QUICK_PRIVATE_EXPORT QQuickShaderEffect : public QQuickItem
 {
     Q_OBJECT
     Q_PROPERTY(QByteArray fragmentShader READ fragmentShader WRITE setFragmentShader NOTIFY fragmentShaderChanged)
diff --git a/src/quick/items/qquickshadereffectmesh_p.h b/src/quick/items/qquickshadereffectmesh_p.h
index 0d8f5a24d02fec3f18f4a9f573dd5410ad1c00fd..a6974dc0c607f7092df7b9a2f41409de23928348 100644
--- a/src/quick/items/qquickshadereffectmesh_p.h
+++ b/src/quick/items/qquickshadereffectmesh_p.h
@@ -58,7 +58,7 @@ QT_BEGIN_NAMESPACE
 class QSGGeometry;
 class QRectF;
 
-class Q_QUICK_EXPORT QQuickShaderEffectMesh : public QObject
+class QQuickShaderEffectMesh : public QObject
 {
     Q_OBJECT
 public:
diff --git a/src/quick/items/qquickshadereffectsource_p.h b/src/quick/items/qquickshadereffectsource_p.h
index 0853394339ff6f67f5cb8d4c6e4b9e71025e75ac..cf563b3028dcab45a9679554d6424c9d278a1891 100644
--- a/src/quick/items/qquickshadereffectsource_p.h
+++ b/src/quick/items/qquickshadereffectsource_p.h
@@ -76,7 +76,7 @@ private Q_SLOTS:
     void markDirtyTexture();
 };
 
-class Q_QUICK_EXPORT QQuickShaderEffectTexture : public QSGDynamicTexture
+class QQuickShaderEffectTexture : public QSGDynamicTexture
 {
     Q_OBJECT
 public:
@@ -153,7 +153,7 @@ private:
     uint m_grab : 1;
 };
 
-class Q_QUICK_EXPORT QQuickShaderEffectSource : public QQuickItem, public QQuickItemChangeListener
+class Q_QUICK_PRIVATE_EXPORT QQuickShaderEffectSource : public QQuickItem, public QQuickItemChangeListener
 {
     Q_OBJECT
     Q_PROPERTY(WrapMode wrapMode READ wrapMode WRITE setWrapMode NOTIFY wrapModeChanged)
diff --git a/src/quick/items/qquicktext_p.h b/src/quick/items/qquicktext_p.h
index e69159eac9963af34238ded10df71d49ee8befbf..b6aefd7ee22ce233d7f2a2d4d207be4fb3536c76 100644
--- a/src/quick/items/qquicktext_p.h
+++ b/src/quick/items/qquicktext_p.h
@@ -246,7 +246,7 @@ private:
 };
 
 class QTextLine;
-class Q_QUICK_EXPORT QQuickTextLine : public QObject
+class QQuickTextLine : public QObject
 {
     Q_OBJECT
     Q_PROPERTY(int number READ number)
diff --git a/src/quick/items/qquickvisualdatamodel_p.h b/src/quick/items/qquickvisualdatamodel_p.h
index 535374be099ab5977db89084bc8d238e4462dfae..836c99a9a28ddd44a88f8b84a8bea51fc40f14f2 100644
--- a/src/quick/items/qquickvisualdatamodel_p.h
+++ b/src/quick/items/qquickvisualdatamodel_p.h
@@ -42,13 +42,13 @@
 #ifndef QQUICKVISUALDATAMODEL_P_H
 #define QQUICKVISUALDATAMODEL_P_H
 
+#include <private/qtquickglobal_p.h>
 #include <private/qquicklistcompositor_p.h>
 #include <private/qquickvisualitemmodel_p.h>
 
 #include <QtCore/qabstractitemmodel.h>
 #include <QtCore/qstringlist.h>
 
-
 #include <private/qv8engine_p.h>
 #include <private/qqmlglobal_p.h>
 
@@ -67,7 +67,7 @@ class QQuickVisualDataModelAttached;
 class QQuickVisualDataModelPrivate;
 
 
-class Q_QUICK_EXPORT QQuickVisualDataModel : public QQuickVisualModel, public QQmlParserStatus
+class Q_QUICK_PRIVATE_EXPORT QQuickVisualDataModel : public QQuickVisualModel, public QQmlParserStatus
 {
     Q_OBJECT
     Q_DECLARE_PRIVATE(QQuickVisualDataModel)
diff --git a/src/quick/items/qquickvisualitemmodel_p.h b/src/quick/items/qquickvisualitemmodel_p.h
index bf56195c6696c300e371e6051d72344cc5915240..27f0594e9dc0996e3192722db7d8ea6bbe0a3f47 100644
--- a/src/quick/items/qquickvisualitemmodel_p.h
+++ b/src/quick/items/qquickvisualitemmodel_p.h
@@ -42,7 +42,7 @@
 #ifndef QQUICKVISUALITEMMODEL_P_H
 #define QQUICKVISUALITEMMODEL_P_H
 
-#include <QtQuick/qtquickglobal.h>
+#include <private/qtquickglobal_p.h>
 #include <QtQml/qqml.h>
 #include <QtCore/qobject.h>
 
@@ -53,7 +53,7 @@ QT_BEGIN_NAMESPACE
 class QQuickItem;
 class QQuickChangeSet;
 
-class Q_QUICK_EXPORT QQuickVisualModel : public QObject
+class Q_QUICK_PRIVATE_EXPORT QQuickVisualModel : public QObject
 {
     Q_OBJECT
 
@@ -92,7 +92,7 @@ private:
 
 class QQuickVisualItemModelAttached;
 class QQuickVisualItemModelPrivate;
-class Q_QUICK_EXPORT QQuickVisualItemModel : public QQuickVisualModel
+class Q_QUICK_PRIVATE_EXPORT QQuickVisualItemModel : public QQuickVisualModel
 {
     Q_OBJECT
     Q_DECLARE_PRIVATE(QQuickVisualItemModel)
diff --git a/src/quick/items/qquickwindowmanager_p.h b/src/quick/items/qquickwindowmanager_p.h
index eb877d4756cfc6cb8387fa74f78f202058b00295..54b71f35bc1800fadc067ac7b0e0f8d645b71a88 100644
--- a/src/quick/items/qquickwindowmanager_p.h
+++ b/src/quick/items/qquickwindowmanager_p.h
@@ -43,14 +43,14 @@
 #define QQUICKWINDOWMANAGER_P_H
 
 #include <QtGui/QImage>
-#include <qtquickglobal.h>
+#include <private/qtquickglobal_p.h>
 
 QT_BEGIN_NAMESPACE
 
 class QQuickCanvas;
 class QSGContext;
 
-class Q_QUICK_EXPORT QQuickWindowManager
+class Q_QUICK_PRIVATE_EXPORT QQuickWindowManager
 {
 public:
     virtual ~QQuickWindowManager();
diff --git a/src/quick/scenegraph/coreapi/qsgdefaultrenderer_p.h b/src/quick/scenegraph/coreapi/qsgdefaultrenderer_p.h
index e7cd1b0465d3b25c31b2f39e9e802152f9c30ebd..5c12c32c632eac6f11940c37ff582a09d628c994 100644
--- a/src/quick/scenegraph/coreapi/qsgdefaultrenderer_p.h
+++ b/src/quick/scenegraph/coreapi/qsgdefaultrenderer_p.h
@@ -51,7 +51,7 @@ QT_BEGIN_HEADER
 
 QT_BEGIN_NAMESPACE
 
-class Q_QUICK_EXPORT QSGDefaultRenderer : public QSGRenderer
+class Q_QUICK_PRIVATE_EXPORT QSGDefaultRenderer : public QSGRenderer
 {
     Q_OBJECT
 public:
diff --git a/src/quick/scenegraph/coreapi/qsgnodeupdater_p.h b/src/quick/scenegraph/coreapi/qsgnodeupdater_p.h
index c1df82332e38d0d8b2d337e5613891eb71fc85eb..1f2d4f78dd69ab02d085004c9abfe379668e0aba 100644
--- a/src/quick/scenegraph/coreapi/qsgnodeupdater_p.h
+++ b/src/quick/scenegraph/coreapi/qsgnodeupdater_p.h
@@ -42,7 +42,7 @@
 #ifndef NODEUPDATER_P_H
 #define NODEUPDATER_P_H
 
-#include <QtQuick/qtquickglobal.h>
+#include <private/qtquickglobal_p.h>
 #include <QtGui/private/qdatabuffer_p.h>
 
 QT_BEGIN_HEADER
@@ -57,7 +57,7 @@ class QSGGeometryNode;
 class QMatrix4x4;
 class QSGRenderNode;
 
-class Q_QUICK_EXPORT QSGNodeUpdater
+class Q_QUICK_PRIVATE_EXPORT QSGNodeUpdater
 {
 public:
     QSGNodeUpdater();
diff --git a/src/quick/scenegraph/coreapi/qsgrenderer_p.h b/src/quick/scenegraph/coreapi/qsgrenderer_p.h
index 3dced9cfa93fada9e61f5c6af8826f520eb2a36f..82bd2ef0cb172593e164e007b0045b931ceb94d1 100644
--- a/src/quick/scenegraph/coreapi/qsgrenderer_p.h
+++ b/src/quick/scenegraph/coreapi/qsgrenderer_p.h
@@ -66,7 +66,7 @@ class TextureReference;
 class QSGBindable;
 class QSGNodeUpdater;
 
-class Q_QUICK_EXPORT QSGRenderer : public QObject, public QOpenGLFunctions
+class Q_QUICK_PRIVATE_EXPORT QSGRenderer : public QObject, public QOpenGLFunctions
 {
     Q_OBJECT
 public:
@@ -186,7 +186,7 @@ private:
 
 Q_DECLARE_OPERATORS_FOR_FLAGS(QSGRenderer::ClearMode)
 
-class Q_QUICK_EXPORT QSGBindable
+class Q_QUICK_PRIVATE_EXPORT QSGBindable
 {
 public:
     virtual ~QSGBindable() { }
@@ -224,7 +224,7 @@ QSGMaterialShader::RenderState QSGRenderer::state(QSGMaterialShader::RenderState
 }
 
 
-class Q_QUICK_EXPORT QSGNodeDumper : public QSGNodeVisitor {
+class Q_QUICK_PRIVATE_EXPORT QSGNodeDumper : public QSGNodeVisitor {
 
 public:
     static void dump(QSGNode *n);
diff --git a/src/quick/scenegraph/coreapi/qsgrendernode_p.h b/src/quick/scenegraph/coreapi/qsgrendernode_p.h
index 45636cc79627942600dfa7972ff1ba983d8da982..3596d6cf7352308c8c471053c33e79ce0dfb2932 100644
--- a/src/quick/scenegraph/coreapi/qsgrendernode_p.h
+++ b/src/quick/scenegraph/coreapi/qsgrendernode_p.h
@@ -54,12 +54,13 @@
 //
 
 #include "qsgnode.h"
+#include <private/qtquickglobal_p.h>
 
 QT_BEGIN_HEADER
 
 QT_BEGIN_NAMESPACE
 
-class Q_QUICK_EXPORT QSGRenderNode : public QSGNode
+class Q_QUICK_PRIVATE_EXPORT QSGRenderNode : public QSGNode
 {
 public:
     enum StateFlag
diff --git a/src/quick/scenegraph/qsgadaptationlayer_p.h b/src/quick/scenegraph/qsgadaptationlayer_p.h
index 77cd814ce829aa82d7bfe7c88bc2fcffd53509bb..3c62ce03dd92496fc4d9a98c93e698c9c8675047 100644
--- a/src/quick/scenegraph/qsgadaptationlayer_p.h
+++ b/src/quick/scenegraph/qsgadaptationlayer_p.h
@@ -70,7 +70,7 @@ class QSGDistanceFieldGlyphCacheManager;
 class QSGDistanceFieldGlyphNode;
 
 // TODO: Rename from XInterface to AbstractX.
-class Q_QUICK_EXPORT QSGRectangleNode : public QSGGeometryNode
+class Q_QUICK_PRIVATE_EXPORT QSGRectangleNode : public QSGGeometryNode
 {
 public:
     virtual void setRect(const QRectF &rect) = 0;
@@ -85,7 +85,7 @@ public:
 };
 
 
-class Q_QUICK_EXPORT QSGImageNode : public QSGGeometryNode
+class Q_QUICK_PRIVATE_EXPORT QSGImageNode : public QSGGeometryNode
 {
 public:
     virtual void setTargetRect(const QRectF &rect) = 0;
@@ -101,7 +101,7 @@ public:
 };
 
 
-class Q_QUICK_EXPORT QSGGlyphNode : public QSGGeometryNode
+class Q_QUICK_PRIVATE_EXPORT QSGGlyphNode : public QSGGeometryNode
 {
 public:
     enum AntialiasingMode
@@ -134,7 +134,7 @@ protected:
     QQuickItem *m_ownerElement;
 };
 
-class Q_QUICK_EXPORT QSGDistanceFieldGlyphConsumer
+class Q_QUICK_PRIVATE_EXPORT QSGDistanceFieldGlyphConsumer
 {
 public:
     virtual ~QSGDistanceFieldGlyphConsumer() {}
@@ -142,7 +142,7 @@ public:
     virtual void invalidateGlyphs(const QVector<quint32> &glyphs) = 0;
 };
 
-class Q_QUICK_EXPORT QSGDistanceFieldGlyphCache
+class Q_QUICK_PRIVATE_EXPORT QSGDistanceFieldGlyphCache
 {
 public:
     QSGDistanceFieldGlyphCache(QSGDistanceFieldGlyphCacheManager *man, QOpenGLContext *c, const QRawFont &font);
diff --git a/src/quick/scenegraph/qsgcontext_p.h b/src/quick/scenegraph/qsgcontext_p.h
index 35b97c3d15a53e0f6f182494346ab46909a188bc..30372c371a08440d181ad9e51674e7e7ab7b60a7 100644
--- a/src/quick/scenegraph/qsgcontext_p.h
+++ b/src/quick/scenegraph/qsgcontext_p.h
@@ -48,6 +48,7 @@
 #include <QtGui/QImage>
 #include <QtGui/QSurfaceFormat>
 
+#include <private/qtquickglobal_p.h>
 #include <private/qrawfont_p.h>
 
 #include <QtQuick/qsgnode.h>
@@ -75,7 +76,7 @@ class QOpenGLFramebufferObject;
 
 class QQuickTextureFactory;
 
-class Q_QUICK_EXPORT QSGContext : public QObject
+class Q_QUICK_PRIVATE_EXPORT QSGContext : public QObject
 {
     Q_OBJECT
     Q_DECLARE_PRIVATE(QSGContext)
diff --git a/src/quick/scenegraph/qsgcontextplugin_p.h b/src/quick/scenegraph/qsgcontextplugin_p.h
index 2c4531c2391b2be71f38c0581e1c0ac9ff2ebcaf..bc056b96feb6c1a592e61f016ec15c316fed836f 100644
--- a/src/quick/scenegraph/qsgcontextplugin_p.h
+++ b/src/quick/scenegraph/qsgcontextplugin_p.h
@@ -42,7 +42,7 @@
 #ifndef QSGCONTEXTPLUGIN_H
 #define QSGCONTEXTPLUGIN_H
 
-#include <QtQuick/qtquickglobal.h>
+#include <private/qtquickglobal_p.h>
 #include <QtQuick/qquickimageprovider.h>
 #include <QtCore/qplugin.h>
 #include <QtCore/qfactoryinterface.h>
@@ -55,7 +55,7 @@ class QSGContext;
 
 class QQuickWindowManager;
 
-struct Q_QUICK_EXPORT QSGContextFactoryInterface : public QFactoryInterface
+struct Q_QUICK_PRIVATE_EXPORT QSGContextFactoryInterface : public QFactoryInterface
 {
     virtual QSGContext *create(const QString &key) const = 0;
 
@@ -67,7 +67,7 @@ struct Q_QUICK_EXPORT QSGContextFactoryInterface : public QFactoryInterface
         "org.qt-project.Qt.QSGContextFactoryInterface"
 Q_DECLARE_INTERFACE(QSGContextFactoryInterface, QSGContextFactoryInterface_iid)
 
-class Q_QUICK_EXPORT QSGContextPlugin : public QObject, public QSGContextFactoryInterface
+class Q_QUICK_PRIVATE_EXPORT QSGContextPlugin : public QObject, public QSGContextFactoryInterface
 {
     Q_OBJECT
     Q_INTERFACES(QSGContextFactoryInterface:QFactoryInterface)
diff --git a/src/quick/scenegraph/qsgdefaultdistancefieldglyphcache_p.h b/src/quick/scenegraph/qsgdefaultdistancefieldglyphcache_p.h
index 38cc649b3a744f404f6de50a4b9bec8c4e0e654d..5c38c1b656f7febff3950969747153f380d413fa 100644
--- a/src/quick/scenegraph/qsgdefaultdistancefieldglyphcache_p.h
+++ b/src/quick/scenegraph/qsgdefaultdistancefieldglyphcache_p.h
@@ -49,7 +49,7 @@
 
 QT_BEGIN_NAMESPACE
 
-class Q_QUICK_EXPORT QSGDefaultDistanceFieldGlyphCache : public QSGDistanceFieldGlyphCache
+class Q_QUICK_PRIVATE_EXPORT QSGDefaultDistanceFieldGlyphCache : public QSGDistanceFieldGlyphCache
 {
 public:
     QSGDefaultDistanceFieldGlyphCache(QSGDistanceFieldGlyphCacheManager *man, QOpenGLContext *c, const QRawFont &font);
diff --git a/src/quick/scenegraph/qsgdistancefieldglyphnode_p_p.h b/src/quick/scenegraph/qsgdistancefieldglyphnode_p_p.h
index 8b2654e0786cfe4a685faaefb1da7c11b9ee8ea4..904f78a4a92d3e04009b57c5898feb03b65ee662 100644
--- a/src/quick/scenegraph/qsgdistancefieldglyphnode_p_p.h
+++ b/src/quick/scenegraph/qsgdistancefieldglyphnode_p_p.h
@@ -48,7 +48,7 @@
 
 QT_BEGIN_NAMESPACE
 
-class Q_QUICK_EXPORT QSGDistanceFieldTextMaterial: public QSGMaterial
+class Q_QUICK_PRIVATE_EXPORT QSGDistanceFieldTextMaterial: public QSGMaterial
 {
 public:
     QSGDistanceFieldTextMaterial();
@@ -82,7 +82,7 @@ protected:
     qreal m_fontScale;
 };
 
-class Q_QUICK_EXPORT QSGDistanceFieldStyledTextMaterial : public QSGDistanceFieldTextMaterial
+class Q_QUICK_PRIVATE_EXPORT QSGDistanceFieldStyledTextMaterial : public QSGDistanceFieldTextMaterial
 {
 public:
     QSGDistanceFieldStyledTextMaterial();
@@ -99,7 +99,7 @@ protected:
     QColor m_styleColor;
 };
 
-class Q_QUICK_EXPORT QSGDistanceFieldOutlineTextMaterial : public QSGDistanceFieldStyledTextMaterial
+class Q_QUICK_PRIVATE_EXPORT QSGDistanceFieldOutlineTextMaterial : public QSGDistanceFieldStyledTextMaterial
 {
 public:
     QSGDistanceFieldOutlineTextMaterial();
@@ -109,7 +109,7 @@ public:
     virtual QSGMaterialShader *createShader() const;
 };
 
-class Q_QUICK_EXPORT QSGDistanceFieldShiftedStyleTextMaterial : public QSGDistanceFieldStyledTextMaterial
+class Q_QUICK_PRIVATE_EXPORT QSGDistanceFieldShiftedStyleTextMaterial : public QSGDistanceFieldStyledTextMaterial
 {
 public:
     QSGDistanceFieldShiftedStyleTextMaterial();
@@ -125,14 +125,14 @@ protected:
     QPointF m_shift;
 };
 
-class Q_QUICK_EXPORT QSGHiQSubPixelDistanceFieldTextMaterial : public QSGDistanceFieldTextMaterial
+class Q_QUICK_PRIVATE_EXPORT QSGHiQSubPixelDistanceFieldTextMaterial : public QSGDistanceFieldTextMaterial
 {
 public:
     virtual QSGMaterialType *type() const;
     virtual QSGMaterialShader *createShader() const;
 };
 
-class Q_QUICK_EXPORT QSGLoQSubPixelDistanceFieldTextMaterial : public QSGDistanceFieldTextMaterial
+class Q_QUICK_PRIVATE_EXPORT QSGLoQSubPixelDistanceFieldTextMaterial : public QSGDistanceFieldTextMaterial
 {
 public:
     virtual QSGMaterialType *type() const;
diff --git a/src/quick/scenegraph/util/qsgareaallocator_p.h b/src/quick/scenegraph/util/qsgareaallocator_p.h
index 998f7ef4d1e5a54c8df8dd3d84f9dc2afa339415..f1017145f273f65fb9be5dffddd00a2f1ff78fe0 100644
--- a/src/quick/scenegraph/util/qsgareaallocator_p.h
+++ b/src/quick/scenegraph/util/qsgareaallocator_p.h
@@ -42,7 +42,7 @@
 #ifndef AREAALLOCATOR_H
 #define AREAALLOCATOR_H
 
-#include <QtQuick/qtquickglobal.h>
+#include <private/qtquickglobal_p.h>
 #include <QtCore/qsize.h>
 
 QT_BEGIN_NAMESPACE
@@ -50,7 +50,7 @@ QT_BEGIN_NAMESPACE
 class QRect;
 class QPoint;
 struct QSGAreaAllocatorNode;
-class Q_QUICK_EXPORT QSGAreaAllocator
+class Q_QUICK_PRIVATE_EXPORT QSGAreaAllocator
 {
 public:
     QSGAreaAllocator(const QSize &size);
diff --git a/src/quick/scenegraph/util/qsgdistancefieldutil_p.h b/src/quick/scenegraph/util/qsgdistancefieldutil_p.h
index 4ed4c286572d5881b11398c2b88e195ed460a364..329df98a348fb684c8222546f439115da01631c6 100644
--- a/src/quick/scenegraph/util/qsgdistancefieldutil_p.h
+++ b/src/quick/scenegraph/util/qsgdistancefieldutil_p.h
@@ -55,7 +55,7 @@ class QOpenGLShaderProgram;
 class QSGDistanceFieldGlyphCache;
 class QSGContext;
 
-class Q_QUICK_EXPORT QSGDistanceFieldGlyphCacheManager
+class Q_QUICK_PRIVATE_EXPORT QSGDistanceFieldGlyphCacheManager
 {
 public:
     QSGDistanceFieldGlyphCacheManager();
diff --git a/src/quick/scenegraph/util/qsgpainternode_p.h b/src/quick/scenegraph/util/qsgpainternode_p.h
index 24b4d26855e66c8345d205294a7232a503179ee9..7779b3d16fcddaf8d1440ddf08dc1368f479b416 100644
--- a/src/quick/scenegraph/util/qsgpainternode_p.h
+++ b/src/quick/scenegraph/util/qsgpainternode_p.h
@@ -57,7 +57,7 @@ QT_BEGIN_NAMESPACE
 class QOpenGLFramebufferObject;
 class QOpenGLPaintDevice;
 
-class Q_QUICK_EXPORT QSGPainterTexture : public QSGPlainTexture
+class Q_QUICK_PRIVATE_EXPORT QSGPainterTexture : public QSGPlainTexture
 {
 public:
     QSGPainterTexture();
@@ -70,7 +70,7 @@ private:
     QRect m_dirty_rect;
 };
 
-class Q_QUICK_EXPORT QSGPainterNode : public QSGGeometryNode
+class Q_QUICK_PRIVATE_EXPORT QSGPainterNode : public QSGGeometryNode
 {
 public:
     QSGPainterNode(QQuickPaintedItem *item);
diff --git a/src/quick/scenegraph/util/qsgtexture_p.h b/src/quick/scenegraph/util/qsgtexture_p.h
index 3d80035c9a4cb76c8faa88c83087039d4cf18774..a2c8bbad121d613505438d122d26fc9e2f183122 100644
--- a/src/quick/scenegraph/util/qsgtexture_p.h
+++ b/src/quick/scenegraph/util/qsgtexture_p.h
@@ -67,7 +67,7 @@ public:
     uint filterMode : 2;
 };
 
-class Q_QUICK_EXPORT QSGPlainTexture : public QSGTexture
+class Q_QUICK_PRIVATE_EXPORT QSGPlainTexture : public QSGTexture
 {
     Q_OBJECT
 public:
diff --git a/src/quick/scenegraph/util/qsgtexturematerial_p.h b/src/quick/scenegraph/util/qsgtexturematerial_p.h
index 0895dbd6c2575e3852e067626df6e7937e72eea3..fe14726de77a1d8580834f9be1f97263e92c1cde 100644
--- a/src/quick/scenegraph/util/qsgtexturematerial_p.h
+++ b/src/quick/scenegraph/util/qsgtexturematerial_p.h
@@ -43,12 +43,13 @@
 #define TEXTUREMATERIAL_P_H
 
 #include "qsgtexturematerial.h"
+#include <private/qtquickglobal_p.h>
 
 QT_BEGIN_HEADER
 
 QT_BEGIN_NAMESPACE
 
-class Q_QUICK_EXPORT QSGOpaqueTextureMaterialShader : public QSGMaterialShader
+class Q_QUICK_PRIVATE_EXPORT QSGOpaqueTextureMaterialShader : public QSGMaterialShader
 {
 public:
     virtual void updateState(const RenderState &state, QSGMaterial *newEffect, QSGMaterial *oldEffect);
diff --git a/src/quick/util/qquickanimation_p.h b/src/quick/util/qquickanimation_p.h
index 980a2f51711916ddc18e09bc23cdd5bd2316dd12..5a5131999f226753174609f5e31cb6c21005d8e0 100644
--- a/src/quick/util/qquickanimation_p.h
+++ b/src/quick/util/qquickanimation_p.h
@@ -167,7 +167,7 @@ protected:
 };
 
 class QQuickScriptActionPrivate;
-class Q_QUICK_PRIVATE_EXPORT QQuickScriptAction : public QQuickAbstractAnimation
+class QQuickScriptAction : public QQuickAbstractAnimation
 {
     Q_OBJECT
     Q_DECLARE_PRIVATE(QQuickScriptAction)
@@ -193,7 +193,7 @@ protected:
 };
 
 class QQuickPropertyActionPrivate;
-class Q_QUICK_PRIVATE_EXPORT QQuickPropertyAction : public QQuickAbstractAnimation
+class QQuickPropertyAction : public QQuickAbstractAnimation
 {
     Q_OBJECT
     Q_DECLARE_PRIVATE(QQuickPropertyAction)
diff --git a/src/quick/util/qquickapplication_p.h b/src/quick/util/qquickapplication_p.h
index a502c70b9c68f04db1b0a56b8b0dc3c39db3f266..754b2bb3b5b3a803d00cf9e2fe1e162803356dfe 100644
--- a/src/quick/util/qquickapplication_p.h
+++ b/src/quick/util/qquickapplication_p.h
@@ -52,7 +52,7 @@ QT_BEGIN_NAMESPACE
 
 
 class QQuickApplicationPrivate;
-class Q_QUICK_PRIVATE_EXPORT QQuickApplication : public QObject
+class Q_AUTOTEST_EXPORT QQuickApplication : public QObject
 {
     Q_OBJECT
     Q_PROPERTY(bool active READ active NOTIFY activeChanged)
diff --git a/src/quick/util/qquickbehavior_p.h b/src/quick/util/qquickbehavior_p.h
index 1c258767d36d6bcfadee9080b7d2f247062d6703..15018e0df009180b01d1975558ae182c5711c8af 100644
--- a/src/quick/util/qquickbehavior_p.h
+++ b/src/quick/util/qquickbehavior_p.h
@@ -53,7 +53,7 @@ QT_BEGIN_NAMESPACE
 
 class QQuickAbstractAnimation;
 class QQuickBehaviorPrivate;
-class Q_QUICK_PRIVATE_EXPORT QQuickBehavior : public QObject, public QQmlPropertyValueInterceptor
+class Q_AUTOTEST_EXPORT QQuickBehavior : public QObject, public QQmlPropertyValueInterceptor
 {
     Q_OBJECT
     Q_DECLARE_PRIVATE(QQuickBehavior)
diff --git a/src/quick/util/qquickpixmapcache_p.h b/src/quick/util/qquickpixmapcache_p.h
index 03f2e65cc21104ae50f6b8b775e3b9a305bb1483..3695c308e416a953ec030ccd006300431b227c4b 100644
--- a/src/quick/util/qquickpixmapcache_p.h
+++ b/src/quick/util/qquickpixmapcache_p.h
@@ -46,7 +46,7 @@
 #include <QtCore/qstring.h>
 #include <QtGui/qpixmap.h>
 #include <QtCore/qurl.h>
-#include <QtQuick/qtquickglobal.h>
+#include <private/qtquickglobal_p.h>
 #include <QtQuick/qquickimageprovider.h>
 
 #include <private/qintrusivelist_p.h>
@@ -77,7 +77,7 @@ private:
     QImage im;
 };
 
-class Q_QUICK_EXPORT QQuickPixmap
+class Q_QUICK_PRIVATE_EXPORT QQuickPixmap
 {
     Q_DECLARE_TR_FUNCTIONS(QQuickPixmap)
 public:
diff --git a/src/quick/util/qquickpropertychanges_p.h b/src/quick/util/qquickpropertychanges_p.h
index 313a781302e784d0a12cd7ca3cce1132b3ea8c88..dcfdb7d92953b88ead2da77eac27f4f639fa512c 100644
--- a/src/quick/util/qquickpropertychanges_p.h
+++ b/src/quick/util/qquickpropertychanges_p.h
@@ -50,7 +50,7 @@ QT_BEGIN_HEADER
 QT_BEGIN_NAMESPACE
 
 class QQuickPropertyChangesPrivate;
-class Q_QUICK_PRIVATE_EXPORT QQuickPropertyChanges : public QQuickStateOperation
+class Q_AUTOTEST_EXPORT QQuickPropertyChanges : public QQuickStateOperation
 {
     Q_OBJECT
     Q_DECLARE_PRIVATE(QQuickPropertyChanges)
diff --git a/src/quick/util/qquicksmoothedanimation_p.h b/src/quick/util/qquicksmoothedanimation_p.h
index 8825a04a0ed1fdb9bdd08e7e2e09a5fbd7c939c4..50559e85c65f453858a2a37f206143af8a9f544f 100644
--- a/src/quick/util/qquicksmoothedanimation_p.h
+++ b/src/quick/util/qquicksmoothedanimation_p.h
@@ -53,7 +53,7 @@ QT_BEGIN_NAMESPACE
 
 class QQmlProperty;
 class QQuickSmoothedAnimationPrivate;
-class Q_QUICK_PRIVATE_EXPORT QQuickSmoothedAnimation : public QQuickNumberAnimation
+class Q_AUTOTEST_EXPORT QQuickSmoothedAnimation : public QQuickNumberAnimation
 {
     Q_OBJECT
     Q_DECLARE_PRIVATE(QQuickSmoothedAnimation)
diff --git a/src/quick/util/qquickspringanimation_p.h b/src/quick/util/qquickspringanimation_p.h
index 03c586e68718e3ca2f1ce1ae3d779e11d0d74818..49fb8849e2cf26f285076a4d5a68252994fc5446 100644
--- a/src/quick/util/qquickspringanimation_p.h
+++ b/src/quick/util/qquickspringanimation_p.h
@@ -52,7 +52,7 @@ QT_BEGIN_HEADER
 QT_BEGIN_NAMESPACE
 
 class QQuickSpringAnimationPrivate;
-class Q_QUICK_PRIVATE_EXPORT QQuickSpringAnimation : public QQuickNumberAnimation
+class Q_AUTOTEST_EXPORT QQuickSpringAnimation : public QQuickNumberAnimation
 {
     Q_OBJECT
     Q_DECLARE_PRIVATE(QQuickSpringAnimation)
diff --git a/src/quick/util/qquickstate_p.h b/src/quick/util/qquickstate_p.h
index 7dfc1daa4490bf94244711656f7f06af701a19f5..cea5371295776a9ca333df541ff9125a16f2a475 100644
--- a/src/quick/util/qquickstate_p.h
+++ b/src/quick/util/qquickstate_p.h
@@ -56,7 +56,7 @@ class QQuickActionEvent;
 class QQmlAbstractBinding;
 class QQmlBinding;
 class QQmlExpression;
-class Q_QUICK_PRIVATE_EXPORT QQuickAction
+class QQuickAction
 {
 public:
     QQuickAction();
@@ -115,7 +115,7 @@ public:
 class QQuickStateGroup;
 class QQuickState;
 class QQuickStateOperationPrivate;
-class Q_QUICK_EXPORT QQuickStateOperation : public QObject
+class Q_QUICK_PRIVATE_EXPORT QQuickStateOperation : public QObject
 {
     Q_OBJECT
 public:
@@ -140,7 +140,7 @@ typedef QQuickStateOperation::ActionList QQuickStateActions;
 
 class QQuickTransition;
 class QQuickStatePrivate;
-class Q_QUICK_EXPORT QQuickState : public QObject
+class Q_QUICK_PRIVATE_EXPORT QQuickState : public QObject
 {
     Q_OBJECT
 
diff --git a/src/quick/util/qquickstategroup_p.h b/src/quick/util/qquickstategroup_p.h
index 07e3c0505ae0e69c5d3ba1fa61aa7e04daa25eb7..eaa536d6ee448e933f630d4e3c212cafae179313 100644
--- a/src/quick/util/qquickstategroup_p.h
+++ b/src/quick/util/qquickstategroup_p.h
@@ -49,7 +49,7 @@ QT_BEGIN_HEADER
 QT_BEGIN_NAMESPACE
 
 class QQuickStateGroupPrivate;
-class Q_QUICK_EXPORT QQuickStateGroup : public QObject, public QQmlParserStatus
+class Q_AUTOTEST_EXPORT QQuickStateGroup : public QObject, public QQmlParserStatus
 {
     Q_OBJECT
     Q_INTERFACES(QQmlParserStatus)
diff --git a/src/quick/util/qquicktimer_p.h b/src/quick/util/qquicktimer_p.h
index b0354e48749065e36f0ca1717c99dcc5e2a944ab..be8c07a4dacef41219ef8725d1e69c9f20648cfc 100644
--- a/src/quick/util/qquicktimer_p.h
+++ b/src/quick/util/qquicktimer_p.h
@@ -53,7 +53,7 @@ QT_BEGIN_HEADER
 QT_BEGIN_NAMESPACE
 
 class QQuickTimerPrivate;
-class Q_QUICK_PRIVATE_EXPORT QQuickTimer : public QObject, public QQmlParserStatus
+class Q_AUTOTEST_EXPORT QQuickTimer : public QObject, public QQmlParserStatus
 {
     Q_OBJECT
     Q_DECLARE_PRIVATE(QQuickTimer)
diff --git a/src/quick/util/qquicktransition_p.h b/src/quick/util/qquicktransition_p.h
index 976439c2362728fdbe371526dae596239c6ae25d..9eea5a7babf752bacd5496ca9e42be72d39e694e 100644
--- a/src/quick/util/qquicktransition_p.h
+++ b/src/quick/util/qquicktransition_p.h
@@ -57,7 +57,7 @@ class QQuickTransitionPrivate;
 class QQuickTransitionManager;
 class QQuickTransition;
 
-class Q_QUICK_EXPORT QQuickTransitionInstance
+class QQuickTransitionInstance
 {
 public:
     QQuickTransitionInstance(QQuickTransitionPrivate *transition, QAbstractAnimationJob *anim);
@@ -74,7 +74,7 @@ private:
     friend class QQuickTransition;
 };
 
-class Q_QUICK_EXPORT QQuickTransition : public QObject
+class Q_AUTOTEST_EXPORT QQuickTransition : public QObject
 {
     Q_OBJECT
     Q_DECLARE_PRIVATE(QQuickTransition)
diff --git a/tests/auto/qml/qqmlcomponent/tst_qqmlcomponent.cpp b/tests/auto/qml/qqmlcomponent/tst_qqmlcomponent.cpp
index bf76ed962bf934ea7dd7974e432369ec51bb1f4f..be38829f65aea7fdc4d9f1788b55bf5b5ce22b90 100644
--- a/tests/auto/qml/qqmlcomponent/tst_qqmlcomponent.cpp
+++ b/tests/auto/qml/qqmlcomponent/tst_qqmlcomponent.cpp
@@ -294,19 +294,20 @@ void tst_qqmlcomponent::asyncHierarchy()
     QVERIFY(root != 0);
 
     // ensure that the parent-child relationship hierarchy is correct
+    // (use QQuickItem* for all children rather than types which are not publicly exported)
     QQuickItem *c1 = root->findChild<QQuickItem*>("c1", Qt::FindDirectChildrenOnly);
     QVERIFY(c1);
     QQuickItem *c1c1 = c1->findChild<QQuickItem*>("c1c1", Qt::FindDirectChildrenOnly);
     QVERIFY(c1c1);
     QQuickItem *c1c2 = c1->findChild<QQuickItem*>("c1c2", Qt::FindDirectChildrenOnly);
     QVERIFY(c1c2);
-    QQuickRectangle *c1c2c3 = c1c2->findChild<QQuickRectangle*>("c1c2c3", Qt::FindDirectChildrenOnly);
+    QQuickItem *c1c2c3 = c1c2->findChild<QQuickItem*>("c1c2c3", Qt::FindDirectChildrenOnly);
     QVERIFY(c1c2c3);
     QQuickItem *c2 = root->findChild<QQuickItem*>("c2", Qt::FindDirectChildrenOnly);
     QVERIFY(c2);
-    QQuickRectangle *c2c1 = c2->findChild<QQuickRectangle*>("c2c1", Qt::FindDirectChildrenOnly);
+    QQuickItem *c2c1 = c2->findChild<QQuickItem*>("c2c1", Qt::FindDirectChildrenOnly);
     QVERIFY(c2c1);
-    QQuickMouseArea *c2c1c1 = c2c1->findChild<QQuickMouseArea*>("c2c1c1", Qt::FindDirectChildrenOnly);
+    QQuickItem *c2c1c1 = c2c1->findChild<QQuickItem*>("c2c1c1", Qt::FindDirectChildrenOnly);
     QVERIFY(c2c1c1);
     QQuickItem *c2c1c2 = c2c1->findChild<QQuickItem*>("c2c1c2", Qt::FindDirectChildrenOnly);
     QVERIFY(c2c1c2);