Bug 41604 - [Qt] WebKit2 build system for Qt
Summary: [Qt] WebKit2 build system for Qt
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit2 (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC All
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-07-05 04:18 PDT by Balazs Kelemen
Modified: 2010-07-13 08:00 PDT (History)
8 users (show)

See Also:


Attachments
Initial work (16.14 KB, patch)
2010-07-05 04:44 PDT, Balazs Kelemen
no flags Details | Formatted Diff | Diff
here are build file diffs for current trunk (14.36 KB, patch)
2010-07-08 08:42 PDT, Antti Koivisto
no flags Details | Formatted Diff | Diff
Updated patch for trunk (14.98 KB, patch)
2010-07-13 07:41 PDT, Simon Hausmann
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Balazs Kelemen 2010-07-05 04:18:01 PDT
Since we have started to check in sources for the Qt port of Webkit2, it is time to set up the build.
Comment 1 Balazs Kelemen 2010-07-05 04:44:01 PDT
Created attachment 60513 [details]
Initial work

This comes from antti's branch on gitorious. This patch does not contain the pro file for the MiniBrowser, just the build system for WebKit2 and the WebProcess. There are two main problems with the build now:
  * Usage of precompiled header. Since the common - not platform specific - files in WebKit2 does not include everything they need, we cannot ignore to use WebKit2Prefix.h as precompiled header. The main problem I see with this is that distcc does not supports precompiled headers.
  * Now we copy every wk2 header into the build directory. We do this because the common files include the headers in the form "#include WebKit2/xyz.h" but the files are in a subdirectory of WebKit2 (for example WebKit2/UIProcess/xyz.h), so we create the WebKit2 directory in the build directory. We use this solution for the WebKit API files too, but there we just create files that includes the appropriate headers. This way incremental build works with the API headers, in contrast to the wk2 headers. A qmake wizard should do the magic for the wk2 headers as well.

This patch is not for review, since I hope we can make it better. I trust in the Trolls! :)
Actually, you cannot build WebKit2 in the trunk with this patch because there are a lot of files that are missing.
Comment 2 Kenneth Rohde Christiansen 2010-07-05 05:15:15 PDT
I hope you took the build system from the rebase-after-upstream branch, because that is the most uptodate one.
Comment 3 Balazs Kelemen 2010-07-05 05:17:44 PDT
Yep! :)
Comment 4 Antti Koivisto 2010-07-05 08:44:23 PDT
I think webkit2 should be moved to #include "config.h" style system so it wouldn't need prefix headers. That might deserve a bug of its own.
Comment 5 Antti Koivisto 2010-07-08 08:42:29 PDT
Created attachment 60890 [details]
here are build file diffs for current trunk
Comment 6 Balazs Kelemen 2010-07-12 07:47:27 PDT
I think we should push this to trunk and deal with the build environment problems later. It would be much more straightforward to work on the trunk instead of pushing changes from our gitorious branches.
Comment 7 Zoltan Herczeg 2010-07-13 06:01:31 PDT
(In reply to comment #6)

Totally agree. Especially since major parts have already been landed.
Comment 8 Simon Hausmann 2010-07-13 07:41:52 PDT
Created attachment 61374 [details]
Updated patch for trunk

Updated patch for trunk
Comment 9 Balazs Kelemen 2010-07-13 07:48:55 PDT
Simon, is it ready for review?
Comment 10 Simon Hausmann 2010-07-13 08:00:40 PDT
Committed r63206: <http://trac.webkit.org/changeset/63206>