[webkit-dev] Re: Ports and Forks

Maciej Stachowiak mjs at apple.com
Fri Feb 16 19:17:32 PST 2007

On Feb 16, 2007, at 6:19 PM, Jean-Charles VERDIE wrote:

> Rob Burns a écrit :
>> Some topics that I think the Wiki could use:
>> - Porting WebKit
>>     •  Windows Port]
>>     •  LInux Port
>>     •  BSD Port
>>     •  etc.
> These bullets are too limitative (just as platform is, to my point  
> of view). Porting to linux is meaningless. We work on porting  
> webkit on :
> SH4 Linux + DirectFB + FreeType + blablabla
> ARM9 Linux + SDL + SDL_TTF + blablabla
> This is fairly different. This is impossible to imagine adding one  
> directory per port (what about ARM9 + DirectFB then?). Unless you  
> want to maximize the quantity of duplicated source ;-)

If we end up with a huge number of different port configurations,  
then obviously we will need better support for fine-grained  
configurability. I look forward to seeing Pleyo's approach to this  
and I hope we can fold some of these ideas into the main tree.

Here's a few off-the-cuff thoughts on port configuratibility that may  
or may not be relevant:

* WebKit's biggest dependencies are not on the core operating system.  
ARM9 vs SH4 and Linux vs. BSD affect a relatively small number of  
places in the code.

* The biggest dependency is UI toolkit (including graphics library,  
text library, etc). Secondary would be image decoders (have to match  
up with the graphics library) and networking (which is relatively  

For these reasons, ports usually identify themselves mainly by the UI  
toolkit rather than by the host operating system. This is why you see  
a Qt port and a Gdk port rather than a Linux port and a BSD port.

* If we are going to end up with a large number of different  
configurations, we will probably need to do more work to make the  
external dependencies modular. I look forward to seeing the approach  
to this that Pleyo has taken.

* Having a large number of configurations is a challenge, because  
it's hard to keep them all building and working. We will need to  
think carefully about how to approach this.


More information about the webkit-dev mailing list