Bug 90519

Summary: [Qt] Buildfix for newer Qt5
Product: WebKit Reporter: Csaba Osztrogonác <ossy>
Component: Tools / TestsAssignee: Csaba Osztrogonác <ossy>
Status: RESOLVED FIXED    
Severity: Normal CC: cmarcelo, hausmann, menard, ossy, vestbo, webkit.review.bot, zarvai, zoltan
Priority: P2 Keywords: Qt, QtTriaged
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Attachments:
Description Flags
first WIP patch
none
patch for EWS bots
none
Patch
none
Patch
none
Patch
none
Patch
webkit-ews: commit-queue-
[Qt] Switch to new-style Qt 5 configure tests
none
[Qt] Adjust to changed generation of master include file
none
[Qt] Remove redundant CONFIG+=module
none
[Qt] Don't let qt_webkit.pri proclaim its own location
none
[Qt] Let qt_module_config create the forwarding module pri file
none
[Qt] Unify qtFeatureDefaults code paths
none
[Qt] Add top-level .qmake.conf
none
[Qt] Remove custom qmake logic for module creation
none
[Qt] Make use of Qt5 qmake's changed makefile recursion behavior none

Description Csaba Osztrogonác 2012-07-04 00:16:45 PDT
I managed to build the latest Qt5 hash: a6f6e65088e3d5180e317f3d5894165b4a4016b7
And now I'm trying to build trunk WebKit with it. (I'm on r121830 now.)

I have some minor fixes, I'll attach them immediately.
Comment 1 Csaba Osztrogonác 2012-07-04 00:25:04 PDT
Created attachment 150723 [details]
first WIP patch

Here is my first WIP patch:
- set QMAKEPATH to /home/oszi/WebKit/Tools/qmake before building manually
- remove all "QT += declarative", because they are build fails now
  (but maybe it is still needed for Qt 4, I'll check it later.)
- fix some depracated include suggested by latest Qt5
- use PWD instead of deprecated IN_PWD

Now building QtTestBrowser fails with the following error message:
Project ERROR: Unknown module(s) in QT: webkit

I didn't check Ossi's patches now, maybe there are some overlapping,
it is only my very quick experiment to see what is the status now.
Comment 2 Csaba Osztrogonác 2012-07-04 03:37:00 PDT
Created attachment 150759 [details]
patch for EWS bots
Comment 3 WebKit Review Bot 2012-07-04 03:39:09 PDT
Attachment 150759 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebKit/qt/WebCoreSupport/QtFallback..." exit_code: 1
Source/WebKit2/UIProcess/API/qt/qwebkittest.cpp:26:  Alphabetical sorting problem.  [build/include_order] [4]
Total errors found: 1 in 6 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 4 Early Warning System Bot 2012-07-04 05:05:57 PDT
Comment on attachment 150759 [details]
patch for EWS bots

Attachment 150759 [details] did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/13127835
Comment 5 Csaba Osztrogonác 2012-07-04 05:12:29 PDT
Comment on attachment 150759 [details]
patch for EWS bots

View in context: https://bugs.webkit.org/attachment.cgi?id=150759&action=review

>> Source/WebKit2/UIProcess/API/qt/qwebkittest.cpp:26
>> -#include "qwindowsysteminterface_qpa.h"
>> +#include "qpa/qwindowsysteminterface.h"
> 
> Alphabetical sorting problem.  [build/include_order] [4]

Unfortunately this change won't work with the latest pinned 
Qt5 hash, because the new header isn't exist in it. 

But we need this change when we update Qt5, because the 
old header is deprecated and it would cause build fail.
Comment 6 Csaba Osztrogonác 2012-07-04 05:24:04 PDT
Created attachment 150776 [details]
Patch
Comment 7 Csaba Osztrogonác 2012-07-04 05:25:42 PDT
Comment on attachment 150776 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=150776&action=review

> Source/WebKit2/UIProcess/API/qt/qwebkittest.cpp:-26
> +#include "qpa/qwindowsysteminterface.h"
>  #include "qquickwebview_p_p.h"
> -#include "qwindowsysteminterface_qpa.h"

cq-, because this change doesn't work with the latest pinned Qt5 hash,
but it will work with the updated Qt5. I'm going to land with the update.
Comment 8 Tor Arne Vestbø 2012-07-04 05:51:39 PDT
Comment on attachment 150776 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=150776&action=review

> Source/WebKit/qt/declarative/experimental/experimental.pri:28
> +haveQt(4): QT += declarative

This one is not needed, we don't build webkit2 (and the experimental qml plugin) for qt4.

> Source/api.pri:135
> +    haveQt(4): QT += declarative

This one is not needed, we don't build webkit2 for qt4, and we already include quick and qml modules in WebKit2.pri
Comment 9 Csaba Osztrogonác 2012-07-04 05:53:25 PDT
Comment on attachment 150776 [details]
Patch

Good point, I'll update the patch soon.
Comment 10 Csaba Osztrogonác 2012-07-04 05:59:15 PDT
Created attachment 150781 [details]
Patch
Comment 11 Early Warning System Bot 2012-07-04 06:34:19 PDT
Comment on attachment 150781 [details]
Patch

Attachment 150781 [details] did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/13130822
Comment 12 Csaba Osztrogonác 2012-07-05 05:59:43 PDT
Created attachment 150929 [details]
Patch

Only these include fixes are remaining for my previous patch. :)
Comment 13 Early Warning System Bot 2012-07-05 06:05:56 PDT
Comment on attachment 150929 [details]
Patch

Attachment 150929 [details] did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/13154009
Comment 14 Tor Arne Vestbø 2012-07-05 06:12:42 PDT
Comment on attachment 150929 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=150929&action=review

> Source/WebKit2/UIProcess/API/qt/qwebkittest.cpp:-26
> -#include "qwindowsysteminterface_qpa.h"

We need similar fixes in other places. Here's the full diff: https://gist.github.com/3053577
Comment 15 Csaba Osztrogonác 2012-07-05 06:36:51 PDT
Created attachment 150933 [details]
Patch

patch for landing
Comment 16 Early Warning System Bot 2012-07-05 06:41:52 PDT
Comment on attachment 150933 [details]
Patch

Attachment 150933 [details] did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/13147080
Comment 17 Tor Arne Vestbø 2012-07-06 05:07:32 PDT
Created attachment 151054 [details]
[Qt] Switch to new-style Qt 5 configure tests
Comment 18 Tor Arne Vestbø 2012-07-06 05:07:41 PDT
Created attachment 151055 [details]
[Qt] Adjust to changed generation of master include file
Comment 19 Tor Arne Vestbø 2012-07-06 05:07:48 PDT
Created attachment 151056 [details]
[Qt] Remove redundant CONFIG+=module
Comment 20 Tor Arne Vestbø 2012-07-06 05:07:55 PDT
Created attachment 151057 [details]
[Qt] Don't let qt_webkit.pri proclaim its own location
Comment 21 Tor Arne Vestbø 2012-07-06 05:08:03 PDT
Created attachment 151058 [details]
[Qt] Let qt_module_config create the forwarding module pri file
Comment 22 Tor Arne Vestbø 2012-07-06 05:08:10 PDT
Created attachment 151059 [details]
[Qt] Unify qtFeatureDefaults code paths
Comment 23 Tor Arne Vestbø 2012-07-06 05:08:18 PDT
Created attachment 151060 [details]
[Qt] Add top-level .qmake.conf
Comment 24 Tor Arne Vestbø 2012-07-06 05:08:27 PDT
Created attachment 151061 [details]
[Qt] Remove custom qmake logic for module creation
Comment 25 Tor Arne Vestbø 2012-07-06 05:08:36 PDT
Created attachment 151062 [details]
[Qt] Make use of Qt5 qmake's changed makefile recursion behavior
Comment 26 Csaba Osztrogonác 2012-07-06 06:10:57 PDT
Comment on attachment 151054 [details]
[Qt] Switch to new-style Qt 5 configure tests

Clearing flags on attachment: 151054

Committed r121958: <http://trac.webkit.org/changeset/121958>
Comment 27 Csaba Osztrogonác 2012-07-06 06:12:13 PDT
Comment on attachment 151055 [details]
[Qt] Adjust to changed generation of master include file

Clearing flags on attachment: 151055

Committed r121959: <http://trac.webkit.org/changeset/121959>
Comment 28 Csaba Osztrogonác 2012-07-06 06:13:19 PDT
Comment on attachment 151056 [details]
[Qt] Remove redundant CONFIG+=module

Clearing flags on attachment: 151056

Committed r121960: <http://trac.webkit.org/changeset/121960>
Comment 29 Csaba Osztrogonác 2012-07-06 06:14:31 PDT
Comment on attachment 151057 [details]
[Qt] Don't let qt_webkit.pri proclaim its own location

Clearing flags on attachment: 151057

Committed r121961: <http://trac.webkit.org/changeset/121961>
Comment 30 Csaba Osztrogonác 2012-07-06 06:15:34 PDT
Comment on attachment 151058 [details]
[Qt] Let qt_module_config create the forwarding module pri file

Clearing flags on attachment: 151058

Committed r121962: <http://trac.webkit.org/changeset/121962>
Comment 31 Csaba Osztrogonác 2012-07-06 06:16:44 PDT
Comment on attachment 151059 [details]
[Qt] Unify qtFeatureDefaults code paths

Clearing flags on attachment: 151059

Committed r121963: <http://trac.webkit.org/changeset/121963>
Comment 32 Csaba Osztrogonác 2012-07-06 06:17:47 PDT
Comment on attachment 151060 [details]
[Qt] Add top-level .qmake.conf

Clearing flags on attachment: 151060

Committed r121964: <http://trac.webkit.org/changeset/121964>
Comment 33 Csaba Osztrogonác 2012-07-06 06:18:59 PDT
Comment on attachment 151061 [details]
[Qt] Remove custom qmake logic for module creation

Clearing flags on attachment: 151061

Committed r121965: <http://trac.webkit.org/changeset/121965>
Comment 34 Csaba Osztrogonác 2012-07-06 06:20:22 PDT
Comment on attachment 151062 [details]
[Qt] Make use of Qt5 qmake's changed makefile recursion behavior

Clearing flags on attachment: 151062

Committed r121966: <http://trac.webkit.org/changeset/121966>