[webkit-dev] Build system complexity

Patrick Roland Gansterer paroga at paroga.com
Sat Aug 14 03:24:36 PDT 2010

> Eric and I discussed this recently.  We think the easiest path forward
> is to try to remove build systems incrementally.  Each build system we
> remove makes it easier to hack on the project because you have one
> less build system to worry about.  The easiest build system to remove
> is probably the Visual Studio build system.  There's some complexity
> there because several ports use the vcproj files (e.g., apple-win,
> win-cairo, and wince as I recall).  My understanding (based on past
> emails) is that either CMake or GYP would be workable.
Last CMake discussion message ended with [1].
I strongly prefer CMake, because GYP is a Chromium tool ("... a tool that is 
highly specific to Chromium's specific use case ..." [2])

> I'm not sure there's anything blocking this work.  We just need
> someone to be interested enough in making it happen to do it.
I work already on a general CMake buildsystem [3]. Until I get a r+, the patch 
doesn't aplly any more, what makes it very hard to make progress (i took 3 
months for the last patch).
I use CMake for the WinCE port too [4].
It should be very easy to add additional ports to the CMake system. You only 
need to add CMakeLists<PORT>.txt files, which contain the plarform specific 
files (see [5] for additional sample).

IMHO it's no big task to port wx and gtk to CMake.
For the Windows port(s) it's a little bit harder if you want to detect the 
3rdparty stuff in a clean way (because there is no general "/usr/include").

There is already a bug to use CMake for BREWMP: [6]

If someone is interested in switching to CMake I'd like to help.

[1] https://lists.webkit.org/pipermail/webkit-dev/2010-April/012662.html
[2] http://code.google.com/p/gyp/wiki/GypLanguageSpecification#Background
[3] https://bugs.webkit.org/show_bug.cgi?id=43906
[4] http://trac.webkit.org/wiki/WinCE
[5] http://gitorious.org/+wincewebkit-
[6] https://bugs.webkit.org/show_bug.cgi?id=39398

- Patrick

More information about the webkit-dev mailing list