summaryrefslogtreecommitdiffstats
path: root/src/3rdparty
diff options
context:
space:
mode:
authorEskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>2010-04-06 14:53:18 (GMT)
committerEskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>2010-04-06 14:53:18 (GMT)
commit97f5d3f102c6b3167872c5ab1c6e0a215cb2f1c1 (patch)
tree08add9bade9cbf0eba585eb56b9bb1a39c9cab1d /src/3rdparty
parent06e8d0cae3651beaf95de05e89696cbab4978740 (diff)
parentce0af99f47c1728a6d8145ea89f41b1c9207104a (diff)
downloadQt-97f5d3f102c6b3167872c5ab1c6e0a215cb2f1c1.zip
Qt-97f5d3f102c6b3167872c5ab1c6e0a215cb2f1c1.tar.gz
Qt-97f5d3f102c6b3167872c5ab1c6e0a215cb2f1c1.tar.bz2
Merge branch '4.7' of git@scm.dev.nokia.troll.no:qt/oslo-staging-2 into 4.7
Diffstat (limited to 'src/3rdparty')
-rw-r--r--src/3rdparty/phonon/gstreamer/audiodataoutput.cpp6
-rw-r--r--src/3rdparty/phonon/gstreamer/audiodataoutput.h6
-rw-r--r--src/3rdparty/phonon/phonon/audiodataoutput.cpp6
-rw-r--r--src/3rdparty/phonon/phonon/audiodataoutput.h6
-rw-r--r--src/3rdparty/phonon/phonon/audiodataoutput_p.h6
-rw-r--r--src/3rdparty/phonon/phonon/audiodataoutputinterface.h6
-rw-r--r--src/3rdparty/phonon/phonon/objectdescriptionmodel.h36
7 files changed, 56 insertions, 16 deletions
diff --git a/src/3rdparty/phonon/gstreamer/audiodataoutput.cpp b/src/3rdparty/phonon/gstreamer/audiodataoutput.cpp
index 30dabdf..802cb18 100644
--- a/src/3rdparty/phonon/gstreamer/audiodataoutput.cpp
+++ b/src/3rdparty/phonon/gstreamer/audiodataoutput.cpp
@@ -29,6 +29,9 @@
#include <QtCore/QMap>
#include <phonon/audiooutput.h>
+QT_BEGIN_HEADER
+QT_BEGIN_NAMESPACE
+
namespace Phonon
{
namespace Gstreamer
@@ -138,6 +141,9 @@ void AudioDataOutput::mediaNodeEvent(const MediaNodeEvent *event)
}} //namespace Phonon::Gstreamer
+QT_END_NAMESPACE
+QT_END_HEADER
+
#include "moc_audiodataoutput.cpp"
// vim: sw=4 ts=4
diff --git a/src/3rdparty/phonon/gstreamer/audiodataoutput.h b/src/3rdparty/phonon/gstreamer/audiodataoutput.h
index 5e30a1d..cd5ef49 100644
--- a/src/3rdparty/phonon/gstreamer/audiodataoutput.h
+++ b/src/3rdparty/phonon/gstreamer/audiodataoutput.h
@@ -29,6 +29,9 @@
#include <phonon/audiodataoutput.h>
#include <phonon/audiodataoutputinterface.h>
+QT_BEGIN_HEADER
+QT_BEGIN_NAMESPACE
+
namespace Phonon
{
namespace Gstreamer
@@ -80,5 +83,8 @@ namespace Gstreamer
};
}} //namespace Phonon::Gstreamer
+QT_END_NAMESPACE
+QT_END_HEADER
+
// vim: sw=4 ts=4 tw=80
#endif // Phonon_FAKE_AUDIODATAOUTPUT_H
diff --git a/src/3rdparty/phonon/phonon/audiodataoutput.cpp b/src/3rdparty/phonon/phonon/audiodataoutput.cpp
index 3a7d3a1..fa8ec0d 100644
--- a/src/3rdparty/phonon/phonon/audiodataoutput.cpp
+++ b/src/3rdparty/phonon/phonon/audiodataoutput.cpp
@@ -26,6 +26,9 @@
#define PHONON_CLASSNAME AudioDataOutput
+QT_BEGIN_HEADER
+QT_BEGIN_NAMESPACE
+
namespace Phonon
{
@@ -62,5 +65,8 @@ void AudioDataOutputPrivate::setupBackendObject()
} // namespace Phonon
+QT_END_NAMESPACE
+QT_END_HEADER
+
#undef PHONON_CLASSNAME
// vim: sw=4 ts=4 tw=80
diff --git a/src/3rdparty/phonon/phonon/audiodataoutput.h b/src/3rdparty/phonon/phonon/audiodataoutput.h
index 8e8f8e0..7a559b3 100644
--- a/src/3rdparty/phonon/phonon/audiodataoutput.h
+++ b/src/3rdparty/phonon/phonon/audiodataoutput.h
@@ -26,6 +26,9 @@
#include "abstractaudiooutput.h"
#include "phonondefs.h"
+QT_BEGIN_HEADER
+QT_BEGIN_NAMESPACE
+
#ifndef DOXYGEN_SHOULD_SKIP_THIS
template<typename T> class QVector;
template<typename Key, typename T> class QMap;
@@ -125,5 +128,8 @@ namespace Phonon
};
} // namespace Phonon
+QT_END_NAMESPACE
+QT_END_HEADER
+
// vim: sw=4 ts=4 tw=80
#endif // Phonon_AUDIODATAOUTPUT_H
diff --git a/src/3rdparty/phonon/phonon/audiodataoutput_p.h b/src/3rdparty/phonon/phonon/audiodataoutput_p.h
index 91103a9..5fd4f80 100644
--- a/src/3rdparty/phonon/phonon/audiodataoutput_p.h
+++ b/src/3rdparty/phonon/phonon/audiodataoutput_p.h
@@ -26,6 +26,9 @@
#include "audiodataoutput.h"
#include "abstractaudiooutput_p.h"
+QT_BEGIN_HEADER
+QT_BEGIN_NAMESPACE
+
namespace Phonon
{
@@ -44,5 +47,8 @@ class AudioDataOutputPrivate : public AbstractAudioOutputPrivate
} // namespace Phonon
+QT_END_NAMESPACE
+QT_END_HEADER
+
#endif // AUDIODATAOUTPUT_P_H
// vim: sw=4 ts=4 tw=80
diff --git a/src/3rdparty/phonon/phonon/audiodataoutputinterface.h b/src/3rdparty/phonon/phonon/audiodataoutputinterface.h
index bc1aad0..08bc7fc 100644
--- a/src/3rdparty/phonon/phonon/audiodataoutputinterface.h
+++ b/src/3rdparty/phonon/phonon/audiodataoutputinterface.h
@@ -23,6 +23,9 @@
#ifndef PHONON_AUDIODATAOUTPUTINTERFACE_H
#define PHONON_AUDIODATAOUTPUTINTERFACE_H
+QT_BEGIN_HEADER
+QT_BEGIN_NAMESPACE
+
namespace Phonon
{
@@ -41,4 +44,7 @@ class AudioDataOutputInterface
Q_DECLARE_INTERFACE(Phonon::AudioDataOutputInterface, "0AudioDataOutputInterface.phonon.kde.org")
+QT_END_NAMESPACE
+QT_END_HEADER
+
#endif // PHONON_AUDIODATAOUTPUTINTERFACE_H
diff --git a/src/3rdparty/phonon/phonon/objectdescriptionmodel.h b/src/3rdparty/phonon/phonon/objectdescriptionmodel.h
index a1540e8..8fd622f 100644
--- a/src/3rdparty/phonon/phonon/objectdescriptionmodel.h
+++ b/src/3rdparty/phonon/phonon/objectdescriptionmodel.h
@@ -35,18 +35,6 @@ QT_BEGIN_NAMESPACE
#ifndef QT_NO_PHONON_OBJECTDESCRIPTIONMODEL
-/* MinGW 3.4.x gives an ICE when trying to instantiate one of the
- ObjectDescriptionModel<foo> classes because it can't handle
- half exported classes correct. gcc 4.3.x has a fix for this but
- we currently there's no official gcc 4.3 on windows available.
- Because of this we need this little hack
- */
-#if defined(Q_CC_MINGW)
-#define PHONON_EXPORT_ODM
-#else
-#define PHONON_EXPORT_ODM PHONON_EXPORT
-#endif
-
namespace Phonon
{
class ObjectDescriptionModelDataPrivate;
@@ -151,6 +139,21 @@ namespace Phonon
ObjectDescriptionModelDataPrivate *const d;
};
+/* Required to ensure template class vtables are exported on both symbian
+and existing builds. */
+#if defined(Q_OS_SYMBIAN) && defined(Q_CC_RVCT)
+// RVCT compiler (2.2.686) requires the export declaration to be on the class to export vtables
+// MWC compiler works both ways
+// GCCE compiler is unknown (it can't compile QtCore yet)
+#define PHONON_TEMPLATE_CLASS_EXPORT PHONON_EXPORT
+#define PHONON_TEMPLATE_CLASS_MEMBER_EXPORT
+#else
+// Windows builds (at least) do not support export declaration on templated class
+// But if you export a member function, the vtable is implicitly exported
+#define PHONON_TEMPLATE_CLASS_EXPORT
+#define PHONON_TEMPLATE_CLASS_MEMBER_EXPORT PHONON_EXPORT
+#endif
+
/** \class ObjectDescriptionModel objectdescriptionmodel.h Phonon/ObjectDescriptionModel
* \short The ObjectDescriptionModel class provides a model from
* a list of ObjectDescription objects.
@@ -187,16 +190,17 @@ namespace Phonon
* \author Matthias Kretz <kretz@kde.org>
*/
template<ObjectDescriptionType type>
- class ObjectDescriptionModel : public QAbstractListModel
+ class PHONON_TEMPLATE_CLASS_EXPORT ObjectDescriptionModel : public QAbstractListModel
{
public:
Q_OBJECT_CHECK
+
/** \internal */
- static PHONON_EXPORT const QMetaObject staticMetaObject;
+ static PHONON_TEMPLATE_CLASS_MEMBER_EXPORT const QMetaObject staticMetaObject;
/** \internal */
- PHONON_EXPORT_ODM const QMetaObject *metaObject() const;
+ PHONON_TEMPLATE_CLASS_MEMBER_EXPORT const QMetaObject *metaObject() const;
/** \internal */
- PHONON_EXPORT_ODM void *qt_metacast(const char *_clname);
+ PHONON_TEMPLATE_CLASS_MEMBER_EXPORT void *qt_metacast(const char *_clname);
//int qt_metacall(QMetaObject::Call _c, int _id, void **_a);
/**