Summary: | [EFL] [GTK] Build break with glib >= 2.35.0 | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | szukw000 | ||||||
Component: | WebKit2 | Assignee: | Jussi Kukkonen (jku) <jussi.kukkonen> | ||||||
Status: | RESOLVED FIXED | ||||||||
Severity: | Normal | CC: | gyuyoung.kim, jussi.kukkonen, laszlo.gombos, mrobinson, rakuco, webkit.review.bot | ||||||
Priority: | P2 | ||||||||
Version: | 528+ (Nightly build) | ||||||||
Hardware: | Unspecified | ||||||||
OS: | Unspecified | ||||||||
Bug Depends on: | |||||||||
Bug Blocks: | 104528 | ||||||||
Attachments: |
|
Description
szukw000
2012-11-25 16:41:37 PST
Created attachment 175896 [details]
deprecated function triggered compilation stop
I do not see this problem. I am using Ubuntu 12.04. Can you share a bit more about your environment ? Also a few pointers for you: - building EFL Webkit - http://trac.webkit.org/wiki/EFLWebKit (note the update-webkitefl-libs part) - contributing to WebKit (format of the patches, ChangeLog, etc) - http://www.webkit.org/coding/contributing.html Which version of glib are you using ? It seems that g_type_init() is deprecated for glib >= 2.35.0 glib-2.35.2.tar.xz atk-2.7.2.tar.xz gdk-pixbuf-2.26.5.tar.xz gtk+-3.4.4.tar.xz pango-1.32.3.tar.xz Normally 'deprecated' should not stop the compilation. But here it did. winfried You can control this error with GLIB_VERSION_MIN_REQUIRED. I don't understand how the build breaks because of this, but I guess we'll want to add a version check anyway -- the first patch doesn't work since calling g_type_init() is still required for earlier glib versions. EFL does not seem to have GtkVersioning.h type of file so I'll just add a #if to each call location... let me know if there's a good place to add a version dependent "#define g_type_init()": that would be cleaner. Created attachment 178792 [details]
Patch
Comment on attachment 178792 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=178792&action=review > Source/WebKit/efl/ChangeLog:9 > + g_type_init() is deprecated from 2.35.0 onwards. Don't call it > + in that case to avoid warnings and/or build failure. and it has no replacement? Comment on attachment 178792 [details]
Patch
One thing you can do instead is to add -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_32 to the compilation flags and it will disable all deprecation warnings for versions of GLib after that version.
(In reply to comment #9) > (From update of attachment 178792 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=178792&action=review > > > Source/WebKit/efl/ChangeLog:9 > > + g_type_init() is deprecated from 2.35.0 onwards. Don't call it > > + in that case to avoid warnings and/or build failure. > > and it has no replacement? No: Earlier calling g_type_init() it was required. 2.35 and after it is not needed at all. (In reply to comment #10) > (From update of attachment 178792 [details]) > One thing you can do instead is to add -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_32 to the compilation flags and it will disable all deprecation warnings for versions of GLib after that version. Sure, if we know we don't want to see the warnings: Hiding them can lead to surprises later on when functionality is really removed or changed. I guess that's not a very big problem with glib though... Either way works for me. (In reply to comment #7) > I don't understand how the build breaks because of this... I tested and we do indeed fail on warnings, so must have at least 'Werror=deprecated-declarations'. Personally I wouldn't do that normally, but since we mainly support jhbuild-based building, it kind of makes sense: a developer who checks things out and follows directions should not normally end up with a broken build. So assuming we want to preserve 'deprecated-declarations' build errors, I think we should go with my patch. Comment on attachment 178792 [details]
Patch
No-one's complained so I'll set cq? -- patch still applies cleanly.
Comment on attachment 178792 [details] Patch Clearing flags on attachment: 178792 Committed r137588: <http://trac.webkit.org/changeset/137588> All reviewed patches have been landed. Closing bug. |