change async to 0 to fix TIVI-114
[profile/ivi/navit.git] / packaging / qt5.patch
1 Index: navit/CMakeLists.txt
2 ===================================================================
3 --- navit.orig/CMakeLists.txt   2012-07-24 12:32:26.000000000 -0700
4 +++ navit/CMakeLists.txt        2012-08-01 21:40:55.931606561 -0700
5 @@ -1,3 +1,4 @@
6 +cmake_minimum_required(VERSION 2.8.8)
7  set(MACOSX_BUNDLE_GUI_IDENTIFIER "org.navitproject.navit")
8  set(MACOSX_BUNDLE_BUNDLE_NAME "Navit")
9  project(navit C)
10 @@ -82,7 +83,7 @@
11  add_module(graphics/opengl "FreeType library not found" FALSE)
12  add_module(graphics/sdl "FreeType library not found" FALSE)
13  add_module(graphics/qt_qpainter "Qt libraries not found" FALSE)
14 -add_module(gui/qml "Qt Declarative not found" FALSE)
15 +#add_module(gui/qml "Qt Declarative not found" FALSE)
16  add_module(gui/gtk "GTK libs not found" FALSE)
17  add_module(vehicle/gpsd "gpsd lib not found" FALSE)
18  add_module(vehicle/gypsy "gypsy lib not found" FALSE)
19 @@ -123,7 +124,16 @@
20     SET(QT_USE_QTSVG TRUE)
21     SET(QT_USE_QTXML TRUE)
22     SET(QT_USE_QTDECLARATIVE TRUE)
23 -   find_package(Qt4 COMPONENTS QtCore QtGui QtXml QtDeclarative QtSvg OPTIONAL)
24 +   message(STATUS "trying to find qt")
25 +   find_package(Qt5Core REQUIRED)
26 +   find_package(Qt5Gui REQUIRED)
27 +   find_package(Qt5Widgets REQUIRED)
28 +   find_package(Qt5Xml REQUIRED)
29 +   find_package(Qt5DBus REQUIRED)
30 +   find_package(Qt5Quick REQUIRED)
31 +   find_package(Qt5OpenGL REQUIRED)
32 +   message(STATUS "Qt5Core found? ${Qt5Core_FOUND}")
33 +#   find_package(Qt5 COMPONENTS QtCore QtGui QtWidgets QtXml QtQuick QtSvg OPTIONAL)
34  endif (NOT DISABLE_QT)
35  #pkg-config based detection
36  find_package(PkgConfig)
37 @@ -236,12 +246,12 @@
38     set(HAVE_FONTCONFIG 1)
39  endif(FONTCONFIG_FOUND)
40  
41 -if (QT_FOUND)
42 -   if (QT_QTCORE_FOUND AND QT_QTGUI_FOUND AND FREETYPE_FOUND)
43 -      include(${QT_USE_FILE})
44 +if (Qt5Core_FOUND)
45 +   MESSAGE("Qt FOUDN!!!!!!")
46 +   if (Qt5Core_FOUND AND Qt5Widgets_FOUND AND FREETYPE_FOUND)
47        set_with_reason(graphics/qt_qpainter "Qt libraries found" TRUE ${QT_LIBRARIES})
48  
49 -      if (QT_QTDECLARATIVE_FOUND AND QT_QTXML_FOUND)
50 +      if (Qt5Quick_FOUND AND Qt5Xml_FOUND)
51           set_with_reason(gui/qml "Qt Declarative found" TRUE ${QT_LIBRARIES}) 
52        endif()
53  
54 @@ -251,7 +261,7 @@
55           message( WARNING "QT compiled without SVG support")
56        endif()
57     endif()
58 -endif(QT_FOUND)
59 +endif(Qt5Core_FOUND)
60  
61  if(GTK2_FOUND)
62     include_directories(${GTK2_INCLUDE_DIRS})
63 Index: navit/cmake/FindQt4.cmake
64 ===================================================================
65 --- navit.orig/cmake/FindQt4.cmake      2012-07-24 12:32:26.000000000 -0700
66 +++ navit/cmake/FindQt4.cmake   2012-08-01 21:40:55.931606561 -0700
67 @@ -790,7 +790,7 @@
68    #
69    ########################################
70  
71 -  SET(QT_MODULES QtGui Qt3Support QtSvg QtScript QtTest QtUiTools
72 +  SET(QT_MODULES QtGui QtWidgets Qt3Support QtSvg QtScript QtTest QtUiTools
73                   QtHelp QtWebKit QtXmlPatterns phonon QtNetwork QtMultimedia
74                   QtNsPlugin QtOpenGL QtSql QtXml QtDesigner QtDBus QtScriptTools
75                   QtDeclarative)
76 Index: navit/navit/graphics/qt_qpainter/CMakeLists.txt
77 ===================================================================
78 --- navit.orig/navit/graphics/qt_qpainter/CMakeLists.txt        2012-07-24 12:32:26.000000000 -0700
79 +++ navit/navit/graphics/qt_qpainter/CMakeLists.txt     2012-08-01 21:40:55.931606561 -0700
80 @@ -1,4 +1,5 @@
81  module_add_library(graphics_qt_qpainter ${CMAKE_CURRENT_BINARY_DIR}/RenderArea.moc RenderArea.cpp graphics_qt_qpainter.cpp)
82 -QT4_GENERATE_MOC(RenderArea.h ${CMAKE_CURRENT_BINARY_DIR}/RenderArea.moc)
83 +qt5_use_modules(graphics_qt_qpainter Widgets OpenGL Gui)
84 +QT5_GENERATE_MOC(RenderArea.h ${CMAKE_CURRENT_BINARY_DIR}/RenderArea.moc)
85  include_directories(${CMAKE_CURRENT_BINARY_DIR})
86  
87 Index: navit/navit/gui/qml/CMakeLists.txt
88 ===================================================================
89 --- navit.orig/navit/gui/qml/CMakeLists.txt     2012-07-24 12:32:26.000000000 -0700
90 +++ navit/navit/gui/qml/CMakeLists.txt  2012-08-01 21:40:55.931606561 -0700
91 @@ -3,14 +3,15 @@
92  
93  add_definitions( -DMODULE=gui_qml )
94  include_directories(${CMAKE_CURRENT_BINARY_DIR})
95 -QT4_GENERATE_MOC(proxy.h ${CMAKE_CURRENT_BINARY_DIR}/proxy.moc)
96 -QT4_GENERATE_MOC(ngqpoint.h ${CMAKE_CURRENT_BINARY_DIR}/ngqpoint.moc)
97 -QT4_GENERATE_MOC(searchProxy.h ${CMAKE_CURRENT_BINARY_DIR}/searchProxy.moc)
98 -QT4_GENERATE_MOC(bookmarksProxy.h ${CMAKE_CURRENT_BINARY_DIR}/bookmarksProxy.moc)
99 -QT4_GENERATE_MOC(vehicleProxy.h ${CMAKE_CURRENT_BINARY_DIR}/vehicleProxy.moc)
100 -QT4_GENERATE_MOC(navitProxy.h ${CMAKE_CURRENT_BINARY_DIR}/navitProxy.moc)
101 -QT4_GENERATE_MOC(guiProxy.h ${CMAKE_CURRENT_BINARY_DIR}/guiProxy.moc)
102 -QT4_GENERATE_MOC(routeProxy.h ${CMAKE_CURRENT_BINARY_DIR}/routeProxy.moc)
103 -QT4_GENERATE_MOC(gui_qml.cpp ${CMAKE_CURRENT_BINARY_DIR}/gui_qml.moc)
104 +QT5_GENERATE_MOC(proxy.h ${CMAKE_CURRENT_BINARY_DIR}/proxy.moc)
105 +QT5_GENERATE_MOC(ngqpoint.h ${CMAKE_CURRENT_BINARY_DIR}/ngqpoint.moc)
106 +QT5_GENERATE_MOC(searchProxy.h ${CMAKE_CURRENT_BINARY_DIR}/searchProxy.moc)
107 +QT5_GENERATE_MOC(bookmarksProxy.h ${CMAKE_CURRENT_BINARY_DIR}/bookmarksProxy.moc)
108 +QT5_GENERATE_MOC(vehicleProxy.h ${CMAKE_CURRENT_BINARY_DIR}/vehicleProxy.moc)
109 +QT5_GENERATE_MOC(navitProxy.h ${CMAKE_CURRENT_BINARY_DIR}/navitProxy.moc)
110 +QT5_GENERATE_MOC(guiProxy.h ${CMAKE_CURRENT_BINARY_DIR}/guiProxy.moc)
111 +QT5_GENERATE_MOC(routeProxy.h ${CMAKE_CURRENT_BINARY_DIR}/routeProxy.moc)
112 +QT5_GENERATE_MOC(gui_qml.cpp ${CMAKE_CURRENT_BINARY_DIR}/gui_qml.moc)
113  module_add_library(gui_qml gui_qml.cpp ${CMAKE_CURRENT_BINARY_DIR}/proxy.moc ${CMAKE_CURRENT_BINARY_DIR}/ngqpoint.moc ${CMAKE_CURRENT_BINARY_DIR}/searchProxy.moc ${CMAKE_CURRENT_BINARY_DIR}/bookmarksProxy.moc ${CMAKE_CURRENT_BINARY_DIR}/vehicleProxy.moc ${CMAKE_CURRENT_BINARY_DIR}/navitProxy.moc ${CMAKE_CURRENT_BINARY_DIR}/guiProxy.moc ${CMAKE_CURRENT_BINARY_DIR}/routeProxy.moc ${CMAKE_CURRENT_BINARY_DIR}/gui_qml.moc) 
114 +qt5_use_modules(gui_qml Qml Gui Quick Xml Widgets)
115  
116 Index: navit/navit/graphics/qt_qpainter/graphics_qt_qpainter.cpp
117 ===================================================================
118 --- navit.orig/navit/graphics/qt_qpainter/graphics_qt_qpainter.cpp      2012-07-24 12:32:26.000000000 -0700
119 +++ navit/navit/graphics/qt_qpainter/graphics_qt_qpainter.cpp   2012-08-01 21:40:55.931606561 -0700
120 @@ -595,7 +595,12 @@
121  #endif
122                 }
123  #endif
124 -#if QT_VERSION >= 0x040000
125 +#if QT_VERSION >= 0x050000
126 +               if (!gr->parent)
127 +                       QCoreApplication::processEvents(QEventLoop::ExcludeUserInputEvents|QEventLoop::ExcludeSocketNotifiers|QEventLoop::X11ExcludeTimers);
128 +#endif
129 +#if 0 //FIXME!!!
130 +               //#elsif QT_VERSION >= 0x040000
131                 if (!gr->parent)
132                         QCoreApplication::processEvents(QEventLoop::ExcludeUserInputEvents|QEventLoop::ExcludeSocketNotifiers|QEventLoop::DeferredDeletion|QEventLoop::X11ExcludeTimers);
133  #endif
134 Index: navit/navit/gui/qml/gui_qml.cpp
135 ===================================================================
136 --- navit.orig/navit/gui/qml/gui_qml.cpp        2012-07-24 12:32:26.000000000 -0700
137 +++ navit/navit/gui/qml/gui_qml.cpp     2012-08-01 21:40:55.931606561 -0700
138 @@ -1,7 +1,8 @@
139  #include <glib.h>
140  #include <QtCore>
141  #include <QtGui>
142 -#include <QtDeclarative>
143 +#include <QtWidgets>
144 +#include <QtQuick>
145  #include <QtXml>
146  #include "config.h"
147  #ifdef HAVE_API_WIN32_BASE
148 @@ -60,8 +61,8 @@
149         struct graphics *gra;
150         QWidget *mainWindow;
151         QWidget *graphicsWidget;
152 -       QDeclarativeView *guiWidget;
153 -       QDeclarativeView *prevGuiWidget;
154 +       QQuickView *guiWidget;
155 +       QQuickView *prevGuiWidget;
156         QStackedLayout *switcherWidget;
157         struct callback *button_cb;
158         struct callback *motion_cb;
159 @@ -304,8 +305,8 @@
160      this_->switcherWidget->addWidget(this_->graphicsWidget);
161         
162         //Instantiate qml components
163 -    this_->guiWidget = new QDeclarativeView(NULL);
164 -       this_->guiWidget->setResizeMode(QDeclarativeView::SizeRootObjectToView);
165 +    this_->guiWidget = new QtQuickView(NULL);
166 +       this_->guiWidget->setResizeMode(QtQuickView::SizeRootObjectToView);
167                 
168         this_->guiWidget->rootContext()->setContextProperty("gui",this_->guiProxy);
169         this_->guiWidget->rootContext()->setContextProperty("navit",this_->navitProxy);
170 Index: navit/navit/navit_shipped.xml
171 ===================================================================
172 --- navit.orig/navit/navit_shipped.xml  2012-08-01 21:40:41.823320019 -0700
173 +++ navit/navit/navit_shipped.xml       2012-08-01 21:41:45.963484698 -0700
174 @@ -34,7 +34,7 @@
175         <navit center="4808 N 1134 E" zoom="256" tracking="1" orientation="-1" recent_dest="10">
176                 <!-- Use one of gtk_drawing_area, qt_qpainter or sdl. 
177                      On windows systems, use win32 -->
178 -               <graphics type="gtk_drawing_area"/>
179 +               <graphics type="qt_qpainter"/>
180                 <!-- The following line let you select which graphical user interface you'd like to use.
181                 Options include internal (optimized for touch screen devices), gtk (useful for desktop computers).
182                 If you don't like the internal gui, set enabled=yes for the following tag and enabled=no for the gui internal tag -->