RESOLVED FIXED 22250
PLATFORM(CAIRO) should be defined by WIN_CAIRO define
https://bugs.webkit.org/show_bug.cgi?id=22250
Summary PLATFORM(CAIRO) should be defined by WIN_CAIRO define
Eric Seidel (no email)
Reported 2008-11-13 19:38:28 PST
CAIRO build should be defined by a __BUILDING_WIN_CAIRO define Right now to specify the CAIRO build we have a "blacklist" of what builds are not the CAIRO build. This is bad, IMO. We should instead of a whitelist of what builds *are* the cairo build. :) Right now every time someone ports WebCore they need to turn off cairo in JavaScriptCore/wtf/Platform.h or WebCore/config.h before they can turn on their own graphics system.
Attachments
proposed solution (1.14 KB, patch)
2009-11-28 19:14 PST, Laszlo Gombos
no flags
2nd try (1.19 KB, patch)
2009-12-01 18:14 PST, Laszlo Gombos
no flags
Eric Seidel (no email)
Comment 1 2008-11-13 20:26:51 PST
The most recent example of this: http://trac.webkit.org/changeset/38382
Laszlo Gombos
Comment 2 2009-11-28 19:14:39 PST
Created attachment 43988 [details] proposed solution Revision r45831 (http://trac.webkit.org/changeset/45831) - after this bug was filed - essentially introduced a solution. WIN_CAIRO is defined by the build system and can be used to detect the CAIRO build instead of the "blacklist" approach currently used in Platform.h. http://trac.webkit.org/changeset/45831 also defined WTF_PLATFORM_CAIRO in all relevant config.h files (it is not needed in JavaScriptCore/config.h as JavaScriptCore is not relying on the WTF_PLATFORM_CAIRO). The solution is to simply remove this part from Platform.h.
Eric Seidel (no email)
Comment 3 2009-11-29 07:07:05 PST
I'm confused. Does WIN_CAIRO build JSC exactly the same as WIN_OS? if so, we can kill this, yes.
Laszlo Gombos
Comment 4 2009-11-29 08:06:47 PST
(In reply to comment #3) > I'm confused. Does WIN_CAIRO build JSC exactly the same as WIN_OS? if so, we > can kill this, yes. Eric, it looks to me that that is the case. I searched for WIN_CAIRO in JavaScriptCore and the only hit was in Platform.h.
Brent Fulgham
Comment 5 2009-11-29 12:34:56 PST
(In reply to comment #4) > (In reply to comment #3) > > I'm confused. Does WIN_CAIRO build JSC exactly the same as WIN_OS? if so, we > > can kill this, yes. > > Eric, it looks to me that that is the case. I searched for WIN_CAIRO in > JavaScriptCore and the only hit was in Platform.h. It is not exactly the same. It is built using the Open Source "OpenCFLite" version of CoreFoundation. This has slightly different headers included by default, so there were a handful of places where includes had to be modified. Please confirm that the WinCairo port builds after making this change before r+ this change.
Laszlo Gombos
Comment 6 2009-11-29 13:50:56 PST
Brent, Thanks for looking into this. I did _not_ had a chance to confirm that the WinCairo port builds after making with the patch. I was hoping that maybe you or someone that you can recommend can help us with that. I had no intention to commit the patch before the build gets tested. Also, just to clarify my previous - somewhat vague - statement; under the JavaScriptCore directory there is no code behind any sort of CAIRO flag (WIN_CAIRO, PLATFORM(CAIRO), etc). Since WebCore and DumpRenderTree already properly sets PLATFORM(CAIRO) for WinCairo port in config.h - in theory - it should be safe to remove PLATFORM(CAIRO) from under JavaScriptCore/wtf/Platform.h.
Brent Fulgham
Comment 7 2009-11-30 17:10:32 PST
I just applied this change, and am building the WinCairo version. I'll report back shortly!
Laszlo Gombos
Comment 8 2009-12-01 06:10:03 PST
Brent, any update on this ? Thanks !
Brent Fulgham
Comment 9 2009-12-01 09:05:03 PST
Build worked just fine. Please go ahead and commit.
Laszlo Gombos
Comment 10 2009-12-01 10:47:41 PST
Comment on attachment 43988 [details] proposed solution Thanks Brent for helping out testing this !
WebKit Commit Bot
Comment 11 2009-12-01 11:01:17 PST
Comment on attachment 43988 [details] proposed solution Clearing flags on attachment: 43988 Committed r51551: <http://trac.webkit.org/changeset/51551>
WebKit Commit Bot
Comment 12 2009-12-01 11:01:22 PST
All reviewed patches have been landed. Closing bug.
Gustavo Noronha (kov)
Comment 13 2009-12-01 13:17:33 PST
I reverted this commit because it broke GTK+ and nobody was around to fix it timely.
Laszlo Gombos
Comment 14 2009-12-01 18:14:23 PST
Created attachment 44118 [details] 2nd try GTK port is also using CAIRO not just the WinCairo port. Sorry for the build break.
WebKit Review Bot
Comment 15 2009-12-01 18:18:18 PST
style-queue ran check-webkit-style on attachment 44118 [details] without any errors.
Maciej Stachowiak
Comment 16 2009-12-28 17:36:44 PST
Comment on attachment 44118 [details] 2nd try r=me
Eric Seidel (no email)
Comment 17 2009-12-28 22:42:33 PST
Attachment 44118 [details] was posted by a committer and has review+, assigning to Laszlo Gombos for commit.
WebKit Commit Bot
Comment 18 2009-12-29 13:16:29 PST
Comment on attachment 44118 [details] 2nd try Rejecting patch 44118 from commit-queue. Failed to run "['WebKitTools/Scripts/run-webkit-tests', '--no-launch-safari', '--exit-after-n-failures=1', '--quiet']" exit_code: 1 Running build-dumprendertree Running tests from /Users/eseidel/Projects/CommitQueueSVN/LayoutTests Testing 11854 test cases. svg/W3C-SVG-1.1/animate-elem-30-t.svg -> crashed Exiting early after 1 failures. 9849 tests run. 476.79s total testing time 9848 test cases (99%) succeeded 1 test case (<1%) crashed 7 test cases (<1%) had stderr output Full output: http://webkit-commit-queue.appspot.com/results/150846
Eric Seidel (no email)
Comment 19 2009-12-29 13:27:36 PST
Comment on attachment 44118 [details] 2nd try This failure was caused by bug 30098. The bots were about to fail, they were just behind. Re-queueing.
WebKit Commit Bot
Comment 20 2009-12-29 15:19:57 PST
Comment on attachment 44118 [details] 2nd try Clearing flags on attachment: 44118 Committed r52637: <http://trac.webkit.org/changeset/52637>
WebKit Commit Bot
Comment 21 2009-12-29 15:20:07 PST
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.