[webkit-dev] Running v8 in the major platform ports (win and mac)

Evan Martin evan at chromium.org
Tue Jan 31 08:45:23 PST 2012


On Mon, Jan 30, 2012 at 4:41 PM, Ryan Ackley <ryanackley at gmail.com> wrote:
> I want to use Webkit for a project I'm working on but I would prefer
> the v8 JavaScript engine for a variety of reasons. I did see that
> there was a Qt v8 port and a gtk v8 port.
>
> Has anyone attempted a port that uses v8 for Windows and/or Mac OS X?
>
> Looking at the previous ones (GTK and Qt), I think it's within my
> technical reach to write such a port. If I were successful, and
> assuming it meets engineering standards (the tests pass, code
> reviewed, etc.), would it likely be accepted as a patch for Webkit?

This is kind of a FAQ but I don't think it's answered anywhere.

A WebKit "port" includes not only the JavaScript engine but also the
graphics stack, network stack, and other pieces.

On Windows the main ports are:
- Apple's port that uses Apple libraries (Core Graphics etc.)
- Google's port (Chrome) that uses Skia, Chrome's network stack (and
also v8 but that's orthogonal)
- and there's also a port using Cairo that I don't know a whole lot about

Of those, I guess the Chrome port is the most popular in terms of
users but (as you said off-list) it's kind of a beast to embed.
However, of these it is the one that other projects (like Steam) tend
to embed.

It's not clear to me what the legalities are of using Apple's port in
your software (as the libraries it depends on are closed-source), but
don't let me spread FUD about it, check it for yourself.

The Cairo port is a labor of love from one person so I don't know
whether it'll be easier for your purposes.
http://trac.webkit.org/wiki/BuildingCairoOnWindows

In total, unless you're using a full stack like Qt, there is no
obvious "for Windows" port.
(On OS X, Apple's WebKit is a standard framework and it's obviously
the right choice for embedding.)


More information about the webkit-dev mailing list