rock-qtbindings 4.8.6.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (768) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.txt +85 -0
  3. data/COPYING.LIB.txt +510 -0
  4. data/COPYING.txt +286 -0
  5. data/KNOWN_ISSUES.txt +17 -0
  6. data/Rakefile +121 -0
  7. data/TODO.txt +2 -0
  8. data/bin/rbqtapi +152 -0
  9. data/bin/rbrcc +14 -0
  10. data/bin/rbuic4 +14 -0
  11. data/bin/smokeapi +14 -0
  12. data/bin/smokedeptool +14 -0
  13. data/examples/designer/calculatorbuilder/calculatorbuilder.qrc +5 -0
  14. data/examples/designer/calculatorbuilder/calculatorform.rb +60 -0
  15. data/examples/designer/calculatorbuilder/calculatorform.ui +299 -0
  16. data/examples/designer/calculatorbuilder/main.rb +34 -0
  17. data/examples/designer/calculatorbuilder/makefile +2 -0
  18. data/examples/designer/calculatorform/calculatorform.rb +46 -0
  19. data/examples/designer/calculatorform/calculatorform.ui +277 -0
  20. data/examples/designer/calculatorform/main.rb +32 -0
  21. data/examples/designer/calculatorform/makefile +3 -0
  22. data/examples/desktop/screenshot/main.rb +32 -0
  23. data/examples/desktop/screenshot/screenshot.rb +157 -0
  24. data/examples/desktop/systray/images/bad.svg +64 -0
  25. data/examples/desktop/systray/images/heart.svg +55 -0
  26. data/examples/desktop/systray/images/trash.svg +58 -0
  27. data/examples/desktop/systray/main.rb +41 -0
  28. data/examples/desktop/systray/makefile +2 -0
  29. data/examples/desktop/systray/systray.qrc +7 -0
  30. data/examples/desktop/systray/window.rb +219 -0
  31. data/examples/dialogs/complexwizard/complexwizard.rb +140 -0
  32. data/examples/dialogs/complexwizard/licensewizard.rb +294 -0
  33. data/examples/dialogs/complexwizard/main.rb +31 -0
  34. data/examples/dialogs/configdialog/configdialog.rb +109 -0
  35. data/examples/dialogs/configdialog/images/config.png +0 -0
  36. data/examples/dialogs/configdialog/images/query.png +0 -0
  37. data/examples/dialogs/configdialog/images/update.png +0 -0
  38. data/examples/dialogs/configdialog/main.rb +31 -0
  39. data/examples/dialogs/configdialog/pages.rb +140 -0
  40. data/examples/dialogs/extension/finddialog.rb +89 -0
  41. data/examples/dialogs/extension/main.rb +31 -0
  42. data/examples/dialogs/findfiles/main.rb +32 -0
  43. data/examples/dialogs/findfiles/window.rb +177 -0
  44. data/examples/dialogs/simplewizard/classwizard.rb +374 -0
  45. data/examples/dialogs/simplewizard/main.rb +31 -0
  46. data/examples/dialogs/simplewizard/simplewizard.rb +110 -0
  47. data/examples/dialogs/standarddialogs/dialog.rb +340 -0
  48. data/examples/dialogs/standarddialogs/main.rb +31 -0
  49. data/examples/dialogs/tabdialog/main.rb +38 -0
  50. data/examples/dialogs/tabdialog/tabdialog.rb +178 -0
  51. data/examples/draganddrop/draggableicons/dragwidget.rb +125 -0
  52. data/examples/draganddrop/draggableicons/images/boat.png +0 -0
  53. data/examples/draganddrop/draggableicons/images/car.png +0 -0
  54. data/examples/draganddrop/draggableicons/images/house.png +0 -0
  55. data/examples/draganddrop/draggableicons/main.rb +41 -0
  56. data/examples/draganddrop/draggabletext/draglabel.rb +51 -0
  57. data/examples/draganddrop/draggabletext/dragwidget.rb +94 -0
  58. data/examples/draganddrop/draggabletext/main.rb +33 -0
  59. data/examples/draganddrop/draggabletext/words.txt +41 -0
  60. data/examples/draganddrop/dropsite/dropsitewidget.rb +99 -0
  61. data/examples/draganddrop/dropsite/dropsitewindow.rb +114 -0
  62. data/examples/draganddrop/dropsite/main.rb +33 -0
  63. data/examples/draganddrop/fridgemagnets/draglabel.rb +78 -0
  64. data/examples/draganddrop/fridgemagnets/dragwidget.rb +130 -0
  65. data/examples/draganddrop/fridgemagnets/main.rb +33 -0
  66. data/examples/draganddrop/fridgemagnets/words.txt +48 -0
  67. data/examples/draganddrop/puzzle/example.jpg +0 -0
  68. data/examples/draganddrop/puzzle/main.rb +33 -0
  69. data/examples/draganddrop/puzzle/mainwindow.rb +136 -0
  70. data/examples/draganddrop/puzzle/pieceslist.rb +95 -0
  71. data/examples/draganddrop/puzzle/puzzlewidget.rb +190 -0
  72. data/examples/graphicsview/collidingmice/images/cheese.jpg +0 -0
  73. data/examples/graphicsview/collidingmice/main.rb +53 -0
  74. data/examples/graphicsview/collidingmice/makefile +2 -0
  75. data/examples/graphicsview/collidingmice/mice.qrc +5 -0
  76. data/examples/graphicsview/collidingmice/mouse.rb +176 -0
  77. data/examples/graphicsview/dragdroprobot/coloritem.rb +86 -0
  78. data/examples/graphicsview/dragdroprobot/images/head.png +0 -0
  79. data/examples/graphicsview/dragdroprobot/main.rb +57 -0
  80. data/examples/graphicsview/dragdroprobot/makefile +2 -0
  81. data/examples/graphicsview/dragdroprobot/robot.qrc +5 -0
  82. data/examples/graphicsview/dragdroprobot/robot.rb +246 -0
  83. data/examples/itemviews/chart/chart.qrc +5 -0
  84. data/examples/itemviews/chart/main.rb +33 -0
  85. data/examples/itemviews/chart/mainwindow.rb +151 -0
  86. data/examples/itemviews/chart/makefile +2 -0
  87. data/examples/itemviews/chart/mydata.cht +8 -0
  88. data/examples/itemviews/chart/pieview.rb +516 -0
  89. data/examples/itemviews/chart/qtdata.cht +14 -0
  90. data/examples/itemviews/dirview/main.rb +39 -0
  91. data/examples/itemviews/pixelator/imagemodel.rb +51 -0
  92. data/examples/itemviews/pixelator/images/qt.png +0 -0
  93. data/examples/itemviews/pixelator/images.qrc +5 -0
  94. data/examples/itemviews/pixelator/main.rb +34 -0
  95. data/examples/itemviews/pixelator/mainwindow.rb +218 -0
  96. data/examples/itemviews/pixelator/makefile +3 -0
  97. data/examples/itemviews/pixelator/pixeldelegate.rb +67 -0
  98. data/examples/itemviews/puzzle/example.jpg +0 -0
  99. data/examples/itemviews/puzzle/main.rb +36 -0
  100. data/examples/itemviews/puzzle/mainwindow.rb +143 -0
  101. data/examples/itemviews/puzzle/piecesmodel.rb +174 -0
  102. data/examples/itemviews/puzzle/puzzlewidget.rb +192 -0
  103. data/examples/itemviews/simpledommodel/domitem.rb +62 -0
  104. data/examples/itemviews/simpledommodel/dommodel.rb +139 -0
  105. data/examples/itemviews/simpledommodel/main.rb +33 -0
  106. data/examples/itemviews/simpledommodel/mainwindow.rb +66 -0
  107. data/examples/itemviews/simpletreemodel/default.txt +40 -0
  108. data/examples/itemviews/simpletreemodel/main.rb +41 -0
  109. data/examples/itemviews/simpletreemodel/makefile +2 -0
  110. data/examples/itemviews/simpletreemodel/simpletreemodel.qrc +5 -0
  111. data/examples/itemviews/simpletreemodel/treeitem.rb +67 -0
  112. data/examples/itemviews/simpletreemodel/treemodel.rb +164 -0
  113. data/examples/itemviews/sortingmodel/default.txt +40 -0
  114. data/examples/itemviews/sortingmodel/main.rb +53 -0
  115. data/examples/itemviews/sortingmodel/treeitem.rb +73 -0
  116. data/examples/itemviews/sortingmodel/treemodel.rb +166 -0
  117. data/examples/itemviews/spinboxdelegate/main.rb +47 -0
  118. data/examples/itemviews/spinboxdelegate/spinboxdelegate.rb +62 -0
  119. data/examples/killerfilter/killerfilter.rb +55 -0
  120. data/examples/layouts/basiclayouts/dialog.rb +110 -0
  121. data/examples/layouts/basiclayouts/main.rb +31 -0
  122. data/examples/layouts/borderlayout/borderlayout.rb +190 -0
  123. data/examples/layouts/borderlayout/main.rb +32 -0
  124. data/examples/layouts/borderlayout/window.rb +52 -0
  125. data/examples/layouts/flowlayouts/flowlayout.rb +108 -0
  126. data/examples/layouts/flowlayouts/main.rb +32 -0
  127. data/examples/layouts/flowlayouts/window.rb +43 -0
  128. data/examples/mainwindows/application/images/copy.png +0 -0
  129. data/examples/mainwindows/application/images/cut.png +0 -0
  130. data/examples/mainwindows/application/images/new.png +0 -0
  131. data/examples/mainwindows/application/images/open.png +0 -0
  132. data/examples/mainwindows/application/images/paste.png +0 -0
  133. data/examples/mainwindows/application/images/save.png +0 -0
  134. data/examples/mainwindows/application/main.rb +32 -0
  135. data/examples/mainwindows/application/mainwindow.rb +285 -0
  136. data/examples/mainwindows/dockwidgets/images/new.png +0 -0
  137. data/examples/mainwindows/dockwidgets/images/print.png +0 -0
  138. data/examples/mainwindows/dockwidgets/images/save.png +0 -0
  139. data/examples/mainwindows/dockwidgets/images/undo.png +0 -0
  140. data/examples/mainwindows/dockwidgets/main.rb +32 -0
  141. data/examples/mainwindows/dockwidgets/mainwindow.rb +302 -0
  142. data/examples/mainwindows/mdi/images/copy.png +0 -0
  143. data/examples/mainwindows/mdi/images/cut.png +0 -0
  144. data/examples/mainwindows/mdi/images/new.png +0 -0
  145. data/examples/mainwindows/mdi/images/open.png +0 -0
  146. data/examples/mainwindows/mdi/images/paste.png +0 -0
  147. data/examples/mainwindows/mdi/images/save.png +0 -0
  148. data/examples/mainwindows/mdi/main.rb +32 -0
  149. data/examples/mainwindows/mdi/mainwindow.rb +363 -0
  150. data/examples/mainwindows/mdi/mdichild.rb +152 -0
  151. data/examples/mainwindows/menus/main.rb +32 -0
  152. data/examples/mainwindows/menus/mainwindow.rb +327 -0
  153. data/examples/mainwindows/recentfiles/main.rb +32 -0
  154. data/examples/mainwindows/recentfiles/mainwindow.rb +258 -0
  155. data/examples/mainwindows/sdi/images/copy.png +0 -0
  156. data/examples/mainwindows/sdi/images/cut.png +0 -0
  157. data/examples/mainwindows/sdi/images/new.png +0 -0
  158. data/examples/mainwindows/sdi/images/open.png +0 -0
  159. data/examples/mainwindows/sdi/images/paste.png +0 -0
  160. data/examples/mainwindows/sdi/images/save.png +0 -0
  161. data/examples/mainwindows/sdi/main.rb +32 -0
  162. data/examples/mainwindows/sdi/mainwindow.rb +335 -0
  163. data/examples/network/broadcastreceiver/main.rb +32 -0
  164. data/examples/network/broadcastreceiver/receiver.rb +64 -0
  165. data/examples/network/broadcastsender/main.rb +32 -0
  166. data/examples/network/broadcastsender/sender.rb +72 -0
  167. data/examples/network/fortuneclient/client.rb +149 -0
  168. data/examples/network/fortuneclient/main.rb +32 -0
  169. data/examples/network/fortuneserver/main.rb +32 -0
  170. data/examples/network/fortuneserver/server.rb +88 -0
  171. data/examples/network/ftp/ftpwindow.rb +259 -0
  172. data/examples/network/ftp/images/cdtoparent.png +0 -0
  173. data/examples/network/ftp/images/dir.png +0 -0
  174. data/examples/network/ftp/images/file.png +0 -0
  175. data/examples/network/ftp/main.rb +32 -0
  176. data/examples/network/http/httpwindow.rb +187 -0
  177. data/examples/network/http/main.rb +32 -0
  178. data/examples/network/loopback/dialog.rb +163 -0
  179. data/examples/network/loopback/main.rb +32 -0
  180. data/examples/opengl/grabber/glwidget.rb +265 -0
  181. data/examples/opengl/grabber/main.rb +32 -0
  182. data/examples/opengl/grabber/mainwindow.rb +189 -0
  183. data/examples/opengl/hellogl/glwidget.rb +226 -0
  184. data/examples/opengl/hellogl/main.rb +32 -0
  185. data/examples/opengl/hellogl/window.rb +66 -0
  186. data/examples/opengl/textures/glwidget.rb +151 -0
  187. data/examples/opengl/textures/images/side1.png +0 -0
  188. data/examples/opengl/textures/images/side2.png +0 -0
  189. data/examples/opengl/textures/images/side3.png +0 -0
  190. data/examples/opengl/textures/images/side4.png +0 -0
  191. data/examples/opengl/textures/images/side5.png +0 -0
  192. data/examples/opengl/textures/images/side6.png +0 -0
  193. data/examples/opengl/textures/main.rb +32 -0
  194. data/examples/opengl/textures/window.rb +77 -0
  195. data/examples/painting/basicdrawing/images/brick.png +0 -0
  196. data/examples/painting/basicdrawing/images/qt-logo.png +0 -0
  197. data/examples/painting/basicdrawing/main.rb +32 -0
  198. data/examples/painting/basicdrawing/renderarea.rb +166 -0
  199. data/examples/painting/basicdrawing/window.rb +215 -0
  200. data/examples/painting/concentriccircles/circlewidget.rb +88 -0
  201. data/examples/painting/concentriccircles/main.rb +32 -0
  202. data/examples/painting/concentriccircles/window.rb +72 -0
  203. data/examples/painting/fontsampler/main.rb +32 -0
  204. data/examples/painting/fontsampler/mainwindow.rb +369 -0
  205. data/examples/painting/fontsampler/mainwindowbase.ui +136 -0
  206. data/examples/painting/fontsampler/makefile +8 -0
  207. data/examples/painting/fontsampler/previewdialog.rb +257 -0
  208. data/examples/painting/fontsampler/previewdialogbase.ui +224 -0
  209. data/examples/painting/fontsampler/previewlabel.rb +43 -0
  210. data/examples/painting/imagecomposition/imagecomposer.rb +152 -0
  211. data/examples/painting/imagecomposition/imagecomposition.qrc +6 -0
  212. data/examples/painting/imagecomposition/images/background.png +0 -0
  213. data/examples/painting/imagecomposition/images/blackrectangle.png +0 -0
  214. data/examples/painting/imagecomposition/images/butterfly.png +0 -0
  215. data/examples/painting/imagecomposition/images/checker.png +0 -0
  216. data/examples/painting/imagecomposition/main.rb +33 -0
  217. data/examples/painting/imagecomposition/makefile +2 -0
  218. data/examples/painting/painterpaths/main.rb +32 -0
  219. data/examples/painting/painterpaths/renderarea.rb +97 -0
  220. data/examples/painting/painterpaths/window.rb +247 -0
  221. data/examples/painting/svgviewer/files/bubbles.svg +212 -0
  222. data/examples/painting/svgviewer/files/cubic.svg +77 -0
  223. data/examples/painting/svgviewer/files/spheres.svg +79 -0
  224. data/examples/painting/svgviewer/main.rb +38 -0
  225. data/examples/painting/svgviewer/mainwindow.rb +99 -0
  226. data/examples/painting/svgviewer/makefile +2 -0
  227. data/examples/painting/svgviewer/svgview.rb +156 -0
  228. data/examples/painting/svgviewer/svgviewer.qrc +6 -0
  229. data/examples/painting/svgviewer/svgwindow.rb +87 -0
  230. data/examples/painting/transformations/main.rb +32 -0
  231. data/examples/painting/transformations/renderarea.rb +127 -0
  232. data/examples/painting/transformations/window.rb +153 -0
  233. data/examples/passivepopup/passivepopup.rb +38 -0
  234. data/examples/qdbus/chat/chat.rb +146 -0
  235. data/examples/qdbus/chat/chat_adaptor.rb +12 -0
  236. data/examples/qdbus/chat/chat_interface.rb +13 -0
  237. data/examples/qdbus/chat/chatmainwindow.ui +184 -0
  238. data/examples/qdbus/chat/chatsetnickname.ui +145 -0
  239. data/examples/qdbus/chat/makefile +8 -0
  240. data/examples/qdbus/complexpingpong/complexping.rb +92 -0
  241. data/examples/qdbus/complexpingpong/complexpong.rb +83 -0
  242. data/examples/qdbus/complexpingpong/ping-common.rb +1 -0
  243. data/examples/qdbus/listnames/listnames.rb +69 -0
  244. data/examples/qdbus/pingpong/ping-common.rb +1 -0
  245. data/examples/qdbus/pingpong/ping.rb +52 -0
  246. data/examples/qdbus/pingpong/pong.rb +55 -0
  247. data/examples/qdbus/remotecontrolledcar/car/car.rb +151 -0
  248. data/examples/qdbus/remotecontrolledcar/car/main.rb +50 -0
  249. data/examples/qdbus/remotecontrolledcar/controller/controller.rb +66 -0
  250. data/examples/qdbus/remotecontrolledcar/controller/controller.ui +61 -0
  251. data/examples/qdbus/remotecontrolledcar/controller/main.rb +32 -0
  252. data/examples/qdbus/remotecontrolledcar/controller/makefile +2 -0
  253. data/examples/qtscribble/scribble.rb +270 -0
  254. data/examples/richtext/calendar/main.rb +33 -0
  255. data/examples/richtext/calendar/mainwindow.rb +173 -0
  256. data/examples/richtext/orderform/detailsdialog.rb +130 -0
  257. data/examples/richtext/orderform/main.rb +34 -0
  258. data/examples/richtext/orderform/mainwindow.rb +194 -0
  259. data/examples/richtext/syntaxhighlighter/examples/example +79 -0
  260. data/examples/richtext/syntaxhighlighter/highlighter.rb +90 -0
  261. data/examples/richtext/syntaxhighlighter/main.rb +34 -0
  262. data/examples/richtext/syntaxhighlighter/mainwindow.rb +105 -0
  263. data/examples/ruboids/LICENSE.txt +58 -0
  264. data/examples/ruboids/Manifest +26 -0
  265. data/examples/ruboids/README +53 -0
  266. data/examples/ruboids/TODO +29 -0
  267. data/examples/ruboids/boids.properties +33 -0
  268. data/examples/ruboids/generateManifest.rb +42 -0
  269. data/examples/ruboids/index.html +147 -0
  270. data/examples/ruboids/release.rb +152 -0
  271. data/examples/ruboids/ruboids/Boid.rb +141 -0
  272. data/examples/ruboids/ruboids/BoidView.rb +159 -0
  273. data/examples/ruboids/ruboids/Camera.rb +24 -0
  274. data/examples/ruboids/ruboids/CameraDialog.rb +218 -0
  275. data/examples/ruboids/ruboids/Canvas.rb +143 -0
  276. data/examples/ruboids/ruboids/Cloud.rb +61 -0
  277. data/examples/ruboids/ruboids/CloudView.rb +54 -0
  278. data/examples/ruboids/ruboids/Flock.rb +47 -0
  279. data/examples/ruboids/ruboids/Graphics.rb +278 -0
  280. data/examples/ruboids/ruboids/Params.rb +87 -0
  281. data/examples/ruboids/ruboids/Point.rb +153 -0
  282. data/examples/ruboids/ruboids/Thing.rb +34 -0
  283. data/examples/ruboids/ruboids/Triangle.rb +21 -0
  284. data/examples/ruboids/ruboids/View.rb +88 -0
  285. data/examples/ruboids/ruboids/World.rb +82 -0
  286. data/examples/ruboids/ruboids/WorldWindow.rb +52 -0
  287. data/examples/ruboids/ruboids/info.rb +12 -0
  288. data/examples/ruboids/ruboids/ruboids.rb +29 -0
  289. data/examples/run_all.rb +15 -0
  290. data/examples/threading/main_thread.rb +19 -0
  291. data/examples/tutorial/t1/t1.rb +10 -0
  292. data/examples/tutorial/t10/cannon.rb +72 -0
  293. data/examples/tutorial/t10/lcdrange.rb +45 -0
  294. data/examples/tutorial/t10/t10.rb +55 -0
  295. data/examples/tutorial/t11/cannon.rb +123 -0
  296. data/examples/tutorial/t11/lcdrange.rb +45 -0
  297. data/examples/tutorial/t11/t11.rb +65 -0
  298. data/examples/tutorial/t12/cannon.rb +157 -0
  299. data/examples/tutorial/t12/lcdrange.rb +58 -0
  300. data/examples/tutorial/t12/t12.rb +65 -0
  301. data/examples/tutorial/t13/cannon.rb +206 -0
  302. data/examples/tutorial/t13/gamebrd.rb +112 -0
  303. data/examples/tutorial/t13/lcdrange.rb +59 -0
  304. data/examples/tutorial/t13/t13.rb +11 -0
  305. data/examples/tutorial/t14/cannon.rb +262 -0
  306. data/examples/tutorial/t14/gamebrd.rb +122 -0
  307. data/examples/tutorial/t14/lcdrange.rb +61 -0
  308. data/examples/tutorial/t14/t14.rb +11 -0
  309. data/examples/tutorial/t2/t2.rb +16 -0
  310. data/examples/tutorial/t3/t3.rb +17 -0
  311. data/examples/tutorial/t4/t4.rb +23 -0
  312. data/examples/tutorial/t5/t5.rb +35 -0
  313. data/examples/tutorial/t6/t6.rb +48 -0
  314. data/examples/tutorial/t7/lcdrange.rb +32 -0
  315. data/examples/tutorial/t7/t7.rb +40 -0
  316. data/examples/tutorial/t8/cannon.rb +37 -0
  317. data/examples/tutorial/t8/lcdrange.rb +45 -0
  318. data/examples/tutorial/t8/t8.rb +43 -0
  319. data/examples/tutorial/t9/cannon.rb +44 -0
  320. data/examples/tutorial/t9/lcdrange.rb +46 -0
  321. data/examples/tutorial/t9/t9.rb +43 -0
  322. data/examples/widgets/analogclock/analogclock.rb +94 -0
  323. data/examples/widgets/analogclock/main.rb +9 -0
  324. data/examples/widgets/calculator/button.rb +45 -0
  325. data/examples/widgets/calculator/calculator.rb +382 -0
  326. data/examples/widgets/calculator/main.rb +32 -0
  327. data/examples/widgets/charactermap/characterwidget.rb +110 -0
  328. data/examples/widgets/charactermap/main.rb +32 -0
  329. data/examples/widgets/charactermap/mainwindow.rb +118 -0
  330. data/examples/widgets/digitalclock/digitalclock.rb +30 -0
  331. data/examples/widgets/digitalclock/main.rb +9 -0
  332. data/examples/widgets/groupbox/main.rb +32 -0
  333. data/examples/widgets/groupbox/window.rb +134 -0
  334. data/examples/widgets/icons/iconpreviewarea.rb +111 -0
  335. data/examples/widgets/icons/iconsizespinbox.rb +39 -0
  336. data/examples/widgets/icons/imagedelegate.rb +73 -0
  337. data/examples/widgets/icons/images/designer.png +0 -0
  338. data/examples/widgets/icons/images/find_disabled.png +0 -0
  339. data/examples/widgets/icons/images/find_normal.png +0 -0
  340. data/examples/widgets/icons/images/monkey_off_128x128.png +0 -0
  341. data/examples/widgets/icons/images/monkey_off_16x16.png +0 -0
  342. data/examples/widgets/icons/images/monkey_off_32x32.png +0 -0
  343. data/examples/widgets/icons/images/monkey_off_64x64.png +0 -0
  344. data/examples/widgets/icons/images/monkey_on_128x128.png +0 -0
  345. data/examples/widgets/icons/images/monkey_on_16x16.png +0 -0
  346. data/examples/widgets/icons/images/monkey_on_32x32.png +0 -0
  347. data/examples/widgets/icons/images/monkey_on_64x64.png +0 -0
  348. data/examples/widgets/icons/images/qtopia_16x16.png +0 -0
  349. data/examples/widgets/icons/images/qtopia_32x32.png +0 -0
  350. data/examples/widgets/icons/images/qtopia_48x48.png +0 -0
  351. data/examples/widgets/icons/main.rb +32 -0
  352. data/examples/widgets/icons/mainwindow.rb +351 -0
  353. data/examples/widgets/imageviewer/imageviewer.rb +219 -0
  354. data/examples/widgets/imageviewer/main.rb +32 -0
  355. data/examples/widgets/lineedits/main.rb +32 -0
  356. data/examples/widgets/lineedits/window.rb +199 -0
  357. data/examples/widgets/movie/images/open.png +0 -0
  358. data/examples/widgets/movie/images/pause.png +0 -0
  359. data/examples/widgets/movie/images/play.png +0 -0
  360. data/examples/widgets/movie/images/quit.png +0 -0
  361. data/examples/widgets/movie/images/stop.png +0 -0
  362. data/examples/widgets/movie/main.rb +32 -0
  363. data/examples/widgets/movie/movieplayer.rb +201 -0
  364. data/examples/widgets/movie/movies/fire.mng +0 -0
  365. data/examples/widgets/screenshot/main.rb +32 -0
  366. data/examples/widgets/screenshot/screenshot.rb +155 -0
  367. data/examples/widgets/scribble/main.rb +32 -0
  368. data/examples/widgets/scribble/mainwindow.rb +202 -0
  369. data/examples/widgets/scribble/scribblearea.rb +154 -0
  370. data/examples/widgets/sliders/main.rb +32 -0
  371. data/examples/widgets/sliders/slidersgroup.rb +97 -0
  372. data/examples/widgets/sliders/window.rb +124 -0
  373. data/examples/widgets/spinboxes/main.rb +32 -0
  374. data/examples/widgets/spinboxes/window.rb +213 -0
  375. data/examples/widgets/tetrix/main.rb +33 -0
  376. data/examples/widgets/tetrix/tetrixboard.rb +346 -0
  377. data/examples/widgets/tetrix/tetrixpiece.rb +135 -0
  378. data/examples/widgets/tetrix/tetrixwindow.rb +88 -0
  379. data/examples/widgets/tooltips/images/circle.png +0 -0
  380. data/examples/widgets/tooltips/images/square.png +0 -0
  381. data/examples/widgets/tooltips/images/triangle.png +0 -0
  382. data/examples/widgets/tooltips/main.rb +32 -0
  383. data/examples/widgets/tooltips/shapeitem.rb +31 -0
  384. data/examples/widgets/tooltips/sortingbox.rb +222 -0
  385. data/examples/widgets/wiggly/dialog.rb +48 -0
  386. data/examples/widgets/wiggly/main.rb +9 -0
  387. data/examples/widgets/wiggly/wigglywidget.rb +76 -0
  388. data/examples/widgets/windowflags/controllerwindow.rb +195 -0
  389. data/examples/widgets/windowflags/main.rb +32 -0
  390. data/examples/widgets/windowflags/previewwindow.rb +103 -0
  391. data/examples/xml/dombookmarks/frank.xbel +230 -0
  392. data/examples/xml/dombookmarks/jennifer.xbel +93 -0
  393. data/examples/xml/dombookmarks/main.rb +34 -0
  394. data/examples/xml/dombookmarks/mainwindow.rb +129 -0
  395. data/examples/xml/dombookmarks/xbeltree.rb +172 -0
  396. data/examples/xml/saxbookmarks/frank.xbel +230 -0
  397. data/examples/xml/saxbookmarks/jennifer.xbel +93 -0
  398. data/examples/xml/saxbookmarks/main.rb +34 -0
  399. data/examples/xml/saxbookmarks/mainwindow.rb +144 -0
  400. data/examples/xml/saxbookmarks/xbelgenerator.rb +95 -0
  401. data/examples/xml/saxbookmarks/xbelhandler.rb +122 -0
  402. data/ext/CMakeLists.txt +28 -0
  403. data/ext/cmake/modules/BasicFindPackageVersion.cmake.in +30 -0
  404. data/ext/cmake/modules/CMakeCSharpCompiler.cmake.in +7 -0
  405. data/ext/cmake/modules/CMakeCSharpInformation.cmake +366 -0
  406. data/ext/cmake/modules/CMakeDetermineCSharpCompiler.cmake +85 -0
  407. data/ext/cmake/modules/CMakeTestCSharpCompiler.cmake +1 -0
  408. data/ext/cmake/modules/CheckCXXSourceCompiles.cmake +68 -0
  409. data/ext/cmake/modules/FindLibraryWithDebug.cmake +113 -0
  410. data/ext/cmake/modules/FindMono.cmake +36 -0
  411. data/ext/cmake/modules/FindPHP5.cmake +179 -0
  412. data/ext/cmake/modules/FindPerlMore.cmake +78 -0
  413. data/ext/cmake/modules/FindPhonon.cmake +71 -0
  414. data/ext/cmake/modules/FindQImageBlitz.cmake +51 -0
  415. data/ext/cmake/modules/FindQScintilla.cmake +57 -0
  416. data/ext/cmake/modules/FindQt4.cmake +1275 -0
  417. data/ext/cmake/modules/FindQwt5.cmake +104 -0
  418. data/ext/cmake/modules/FindRuby.cmake +279 -0
  419. data/ext/cmake/modules/FindSmoke.cmake +78 -0
  420. data/ext/cmake/modules/HandleImportedTargetsInCMakeRequiredLibraries.cmake +85 -0
  421. data/ext/cmake/modules/MacroLogFeature.cmake +146 -0
  422. data/ext/cmake/modules/MacroOptionalAddBindings.cmake +47 -0
  423. data/ext/cmake/modules/MacroOptionalFindPackage.cmake +28 -0
  424. data/ext/cmake/modules/MacroPushRequiredVars.cmake +47 -0
  425. data/ext/cmake/modules/MacroWriteBasicCMakeVersionFile.cmake +22 -0
  426. data/ext/cmake/modules/Qt4ConfigDependentSettings.cmake +384 -0
  427. data/ext/cmake/modules/Qt4Macros.cmake +414 -0
  428. data/ext/cmake/modules/SmokeConfig.cmake.in +109 -0
  429. data/ext/generator/CMakeLists.txt +38 -0
  430. data/ext/generator/cmake/BasicFindPackageVersion.cmake.in +30 -0
  431. data/ext/generator/cmake/CMakeLists.txt +24 -0
  432. data/ext/generator/cmake/FindLibraryWithDebug.cmake +113 -0
  433. data/ext/generator/cmake/FindPhonon.cmake +71 -0
  434. data/ext/generator/cmake/FindQImageBlitz.cmake +51 -0
  435. data/ext/generator/cmake/FindQScintilla.cmake +57 -0
  436. data/ext/generator/cmake/FindQwt5.cmake +104 -0
  437. data/ext/generator/cmake/HandleImportedTargetsInCMakeRequiredLibraries.cmake +85 -0
  438. data/ext/generator/cmake/MacroLogFeature.cmake +146 -0
  439. data/ext/generator/cmake/MacroOptionalAddBindings.cmake +47 -0
  440. data/ext/generator/cmake/MacroOptionalFindPackage.cmake +28 -0
  441. data/ext/generator/cmake/MacroWriteBasicCMakeVersionFile.cmake +22 -0
  442. data/ext/generator/cmake/SmokeConfig.cmake.in +109 -0
  443. data/ext/generator/config.h +25 -0
  444. data/ext/generator/generator_export.h +31 -0
  445. data/ext/generator/generatorenvironment.cpp +52 -0
  446. data/ext/generator/generatorenvironment.h +35 -0
  447. data/ext/generator/generatorpreprocessor.cpp +303 -0
  448. data/ext/generator/generatorpreprocessor.h +83 -0
  449. data/ext/generator/generators/CMakeLists.txt +4 -0
  450. data/ext/generator/generators/dump/CMakeLists.txt +15 -0
  451. data/ext/generator/generators/dump/generator_dump.cpp +36 -0
  452. data/ext/generator/generators/smoke/CMakeLists.txt +18 -0
  453. data/ext/generator/generators/smoke/generator_smoke.cpp +240 -0
  454. data/ext/generator/generators/smoke/globals.h +140 -0
  455. data/ext/generator/generators/smoke/helpers.cpp +793 -0
  456. data/ext/generator/generators/smoke/writeClasses.cpp +502 -0
  457. data/ext/generator/generators/smoke/writeSmokeDataFile.cpp +754 -0
  458. data/ext/generator/generatorvisitor.cpp +922 -0
  459. data/ext/generator/generatorvisitor.h +119 -0
  460. data/ext/generator/main.cpp +243 -0
  461. data/ext/generator/name_compiler.cpp +205 -0
  462. data/ext/generator/name_compiler.h +76 -0
  463. data/ext/generator/options.cpp +33 -0
  464. data/ext/generator/options.h +46 -0
  465. data/ext/generator/parser/CMakeLists.txt +50 -0
  466. data/ext/generator/parser/ast.cpp +21 -0
  467. data/ext/generator/parser/ast.h +923 -0
  468. data/ext/generator/parser/astutilities.h +65 -0
  469. data/ext/generator/parser/codegenerator.cpp +867 -0
  470. data/ext/generator/parser/codegenerator.h +180 -0
  471. data/ext/generator/parser/codemodel_fwd.h +76 -0
  472. data/ext/generator/parser/commentformatter.cpp +54 -0
  473. data/ext/generator/parser/commentformatter.h +45 -0
  474. data/ext/generator/parser/commentparser.cpp +109 -0
  475. data/ext/generator/parser/commentparser.h +84 -0
  476. data/ext/generator/parser/control.cpp +40 -0
  477. data/ext/generator/parser/control.h +51 -0
  478. data/ext/generator/parser/cppparser_export.h +33 -0
  479. data/ext/generator/parser/default_visitor.cpp +470 -0
  480. data/ext/generator/parser/default_visitor.h +116 -0
  481. data/ext/generator/parser/dumptree.cpp +146 -0
  482. data/ext/generator/parser/dumptree.h +50 -0
  483. data/ext/generator/parser/indexedstring.cpp +213 -0
  484. data/ext/generator/parser/indexedstring.h +147 -0
  485. data/ext/generator/parser/kdevelop-parser-rev +1 -0
  486. data/ext/generator/parser/kdevvarlengtharray.h +346 -0
  487. data/ext/generator/parser/lexer.cpp +964 -0
  488. data/ext/generator/parser/lexer.h +308 -0
  489. data/ext/generator/parser/listnode.cpp +20 -0
  490. data/ext/generator/parser/listnode.h +97 -0
  491. data/ext/generator/parser/memorypool.cpp +20 -0
  492. data/ext/generator/parser/memorypool.h +41 -0
  493. data/ext/generator/parser/name_compiler.cpp +190 -0
  494. data/ext/generator/parser/name_compiler.h +77 -0
  495. data/ext/generator/parser/parser.cpp +4708 -0
  496. data/ext/generator/parser/parser.h +290 -0
  497. data/ext/generator/parser/parsesession.cpp +106 -0
  498. data/ext/generator/parser/parsesession.h +87 -0
  499. data/ext/generator/parser/problem.h +21 -0
  500. data/ext/generator/parser/rpp/CMakeLists.txt +45 -0
  501. data/ext/generator/parser/rpp/Makefile.am +13 -0
  502. data/ext/generator/parser/rpp/anchor.h +51 -0
  503. data/ext/generator/parser/rpp/appendedlist.h +363 -0
  504. data/ext/generator/parser/rpp/chartools.cpp +146 -0
  505. data/ext/generator/parser/rpp/chartools.h +99 -0
  506. data/ext/generator/parser/rpp/macrorepository.cpp +44 -0
  507. data/ext/generator/parser/rpp/macrorepository.h +59 -0
  508. data/ext/generator/parser/rpp/pp-configuration +86 -0
  509. data/ext/generator/parser/rpp/pp-engine.cpp +1216 -0
  510. data/ext/generator/parser/rpp/pp-engine.h +267 -0
  511. data/ext/generator/parser/rpp/pp-environment.cpp +271 -0
  512. data/ext/generator/parser/rpp/pp-environment.h +119 -0
  513. data/ext/generator/parser/rpp/pp-internal.cpp +38 -0
  514. data/ext/generator/parser/rpp/pp-internal.h +37 -0
  515. data/ext/generator/parser/rpp/pp-location.cpp +191 -0
  516. data/ext/generator/parser/rpp/pp-location.h +89 -0
  517. data/ext/generator/parser/rpp/pp-macro-expander.cpp +568 -0
  518. data/ext/generator/parser/rpp/pp-macro-expander.cpp.orig +558 -0
  519. data/ext/generator/parser/rpp/pp-macro-expander.h +130 -0
  520. data/ext/generator/parser/rpp/pp-macro.cpp +153 -0
  521. data/ext/generator/parser/rpp/pp-macro.h +176 -0
  522. data/ext/generator/parser/rpp/pp-scanner.cpp +311 -0
  523. data/ext/generator/parser/rpp/pp-scanner.h +97 -0
  524. data/ext/generator/parser/rpp/pp-stream.cpp +425 -0
  525. data/ext/generator/parser/rpp/pp-stream.h +183 -0
  526. data/ext/generator/parser/rpp/preprocessor.cpp +65 -0
  527. data/ext/generator/parser/rpp/preprocessor.h +80 -0
  528. data/ext/generator/parser/rpp/rpp.pri +2 -0
  529. data/ext/generator/parser/rpp/test/t001.cpp +23 -0
  530. data/ext/generator/parser/rpp/test/t002.cpp +15 -0
  531. data/ext/generator/parser/rpp/test/t003.cpp +10 -0
  532. data/ext/generator/parser/rpp/test/t004.cpp +9 -0
  533. data/ext/generator/parser/rpp/test/t005.cpp +10 -0
  534. data/ext/generator/parser/rpp/test/t006.cpp +10 -0
  535. data/ext/generator/parser/rpp/test/t007.cpp +6 -0
  536. data/ext/generator/parser/rpp/test/t008.cpp +6 -0
  537. data/ext/generator/parser/rpp/test/t009.cpp +5 -0
  538. data/ext/generator/parser/rpp/test/t010.cpp +15 -0
  539. data/ext/generator/parser/rpp/test/t011.cpp +9 -0
  540. data/ext/generator/parser/rpp/tests/CMakeLists.txt +17 -0
  541. data/ext/generator/parser/rpp/tests/main.cpp +69 -0
  542. data/ext/generator/parser/rxx.pri +50 -0
  543. data/ext/generator/parser/rxx_allocator.h +128 -0
  544. data/ext/generator/parser/safetycounter.h +57 -0
  545. data/ext/generator/parser/simplecursor.h +74 -0
  546. data/ext/generator/parser/stringhelpers.cpp +577 -0
  547. data/ext/generator/parser/stringhelpers.h +118 -0
  548. data/ext/generator/parser/symbol.h +140 -0
  549. data/ext/generator/parser/tests/CMakeLists.txt +46 -0
  550. data/ext/generator/parser/tests/test_generator.cpp +259 -0
  551. data/ext/generator/parser/tests/test_parser.cpp +474 -0
  552. data/ext/generator/parser/tests/test_pool.cpp +109 -0
  553. data/ext/generator/parser/tests/test_pool.h +35 -0
  554. data/ext/generator/parser/tests/testconfig.h.cmake +4 -0
  555. data/ext/generator/parser/tokens.cpp +367 -0
  556. data/ext/generator/parser/tokens.h +148 -0
  557. data/ext/generator/parser/type_compiler.cpp +135 -0
  558. data/ext/generator/parser/type_compiler.h +68 -0
  559. data/ext/generator/parser/visitor.cpp +115 -0
  560. data/ext/generator/parser/visitor.h +138 -0
  561. data/ext/generator/smoke.h +557 -0
  562. data/ext/generator/smokegen_string.h +43 -0
  563. data/ext/generator/type.cpp +204 -0
  564. data/ext/generator/type.h +497 -0
  565. data/ext/generator/type_compiler.cpp +277 -0
  566. data/ext/generator/type_compiler.h +80 -0
  567. data/ext/ruby/CMakeLists.txt +64 -0
  568. data/ext/ruby/qtdeclarative/CMakeLists.txt +17 -0
  569. data/ext/ruby/qtdeclarative/qtdeclarative.cpp +67 -0
  570. data/ext/ruby/qtdeclarative/qtdeclarative.rb +17 -0
  571. data/ext/ruby/qtdeclarative/qtdeclarativehandlers.cpp +36 -0
  572. data/ext/ruby/qtruby/AUTHORS +54 -0
  573. data/ext/ruby/qtruby/CMakeLists.txt +4 -0
  574. data/ext/ruby/qtruby/COPYING +355 -0
  575. data/ext/ruby/qtruby/COPYING.LIB +510 -0
  576. data/ext/ruby/qtruby/ChangeLog +3732 -0
  577. data/ext/ruby/qtruby/INSTALL +79 -0
  578. data/ext/ruby/qtruby/README +264 -0
  579. data/ext/ruby/qtruby/TODO +8 -0
  580. data/ext/ruby/qtruby/bin/CMakeLists.txt +1 -0
  581. data/ext/ruby/qtruby/bin/rbqtapi +152 -0
  582. data/ext/ruby/qtruby/rails_support/CMakeLists.txt +1 -0
  583. data/ext/ruby/qtruby/rails_support/active_item_model.rb +234 -0
  584. data/ext/ruby/qtruby/rails_support/active_table_model.rb +122 -0
  585. data/ext/ruby/qtruby/src/CMakeLists.txt +103 -0
  586. data/ext/ruby/qtruby/src/Qt.cpp +1327 -0
  587. data/ext/ruby/qtruby/src/handlers.cpp +2668 -0
  588. data/ext/ruby/qtruby/src/marshall.h +66 -0
  589. data/ext/ruby/qtruby/src/marshall_basetypes.h +208 -0
  590. data/ext/ruby/qtruby/src/marshall_complex.h +175 -0
  591. data/ext/ruby/qtruby/src/marshall_macros.h +647 -0
  592. data/ext/ruby/qtruby/src/marshall_primitives.h +306 -0
  593. data/ext/ruby/qtruby/src/marshall_types.cpp +815 -0
  594. data/ext/ruby/qtruby/src/marshall_types.h +240 -0
  595. data/ext/ruby/qtruby/src/qtruby.cpp +2627 -0
  596. data/ext/ruby/qtruby/src/qtruby.h +198 -0
  597. data/ext/ruby/qtruby/src/smokeruby.h +164 -0
  598. data/ext/ruby/qtruby/test/opoverloading.rb +46 -0
  599. data/ext/ruby/qtruby/test/unittests.rb +151 -0
  600. data/ext/ruby/qtruby/tools/CMakeLists.txt +2 -0
  601. data/ext/ruby/qtruby/tools/rbrcc/CMakeLists.txt +6 -0
  602. data/ext/ruby/qtruby/tools/rbrcc/Messages.sh +7 -0
  603. data/ext/ruby/qtruby/tools/rbrcc/main.cpp +173 -0
  604. data/ext/ruby/qtruby/tools/rbrcc/rbrcc.pro +14 -0
  605. data/ext/ruby/qtruby/tools/rbrcc/rcc.cpp +648 -0
  606. data/ext/ruby/qtruby/tools/rbrcc/rcc.h +165 -0
  607. data/ext/ruby/qtruby/tools/rbuic/CMakeLists.txt +35 -0
  608. data/ext/ruby/qtruby/tools/rbuic/LICENSE.GPL +280 -0
  609. data/ext/ruby/qtruby/tools/rbuic/Messages.sh +7 -0
  610. data/ext/ruby/qtruby/tools/rbuic/TODO +4 -0
  611. data/ext/ruby/qtruby/tools/rbuic/customwidgetsinfo.cpp +106 -0
  612. data/ext/ruby/qtruby/tools/rbuic/customwidgetsinfo.h +95 -0
  613. data/ext/ruby/qtruby/tools/rbuic/databaseinfo.cpp +102 -0
  614. data/ext/ruby/qtruby/tools/rbuic/databaseinfo.h +85 -0
  615. data/ext/ruby/qtruby/tools/rbuic/driver.cpp +384 -0
  616. data/ext/ruby/qtruby/tools/rbuic/driver.h +141 -0
  617. data/ext/ruby/qtruby/tools/rbuic/globaldefs.h +60 -0
  618. data/ext/ruby/qtruby/tools/rbuic/main.cpp +201 -0
  619. data/ext/ruby/qtruby/tools/rbuic/option.h +110 -0
  620. data/ext/ruby/qtruby/tools/rbuic/rbuic.pri +23 -0
  621. data/ext/ruby/qtruby/tools/rbuic/rbuic4.pro +43 -0
  622. data/ext/ruby/qtruby/tools/rbuic/ruby/rbextractimages.cpp +150 -0
  623. data/ext/ruby/qtruby/tools/rbuic/ruby/rbextractimages.h +83 -0
  624. data/ext/ruby/qtruby/tools/rbuic/ruby/rbwritedeclaration.cpp +217 -0
  625. data/ext/ruby/qtruby/tools/rbuic/ruby/rbwritedeclaration.h +85 -0
  626. data/ext/ruby/qtruby/tools/rbuic/ruby/rbwriteicondata.cpp +185 -0
  627. data/ext/ruby/qtruby/tools/rbuic/ruby/rbwriteicondata.h +86 -0
  628. data/ext/ruby/qtruby/tools/rbuic/ruby/rbwriteicondeclaration.cpp +88 -0
  629. data/ext/ruby/qtruby/tools/rbuic/ruby/rbwriteicondeclaration.h +83 -0
  630. data/ext/ruby/qtruby/tools/rbuic/ruby/rbwriteiconinitialization.cpp +126 -0
  631. data/ext/ruby/qtruby/tools/rbuic/ruby/rbwriteiconinitialization.h +87 -0
  632. data/ext/ruby/qtruby/tools/rbuic/ruby/rbwriteinitialization.cpp +2478 -0
  633. data/ext/ruby/qtruby/tools/rbuic/ruby/rbwriteinitialization.h +314 -0
  634. data/ext/ruby/qtruby/tools/rbuic/ruby/ruby.pri +18 -0
  635. data/ext/ruby/qtruby/tools/rbuic/treewalker.cpp +318 -0
  636. data/ext/ruby/qtruby/tools/rbuic/treewalker.h +139 -0
  637. data/ext/ruby/qtruby/tools/rbuic/ui4.cpp +7623 -0
  638. data/ext/ruby/qtruby/tools/rbuic/ui4.h +3180 -0
  639. data/ext/ruby/qtruby/tools/rbuic/uic.cpp +438 -0
  640. data/ext/ruby/qtruby/tools/rbuic/uic.h +154 -0
  641. data/ext/ruby/qtruby/tools/rbuic/utils.h +125 -0
  642. data/ext/ruby/qtruby/tools/rbuic/validator.cpp +100 -0
  643. data/ext/ruby/qtruby/tools/rbuic/validator.h +80 -0
  644. data/ext/ruby/qtscript/CMakeLists.txt +19 -0
  645. data/ext/ruby/qtscript/qtscript.cpp +83 -0
  646. data/ext/ruby/qtscript/qtscript.rb +40 -0
  647. data/ext/ruby/qtscript/qtscripthandlers.cpp +37 -0
  648. data/ext/ruby/qtscript/smokedata.cpp +1403 -0
  649. data/ext/ruby/qttest/CMakeLists.txt +18 -0
  650. data/ext/ruby/qttest/ChangeLog +9 -0
  651. data/ext/ruby/qttest/examples/myfirsttest.rb +30 -0
  652. data/ext/ruby/qttest/qttest.cpp +83 -0
  653. data/ext/ruby/qttest/qttest.rb +166 -0
  654. data/ext/ruby/qttest/qttesthandlers.cpp +37 -0
  655. data/ext/ruby/qtuitools/CMakeLists.txt +16 -0
  656. data/ext/ruby/qtuitools/qtuitools.cpp +83 -0
  657. data/ext/ruby/qtuitools/qtuitools.rb +17 -0
  658. data/ext/ruby/qtuitools/qtuitoolshandlers.cpp +32 -0
  659. data/ext/ruby/qtwebkit/CMakeLists.txt +17 -0
  660. data/ext/ruby/qtwebkit/qtwebkit.cpp +67 -0
  661. data/ext/ruby/qtwebkit/qtwebkit.rb +17 -0
  662. data/ext/ruby/qtwebkit/qtwebkithandlers.cpp +40 -0
  663. data/ext/smoke/CMakeLists.txt +39 -0
  664. data/ext/smoke/deptool/CMakeLists.txt +7 -0
  665. data/ext/smoke/deptool/main.cpp +128 -0
  666. data/ext/smoke/qt_smoke.h +16 -0
  667. data/ext/smoke/qtcore/CMakeLists.txt +88 -0
  668. data/ext/smoke/qtcore/QtGuess.txt +180 -0
  669. data/ext/smoke/qtcore/config.xml.cmake +10 -0
  670. data/ext/smoke/qtcore/qt-config.xml.cmake +21 -0
  671. data/ext/smoke/qtcore/qtcore_includes.h +1 -0
  672. data/ext/smoke/qtcore/smokeconfig.xml +193 -0
  673. data/ext/smoke/qtcore/tests/CMakeLists.txt +13 -0
  674. data/ext/smoke/qtcore/tests/test.cpp +846 -0
  675. data/ext/smoke/qtcore_smoke.h +16 -0
  676. data/ext/smoke/qtdbus/CMakeLists.txt +38 -0
  677. data/ext/smoke/qtdbus/config.xml.cmake +11 -0
  678. data/ext/smoke/qtdbus/qtdbus_includes.h +2 -0
  679. data/ext/smoke/qtdbus/smokeconfig.xml +65 -0
  680. data/ext/smoke/qtdbus_smoke.h +16 -0
  681. data/ext/smoke/qtdeclarative/CMakeLists.txt +45 -0
  682. data/ext/smoke/qtdeclarative/config.xml.cmake +12 -0
  683. data/ext/smoke/qtdeclarative/qtdeclarative_includes.h +3 -0
  684. data/ext/smoke/qtdeclarative/smokeconfig.xml +59 -0
  685. data/ext/smoke/qtdeclarative_smoke.h +16 -0
  686. data/ext/smoke/qtgui/CMakeLists.txt +76 -0
  687. data/ext/smoke/qtgui/config.xml.cmake +11 -0
  688. data/ext/smoke/qtgui/qtgui_includes.h +7 -0
  689. data/ext/smoke/qtgui/smokeconfig.xml +500 -0
  690. data/ext/smoke/qtgui_smoke.h +16 -0
  691. data/ext/smoke/qthelp/CMakeLists.txt +45 -0
  692. data/ext/smoke/qthelp/config.xml.cmake +13 -0
  693. data/ext/smoke/qthelp/qthelp_includes.h +3 -0
  694. data/ext/smoke/qthelp/smokeconfig.xml +54 -0
  695. data/ext/smoke/qthelp_smoke.h +16 -0
  696. data/ext/smoke/qtmultimedia/CMakeLists.txt +42 -0
  697. data/ext/smoke/qtmultimedia/config.xml.cmake +12 -0
  698. data/ext/smoke/qtmultimedia/qtmultimedia_includes.h +3 -0
  699. data/ext/smoke/qtmultimedia/smokeconfig.xml +51 -0
  700. data/ext/smoke/qtmultimedia_smoke.h +16 -0
  701. data/ext/smoke/qtnetwork/CMakeLists.txt +38 -0
  702. data/ext/smoke/qtnetwork/config.xml.cmake +11 -0
  703. data/ext/smoke/qtnetwork/qtnetwork_includes.h +2 -0
  704. data/ext/smoke/qtnetwork/smokeconfig.xml +81 -0
  705. data/ext/smoke/qtnetwork_smoke.h +16 -0
  706. data/ext/smoke/qtopengl/CMakeLists.txt +43 -0
  707. data/ext/smoke/qtopengl/config.xml.cmake +13 -0
  708. data/ext/smoke/qtopengl/qtopengl_includes.h +3 -0
  709. data/ext/smoke/qtopengl/smokeconfig.xml +58 -0
  710. data/ext/smoke/qtopengl_smoke.h +16 -0
  711. data/ext/smoke/qtscript/CMakeLists.txt +31 -0
  712. data/ext/smoke/qtscript/config.xml.cmake +11 -0
  713. data/ext/smoke/qtscript/qtscript_includes.h +14 -0
  714. data/ext/smoke/qtscript/smokeconfig.xml +39 -0
  715. data/ext/smoke/qtscript_smoke.h +16 -0
  716. data/ext/smoke/qtsql/CMakeLists.txt +45 -0
  717. data/ext/smoke/qtsql/config.xml.cmake +11 -0
  718. data/ext/smoke/qtsql/qtsql_includes.h +3 -0
  719. data/ext/smoke/qtsql/smokeconfig.xml +60 -0
  720. data/ext/smoke/qtsql_smoke.h +16 -0
  721. data/ext/smoke/qtsvg/CMakeLists.txt +43 -0
  722. data/ext/smoke/qtsvg/config.xml.cmake +12 -0
  723. data/ext/smoke/qtsvg/qtsvg_includes.h +3 -0
  724. data/ext/smoke/qtsvg/smokeconfig.xml +46 -0
  725. data/ext/smoke/qtsvg_smoke.h +16 -0
  726. data/ext/smoke/qttest/CMakeLists.txt +35 -0
  727. data/ext/smoke/qttest/config.xml.cmake +12 -0
  728. data/ext/smoke/qttest/qttest_includes.h +14 -0
  729. data/ext/smoke/qttest/smokeconfig.xml +36 -0
  730. data/ext/smoke/qttest_smoke.h +16 -0
  731. data/ext/smoke/qtuitools/CMakeLists.txt +30 -0
  732. data/ext/smoke/qtuitools/config.xml.cmake +12 -0
  733. data/ext/smoke/qtuitools/qtuitools_includes.h +1 -0
  734. data/ext/smoke/qtuitools/smokeconfig.xml +20 -0
  735. data/ext/smoke/qtuitools_smoke.h +16 -0
  736. data/ext/smoke/qtwebkit/CMakeLists.txt +36 -0
  737. data/ext/smoke/qtwebkit/config.xml.cmake +11 -0
  738. data/ext/smoke/qtwebkit/qtwebkit_includes.h +1 -0
  739. data/ext/smoke/qtwebkit/smokeconfig.xml +48 -0
  740. data/ext/smoke/qtwebkit_smoke.h +16 -0
  741. data/ext/smoke/qtxml/CMakeLists.txt +41 -0
  742. data/ext/smoke/qtxml/config.xml.cmake +11 -0
  743. data/ext/smoke/qtxml/qtxml_includes.h +2 -0
  744. data/ext/smoke/qtxml/smokeconfig.xml +70 -0
  745. data/ext/smoke/qtxml_smoke.h +16 -0
  746. data/ext/smoke/qtxmlpatterns/CMakeLists.txt +42 -0
  747. data/ext/smoke/qtxmlpatterns/config.xml.cmake +12 -0
  748. data/ext/smoke/qtxmlpatterns/qtxmlpatterns_includes.h +3 -0
  749. data/ext/smoke/qtxmlpatterns/smokeconfig.xml +80 -0
  750. data/ext/smoke/qtxmlpatterns_smoke.h +16 -0
  751. data/ext/smoke/smoke.h +559 -0
  752. data/ext/smoke/smokeapi/CMakeLists.txt +9 -0
  753. data/ext/smoke/smokeapi/main.cpp +309 -0
  754. data/ext/smoke/smokebase/CMakeLists.txt +11 -0
  755. data/ext/smoke/smokebase/smokebase.cpp +6 -0
  756. data/ext/smoke/solid_smoke.h +16 -0
  757. data/extconf.rb +256 -0
  758. data/lib/Qt/qtruby4.rb +3268 -0
  759. data/lib/Qt.rb +1 -0
  760. data/lib/Qt4.rb +119 -0
  761. data/lib/qtbindings_version.rb +2 -0
  762. data/lib/qtdeclarative/qtdeclarative.rb +17 -0
  763. data/lib/qtscript/qtscript.rb +40 -0
  764. data/lib/qttest/qttest.rb +166 -0
  765. data/lib/qtuitools/qtuitools.rb +17 -0
  766. data/lib/qtwebkit/qtwebkit.rb +17 -0
  767. data/rock-qtbindings.gemspec +18 -0
  768. metadata +819 -0
@@ -0,0 +1,1275 @@
1
+ # - Find QT 4
2
+ # This module can be used to find Qt4.
3
+ # The most important issue is that the Qt4 qmake is available via the system path.
4
+ # This qmake is then used to detect basically everything else.
5
+ # This module defines a number of key variables and macros.
6
+ # The variable QT_USE_FILE is set which is the path to a CMake file that can be included
7
+ # to compile Qt 4 applications and libraries. It sets up the compilation
8
+ # environment for include directories, preprocessor defines and populates a
9
+ # QT_LIBRARIES variable.
10
+ #
11
+ # Typical usage could be something like:
12
+ # find_package(Qt4 4.4.3 COMPONENTS QtCore QtGui QtXml REQUIRED )
13
+ # include(${QT_USE_FILE})
14
+ # add_executable(myexe main.cpp)
15
+ # target_link_libraries(myexe ${QT_LIBRARIES})
16
+ #
17
+ # The minimum required version can be specified using the standard find_package()-syntax
18
+ # (see example above).
19
+ # For compatibility with older versions of FindQt4.cmake it is also possible to
20
+ # set the variable QT_MIN_VERSION to the minimum required version of Qt4 before the
21
+ # find_package(Qt4) command.
22
+ # If both are used, the version used in the find_package() command overrides the
23
+ # one from QT_MIN_VERSION.
24
+ #
25
+ # When using the components argument, QT_USE_QT* variables are automatically set
26
+ # for the QT_USE_FILE to pick up. If one wishes to manually set them, the
27
+ # available ones to set include:
28
+ # QT_DONT_USE_QTCORE
29
+ # QT_DONT_USE_QTGUI
30
+ # QT_USE_QT3SUPPORT
31
+ # QT_USE_QTASSISTANT
32
+ # QT_USE_QAXCONTAINER
33
+ # QT_USE_QAXSERVER
34
+ # QT_USE_QTDESIGNER
35
+ # QT_USE_QTMOTIF
36
+ # QT_USE_QTMAIN
37
+ # QT_USE_QTMULTIMEDIA
38
+ # QT_USE_QTNETWORK
39
+ # QT_USE_QTNSPLUGIN
40
+ # QT_USE_QTOPENGL
41
+ # QT_USE_QTSQL
42
+ # QT_USE_QTXML
43
+ # QT_USE_QTSVG
44
+ # QT_USE_QTTEST
45
+ # QT_USE_QTUITOOLS
46
+ # QT_USE_QTDBUS
47
+ # QT_USE_QTSCRIPT
48
+ # QT_USE_QTASSISTANTCLIENT
49
+ # QT_USE_QTHELP
50
+ # QT_USE_QTWEBKIT
51
+ # QT_USE_QTXMLPATTERNS
52
+ # QT_USE_PHONON
53
+ # QT_USE_QTSCRIPTTOOLS
54
+ # QT_USE_QTDECLARATIVE
55
+ #
56
+ # QT_USE_IMPORTED_TARGETS
57
+ # If this variable is set to TRUE, FindQt4.cmake will create imported
58
+ # library targets for the various Qt libraries and set the
59
+ # library variables like QT_QTCORE_LIBRARY to point at these imported
60
+ # targets instead of the library file on disk. This provides much better
61
+ # handling of the release and debug versions of the Qt libraries and is
62
+ # also always backwards compatible, except for the case that dependencies
63
+ # of libraries are exported, these will then also list the names of the
64
+ # imported targets as dependency and not the file location on disk. This
65
+ # is much more flexible, but requires that FindQt4.cmake is executed before
66
+ # such an exported dependency file is processed.
67
+ #
68
+ # There are also some files that need processing by some Qt tools such as moc
69
+ # and uic. Listed below are macros that may be used to process those files.
70
+ #
71
+ # macro QT4_WRAP_CPP(outfiles inputfile ... OPTIONS ...)
72
+ # create moc code from a list of files containing Qt class with
73
+ # the Q_OBJECT declaration. Per-direcotry preprocessor definitions
74
+ # are also added. Options may be given to moc, such as those found
75
+ # when executing "moc -help".
76
+ #
77
+ # macro QT4_WRAP_UI(outfiles inputfile ... OPTIONS ...)
78
+ # create code from a list of Qt designer ui files.
79
+ # Options may be given to uic, such as those found
80
+ # when executing "uic -help"
81
+ #
82
+ # macro QT4_ADD_RESOURCES(outfiles inputfile ... OPTIONS ...)
83
+ # create code from a list of Qt resource files.
84
+ # Options may be given to rcc, such as those found
85
+ # when executing "rcc -help"
86
+ #
87
+ # macro QT4_GENERATE_MOC(inputfile outputfile )
88
+ # creates a rule to run moc on infile and create outfile.
89
+ # Use this if for some reason QT4_WRAP_CPP() isn't appropriate, e.g.
90
+ # because you need a custom filename for the moc file or something similar.
91
+ #
92
+ # macro QT4_AUTOMOC(sourcefile1 sourcefile2 ... )
93
+ # This macro is still experimental.
94
+ # It can be used to have moc automatically handled.
95
+ # So if you have the files foo.h and foo.cpp, and in foo.h a
96
+ # a class uses the Q_OBJECT macro, moc has to run on it. If you don't
97
+ # want to use QT4_WRAP_CPP() (which is reliable and mature), you can insert
98
+ # #include "foo.moc"
99
+ # in foo.cpp and then give foo.cpp as argument to QT4_AUTOMOC(). This will the
100
+ # scan all listed files at cmake-time for such included moc files and if it finds
101
+ # them cause a rule to be generated to run moc at build time on the
102
+ # accompanying header file foo.h.
103
+ # If a source file has the SKIP_AUTOMOC property set it will be ignored by this macro.
104
+ #
105
+ # macro QT4_ADD_DBUS_INTERFACE(outfiles interface basename)
106
+ # create a the interface header and implementation files with the
107
+ # given basename from the given interface xml file and add it to
108
+ # the list of sources.
109
+ # To disable generating a namespace header, set the source file property
110
+ # NO_NAMESPACE to TRUE on the interface file.
111
+ # To include a header in the interface header, set the source file property
112
+ # INCLUDE to the name of the header.
113
+ # To specify a class name to use, set the source file property CLASSNAME
114
+ # to the name of the class.
115
+ #
116
+ # macro QT4_ADD_DBUS_INTERFACES(outfiles inputfile ... )
117
+ # create the interface header and implementation files
118
+ # for all listed interface xml files
119
+ # the name will be automatically determined from the name of the xml file
120
+ # To disable generating namespace headers, set the source file property
121
+ # NO_NAMESPACE to TRUE for these inputfiles.
122
+ # To include a header in the interface header, set the source file property
123
+ # INCLUDE to the name of the header.
124
+ # To specify a class name to use, set the source file property CLASSNAME
125
+ # to the name of the class.
126
+ #
127
+ # macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname [basename] [classname])
128
+ # create a dbus adaptor (header and implementation file) from the xml file
129
+ # describing the interface, and add it to the list of sources. The adaptor
130
+ # forwards the calls to a parent class, defined in parentheader and named
131
+ # parentclassname. The name of the generated files will be
132
+ # <basename>adaptor.{cpp,h} where basename defaults to the basename of the xml file.
133
+ # If <classname> is provided, then it will be used as the classname of the
134
+ # adaptor itself.
135
+ #
136
+ # macro QT4_GENERATE_DBUS_INTERFACE( header [interfacename] OPTIONS ...)
137
+ # generate the xml interface file from the given header.
138
+ # If the optional argument interfacename is omitted, the name of the
139
+ # interface file is constructed from the basename of the header with
140
+ # the suffix .xml appended.
141
+ # Options may be given to qdbuscpp2xml, such as those found when executing "qdbuscpp2xml --help"
142
+ #
143
+ # macro QT4_CREATE_TRANSLATION( qm_files directories ... sources ...
144
+ # ts_files ... OPTIONS ...)
145
+ # out: qm_files
146
+ # in: directories sources ts_files
147
+ # options: flags to pass to lupdate, such as -extensions to specify
148
+ # extensions for a directory scan.
149
+ # generates commands to create .ts (vie lupdate) and .qm
150
+ # (via lrelease) - files from directories and/or sources. The ts files are
151
+ # created and/or updated in the source tree (unless given with full paths).
152
+ # The qm files are generated in the build tree.
153
+ # Updating the translations can be done by adding the qm_files
154
+ # to the source list of your library/executable, so they are
155
+ # always updated, or by adding a custom target to control when
156
+ # they get updated/generated.
157
+ #
158
+ # macro QT4_ADD_TRANSLATION( qm_files ts_files ... )
159
+ # out: qm_files
160
+ # in: ts_files
161
+ # generates commands to create .qm from .ts - files. The generated
162
+ # filenames can be found in qm_files. The ts_files
163
+ # must exists and are not updated in any way.
164
+ #
165
+ #
166
+ # Below is a detailed list of variables that FindQt4.cmake sets.
167
+ # QT_FOUND If false, don't try to use Qt.
168
+ # QT4_FOUND If false, don't try to use Qt 4.
169
+ #
170
+ # QT_VERSION_MAJOR The major version of Qt found.
171
+ # QT_VERSION_MINOR The minor version of Qt found.
172
+ # QT_VERSION_PATCH The patch version of Qt found.
173
+ #
174
+ # QT_EDITION Set to the edition of Qt (i.e. DesktopLight)
175
+ # QT_EDITION_DESKTOPLIGHT True if QT_EDITION == DesktopLight
176
+ # QT_QTCORE_FOUND True if QtCore was found.
177
+ # QT_QTGUI_FOUND True if QtGui was found.
178
+ # QT_QT3SUPPORT_FOUND True if Qt3Support was found.
179
+ # QT_QTASSISTANT_FOUND True if QtAssistant was found.
180
+ # QT_QTASSISTANTCLIENT_FOUND True if QtAssistantClient was found.
181
+ # QT_QAXCONTAINER_FOUND True if QAxContainer was found (Windows only).
182
+ # QT_QAXSERVER_FOUND True if QAxServer was found (Windows only).
183
+ # QT_QTDBUS_FOUND True if QtDBus was found.
184
+ # QT_QTDESIGNER_FOUND True if QtDesigner was found.
185
+ # QT_QTDESIGNERCOMPONENTS True if QtDesignerComponents was found.
186
+ # QT_QTHELP_FOUND True if QtHelp was found.
187
+ # QT_QTMOTIF_FOUND True if QtMotif was found.
188
+ # QT_QTMULTIMEDIA_FOUND True if QtMultimedia was found (since Qt 4.6.0).
189
+ # QT_QTNETWORK_FOUND True if QtNetwork was found.
190
+ # QT_QTNSPLUGIN_FOUND True if QtNsPlugin was found.
191
+ # QT_QTOPENGL_FOUND True if QtOpenGL was found.
192
+ # QT_QTSQL_FOUND True if QtSql was found.
193
+ # QT_QTSVG_FOUND True if QtSvg was found.
194
+ # QT_QTSCRIPT_FOUND True if QtScript was found.
195
+ # QT_QTSCRIPTTOOLS_FOUND True if QtScriptTools was found.
196
+ # QT_QTTEST_FOUND True if QtTest was found.
197
+ # QT_QTUITOOLS_FOUND True if QtUiTools was found.
198
+ # QT_QTWEBKIT_FOUND True if QtWebKit was found.
199
+ # QT_QTXML_FOUND True if QtXml was found.
200
+ # QT_QTXMLPATTERNS_FOUND True if QtXmlPatterns was found.
201
+ # QT_PHONON_FOUND True if phonon was found.
202
+ # QT_QTDECLARATIVE_FOUND True if QtDeclarative was found.
203
+ #
204
+ # QT_MAC_USE_COCOA For Mac OS X, its whether Cocoa or Carbon is used.
205
+ # In general, this should not be used, but its useful
206
+ # when having platform specific code.
207
+ #
208
+ # QT_DEFINITIONS Definitions to use when compiling code that uses Qt.
209
+ # You do not need to use this if you include QT_USE_FILE.
210
+ # The QT_USE_FILE will also define QT_DEBUG and QT_NO_DEBUG
211
+ # to fit your current build type. Those are not contained
212
+ # in QT_DEFINITIONS.
213
+ #
214
+ # QT_INCLUDES List of paths to all include directories of
215
+ # Qt4 QT_INCLUDE_DIR and QT_QTCORE_INCLUDE_DIR are
216
+ # always in this variable even if NOTFOUND,
217
+ # all other INCLUDE_DIRS are
218
+ # only added if they are found.
219
+ # You do not need to use this if you include QT_USE_FILE.
220
+ #
221
+ #
222
+ # Include directories for the Qt modules are listed here.
223
+ # You do not need to use these variables if you include QT_USE_FILE.
224
+ #
225
+ # QT_INCLUDE_DIR Path to "include" of Qt4
226
+ # QT_QT_INCLUDE_DIR Path to "include/Qt"
227
+ # QT_QT3SUPPORT_INCLUDE_DIR Path to "include/Qt3Support"
228
+ # QT_QTASSISTANT_INCLUDE_DIR Path to "include/QtAssistant"
229
+ # QT_QTASSISTANTCLIENT_INCLUDE_DIR Path to "include/QtAssistant"
230
+ # QT_QAXCONTAINER_INCLUDE_DIR Path to "include/ActiveQt" (Windows only)
231
+ # QT_QAXSERVER_INCLUDE_DIR Path to "include/ActiveQt" (Windows only)
232
+ # QT_QTCORE_INCLUDE_DIR Path to "include/QtCore"
233
+ # QT_QTDBUS_INCLUDE_DIR Path to "include/QtDBus"
234
+ # QT_QTDESIGNER_INCLUDE_DIR Path to "include/QtDesigner"
235
+ # QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR Path to "include/QtDesigner"
236
+ # QT_QTGUI_INCLUDE_DIR Path to "include/QtGui"
237
+ # QT_QTHELP_INCLUDE_DIR Path to "include/QtHelp"
238
+ # QT_QTMOTIF_INCLUDE_DIR Path to "include/QtMotif"
239
+ # QT_QTMULTIMEDIA_INCLUDE_DIR Path to "include/QtMultimedia"
240
+ # QT_QTNETWORK_INCLUDE_DIR Path to "include/QtNetwork"
241
+ # QT_QTNSPLUGIN_INCLUDE_DIR Path to "include/QtNsPlugin"
242
+ # QT_QTOPENGL_INCLUDE_DIR Path to "include/QtOpenGL"
243
+ # QT_QTSCRIPT_INCLUDE_DIR Path to "include/QtScript"
244
+ # QT_QTSQL_INCLUDE_DIR Path to "include/QtSql"
245
+ # QT_QTSVG_INCLUDE_DIR Path to "include/QtSvg"
246
+ # QT_QTTEST_INCLUDE_DIR Path to "include/QtTest"
247
+ # QT_QTWEBKIT_INCLUDE_DIR Path to "include/QtWebKit"
248
+ # QT_QTXML_INCLUDE_DIR Path to "include/QtXml"
249
+ # QT_QTXMLPATTERNS_INCLUDE_DIR Path to "include/QtXmlPatterns"
250
+ # QT_PHONON_INCLUDE_DIR Path to "include/phonon"
251
+ # QT_QTSCRIPTTOOLS_INCLUDE_DIR Path to "include/QtScriptTools"
252
+ # QT_QTDECLARATIVE_INCLUDE_DIR Path to "include/QtDeclarative"
253
+ #
254
+ # QT_BINARY_DIR Path to "bin" of Qt4
255
+ # QT_LIBRARY_DIR Path to "lib" of Qt4
256
+ # QT_PLUGINS_DIR Path to "plugins" for Qt4
257
+ # QT_TRANSLATIONS_DIR Path to "translations" of Qt4
258
+ # QT_DOC_DIR Path to "doc" of Qt4
259
+ # QT_MKSPECS_DIR Path to "mkspecs" of Qt4
260
+ #
261
+ #
262
+ # For every library of Qt, a QT_QTFOO_LIBRARY variable is defined, with the full path to the library.
263
+ #
264
+ # So there are the following variables:
265
+ # The Qt3Support library: QT_QT3SUPPORT_LIBRARY
266
+ #
267
+ # The QtAssistant library: QT_QTASSISTANT_LIBRARY
268
+ #
269
+ # The QtAssistantClient library: QT_QTASSISTANTCLIENT_LIBRARY
270
+ #
271
+ # The QAxServer library: QT_QAXSERVER_LIBRARY
272
+ #
273
+ # The QAxContainer library: QT_QAXCONTAINER_LIBRARY
274
+ #
275
+ # The QtCore library: QT_QTCORE_LIBRARY
276
+ #
277
+ # The QtDBus library: QT_QTDBUS_LIBRARY
278
+ #
279
+ # The QtDesigner library: QT_QTDESIGNER_LIBRARY
280
+ #
281
+ # The QtDesignerComponents library: QT_QTDESIGNERCOMPONENTS_LIBRARY
282
+ #
283
+ # The QtGui library: QT_QTGUI_LIBRARY
284
+ #
285
+ # The QtHelp library: QT_QTHELP_LIBRARY
286
+ #
287
+ # The QtMotif library: QT_QTMOTIF_LIBRARY
288
+ #
289
+ # The QtMultimedia library: QT_QTMULTIMEDIA_LIBRARY
290
+ #
291
+ # The QtNetwork library: QT_QTNETWORK_LIBRARY
292
+ #
293
+ # The QtNsPLugin library: QT_QTNSPLUGIN_LIBRARY
294
+ #
295
+ # The QtOpenGL library: QT_QTOPENGL_LIBRARY
296
+ #
297
+ # The QtScript library: QT_QTSCRIPT_LIBRARY
298
+ #
299
+ # The QtScriptTools library: QT_QTSCRIPTTOOLS_LIBRARY
300
+ #
301
+ # The QtSql library: QT_QTSQL_LIBRARY
302
+ #
303
+ # The QtSvg library: QT_QTSVG_LIBRARY
304
+ #
305
+ # The QtTest library: QT_QTTEST_LIBRARY
306
+ #
307
+ # The QtUiTools library: QT_QTUITOOLS_LIBRARY
308
+ #
309
+ # The QtWebKit library: QT_QTWEBKIT_LIBRARY
310
+ #
311
+ # The QtXml library: QT_QTXML_LIBRARY
312
+ #
313
+ # The QtXmlPatterns library: QT_QTXMLPATTERNS_LIBRARY
314
+ #
315
+ # The qtmain library for Windows QT_QTMAIN_LIBRARY
316
+ #
317
+ # The Phonon library: QT_PHONON_LIBRARY
318
+ #
319
+ # The QtDeclarative library: QT_QTDECLARATIVE_LIBRARY
320
+ #
321
+ # also defined, but NOT for general use are
322
+ # QT_MOC_EXECUTABLE Where to find the moc tool.
323
+ # QT_UIC_EXECUTABLE Where to find the uic tool.
324
+ # QT_UIC3_EXECUTABLE Where to find the uic3 tool.
325
+ # QT_RCC_EXECUTABLE Where to find the rcc tool
326
+ # QT_DBUSCPP2XML_EXECUTABLE Where to find the qdbuscpp2xml tool.
327
+ # QT_DBUSXML2CPP_EXECUTABLE Where to find the qdbusxml2cpp tool.
328
+ # QT_LUPDATE_EXECUTABLE Where to find the lupdate tool.
329
+ # QT_LRELEASE_EXECUTABLE Where to find the lrelease tool.
330
+ # QT_QCOLLECTIONGENERATOR_EXECUTABLE Where to find the qcollectiongenerator tool.
331
+ # QT_DESIGNER_EXECUTABLE Where to find the Qt designer tool.
332
+ # QT_LINGUIST_EXECUTABLE Where to find the Qt linguist tool.
333
+ #
334
+ #
335
+ # These are around for backwards compatibility
336
+ # they will be set
337
+ # QT_WRAP_CPP Set true if QT_MOC_EXECUTABLE is found
338
+ # QT_WRAP_UI Set true if QT_UIC_EXECUTABLE is found
339
+ #
340
+ # These variables do _NOT_ have any effect anymore (compared to FindQt.cmake)
341
+ # QT_MT_REQUIRED Qt4 is now always multithreaded
342
+ #
343
+ # These variables are set to "" Because Qt structure changed
344
+ # (They make no sense in Qt4)
345
+ # QT_QT_LIBRARY Qt-Library is now split
346
+
347
+ # Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
348
+ # See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
349
+
350
+ # Use FIND_PACKAGE( Qt4 COMPONENTS ... ) to enable modules
351
+ IF( Qt4_FIND_COMPONENTS )
352
+ FOREACH( component ${Qt4_FIND_COMPONENTS} )
353
+ STRING( TOUPPER ${component} _COMPONENT )
354
+ SET( QT_USE_${_COMPONENT} 1 )
355
+ ENDFOREACH( component )
356
+
357
+ # To make sure we don't use QtCore or QtGui when not in COMPONENTS
358
+ IF(NOT QT_USE_QTCORE)
359
+ SET( QT_DONT_USE_QTCORE 1 )
360
+ ENDIF(NOT QT_USE_QTCORE)
361
+
362
+ IF(NOT QT_USE_QTGUI)
363
+ SET( QT_DONT_USE_QTGUI 1 )
364
+ ENDIF(NOT QT_USE_QTGUI)
365
+
366
+ ENDIF( Qt4_FIND_COMPONENTS )
367
+
368
+ # If Qt3 has already been found, fail.
369
+ IF(QT_QT_LIBRARY)
370
+ IF(Qt4_FIND_REQUIRED)
371
+ MESSAGE( FATAL_ERROR "Qt3 and Qt4 cannot be used together in one project. If switching to Qt4, the CMakeCache.txt needs to be cleaned.")
372
+ ELSE(Qt4_FIND_REQUIRED)
373
+ IF(NOT Qt4_FIND_QUIETLY)
374
+ MESSAGE( STATUS "Qt3 and Qt4 cannot be used together in one project. If switching to Qt4, the CMakeCache.txt needs to be cleaned.")
375
+ ENDIF(NOT Qt4_FIND_QUIETLY)
376
+ RETURN()
377
+ ENDIF(Qt4_FIND_REQUIRED)
378
+ ENDIF(QT_QT_LIBRARY)
379
+
380
+
381
+ IF (QT4_QMAKE_FOUND AND Qt4::QtCore)
382
+ # Check already done in this cmake run, nothing more to do
383
+ RETURN()
384
+ ENDIF (QT4_QMAKE_FOUND AND Qt4::QtCore)
385
+
386
+ # check that QT_NO_DEBUG is defined for release configurations
387
+ MACRO(QT_CHECK_FLAG_EXISTS FLAG VAR DOC)
388
+ IF(NOT ${VAR} MATCHES "${FLAG}")
389
+ SET(${VAR} "${${VAR}} ${FLAG}"
390
+ CACHE STRING "Flags used by the compiler during ${DOC} builds." FORCE)
391
+ ENDIF(NOT ${VAR} MATCHES "${FLAG}")
392
+ ENDMACRO(QT_CHECK_FLAG_EXISTS FLAG VAR)
393
+
394
+ QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_RELWITHDEBINFO "Release with Debug Info")
395
+ QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_RELEASE "release")
396
+ QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_MINSIZEREL "release minsize")
397
+
398
+ INCLUDE(MacroPushRequiredVars)
399
+ INCLUDE(CheckSymbolExists)
400
+ INCLUDE(MacroAddFileDependencies)
401
+
402
+ SET(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake)
403
+
404
+ SET( QT_DEFINITIONS "")
405
+
406
+ SET(QT4_INSTALLED_VERSION_TOO_OLD FALSE)
407
+
408
+ # macro for asking qmake to process pro files
409
+ MACRO(QT_QUERY_QMAKE outvar invar)
410
+ IF(QT_QMAKE_EXECUTABLE)
411
+ FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake/tmp.pro
412
+ "message(CMAKE_MESSAGE<$$${invar}>)")
413
+
414
+ # Invoke qmake with the tmp.pro program to get the desired
415
+ # information. Use the same variable for both stdout and stderr
416
+ # to make sure we get the output on all platforms.
417
+ EXECUTE_PROCESS(COMMAND ${QT_QMAKE_EXECUTABLE}
418
+ WORKING_DIRECTORY
419
+ ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake
420
+ OUTPUT_VARIABLE _qmake_query_output
421
+ RESULT_VARIABLE _qmake_result
422
+ ERROR_VARIABLE _qmake_query_output )
423
+
424
+ FILE(REMOVE_RECURSE
425
+ "${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake")
426
+
427
+ IF(_qmake_result)
428
+ MESSAGE(WARNING " querying qmake for ${invar}. qmake reported:\n${_qmake_query_output}")
429
+ ELSE(_qmake_result)
430
+ STRING(REGEX REPLACE ".*CMAKE_MESSAGE<([^>]*).*" "\\1" ${outvar} "${_qmake_query_output}")
431
+ ENDIF(_qmake_result)
432
+
433
+ ENDIF(QT_QMAKE_EXECUTABLE)
434
+ ENDMACRO(QT_QUERY_QMAKE)
435
+
436
+ GET_FILENAME_COMPONENT(qt_install_version "[HKEY_CURRENT_USER\\Software\\trolltech\\Versions;DefaultQtVersion]" NAME)
437
+ # check for qmake
438
+ # Debian uses qmake-qt4
439
+ # macports' Qt uses qmake-mac
440
+ FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 qmake-mac PATHS
441
+ "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin"
442
+ "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin"
443
+ "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\${qt_install_version};InstallDir]/bin"
444
+ $ENV{QTDIR}/bin
445
+ DOC "The qmake executable for the Qt installation to use"
446
+ )
447
+
448
+ IF (QT_QMAKE_EXECUTABLE)
449
+
450
+ IF(QT_QMAKE_EXECUTABLE_LAST)
451
+ STRING(COMPARE NOTEQUAL "${QT_QMAKE_EXECUTABLE_LAST}" "${QT_QMAKE_EXECUTABLE}" QT_QMAKE_CHANGED)
452
+ ENDIF(QT_QMAKE_EXECUTABLE_LAST)
453
+
454
+ SET(QT_QMAKE_EXECUTABLE_LAST "${QT_QMAKE_EXECUTABLE}" CACHE INTERNAL "" FORCE)
455
+
456
+ SET(QT4_QMAKE_FOUND FALSE)
457
+
458
+ EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION)
459
+
460
+ # check for qt3 qmake and then try and find qmake4 or qmake-qt4 in the path
461
+ IF("${QTVERSION}" MATCHES "Unknown")
462
+ SET(QT_QMAKE_EXECUTABLE NOTFOUND CACHE FILEPATH "" FORCE)
463
+ FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake4 qmake-qt4 PATHS
464
+ "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin"
465
+ "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin"
466
+ $ENV{QTDIR}/bin
467
+ DOC "The qmake executable for the Qt installation to use"
468
+ )
469
+ IF(QT_QMAKE_EXECUTABLE)
470
+ EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE}
471
+ ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION)
472
+ ENDIF(QT_QMAKE_EXECUTABLE)
473
+ ENDIF("${QTVERSION}" MATCHES "Unknown")
474
+
475
+ # check that we found the Qt4 qmake, Qt3 qmake output won't match here
476
+ STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" qt_version_tmp "${QTVERSION}")
477
+ IF (qt_version_tmp)
478
+
479
+ # we need at least version 4.0.0
480
+ IF (NOT QT_MIN_VERSION)
481
+ SET(QT_MIN_VERSION "4.0.0")
482
+ ENDIF (NOT QT_MIN_VERSION)
483
+
484
+ #now parse the parts of the user given version string into variables
485
+ STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" req_qt_major_vers "${QT_MIN_VERSION}")
486
+ IF (NOT req_qt_major_vers)
487
+ MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", expected e.g. \"4.0.1\"")
488
+ ENDIF (NOT req_qt_major_vers)
489
+
490
+ # now parse the parts of the user given version string into variables
491
+ STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_qt_major_vers "${QT_MIN_VERSION}")
492
+ STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_qt_minor_vers "${QT_MIN_VERSION}")
493
+ STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_qt_patch_vers "${QT_MIN_VERSION}")
494
+
495
+ # Suppport finding at least a particular version, for instance FIND_PACKAGE( Qt4 4.4.3 )
496
+ # This implementation is a hack to avoid duplicating code and make sure we stay
497
+ # source-compatible with CMake 2.6.x
498
+ IF( Qt4_FIND_VERSION )
499
+ SET( QT_MIN_VERSION ${Qt4_FIND_VERSION} )
500
+ SET( req_qt_major_vers ${Qt4_FIND_VERSION_MAJOR} )
501
+ SET( req_qt_minor_vers ${Qt4_FIND_VERSION_MINOR} )
502
+ SET( req_qt_patch_vers ${Qt4_FIND_VERSION_PATCH} )
503
+ ENDIF( Qt4_FIND_VERSION )
504
+
505
+ IF (NOT req_qt_major_vers EQUAL 4)
506
+ MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT_MIN_VERSION}\", major version 4 is required, e.g. \"4.0.1\"")
507
+ ENDIF (NOT req_qt_major_vers EQUAL 4)
508
+
509
+ # and now the version string given by qmake
510
+ STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" QT_VERSION_MAJOR "${QTVERSION}")
511
+ STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+.*" "\\1" QT_VERSION_MINOR "${QTVERSION}")
512
+ STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" QT_VERSION_PATCH "${QTVERSION}")
513
+
514
+ # compute an overall version number which can be compared at once
515
+ MATH(EXPR req_vers "${req_qt_major_vers}*10000 + ${req_qt_minor_vers}*100 + ${req_qt_patch_vers}")
516
+ MATH(EXPR found_vers "${QT_VERSION_MAJOR}*10000 + ${QT_VERSION_MINOR}*100 + ${QT_VERSION_PATCH}")
517
+
518
+ # Support finding *exactly* a particular version, for instance FIND_PACKAGE( Qt4 4.4.3 EXACT )
519
+ IF( Qt4_FIND_VERSION_EXACT )
520
+ IF(found_vers EQUAL req_vers)
521
+ SET( QT4_QMAKE_FOUND TRUE )
522
+ ELSE(found_vers EQUAL req_vers)
523
+ SET( QT4_QMAKE_FOUND FALSE )
524
+ IF (found_vers LESS req_vers)
525
+ SET(QT4_INSTALLED_VERSION_TOO_OLD TRUE)
526
+ ELSE (found_vers LESS req_vers)
527
+ SET(QT4_INSTALLED_VERSION_TOO_NEW TRUE)
528
+ ENDIF (found_vers LESS req_vers)
529
+ ENDIF(found_vers EQUAL req_vers)
530
+ ELSE( Qt4_FIND_VERSION_EXACT )
531
+ IF (found_vers LESS req_vers)
532
+ SET(QT4_QMAKE_FOUND FALSE)
533
+ SET(QT4_INSTALLED_VERSION_TOO_OLD TRUE)
534
+ ELSE (found_vers LESS req_vers)
535
+ SET(QT4_QMAKE_FOUND TRUE)
536
+ ENDIF (found_vers LESS req_vers)
537
+ ENDIF( Qt4_FIND_VERSION_EXACT )
538
+ ENDIF (qt_version_tmp)
539
+
540
+ ENDIF (QT_QMAKE_EXECUTABLE)
541
+
542
+ IF (QT4_QMAKE_FOUND)
543
+
544
+ if (WIN32)
545
+ # get qt install dir
546
+ get_filename_component(_DIR ${QT_QMAKE_EXECUTABLE} PATH )
547
+ get_filename_component(QT_INSTALL_DIR ${_DIR} PATH )
548
+ endif (WIN32)
549
+
550
+ # ask qmake for the library dir
551
+ # Set QT_LIBRARY_DIR
552
+ IF (NOT QT_LIBRARY_DIR OR QT_QMAKE_CHANGED)
553
+ EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE}
554
+ ARGS "-query QT_INSTALL_LIBS"
555
+ OUTPUT_VARIABLE QT_LIBRARY_DIR_TMP )
556
+ # make sure we have / and not \ as qmake gives on windows
557
+ FILE(TO_CMAKE_PATH "${QT_LIBRARY_DIR_TMP}" QT_LIBRARY_DIR_TMP)
558
+ IF(EXISTS "${QT_LIBRARY_DIR_TMP}")
559
+ SET(QT_LIBRARY_DIR ${QT_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir" FORCE)
560
+ ELSE(EXISTS "${QT_LIBRARY_DIR_TMP}")
561
+ MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT_LIBRARY_DIR_TMP}")
562
+ MESSAGE("Warning: ${QT_LIBRARY_DIR_TMP} does NOT exist, Qt must NOT be installed correctly.")
563
+ ENDIF(EXISTS "${QT_LIBRARY_DIR_TMP}")
564
+ ENDIF(NOT QT_LIBRARY_DIR OR QT_QMAKE_CHANGED)
565
+
566
+ IF (APPLE)
567
+ IF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework)
568
+ SET(QT_USE_FRAMEWORKS ON
569
+ CACHE BOOL "Set to ON if Qt build uses frameworks." FORCE)
570
+ ELSE (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework)
571
+ SET(QT_USE_FRAMEWORKS OFF
572
+ CACHE BOOL "Set to ON if Qt build uses frameworks." FORCE)
573
+ ENDIF (EXISTS ${QT_LIBRARY_DIR}/QtCore.framework)
574
+
575
+ MARK_AS_ADVANCED(QT_USE_FRAMEWORKS)
576
+ ENDIF (APPLE)
577
+
578
+ # ask qmake for the binary dir
579
+ IF (QT_LIBRARY_DIR AND NOT QT_BINARY_DIR OR QT_QMAKE_CHANGED)
580
+ EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE}
581
+ ARGS "-query QT_INSTALL_BINS"
582
+ OUTPUT_VARIABLE qt_bins )
583
+ # make sure we have / and not \ as qmake gives on windows
584
+ FILE(TO_CMAKE_PATH "${qt_bins}" qt_bins)
585
+ SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "" FORCE)
586
+ ENDIF (QT_LIBRARY_DIR AND NOT QT_BINARY_DIR OR QT_QMAKE_CHANGED)
587
+
588
+ # ask qmake for the include dir
589
+ IF (QT_LIBRARY_DIR AND NOT QT_HEADERS_DIR OR QT_QMAKE_CHANGED)
590
+ EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE}
591
+ ARGS "-query QT_INSTALL_HEADERS"
592
+ OUTPUT_VARIABLE qt_headers )
593
+ # make sure we have / and not \ as qmake gives on windows
594
+ FILE(TO_CMAKE_PATH "${qt_headers}" qt_headers)
595
+ SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "" FORCE)
596
+ ENDIF (QT_LIBRARY_DIR AND NOT QT_HEADERS_DIR OR QT_QMAKE_CHANGED)
597
+
598
+
599
+ # ask qmake for the documentation directory
600
+ IF (QT_LIBRARY_DIR AND NOT QT_DOC_DIR OR QT_QMAKE_CHANGED)
601
+ EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE}
602
+ ARGS "-query QT_INSTALL_DOCS"
603
+ OUTPUT_VARIABLE qt_doc_dir )
604
+ # make sure we have / and not \ as qmake gives on windows
605
+ FILE(TO_CMAKE_PATH "${qt_doc_dir}" qt_doc_dir)
606
+ SET(QT_DOC_DIR ${qt_doc_dir} CACHE PATH "The location of the Qt docs" FORCE)
607
+ ENDIF (QT_LIBRARY_DIR AND NOT QT_DOC_DIR OR QT_QMAKE_CHANGED)
608
+
609
+ # ask qmake for the mkspecs directory
610
+ IF (QT_LIBRARY_DIR AND NOT QT_MKSPECS_DIR OR QT_QMAKE_CHANGED)
611
+ EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE}
612
+ ARGS "-query QMAKE_MKSPECS"
613
+ OUTPUT_VARIABLE qt_mkspecs_dirs )
614
+ # do not replace : on windows as it might be a drive letter
615
+ # and windows should already use ; as a separator
616
+ IF(UNIX)
617
+ STRING(REPLACE ":" ";" qt_mkspecs_dirs "${qt_mkspecs_dirs}")
618
+ ENDIF(UNIX)
619
+ SET(QT_MKSPECS_DIR NOTFOUND)
620
+ FIND_PATH(QT_MKSPECS_DIR qconfig.pri PATHS ${qt_mkspecs_dirs}
621
+ DOC "The location of the Qt mkspecs containing qconfig.pri"
622
+ NO_DEFAULT_PATH )
623
+ ENDIF (QT_LIBRARY_DIR AND NOT QT_MKSPECS_DIR OR QT_QMAKE_CHANGED)
624
+
625
+ # ask qmake for the plugins directory
626
+ IF (QT_LIBRARY_DIR AND NOT QT_PLUGINS_DIR OR QT_QMAKE_CHANGED)
627
+ EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE}
628
+ ARGS "-query QT_INSTALL_PLUGINS"
629
+ OUTPUT_VARIABLE qt_plugins_dir )
630
+ # make sure we have / and not \ as qmake gives on windows
631
+ FILE(TO_CMAKE_PATH "${qt_plugins_dir}" qt_plugins_dir)
632
+ SET(QT_PLUGINS_DIR ${qt_plugins_dir} CACHE PATH "The location of the Qt plugins" FORCE)
633
+ ENDIF (QT_LIBRARY_DIR AND NOT QT_PLUGINS_DIR OR QT_QMAKE_CHANGED)
634
+
635
+ # ask qmake for the translations directory
636
+ IF (QT_LIBRARY_DIR AND NOT QT_TRANSLATIONS_DIR OR QT_QMAKE_CHANGED)
637
+ EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE}
638
+ ARGS "-query QT_INSTALL_TRANSLATIONS"
639
+ OUTPUT_VARIABLE qt_translations_dir )
640
+ # make sure we have / and not \ as qmake gives on windows
641
+ FILE(TO_CMAKE_PATH "${qt_translations_dir}" qt_translations_dir)
642
+ SET(QT_TRANSLATIONS_DIR ${qt_translations_dir} CACHE PATH "The location of the Qt translations" FORCE)
643
+ ENDIF (QT_LIBRARY_DIR AND NOT QT_TRANSLATIONS_DIR OR QT_QMAKE_CHANGED)
644
+
645
+ # Make variables changeble to the advanced user
646
+ MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_DOC_DIR QT_MKSPECS_DIR
647
+ QT_PLUGINS_DIR QT_TRANSLATIONS_DIR)
648
+
649
+
650
+ #############################################
651
+ #
652
+ # Find out what window system we're using
653
+ #
654
+ #############################################
655
+ # Save required includes and required_flags variables
656
+ MACRO_PUSH_REQUIRED_VARS()
657
+ # Add QT_INCLUDE_DIR to CMAKE_REQUIRED_INCLUDES
658
+ SET(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};${QT_HEADERS_DIR}")
659
+ # On Mac OS X when Qt has framework support, also add the framework path
660
+ IF( QT_USE_FRAMEWORKS )
661
+ SET(CMAKE_REQUIRED_FLAGS "-F${QT_LIBRARY_DIR} ")
662
+ ENDIF( QT_USE_FRAMEWORKS )
663
+ # Check for Window system symbols (note: only one should end up being set)
664
+ CHECK_SYMBOL_EXISTS(Q_WS_X11 "QtCore/qglobal.h" Q_WS_X11)
665
+ CHECK_SYMBOL_EXISTS(Q_WS_WIN "QtCore/qglobal.h" Q_WS_WIN)
666
+ CHECK_SYMBOL_EXISTS(Q_WS_QWS "QtCore/qglobal.h" Q_WS_QWS)
667
+ CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC)
668
+ IF(Q_WS_MAC)
669
+ IF(QT_QMAKE_CHANGED)
670
+ UNSET(QT_MAC_USE_COCOA CACHE)
671
+ ENDIF(QT_QMAKE_CHANGED)
672
+ CHECK_SYMBOL_EXISTS(QT_MAC_USE_COCOA "QtCore/qconfig.h" QT_MAC_USE_COCOA)
673
+ ENDIF(Q_WS_MAC)
674
+
675
+ IF (QT_QTCOPY_REQUIRED)
676
+ CHECK_SYMBOL_EXISTS(QT_IS_QTCOPY "QtCore/qglobal.h" QT_KDE_QT_COPY)
677
+ IF (NOT QT_IS_QTCOPY)
678
+ MESSAGE(FATAL_ERROR "qt-copy is required, but hasn't been found")
679
+ ENDIF (NOT QT_IS_QTCOPY)
680
+ ENDIF (QT_QTCOPY_REQUIRED)
681
+
682
+ # Restore CMAKE_REQUIRED_INCLUDES+CMAKE_REQUIRED_FLAGS variables
683
+ MACRO_POP_REQUIRED_VARS()
684
+ #
685
+ #############################################
686
+
687
+
688
+
689
+ ########################################
690
+ #
691
+ # Setting the INCLUDE-Variables
692
+ #
693
+ ########################################
694
+
695
+ SET(QT_MODULES QtCore QtGui Qt3Support QtSvg QtScript QtTest QtUiTools
696
+ QtHelp QtWebKit QtXmlPatterns QtNetwork QtMultimedia
697
+ QtNsPlugin QtOpenGL QtSql QtXml QtDesigner QtDBus QtScriptTools
698
+ QtDeclarative)
699
+
700
+ IF(Q_WS_X11)
701
+ SET(QT_MODULES ${QT_MODULES} QtMotif)
702
+ ENDIF(Q_WS_X11)
703
+
704
+ IF(QT_QMAKE_CHANGED)
705
+ FOREACH(QT_MODULE ${QT_MODULES})
706
+ STRING(TOUPPER ${QT_MODULE} _upper_qt_module)
707
+ SET(QT_${_upper_qt_module}_INCLUDE_DIR NOTFOUND)
708
+ SET(QT_${_upper_qt_module}_LIBRARY_RELEASE NOTFOUND)
709
+ SET(QT_${_upper_qt_module}_LIBRARY_DEBUG NOTFOUND)
710
+ ENDFOREACH(QT_MODULE)
711
+ SET(QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR NOTFOUND)
712
+ SET(QT_QTDESIGNERCOMPONENTS_LIBRARY_RELEASE NOTFOUND)
713
+ SET(QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NOTFOUND)
714
+ SET(QT_QTASSISTANTCLIENT_INCLUDE_DIR NOTFOUND)
715
+ SET(QT_QTASSISTANTCLIENT_LIBRARY_RELEASE NOTFOUND)
716
+ SET(QT_QTASSISTANTCLIENT_LIBRARY_DEBUG NOTFOUND)
717
+ SET(QT_QTASSISTANT_INCLUDE_DIR NOTFOUND)
718
+ SET(QT_QTASSISTANT_LIBRARY_RELEASE NOTFOUND)
719
+ SET(QT_QTASSISTANT_LIBRARY_DEBUG NOTFOUND)
720
+ SET(QT_QTCLUCENE_LIBRARY_RELEASE NOTFOUND)
721
+ SET(QT_QTCLUCENE_LIBRARY_DEBUG NOTFOUND)
722
+ SET(QT_QAXCONTAINER_INCLUDE_DIR NOTFOUND)
723
+ SET(QT_QAXCONTAINER_LIBRARY_RELEASE NOTFOUND)
724
+ SET(QT_QAXCONTAINER_LIBRARY_DEBUG NOTFOUND)
725
+ SET(QT_QAXSERVER_INCLUDE_DIR NOTFOUND)
726
+ SET(QT_QAXSERVER_LIBRARY_RELEASE NOTFOUND)
727
+ SET(QT_QAXSERVER_LIBRARY_DEBUG NOTFOUND)
728
+ IF(WIN32)
729
+ SET(QT_QTMAIN_LIBRARY_DEBUG NOTFOUND)
730
+ SET(QT_QTMAIN_LIBRARY_RELEASE NOTFOUND)
731
+ ENDIF(WIN32)
732
+ SET(QT_PHONON_INCLUDE_DIR NOTFOUND)
733
+ ENDIF(QT_QMAKE_CHANGED)
734
+
735
+ FOREACH(QT_MODULE ${QT_MODULES})
736
+ STRING(TOUPPER ${QT_MODULE} _upper_qt_module)
737
+ FIND_PATH(QT_${_upper_qt_module}_INCLUDE_DIR ${QT_MODULE}
738
+ PATHS
739
+ ${QT_HEADERS_DIR}/${QT_MODULE}
740
+ ${QT_LIBRARY_DIR}/${QT_MODULE}.framework/Headers
741
+ NO_DEFAULT_PATH
742
+ )
743
+ ENDFOREACH(QT_MODULE)
744
+
745
+ IF(WIN32)
746
+ SET(QT_MODULES ${QT_MODULES} QAxContainer QAxServer)
747
+ # Set QT_AXCONTAINER_INCLUDE_DIR and QT_AXSERVER_INCLUDE_DIR
748
+ FIND_PATH(QT_QAXCONTAINER_INCLUDE_DIR ActiveQt
749
+ PATHS
750
+ ${QT_HEADERS_DIR}/ActiveQt
751
+ NO_DEFAULT_PATH
752
+ )
753
+ FIND_PATH(QT_QAXSERVER_INCLUDE_DIR ActiveQt
754
+ PATHS
755
+ ${QT_HEADERS_DIR}/ActiveQt
756
+ NO_DEFAULT_PATH
757
+ )
758
+ ENDIF(WIN32)
759
+
760
+ # Set QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR
761
+ FIND_PATH(QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR QDesignerComponents
762
+ PATHS
763
+ ${QT_HEADERS_DIR}/QtDesigner
764
+ ${QT_LIBRARY_DIR}/QtDesigner.framework/Headers
765
+ NO_DEFAULT_PATH
766
+ )
767
+
768
+ # Set QT_QTASSISTANT_INCLUDE_DIR
769
+ FIND_PATH(QT_QTASSISTANT_INCLUDE_DIR QtAssistant
770
+ PATHS
771
+ ${QT_HEADERS_DIR}/QtAssistant
772
+ ${QT_LIBRARY_DIR}/QtAssistant.framework/Headers
773
+ NO_DEFAULT_PATH
774
+ )
775
+
776
+ # Set QT_QTASSISTANTCLIENT_INCLUDE_DIR
777
+ FIND_PATH(QT_QTASSISTANTCLIENT_INCLUDE_DIR QAssistantClient
778
+ PATHS
779
+ ${QT_HEADERS_DIR}/QtAssistant
780
+ ${QT_LIBRARY_DIR}/QtAssistant.framework/Headers
781
+ NO_DEFAULT_PATH
782
+ )
783
+
784
+ # Set QT_QT_INCLUDE_DIR
785
+ FIND_PATH(QT_QT_INCLUDE_DIR qglobal.h
786
+ PATHS
787
+ ${QT_HEADERS_DIR}/Qt
788
+ ${QT_HEADERS_DIR}/QtCore
789
+ ${QT_LIBRARY_DIR}/QtCore.framework/Headers
790
+ NO_DEFAULT_PATH
791
+ )
792
+
793
+ # Set QT_PHONON_INCLUDE_DIR
794
+ # Qt >= 4.5.3 (or kde-qt-4.5.2 which has the fix too) : Phonon/ClassName is inside include/phonon
795
+ # With previous versions of Qt, this could not work; upgrade Qt or use a standalone phonon
796
+ FIND_PATH(QT_PHONON_INCLUDE_DIR Phonon
797
+ PATHS
798
+ ${QT_HEADERS_DIR}/phonon
799
+ NO_DEFAULT_PATH
800
+ )
801
+ SET(QT_MODULES ${QT_MODULES} phonon)
802
+
803
+ # Set QT_INCLUDE_DIR by removine "/QtCore" in the string ${QT_QTCORE_INCLUDE_DIR}
804
+ IF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR)
805
+ IF (QT_USE_FRAMEWORKS)
806
+ SET(QT_INCLUDE_DIR ${QT_HEADERS_DIR})
807
+ ELSE (QT_USE_FRAMEWORKS)
808
+ STRING( REGEX REPLACE "/QtCore$" "" qt4_include_dir ${QT_QTCORE_INCLUDE_DIR})
809
+ SET( QT_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "")
810
+ ENDIF (QT_USE_FRAMEWORKS)
811
+ ENDIF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR)
812
+
813
+ IF( NOT QT_INCLUDE_DIR)
814
+ IF(Qt4_FIND_REQUIRED)
815
+ MESSAGE( FATAL_ERROR "Could NOT find QtCore header")
816
+ ENDIF(Qt4_FIND_REQUIRED)
817
+ ENDIF( NOT QT_INCLUDE_DIR)
818
+
819
+ # Make variables changeble to the advanced user
820
+ MARK_AS_ADVANCED( QT_INCLUDE_DIR QT_QT_INCLUDE_DIR)
821
+
822
+ # Set QT_INCLUDES
823
+ SET( QT_INCLUDES ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ${QT_INCLUDE_DIR} )
824
+
825
+
826
+ #######################################
827
+ #
828
+ # Qt configuration
829
+ #
830
+ #######################################
831
+ IF(EXISTS "${QT_MKSPECS_DIR}/qconfig.pri")
832
+ FILE(READ ${QT_MKSPECS_DIR}/qconfig.pri _qconfig_FILE_contents)
833
+ STRING(REGEX MATCH "QT_CONFIG[^\n]+" QT_QCONFIG "${_qconfig_FILE_contents}")
834
+ STRING(REGEX MATCH "CONFIG[^\n]+" QT_CONFIG "${_qconfig_FILE_contents}")
835
+ STRING(REGEX MATCH "EDITION[^\n]+" QT_EDITION "${_qconfig_FILE_contents}")
836
+ STRING(REGEX MATCH "QT_LIBINFIX[^\n]+" _qconfig_qt_libinfix "${_qconfig_FILE_contents}")
837
+ STRING(REGEX REPLACE "QT_LIBINFIX *= *([^\n]*)" "\\1" QT_LIBINFIX "${_qconfig_qt_libinfix}")
838
+ ENDIF(EXISTS "${QT_MKSPECS_DIR}/qconfig.pri")
839
+ IF("${QT_EDITION}" MATCHES "DesktopLight")
840
+ SET(QT_EDITION_DESKTOPLIGHT 1)
841
+ ENDIF("${QT_EDITION}" MATCHES "DesktopLight")
842
+
843
+ ########################################
844
+ #
845
+ # Setting the LIBRARY-Variables
846
+ #
847
+ ########################################
848
+
849
+ # find the libraries
850
+ FOREACH(QT_MODULE ${QT_MODULES})
851
+ STRING(TOUPPER ${QT_MODULE} _upper_qt_module)
852
+ FIND_LIBRARY(QT_${_upper_qt_module}_LIBRARY_RELEASE
853
+ NAMES ${QT_MODULE}${QT_LIBINFIX} ${QT_MODULE}${QT_LIBINFIX}4
854
+ PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH
855
+ )
856
+ FIND_LIBRARY(QT_${_upper_qt_module}_LIBRARY_DEBUG
857
+ NAMES ${QT_MODULE}${QT_LIBINFIX}_debug ${QT_MODULE}${QT_LIBINFIX}d ${QT_MODULE}${QT_LIBINFIX}d4
858
+ PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH
859
+ )
860
+ ENDFOREACH(QT_MODULE)
861
+
862
+ # QtUiTools not with other frameworks with binary installation (in /usr/lib)
863
+ IF(Q_WS_MAC AND QT_QTCORE_LIBRARY_RELEASE AND NOT QT_QTUITOOLS_LIBRARY_RELEASE)
864
+ FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_RELEASE NAMES QtUiTools${QT_LIBINFIX} PATHS ${QT_LIBRARY_DIR})
865
+ ENDIF(Q_WS_MAC AND QT_QTCORE_LIBRARY_RELEASE AND NOT QT_QTUITOOLS_LIBRARY_RELEASE)
866
+
867
+ IF( NOT QT_QTCORE_LIBRARY_DEBUG AND NOT QT_QTCORE_LIBRARY_RELEASE )
868
+
869
+ # try dropping a hint if trying to use Visual Studio with Qt built by mingw
870
+ IF(QT_LIBRARY_DIR AND MSVC)
871
+ IF(EXISTS ${QT_LIBRARY_DIR}/libqtmain.a)
872
+ MESSAGE( FATAL_ERROR "It appears you're trying to use Visual Studio with Qt built by mingw")
873
+ ENDIF(EXISTS ${QT_LIBRARY_DIR}/libqtmain.a)
874
+ ENDIF(QT_LIBRARY_DIR AND MSVC)
875
+
876
+ IF(Qt4_FIND_REQUIRED)
877
+ MESSAGE( FATAL_ERROR "Could NOT find QtCore. Check ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log for more details.")
878
+ ENDIF(Qt4_FIND_REQUIRED)
879
+ ENDIF( NOT QT_QTCORE_LIBRARY_DEBUG AND NOT QT_QTCORE_LIBRARY_RELEASE )
880
+
881
+ # Set QT_QTDESIGNERCOMPONENTS_LIBRARY
882
+ FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_RELEASE NAMES QtDesignerComponents${QT_LIBINFIX} QtDesignerComponents${QT_LIBINFIX}4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)
883
+ FIND_LIBRARY(QT_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NAMES QtDesignerComponents${QT_LIBINFIX}_debug QtDesignerComponents${QT_LIBINFIX}d QtDesignerComponents${QT_LIBINFIX}d4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)
884
+
885
+ # Set QT_QTMAIN_LIBRARY
886
+ IF(WIN32)
887
+ FIND_LIBRARY(QT_QTMAIN_LIBRARY_RELEASE NAMES qtmain${QT_LIBINFIX} PATHS ${QT_LIBRARY_DIR}
888
+ NO_DEFAULT_PATH)
889
+ FIND_LIBRARY(QT_QTMAIN_LIBRARY_DEBUG NAMES qtmain${QT_LIBINFIX}d PATHS ${QT_LIBRARY_DIR}
890
+ NO_DEFAULT_PATH)
891
+ ENDIF(WIN32)
892
+
893
+ # Set QT_QTASSISTANTCLIENT_LIBRARY
894
+ FIND_LIBRARY(QT_QTASSISTANTCLIENT_LIBRARY_RELEASE NAMES QtAssistantClient${QT_LIBINFIX} QtAssistantClient${QT_LIBINFIX}4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)
895
+ FIND_LIBRARY(QT_QTASSISTANTCLIENT_LIBRARY_DEBUG NAMES QtAssistantClient${QT_LIBINFIX}_debug QtAssistantClient${QT_LIBINFIX}d QtAssistantClient${QT_LIBINFIX}d4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)
896
+
897
+ # Set QT_QTASSISTANT_LIBRARY
898
+ FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_RELEASE NAMES QtAssistantClient${QT_LIBINFIX} QtAssistantClient${QT_LIBINFIX}4 QtAssistant${QT_LIBINFIX} QtAssistant${QT_LIBINFIX}4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)
899
+ FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClient${QT_LIBINFIX}_debug QtAssistantClient${QT_LIBINFIX}d QtAssistantClient${QT_LIBINFIX}d4 QtAssistant${QT_LIBINFIX}_debug QtAssistant${QT_LIBINFIX}d4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)
900
+
901
+ # Set QT_QTHELP_LIBRARY
902
+ FIND_LIBRARY(QT_QTCLUCENE_LIBRARY_RELEASE NAMES QtCLucene${QT_LIBINFIX} QtCLucene${QT_LIBINFIX}4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)
903
+ FIND_LIBRARY(QT_QTCLUCENE_LIBRARY_DEBUG NAMES QtCLucene${QT_LIBINFIX}_debug QtCLucene${QT_LIBINFIX}d QtCLucene${QT_LIBINFIX}d4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)
904
+ # QtCLucene not with other frameworks with binary installation (in /usr/lib)
905
+ IF(Q_WS_MAC AND QT_QTCORE_LIBRARY_RELEASE AND NOT QT_QTCLUCENE_LIBRARY_RELEASE)
906
+ FIND_LIBRARY(QT_QTCLUCENE_LIBRARY_RELEASE NAMES QtCLucene${QT_LIBINFIX} PATHS ${QT_LIBRARY_DIR})
907
+ ENDIF(Q_WS_MAC AND QT_QTCORE_LIBRARY_RELEASE AND NOT QT_QTCLUCENE_LIBRARY_RELEASE)
908
+
909
+ ############################################
910
+ #
911
+ # Check the existence of the libraries.
912
+ #
913
+ ############################################
914
+
915
+ # On OSX when Qt is found as framework, never use the imported targets for now, since
916
+ # in this case the handling of the framework directory currently does not work correctly.
917
+ IF(QT_USE_FRAMEWORKS)
918
+ SET(QT_USE_IMPORTED_TARGETS FALSE)
919
+ ENDIF(QT_USE_FRAMEWORKS)
920
+
921
+
922
+ MACRO (_QT4_ADJUST_LIB_VARS _camelCaseBasename)
923
+
924
+ STRING(TOUPPER "${_camelCaseBasename}" basename)
925
+
926
+ # The name of the imported targets, i.e. the prefix "Qt4::" must not change,
927
+ # since it is stored in EXPORT-files as name of a required library. If the name would change
928
+ # here, this would lead to the imported Qt4-library targets not being resolved by cmake anymore.
929
+ IF (QT_${basename}_LIBRARY_RELEASE OR QT_${basename}_LIBRARY_DEBUG)
930
+
931
+ IF(NOT TARGET Qt4::${_camelCaseBasename})
932
+ ADD_LIBRARY(Qt4::${_camelCaseBasename} UNKNOWN IMPORTED )
933
+
934
+ IF (QT_${basename}_LIBRARY_RELEASE)
935
+ SET_PROPERTY(TARGET Qt4::${_camelCaseBasename} APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
936
+ SET_PROPERTY(TARGET Qt4::${_camelCaseBasename} PROPERTY IMPORTED_LOCATION_RELEASE "${QT_${basename}_LIBRARY_RELEASE}" )
937
+ ENDIF (QT_${basename}_LIBRARY_RELEASE)
938
+
939
+ IF (QT_${basename}_LIBRARY_DEBUG)
940
+ SET_PROPERTY(TARGET Qt4::${_camelCaseBasename} APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
941
+ SET_PROPERTY(TARGET Qt4::${_camelCaseBasename} PROPERTY IMPORTED_LOCATION_DEBUG "${QT_${basename}_LIBRARY_DEBUG}" )
942
+ ENDIF (QT_${basename}_LIBRARY_DEBUG)
943
+ ENDIF(NOT TARGET Qt4::${_camelCaseBasename})
944
+
945
+ # If QT_USE_IMPORTED_TARGETS is enabled, the QT_QTFOO_LIBRARY variables are set to point at these
946
+ # imported targets. This works better in general, and is also in almost all cases fully
947
+ # backward compatible. The only issue is when a project A which had this enabled then exports its
948
+ # libraries via export or EXPORT_LIBRARY_DEPENDENCIES(). In this case the libraries from project
949
+ # A will depend on the imported Qt targets, and the names of these imported targets will be stored
950
+ # in the dependency files on disk. This means when a project B then uses project A, these imported
951
+ # targets must be created again, otherwise e.g. "Qt4__QtCore" will be interpreted as name of a
952
+ # library file on disk, and not as a target, and linking will fail:
953
+ IF(QT_USE_IMPORTED_TARGETS)
954
+ SET(QT_${basename}_LIBRARY Qt4::${_camelCaseBasename} )
955
+ SET(QT_${basename}_LIBRARIES Qt4::${_camelCaseBasename} )
956
+ ELSE(QT_USE_IMPORTED_TARGETS)
957
+
958
+ # if the release- as well as the debug-version of the library have been found:
959
+ IF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE)
960
+ # if the generator supports configuration types then set
961
+ # optimized and debug libraries, or if the CMAKE_BUILD_TYPE has a value
962
+ IF (CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE)
963
+ SET(QT_${basename}_LIBRARY optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG})
964
+ ELSE(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE)
965
+ # if there are no configuration types and CMAKE_BUILD_TYPE has no value
966
+ # then just use the release libraries
967
+ SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE} )
968
+ ENDIF(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE)
969
+ SET(QT_${basename}_LIBRARIES optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG})
970
+ ENDIF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE)
971
+
972
+ # if only the release version was found, set the debug variable also to the release version
973
+ IF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG)
974
+ SET(QT_${basename}_LIBRARY_DEBUG ${QT_${basename}_LIBRARY_RELEASE})
975
+ SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_RELEASE})
976
+ SET(QT_${basename}_LIBRARIES ${QT_${basename}_LIBRARY_RELEASE})
977
+ ENDIF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG)
978
+
979
+ # if only the debug version was found, set the release variable also to the debug version
980
+ IF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY_RELEASE)
981
+ SET(QT_${basename}_LIBRARY_RELEASE ${QT_${basename}_LIBRARY_DEBUG})
982
+ SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY_DEBUG})
983
+ SET(QT_${basename}_LIBRARIES ${QT_${basename}_LIBRARY_DEBUG})
984
+ ENDIF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY_RELEASE)
985
+
986
+ # put the value in the cache:
987
+ SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY} CACHE STRING "The Qt ${basename} library" FORCE)
988
+
989
+ ENDIF(QT_USE_IMPORTED_TARGETS)
990
+
991
+ # message(STATUS "QT_${basename}_LIBRARY: ${QT_${basename}_LIBRARY}")
992
+
993
+ SET(QT_${basename}_FOUND 1)
994
+
995
+ ENDIF (QT_${basename}_LIBRARY_RELEASE OR QT_${basename}_LIBRARY_DEBUG)
996
+
997
+ IF (QT_${basename}_INCLUDE_DIR)
998
+ #add the include directory to QT_INCLUDES
999
+ SET(QT_INCLUDES "${QT_${basename}_INCLUDE_DIR}" ${QT_INCLUDES})
1000
+ ENDIF (QT_${basename}_INCLUDE_DIR)
1001
+
1002
+ # Make variables changeble to the advanced user
1003
+ MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_LIBRARY_RELEASE QT_${basename}_LIBRARY_DEBUG QT_${basename}_INCLUDE_DIR)
1004
+ ENDMACRO (_QT4_ADJUST_LIB_VARS)
1005
+
1006
+
1007
+ # Set QT_xyz_LIBRARY variable and add
1008
+ # library include path to QT_INCLUDES
1009
+ _QT4_ADJUST_LIB_VARS(QtCore)
1010
+ _QT4_ADJUST_LIB_VARS(QtGui)
1011
+ _QT4_ADJUST_LIB_VARS(Qt3Support)
1012
+ _QT4_ADJUST_LIB_VARS(QtAssistant)
1013
+ _QT4_ADJUST_LIB_VARS(QtAssistantClient)
1014
+ _QT4_ADJUST_LIB_VARS(QtCLucene)
1015
+ # QtDBus doesn't work on WIN32
1016
+ IF(NOT WIN32)
1017
+ _QT4_ADJUST_LIB_VARS(QtDBus)
1018
+ ENDIF(NOT WIN32)
1019
+ _QT4_ADJUST_LIB_VARS(QtDeclarative)
1020
+ _QT4_ADJUST_LIB_VARS(QtDesigner)
1021
+ _QT4_ADJUST_LIB_VARS(QtDesignerComponents)
1022
+ _QT4_ADJUST_LIB_VARS(QtHelp)
1023
+ _QT4_ADJUST_LIB_VARS(QtMultimedia)
1024
+ _QT4_ADJUST_LIB_VARS(QtNetwork)
1025
+ _QT4_ADJUST_LIB_VARS(QtNsPlugin)
1026
+ _QT4_ADJUST_LIB_VARS(QtOpenGL)
1027
+ _QT4_ADJUST_LIB_VARS(QtScript)
1028
+ _QT4_ADJUST_LIB_VARS(QtScriptTools)
1029
+ _QT4_ADJUST_LIB_VARS(QtSql)
1030
+ _QT4_ADJUST_LIB_VARS(QtSvg)
1031
+ _QT4_ADJUST_LIB_VARS(QtTest)
1032
+ _QT4_ADJUST_LIB_VARS(QtUiTools)
1033
+ _QT4_ADJUST_LIB_VARS(QtWebKit)
1034
+ _QT4_ADJUST_LIB_VARS(QtXml)
1035
+ _QT4_ADJUST_LIB_VARS(QtXmlPatterns)
1036
+ _QT4_ADJUST_LIB_VARS(phonon)
1037
+
1038
+ # platform dependent libraries
1039
+ IF(Q_WS_X11)
1040
+ _QT4_ADJUST_LIB_VARS(QtMotif)
1041
+ ENDIF(Q_WS_X11)
1042
+ IF(WIN32)
1043
+ _QT4_ADJUST_LIB_VARS(qtmain)
1044
+ _QT4_ADJUST_LIB_VARS(QAxServer)
1045
+ _QT4_ADJUST_LIB_VARS(QAxContainer)
1046
+ ENDIF(WIN32)
1047
+
1048
+ # If Qt is installed as a framework, we need to add QT_QTCORE_LIBRARY here (which
1049
+ # is the framework directory in that case), since this will make the cmake include_directories()
1050
+ # command recognize that we need the framework flag with the respective directory (-F)
1051
+ IF(QT_USE_FRAMEWORKS)
1052
+ ENDIF(QT_USE_FRAMEWORKS)
1053
+
1054
+
1055
+
1056
+ #######################################
1057
+ #
1058
+ # Check the executables of Qt
1059
+ # ( moc, uic, rcc )
1060
+ #
1061
+ #######################################
1062
+
1063
+
1064
+ IF(QT_QMAKE_CHANGED)
1065
+ SET(QT_UIC_EXECUTABLE NOTFOUND)
1066
+ SET(QT_MOC_EXECUTABLE NOTFOUND)
1067
+ SET(QT_UIC3_EXECUTABLE NOTFOUND)
1068
+ SET(QT_RCC_EXECUTABLE NOTFOUND)
1069
+ SET(QT_DBUSCPP2XML_EXECUTABLE NOTFOUND)
1070
+ SET(QT_DBUSXML2CPP_EXECUTABLE NOTFOUND)
1071
+ SET(QT_LUPDATE_EXECUTABLE NOTFOUND)
1072
+ SET(QT_LRELEASE_EXECUTABLE NOTFOUND)
1073
+ SET(QT_QCOLLECTIONGENERATOR_EXECUTABLE NOTFOUND)
1074
+ SET(QT_DESIGNER_EXECUTABLE NOTFOUND)
1075
+ SET(QT_LINGUIST_EXECUTABLE NOTFOUND)
1076
+ ENDIF(QT_QMAKE_CHANGED)
1077
+
1078
+ FIND_PROGRAM(QT_MOC_EXECUTABLE
1079
+ NAMES moc-qt4 moc
1080
+ PATHS ${QT_BINARY_DIR}
1081
+ NO_DEFAULT_PATH
1082
+ )
1083
+
1084
+ FIND_PROGRAM(QT_UIC_EXECUTABLE
1085
+ NAMES uic-qt4 uic
1086
+ PATHS ${QT_BINARY_DIR}
1087
+ NO_DEFAULT_PATH
1088
+ )
1089
+
1090
+ FIND_PROGRAM(QT_UIC3_EXECUTABLE
1091
+ NAMES uic3
1092
+ PATHS ${QT_BINARY_DIR}
1093
+ NO_DEFAULT_PATH
1094
+ )
1095
+
1096
+ FIND_PROGRAM(QT_RCC_EXECUTABLE
1097
+ NAMES rcc
1098
+ PATHS ${QT_BINARY_DIR}
1099
+ NO_DEFAULT_PATH
1100
+ )
1101
+
1102
+ if(NOT WINCE)
1103
+ FIND_PROGRAM(QT_DBUSCPP2XML_EXECUTABLE
1104
+ NAMES qdbuscpp2xml
1105
+ PATHS ${QT_BINARY_DIR}
1106
+ NO_DEFAULT_PATH
1107
+ )
1108
+
1109
+ FIND_PROGRAM(QT_DBUSXML2CPP_EXECUTABLE
1110
+ NAMES qdbusxml2cpp
1111
+ PATHS ${QT_BINARY_DIR}
1112
+ NO_DEFAULT_PATH
1113
+ )
1114
+ else(NOT WINCE)
1115
+ FIND_PROGRAM(QT_DBUSCPP2XML_EXECUTABLE
1116
+ NAMES qdbuscpp2xml
1117
+ PATHS ${HOST_BINDIR}
1118
+ NO_DEFAULT_PATH
1119
+ )
1120
+
1121
+ FIND_PROGRAM(QT_DBUSXML2CPP_EXECUTABLE
1122
+ NAMES qdbusxml2cpp
1123
+ PATHS ${HOST_BINDIR}
1124
+ NO_DEFAULT_PATH
1125
+ )
1126
+ endif(NOT WINCE)
1127
+
1128
+ FIND_PROGRAM(QT_LUPDATE_EXECUTABLE
1129
+ NAMES lupdate-qt4 lupdate
1130
+ PATHS ${QT_BINARY_DIR}
1131
+ NO_DEFAULT_PATH
1132
+ )
1133
+
1134
+ FIND_PROGRAM(QT_LRELEASE_EXECUTABLE
1135
+ NAMES lrelease-qt4 lrelease
1136
+ PATHS ${QT_BINARY_DIR}
1137
+ NO_DEFAULT_PATH
1138
+ )
1139
+
1140
+ FIND_PROGRAM(QT_QCOLLECTIONGENERATOR_EXECUTABLE
1141
+ NAMES qcollectiongenerator-qt4 qcollectiongenerator
1142
+ PATHS ${QT_BINARY_DIR}
1143
+ NO_DEFAULT_PATH
1144
+ )
1145
+
1146
+ FIND_PROGRAM(QT_DESIGNER_EXECUTABLE
1147
+ NAMES designer-qt4 designer
1148
+ PATHS ${QT_BINARY_DIR}
1149
+ NO_DEFAULT_PATH
1150
+ )
1151
+
1152
+ FIND_PROGRAM(QT_LINGUIST_EXECUTABLE
1153
+ NAMES linguist-qt4 linguist
1154
+ PATHS ${QT_BINARY_DIR}
1155
+ NO_DEFAULT_PATH
1156
+ )
1157
+
1158
+ IF (QT_MOC_EXECUTABLE)
1159
+ SET(QT_WRAP_CPP "YES")
1160
+ ENDIF (QT_MOC_EXECUTABLE)
1161
+
1162
+ IF (QT_UIC_EXECUTABLE)
1163
+ SET(QT_WRAP_UI "YES")
1164
+ ENDIF (QT_UIC_EXECUTABLE)
1165
+
1166
+
1167
+
1168
+ MARK_AS_ADVANCED( QT_UIC_EXECUTABLE QT_UIC3_EXECUTABLE QT_MOC_EXECUTABLE
1169
+ QT_RCC_EXECUTABLE QT_DBUSXML2CPP_EXECUTABLE QT_DBUSCPP2XML_EXECUTABLE
1170
+ QT_LUPDATE_EXECUTABLE QT_LRELEASE_EXECUTABLE QT_QCOLLECTIONGENERATOR_EXECUTABLE
1171
+ QT_DESIGNER_EXECUTABLE QT_LINGUIST_EXECUTABLE)
1172
+
1173
+
1174
+ # get the directory of the current file, used later on in the file
1175
+ GET_FILENAME_COMPONENT( _qt4_current_dir "${CMAKE_CURRENT_LIST_FILE}" PATH)
1176
+
1177
+ ######################################
1178
+ #
1179
+ # Macros for building Qt files
1180
+ #
1181
+ ######################################
1182
+
1183
+ INCLUDE("${_qt4_current_dir}/Qt4Macros.cmake")
1184
+
1185
+
1186
+ ######################################
1187
+ #
1188
+ # decide if Qt got found
1189
+ #
1190
+ ######################################
1191
+
1192
+ # if the includes,libraries,moc,uic and rcc are found then we have it
1193
+ IF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND
1194
+ QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE AND QT_QTCORE_LIBRARY)
1195
+ SET( QT4_FOUND "YES" )
1196
+ IF( NOT Qt4_FIND_QUIETLY)
1197
+ MESSAGE(STATUS "Found Qt-Version ${QTVERSION} (using ${QT_QMAKE_EXECUTABLE})")
1198
+ ENDIF( NOT Qt4_FIND_QUIETLY)
1199
+ ELSE( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND
1200
+ QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE AND QT_QTCORE_LIBRARY)
1201
+ SET( QT4_FOUND "NO")
1202
+ SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE)
1203
+ IF( Qt4_FIND_REQUIRED)
1204
+ IF ( NOT QT_LIBRARY_DIR )
1205
+ MESSAGE(STATUS "Qt libraries NOT found!")
1206
+ ENDIF(NOT QT_LIBRARY_DIR )
1207
+ IF ( NOT QT_INCLUDE_DIR )
1208
+ MESSAGE(STATUS "Qt includes NOT found!")
1209
+ ENDIF( NOT QT_INCLUDE_DIR )
1210
+ IF ( NOT QT_MOC_EXECUTABLE )
1211
+ MESSAGE(STATUS "Qt's moc NOT found!")
1212
+ ENDIF( NOT QT_MOC_EXECUTABLE )
1213
+ IF ( NOT QT_UIC_EXECUTABLE )
1214
+ MESSAGE(STATUS "Qt's uic NOT found!")
1215
+ ENDIF( NOT QT_UIC_EXECUTABLE )
1216
+ IF ( NOT QT_RCC_EXECUTABLE )
1217
+ MESSAGE(STATUS "Qt's rcc NOT found!")
1218
+ ENDIF( NOT QT_RCC_EXECUTABLE )
1219
+ MESSAGE( FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!")
1220
+ ENDIF( Qt4_FIND_REQUIRED)
1221
+ ENDIF( QT_LIBRARY_DIR AND QT_INCLUDE_DIR AND QT_MOC_EXECUTABLE AND
1222
+ QT_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE AND QT_QTCORE_LIBRARY)
1223
+
1224
+ SET(QT_FOUND ${QT4_FOUND})
1225
+
1226
+
1227
+ ###############################################
1228
+ #
1229
+ # configuration/system dependent settings
1230
+ #
1231
+ ###############################################
1232
+
1233
+ INCLUDE("${_qt4_current_dir}/Qt4ConfigDependentSettings.cmake")
1234
+
1235
+
1236
+ #######################################
1237
+ #
1238
+ # compatibility settings
1239
+ #
1240
+ #######################################
1241
+ # Backwards compatibility for CMake1.4 and 1.2
1242
+ SET (QT_MOC_EXE ${QT_MOC_EXECUTABLE} )
1243
+ SET (QT_UIC_EXE ${QT_UIC_EXECUTABLE} )
1244
+
1245
+ SET( QT_QT_LIBRARY "")
1246
+
1247
+ ELSE(QT4_QMAKE_FOUND)
1248
+
1249
+ SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE)
1250
+
1251
+ # The code below is overly complex to make sure we do not break compatibility with CMake 2.6.x
1252
+ # For CMake 2.8, it should be simplified by getting rid of QT4_INSTALLED_VERSION_TOO_OLD and
1253
+ # QT4_INSTALLED_VERSION_TOO_NEW
1254
+ IF(Qt4_FIND_REQUIRED)
1255
+ IF(QT4_INSTALLED_VERSION_TOO_OLD)
1256
+ IF( Qt4_FIND_VERSION_EXACT )
1257
+ MESSAGE(FATAL_ERROR "The installed Qt version ${QTVERSION} is too old, version ${QT_MIN_VERSION} is required")
1258
+ ELSE( Qt4_FIND_VERSION_EXACT )
1259
+ MESSAGE(FATAL_ERROR "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required")
1260
+ ENDIF( Qt4_FIND_VERSION_EXACT )
1261
+ ELSE(QT4_INSTALLED_VERSION_TOO_OLD)
1262
+ IF( Qt4_FIND_VERSION_EXACT AND QT4_INSTALLED_VERSION_TOO_NEW )
1263
+ MESSAGE(FATAL_ERROR "The installed Qt version ${QTVERSION} is too new, version ${QT_MIN_VERSION} is required")
1264
+ ELSE( Qt4_FIND_VERSION_EXACT AND QT4_INSTALLED_VERSION_TOO_NEW )
1265
+ MESSAGE( FATAL_ERROR "Qt qmake not found!")
1266
+ ENDIF( Qt4_FIND_VERSION_EXACT AND QT4_INSTALLED_VERSION_TOO_NEW )
1267
+ ENDIF(QT4_INSTALLED_VERSION_TOO_OLD)
1268
+ ELSE(Qt4_FIND_REQUIRED)
1269
+ IF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY)
1270
+ MESSAGE(STATUS "The installed Qt version ${QTVERSION} is too old, at least version ${QT_MIN_VERSION} is required")
1271
+ ENDIF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY)
1272
+ ENDIF(Qt4_FIND_REQUIRED)
1273
+
1274
+ ENDIF (QT4_QMAKE_FOUND)
1275
+