-
Michael Zanetti authored
Adds support for compiling against Qt5. This affects the Marble library and the Marble Qt Desktop application. When compiling against Qt5, the Marble KDE Desktop application is not build (porting to KDE frameworks 5 is yet to be done). If both Qt4 and Qt5 are installed on the system, Qt4 is chosen by default. It can be overriden using the QT5BUILD=TRUE cmake variable. When building against Qt5, cmake will emit lots of CMAKE_AUTOMOC_RELAXED_MODE related warnings. Please ignore them. REVIEW: 113392 FEATURE: Squashed commit of the following: commit 90286f9a Merge: b47483d2 2773f06a Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Wed Oct 30 18:18:27 2013 +0100 Merge branch 'master' into qt5 commit b47483d2 Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Wed Oct 23 10:53:18 2013 +0200 Have cmake set fpic option Hopefully it is smart enough to determine the correct setting based on operating system / compiler. Might suppress warning messages in windows/mingw. commit 04acc49b Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Wed Oct 23 09:07:18 2013 +0200 Link against qt sql libraries commit 9a7e86de Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Sun Oct 20 19:42:44 2013 +0200 Determine build flags automatically where possible. - If Qt4 is not installed, but Qt5 is, do a QT5BUILD automatically - If both Qt4 and Qt5 are installed, use Qt4 unless user sets QT5BUILD - When doing QT5BUILD, do a QTONLY build (KDE frameworks 5 support tbd) commit 6600b366 Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Sun Oct 20 18:50:44 2013 +0200 Reuse MARBLE_PLUGIN_INSTALL_PATH. Do not handle KDE vs Qt build specially wrt plugin install path. Also enables non-system installation for QTONLY=OFF width designer plugins. commit 94270cf0 Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Sun Oct 20 18:50:24 2013 +0200 Remove duplicate macro commit b6c66aa9 Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Sun Oct 20 18:49:51 2013 +0200 Support building qt designer plugins with qt5 commit 43ac9240 Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Sun Oct 20 17:22:16 2013 +0200 Fix typo commit 2f52806b Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Sun Oct 20 17:18:25 2013 +0200 Don't use NULL. Use 0. commit c75c1998 Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Sun Oct 20 17:11:10 2013 +0200 Fix typo commit 75c0e416 Merge: 2788ad89 a356329a Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Sun Oct 20 17:06:30 2013 +0200 Merge branch 'master' into qt5 commit 2788ad89 Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Sun Oct 20 14:35:20 2013 +0200 Include marble_export.h for the Q_PLUGIN_METADATA definition with qt4 commit 7696304f Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Sun Oct 20 14:22:22 2013 +0200 Move if() clauses out of include_directories command. Not sure if newer cmake versions allow that syntax, but the statements end up as-is in include directory commands here (cmake 2.8.11.2) which confuse g++. commit f32eda23 Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Sun Oct 20 14:20:18 2013 +0200 Fix class name in typedef commit 90d113b9 Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Sun Oct 20 14:01:11 2013 +0200 Remove -qt=qt5 option which is unknown to qmake in qt 5.0 at least commit 59d45806 Merge: fce79d75 b5acbb90 Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Sun Oct 20 11:29:11 2013 +0200 Merge branch 'master' into qt5 Conflicts: src/plugins/CMakeLists.txt src/plugins/qt-components/CMakeLists.txt src/plugins/qt-components/QtComponentsPlugin.h src/qt-components/marble-touch/CMakeLists.txt commit fce79d75 Author: Michael Zanetti <michael_zanetti@gmx.net> Date: Sun Sep 22 21:40:01 2013 +0200 fix qml components install dir for Qt5 commit 82ea5526 Author: Michael Zanetti <michael_zanetti@gmx.net> Date: Tue Sep 17 22:44:55 2013 +0200 make marble-touch compile with qt5 commit 763837ff Merge: 8f8a6834 63294506 Author: Michael Zanetti <michael_zanetti@gmx.net> Date: Tue Sep 17 21:46:06 2013 +0200 Merge branch 'master' into qt5 Conflicts: src/lib/StackedTile.cpp commit 8f8a6834 Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Sun Sep 1 16:44:12 2013 +0200 QtMobility only works with Qt4 commit c1f8c6f6 Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Sun Sep 1 16:39:52 2013 +0200 Port roleNames() to Qt5 commit e29cc404 Merge: 4c9ba04b 5543d999 Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Sun Sep 1 16:29:28 2013 +0200 Merge branch 'master' into qt5 Conflicts: src/lib/NewstuffModel.h src/lib/routing/SpeakersModel.h src/plugins/declarative/MapThemeModel.cpp src/plugins/declarative/MapThemeModel.h commit 4c9ba04b Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Fri Aug 30 20:12:30 2013 +0200 Guard QT_USE_FILE include against Qt5 build. Add missing include dir. commit 77bd5705 Author: Michael Zanetti <mzanetti@kde.org> Date: Thu Aug 29 23:29:56 2013 +0200 ported tests to Qt 5 commit f5b7e6ac Author: Michael Zanetti <mzanetti@kde.org> Date: Thu Aug 29 22:05:51 2013 +0200 all plugins ported to Qt5 (components plugin's QML files not ported yet) commit ae390969 Author: Michael Zanetti <mzanetti@kde.org> Date: Thu Aug 29 21:54:47 2013 +0200 marble-mobile ported to Qt5 commit 22cd33d6 Merge: db5fec5e eb4206dc Author: Michael Zanetti <mzanetti@kde.org> Date: Thu Aug 29 21:38:33 2013 +0200 Merge branch 'master' into qt5 Conflicts: MarbleMacros.cmake src/CMakeLists.txt src/lib/CMakeLists.txt src/plugins/render/earthquake/CMakeLists.txt src/plugins/render/elevationprofilefloatitem/CMakeLists.txt src/plugins/render/elevationprofilemarker/CMakeLists.txt src/plugins/render/navigation/CMakeLists.txt src/plugins/render/opendesktop/CMakeLists.txt commit db5fec5e Author: Michael Zanetti <mzanetti@kde.org> Date: Thu Aug 29 21:32:25 2013 +0200 ported runner plugins to Qt5 commit e7898acf Author: Michael Zanetti <mzanetti@kde.org> Date: Sun Aug 25 16:26:26 2013 +0200 don't use QDeclarative typedefs in headers commit 46c614fd Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Sun Aug 25 15:28:26 2013 +0200 Provide Q_PLUGIN_METADATA needed for plugin loading with qt5 commit 0c1a3d42 Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Sun Aug 25 15:27:15 2013 +0200 Phonon only works with Qt4. Including it anyway leads to linking against both qt4 and qt5 which results in a segfault at runtime during plugin loading. commit b457c410 Author: Dennis Nienhüser <earthwings@gentoo.org> Date: Sun Aug 25 15:09:47 2013 +0200 Fix declarative plugin installation path commit 87dd04a0 Author: Michael Zanetti <mzanetti@kde.org> Date: Sun Aug 25 14:34:05 2013 +0200 make new cloudsync code work with Qt5 commit c15282ba Merge: 49c2920e 39727c59 Author: Michael Zanetti <mzanetti@kde.org> Date: Sun Aug 25 14:30:43 2013 +0200 Merge branch 'master' into qt5 Conflicts: CMakeLists.txt src/lib/AbstractDataPluginModel.cpp src/lib/ServerLayout.cpp src/tilecreator/CMakeLists.txt commit 49c2920e Author: Michael Zanetti <mzanetti@kde.org> Date: Sun Aug 25 14:03:36 2013 +0200 typdef QDeclarative -> QQml/QQuick as much as possible commit b48c6a90 Author: Michael Zanetti <mzanetti@kde.org> Date: Sun Aug 25 13:53:19 2013 +0200 remove debug message commit 485dfc56 Author: Michael Zanetti <mzanetti@kde.org> Date: Sun Aug 25 13:51:30 2013 +0200 finish porting plugins to Qt5 commit aab97586 Author: Michael Zanetti <mzanetti@kde.org> Date: Wed Aug 21 23:47:40 2013 +0200 compiles and runs with Qt5. Plugins and tests disabled for now. commit f5adf6ee Author: Michael Zanetti <mzanetti@kde.org> Date: Sun Aug 4 16:26:18 2013 +0200 use cmake automoc for cmake version >= 2.8 and QT5
834c04d3