Hi Maciej,
On Nov 12, 2007, at 11:33 AM, Maciej Stachowiak wrote:
On Nov 12, 2007, at 5:28 AM, Mark Rowe wrote:
On 13/11/2007, at 00:00, Charles Woloszynski wrote:
I am working on a port of WebKit on Qt to a PowerPC platform.
Please make sure that we don't break the Qt port in this switch.
I am comfortable with autotools, so that is not a big deal for
me. I am concerned, however, that this will cause a fork with the
work being done by the Trolltech folks (since I think that they
are primarily qmake-promoters).
Can we get some feedback from Trolltech on their ability to accept
a switch to autotools for Webkit/Qt so we can switch to one new
engine for all these ports?
It would obviously be great if build systems could be shared
between ports, but at the same time I don't think that this desire
to share build systems should introduce obstacles to the adoption
of WebKit ports in the wider open source community. The
maintainers of the Qt and wxWidgets ports have a desire to keep
their build systems similar to those used by the underlying
toolkits of their port as it greatly simplifies their integration
work. The same is true of the Apple ports and their build systems.
While the introduction of another build system would introduce
slightly more overhead for changes that require modifications be
made to the build system, such changes are relatively infrequent
and are typically simple additions or removals of files. The extra
work required would be small in comparison to the benefit that the
GTK+ port would gain from using a more native build system.
As someone who adds and removes files frequently, I do find the
build system proliferation to be a nontrivial cost. However, I think
the worst build systems from this point of view are ones that aren't
easily human-editable, which I think is mainly the Xcode and Visual
Studio project files. If we add more build systems, it would be
really helpful to put up a page that tells you what steps you should
take if you add or remove files. Maybe we could even write a script
to add a file to or remove a file from all build systems.
I'm fairly sure this would be easy enough for MSVS because of its XML
nature. In fact, I did things the opposite way (converted MSVS XML ->
Bakefile) when I first started adding in the wx port, so that we kept
up-to-date with any changes to the common files. (As a side effect of
this, the wx port files are grouped by category rather than just being
a long list.) The tricky part AFAICT would be XCode, though, because
even if there is a scripted solution for this, it would probably need
to be run on a Mac where we have access to AppleScript or some other
scripting tool that can read and make changes to XCode projects...
(Bakefile can write XCode project files, but it can't read them in.)
Though still, even if we couldn't automatically update the XCode
Project file in all cases, we'd be left with making the same change at
most twice, as I think every other build tool uses a plain text-based
or XML format. Also, if the script wasn't able to update the XCode
Project file for whatever reason, we could have it either spit out a
warning or even add a warning into the ChangeLog entry that the XCode
Project wasn't updated with the file change.
Regards,
Kevin
Regards,
Maciej
_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo/webkit-dev
_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo/webkit-dev