[webkit-dev] DerivedSources.make: Another try?

Patrick Gansterer paroga at paroga.com
Sun Mar 16 03:01:42 PDT 2014

It might be possible to achieve, but it will remove a lot of the benefits from CMake.
You have two options:
a) Invoke make on DerivedSources.make and add a lot of custom target for that to CMake
b) Parse the DerivedSources.make and create CMake rules out of it

Since (b) would require a kind of Makefile parser it does not seam like a good idea. (a) should be easy to implement compared to (a), but you lose the whole dependency tracking on file level of CMake and detecting the involved tools (e.g. gperf) can not be done with CMake as easy as before. This becomes a problem on platforms where the tools are not in the executable path (Windows).
Other problems by removing the build system abstraction provided by CMake would cause problems during parallel builds using the correct amount of cores (MS nmake for example has no "-j" at all).

So I'd like to ask the question once again: Why not switch Xcode and Windows to CMake? There are (very outdated) patches at [1] and [2] for Windows. I'd be willing to bring them up to date, if there is someone to review them.

[1] https://bugs.webkit.org/show_bug.cgi?id=72816
[2] https://bugs.webkit.org/show_bug.cgi?id=115944


On 16.03.2014, at 07:46, Darin Adler <darin at apple.com> wrote:

> Hi folks.
> Long ago I tried to make the “derived sources” part of building WebKit use a makefile, something for gnu make that we could use on multiple platforms. In WebCore, at least, we are using this DerivedSources.make from the Xcode project and the Windows project, but not for other build systems. I was hoping we could change that so that everyone uses DerivedSources.make. The build systems would do the main job of compiling code and header dependency and all that, but for the trickier, more project-specific job of running our scripts to make various types of derived sources we could just share one makefile.
> With GTK moving from automake to CMake, it’s possible we have the opportunity to achieve this just by making the CMake build system use DerivedSources.make instead of rules inside CMake itself.
> Is there an expert on our use of CMake who is interested in trying this project?
> Side question: With the recent GTK port developments, is it time to remove our automake files entirely?
> — Darin
> _______________________________________________
> webkit-dev mailing list
> webkit-dev at lists.webkit.org
> https://lists.webkit.org/mailman/listinfo/webkit-dev

More information about the webkit-dev mailing list