Bug 11308

Summary: New (and better) linux/gdk build system.
Product: WebKit Reporter: Krzysztof Kowalczyk <kkowalczyk>
Component: New BugsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED WONTFIX    
Severity: Normal CC: mrowe
Priority: P2    
Version: 420+   
Hardware: PC   
OS: OS X 10.4   
Attachments:
Description Flags
script for generatking gdk makefile
andersca: review-
release gdk makefile
andersca: review-
debug gdk makefile
andersca: review-
WorkInProgress to revive CMake and to allow non Qt platforms mrowe: review-

Krzysztof Kowalczyk
Reported Sunday, October 15, 2006 11:56:50 PM UTC
New (and better) linux/gdk build system.
Attachments
script for generatking gdk makefile (21.67 KB, text/plain)
2006-10-15 16:00 PDT, Krzysztof Kowalczyk
andersca: review-
release gdk makefile (134.48 KB, text/plain)
2006-10-15 16:00 PDT, Krzysztof Kowalczyk
andersca: review-
debug gdk makefile (134.48 KB, text/plain)
2006-10-15 16:01 PDT, Krzysztof Kowalczyk
andersca: review-
WorkInProgress to revive CMake and to allow non Qt platforms (18.99 KB, patch)
2007-03-29 15:21 PDT, Holger Freyther
mrowe: review-
Krzysztof Kowalczyk
Comment 1 Monday, October 16, 2006 12:00:07 AM UTC
Created attachment 11104 [details] script for generatking gdk makefile This is a script that generates gdk/linux makefile in top-level directory. Script should probably go under WebKitTools\Scripts\gen-gdk-makefile.py Generated makefiles are Makefile.gdk.rel and Makefile.gdk.dbg (names and directory are easily changeable in the script).
Krzysztof Kowalczyk
Comment 2 Monday, October 16, 2006 12:00:58 AM UTC
Created attachment 11105 [details] release gdk makefile Release gdk makefile generated by the script.
Krzysztof Kowalczyk
Comment 3 Monday, October 16, 2006 12:01:37 AM UTC
Created attachment 11106 [details] debug gdk makefile debug gdk makefile generated by the script
Krzysztof Kowalczyk
Comment 4 Monday, October 16, 2006 12:08:46 AM UTC
What are advantages of this Makefile over bakefiles: * builds both debug and release targets, in separate directories; other targets easy to add * no dependency on bakefiles, just python, for generating the makefiles * makefile generated by bakefile causes unnecessary rebuilds (i.e. make after make should do nothing, but it rebuilds some jsc files) * one, non-recursive makefile (for some it might be disadvantage) Disadvantages: * doesn't build shared library but a standalone exe. Can be fixed in the future if there's need. * doesn't generate wx/win makefiles, but... win is maintained by hand anyway, there is no wx work at all, so the point is moot Why not cmake? I would love to see cmake-based build for Gdk as well, but I don't know cmake and writing this generator seemed simpler and faster (for me) than learning about cmake. This is the script I'm using for building gdk and I plan on maintaining it in the future.
Mark Rowe (bdash)
Comment 5 Monday, October 16, 2006 2:07:48 AM UTC
I'd like to see us go straight to CMake for Gdk rather than using yet another build system that needs to be kept in sync with other platforms. I started working on moving the Gdk port over to CMake last week, but unfortunately my machine with that work on it has been in the shop since then. I should be able to complete this work within a day or two of getting it back. I would much rather that we hold off on changing the build system until we can move directly to CMake.
Anders Carlsson
Comment 6 Monday, October 16, 2006 2:15:04 AM UTC
Comment on attachment 11104 [details] script for generatking gdk makefile Based on Mark's comments I'm marking these patches r-
Anders Carlsson
Comment 7 Monday, October 16, 2006 2:16:46 AM UTC
Comment on attachment 11105 [details] release gdk makefile Based on Mark's comments I'm marking these patches r-
Anders Carlsson
Comment 8 Monday, October 16, 2006 2:18:55 AM UTC
Comment on attachment 11106 [details] debug gdk makefile Based on Mark's comments I'm marking these patches r-
Holger Freyther
Comment 9 Thursday, March 29, 2007 1:24:41 PM UTC
(In reply to comment #5) > I'd like to see us go straight to CMake for Gdk rather than using yet another > build system that needs to be kept in sync with other platforms. Is cmake still the preferred option? In that case I would finish up my work and submit patches.
Holger Freyther
Comment 10 Thursday, March 29, 2007 11:21:53 PM UTC
Created attachment 13880 [details] WorkInProgress to revive CMake and to allow non Qt platforms Is that the way to go for building Gdk? Or what is the current plan? CMakeLists.txt | 20 +++ ChangeLog | 9 + WebCore/CMakeLists.txt | 259 +++++++++++++++++++++++++++++++------------------ WebCore/ChangeLog | 9 + 4 files changed, 199 insertions(+), 98 deletions(-)
Mark Rowe (bdash)
Comment 11 Thursday, March 29, 2007 11:26:26 PM UTC
I'm not sure what the best approach is now. It seems as though the Qt port has moved from using CMake to preferring QMake. The last I heard the CMake-based Qt build no longer worked. That said, the Gdk "Bakefile" build system was very cumbersome when I last used it, both in terms of compiling with it and in terms of making changes in configuration. If CMake simplifies this then it can only be a good thing.
Mark Rowe (bdash)
Comment 12 Tuesday, April 24, 2007 2:15:49 PM UTC
Given that the Qt port no longer uses CMake, I don't see any value in moving the Gdk port over to it when the Bakefile-based system is holding up reasonably, and has recently been picked up by the wxWidgets port in the wx-port-alpha branch. I think improvements to the existing build system would be preferable at this stage to a wholesale replacement. Based on this, I'm going to close this bug as WONTFIX. If we decide a different build system would be preferable at some stage in the future, we can handle that via discussion on the mailing list and a new bug report.
Mark Rowe (bdash)
Comment 13 Tuesday, April 24, 2007 2:16:42 PM UTC
Sigh, FIXED != WONTFIX. Reopening to close correctly.
Note You need to log in before you can comment on or make changes to this bug.