GNOME Bugzilla – Bug 621634
Does not compile with -DGSEAL_ENABLE
Last modified: 2013-10-22 12:51:41 UTC
This module does not build with -DGSEAL_ENABLE. See http://live.gnome.org/GnomeGoals/UseGseal . Note that maybe this report cannot be fixed yet, as GTK+ still misses some accessor functions (see bug 588389, bug 597610) needed for sealing. Also see http://live.gnome.org/GTK%2B/3.0/PendingSealings for current status. Output (not necessarily complete): ../lib/gui/gmlevelmeter.c: In function »gm_level_meter_realize«: ../lib/gui/gmlevelmeter.c:365: Error: »GtkObject« has no member named 'flags' ../lib/gui/gmmenuaddon.c: In function ‘menu_item_selected’: ../lib/gui/gmmenuaddon.c:143: error: ‘GtkStatusbar’ has no member named ‘messages’ ../lib/gui/gmstatusbar.c: In function ‘gm_sb_push_message’: ../lib/gui/gmstatusbar.c:113: error: ‘GtkStatusbar’ has no member named ‘messages’
For the first error, the code is : GTK_WIDGET_SET_FLAGS (widget, GTK_REALIZED); so any fix in gtk+ will flow on us... we do not need to move. See bug #611709, which is what the GtkStatusbar->messages messages are about : we will be able to fix it when the modified gtk+ gets in distributions.
> we do not need to move. Huh? I don't get that. GTK_WIDGET_SET_FLAGS in general is deprecated and remove for GTK 3.0. You have to switch to a non-deprecated setter function in the Ekiga code itself. For GtkStatusbar->messages would it be acceptable to use #if GTK_CHECK_VERSION (2,21,0) new_code #else old_code #endif in the Ekiga code in order to be able to continue shipping Ekiga in GNOME 2.31.x?
Oups. My bad. I pushed a change which still compiles, and should compile with a newer gtk+ and the GSEAL_ENABLE flags.
Hi Snark, thanks! May I (or can you) in lib/gui/gmstatusbar.c and lib/gui/gmmenuaddon.c please change #if GTK_CHECK_VERSION (2, 22, 0) to #if GTK_CHECK_VERSION (2, 21, 2) so Ekiga successfully compiles in jhbuild (the fix for bug 611709 is included in gtk+ 2.21.2)?
Please make the change.
Done: http://git.gnome.org/browse/ekiga/commit/?id=3275ab995a7a8745d856cc39f8bda9aaf0995384
For info, there are several files which currently do not compile with GSEAL: lib/engine/gui/gtk-core/form-dialog-gtk.cpp lib/engine/gui/gtk-frontend/book-view-gtk.cpp lib/engine/gui/gtk-frontend/roster-view-gtk.cpp lib/gui/gmmenuaddon.c src/gui/accounts.cpp src/gui/main_window.cpp src/gui/statusicon.cpp src/gui/statusmenu.cpp They will be fixed a bit later (before gnome 3.0), once gtk 2.22 appears in debian, the distribution we use...
William, why have you removed 3.0 target?
(In reply to comment #8) > William, why have you removed 3.0 target? Because Ekiga is not part of GNOME Core moduleset.
This bug appears to have been fixed? I had no problem in compiling ekiga with -DGSEAL_ENABLE, though I see that this affected Gnome 2, which I do not expect is relevant any longer?
Created attachment 257800 [details] configure log I apologize for not including this with the previous message. This was the logged output from configure, the following build (using make with no parameters) successfully compiled.
Indeed, it is surely fixed with gtk3 commits.