[webkit-dev] Build system for ports
Kevin Ollivier
kevino at theolliviers.com
Sat Apr 15 15:08:25 PDT 2006
Hi all,
As Mike Emmel and I have both decided to use Bakefile for our ports,
we decided to work together and create a build system that works for
both our ports. As a start, my focus has been on taking Mike's
project files and creating a basic project that builds the cross-
platform WebCore sources on Win, Mac and Linux that any port would
need. This way any new ports that are created can actually just
"derive" from the webcore_base project and only have to add includes/
sources/etc. specific to their platform or port.
I've mostly completed that step. For those interested, here's some
brief docs on the system:
How to build using Bakefile:
http://kevino.theolliviers.com/webkit/bakefile-build.txt
(Most of those steps will eventually be scripted, hopefully as part
of build-webkit, but I wanted to give people an overview of the
process.)
Here are the changes I needed to make to WebCore for this to work,
and also any unresolved issues on various ports:
http://kevino.theolliviers.com/webkit/bakefile-changes.txt
Using the Bakefile-generated projects, I've built the cross-platform
sources (excluding Cairo, which won't build on OS X...) successfully
on Intel Mac OS X 10.4.6 and WinXP SP2/MSVS8, and hopefully once a
few more changes are made, Linux (FC4) will build fine as well.
But there's still one major question before I can put together a
draft to show people. How exactly should build systems for ports be
incorporated into the webkit tree? For example, when you think of
Win32, wx, etc. there may be multiple MSVS7/8 project files. So do we
create one project file and allow people to select a port when they
build (with an intelligent default, of course) or do we put project
files for ports in separate files/dirs? If the latter (which I'm
personally leaning towards), what should the directory scheme for
ports be? Do we do, for example,
<WebCore>/ports/wx/WebCore.dsw
Or just:
<WebCore>/wxwebcore.dsw
Or a combination, like:
<WebCore>/ports/wxwebcore.dsw
Ideas? Thoughts?
Thanks,
Kevin
More information about the webkit-dev
mailing list