[webkit-help] new to building on NetBSD

Ryosuke Niwa rniwa at webkit.org
Mon Nov 19 17:55:45 PST 2012


On Mon, Nov 19, 2012 at 3:23 PM, Tim Larson <Tim.Larson at proxibid.com> wrote:

>  > It's more than that. Without supplying code in Source/WebCore/platform
> > & Source/WebKit, WebKit doesn't even build or function.
>
> Yes, I understood that, I just wasn't clear in stating it. Apologies. Is
> there a list of the minimum set of files that a port must supply?
>

http://trac.webkit.org/wiki/SuccessfulPortHowTo is a good starting point
but it's an tremendous amount of work to say the least. You need at least
threading support to enable JIT in JSC and various wrappers for filesystem,
networking, & graphics layers in WebCore/platform. In particular, you need
to hook WebCore up with the graphic engine of your choice (e.g.
Core Graphics, GDI, Skia, etc...)

Typically, creating a new port is a full time job for a senior-level
software engineer so unless you're doing this as a full time job, I highly
recommend using an existing port. Like Dirk suggested, there has been
contributions to build Chromium on FreeBSD so that might be something of
your interest. Chromium provides content API that you can use as a shared
library. See http://www.chromium.org/developers/content-module/content-api

> Each port uses its own build system. Apple uses xcodebuild on Mac,
> > Visual Studio on Windows (windows port), Chromium uses gyp, Qt uses
> > cmake, and so forth. So some files are only listed in one port's build
> > files while shared files are listed on all build files.
> >
> > For the shared code, we use PLATFORM(*) to #ifdef port-specific code.
> > (See Source/WTF/wtf/Platform.h).
>
> Thank you again.
>
> So where's the division between the Webkit port, and a UA using that port?
>

JavaScriptCore and WebCore provide platform/port agnostic implementations
of JS, DOM, rendering, etc... engines on top of platform APIs in
WebCore/platform and client callbacks/delegates in Source/WebKit but all of
this is internal to WebKit and each WebKit port. Each port then provides an
application level API in Source/WebKit and each UA/browsers uses that to
communicate with WebKit.

- R. Niwa
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-help/attachments/20121119/fd318222/attachment.html>


More information about the webkit-help mailing list