[webkit-dev] Build system for ports

Eric Seidel eseidel at apple.com
Sun Apr 16 12:16:04 PDT 2006


On Apr 16, 2006, at 11:09 AM, Kevin Ollivier wrote:

>> Our current system for supporting ports in our directory tree have  
>> been to put their necessary files under a /platform/port-name/  
>> directory.  I expect that should work for WxWidgets as well.  If  
>> it doesn't we can make alternative arrangements.
>
> This is what I am going to do with the wx-specific sources. But,  
> and I know this is being a bit picky ;-), I hesitate to put the  
> project files there because platform != port in some cases. e.g.  
> since wx is cross-platform, it may be able to, or need to, use some  
> sources from platform/win, platform/linux, or platform/mac. So I  
> guess I see platform as a mixture of "port" specific and "os"  
> specific sources, and I think it could get confusing as to where to  
> put (or where to find) a port's project files.

The same is true for the existing "mac" "cairo" and "win"  
directories.  Mac & Win are OS's, in cairo's case it's a cross- 
platform graphics library, we just only happen to use in on Windows  
right now.

> Well, in any case, for now I've set things up to put Bakefile- 
> generated projects in WebCore/ports/<PORT> directory. (Perhpas  
> 'projects' would be a better term?) I've also made everything in  
> the Bakefiles relative to SRCDIR, too, so that if we move the  
> project files into another folder, the only change we need to make  
> to the Bakefiles is to make sure that SRCDIR points to the WebCore  
> folder. I should be able to create a patch in a day or two,  
> assuming anonsvn comes back up. :-) I'm going to give Mike a heads- 
> up first to see if what I've done works for him, or if I need to  
> change something first, but once that's done I'll submit it to  
> Bugzilla.

I think that the existing platform/port, bridge/port, etc.  
directories would be preferred, but I think the first step is just to  
start posting the patches, and then we can haggle about where to  
apply them to later.

> BTW, you might want to consider having a separate project file that  
> generates the cross-platform webcore sources as a static library  
> (say, a "WebCoreBase" project file), and then have the Win32, etc.  
> projects statically link in that library and only build the files  
> specific to their port/platform (and of course, depend on  
> WebCoreBase). Actually, I've pretty much already set up the  
> Bakefile projects this way, so that you can see what I mean when I  
> submit the patch. :-) This way there wouldn't be any redundancy  
> among projects in terms of maintaining the cross-platform sources,  
> and each port will only ever have to worry about updating/ 
> maintaining its own specific files.

Thats a very interesting idea.

-eric




More information about the webkit-dev mailing list