[webkit-dev] The "WebCore/platform/" directory situation
David Hyatt
hyatt at apple.com
Sat Oct 4 02:23:55 PDT 2008
This sounds good to me, although I'm not sure the files in platform/
need to move. I think the directory is fine under WebCore/ still.
dave
On Oct 4, 2008, at 2:56 AM, Eric Seidel wrote:
> +1 for making wtf and platform their own projects/targets.
>
> -eric
>
> On Sat, Oct 4, 2008 at 12:27 AM, Maciej Stachowiak <mjs at apple.com>
> wrote:
>>
>> On Oct 3, 2008, at 9:17 PM, David Hyatt wrote:
>>
>>> After working for a while on the WebCore/platform/ directory, it's
>>> become clear that people don't really know what this directory is
>>> supposed to contain (and by people I mean pretty much everybody,
>>> both inside and outside Apple). The purpose of the platform/
>>> directory is to serve as a foundation library for WebCore. It
>>> provides a widget toolkit, graphics primitives, basic data
>>> structures and wrappers around low level OS services. It should not
>>> depend on any other parts of WebCore, but can depend on
>>> JavaScriptCore/wtf.
>>
>> I agree with Hyatt on this. Although in most respects we don't
>> enforce
>> strict modularity in WebCore, this is one case where it is important,
>> and we have been lax in maintaining the layering of WebCore/platform.
>>
>>> I also think it would be worthwhile to discuss options for
>>> preventing these layering violations from occurring going forward.
>>> We need to make these violations impossible. I'd love to hear
>>> suggestions on that front (separate library, hacked include paths,
>>> etc.). Whatever we decide should be implementable by Mac, Win, Gtk,
>>> Qt, wx and Chromium, since we don't want platform-specific code in
>>> platform to violate layering either.
>>
>> I think we should pull WTF and Platform into separate top level
>> modules. On Mac OS X they would build static libraries that get
>> linked
>> into JavaScriptCore and WebCore respectively. Other ports may want to
>> do it slightly differnetly.
>>
>> We have a lot fewer layering problems with WebCore and WebKit in part
>> because they are separate modules, and you have to go out of your way
>> and make some Client interfaces to create unfortunate entanglements.
>>
>> Regards,
>> Maciej
>>
>> _______________________________________________
>> webkit-dev mailing list
>> webkit-dev at lists.webkit.org
>> http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
>>
More information about the webkit-dev
mailing list