GNOME Bugzilla – Bug 536767
gtksignal.h includes gtk.h
Last modified: 2013-07-30 02:35:26 UTC
Please describe the problem: gtksignal.h includes gtk.h, witch includes all gtk header files. this causes problems with some header files. i noticed this when compiling evolution 2.22 with gtk+-2.23.2 eg: test.c: #include <gtk/gtkclist.h> Steps to reproduce: 1. #include <gtk/gtkclist.h> Actual results: n file included from /usr/include/gtk-2.0/gtk/gtk.h:221, from /usr/include/gtk-2.0/gtk/gtksignal.h:32, from /usr/include/gtk-2.0/gtk/gtkclist.h:34, from test.c:2: /usr/include/gtk-2.0/gtk/gtkctree.h:110: error: expected specifier-qualifier-list before ‘GtkCList’ /usr/include/gtk-2.0/gtk/gtkctree.h:127: error: expected specifier-qualifier-list before ‘GtkCListClass’ /usr/include/gtk-2.0/gtk/gtkctree.h:149: error: expected specifier-qualifier-list before ‘GtkCListRow’ /usr/include/gtk-2.0/gtk/gtkctree.h:342: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘gtk_ctree_node_get_cell_type’ Expected results: Does this happen every time? Other information: changing #include <gtk/gtk.h> to #include <gtk/gtkobject.h> in gtksignal.h fixes the problem
Confirmed. I've been using the attached patch on FreeBSD. The other port known to break with the gtk+-2.13.3 gtksignal.h is inkscape.
Created attachment 112754 [details] [review] Limit includes in gtksignal.h
Confirmed to break clawsmail too. See https://bugs.launchpad.net/ubuntu/+source/gtk+2.0/+bug/247909. Commit 20221 should be reverted.
Confirming based on the number of confirmations :-) Still happens with Gtk+ 2.14.1.
ping...
gtksignal.h is gone in gtk3
(In reply to comment #6) > gtksignal.h is gone in gtk3 That doesn't really help for gtk+ 2.24 branch. Perhaps the patch could still be applied here, instead of by distributions.
(In reply to comment #7) > (In reply to comment #6) > > gtksignal.h is gone in gtk3 > > That doesn't really help for gtk+ 2.24 branch. Can you confirm this with stable GTK+ 2.24? What is the app that is failing for you?
Well, my comment was posted after I've done the test from the initial report on 2.24.5.
Please reopen then as this still affects to 2.24 Thanks
thanks for the patch! could you please reformat the patch so that it's the output of `git format-patch`? this way we can properly credit you, and it makes it easier for us to apply it. thanks again!
Pushed to 2.24