Bug 238837 - dev-ruby/gtk+-0.16.0-r2 fails to build with gtk+-2.14.3
Bug#: 238837 Product:  Gentoo Linux Version: unspecified Platform: All
OS/Version: All Status: RESOLVED Severity: normal Priority: P2
Resolution: FIXED Assigned To: gnome@gentoo.org Reported By: graaff@gentoo.org
Component: Ebuilds
URL: 
Summary: dev-ruby/gtk+-0.16.0-r2 fails to build with gtk+-2.14.3
Keywords:  
Status Whiteboard: 
Opened: 2008-09-27 06:47 0000
Description:   Opened: 2008-09-27 06:47 0000
See compilation error below. Note that the ruby-gnome2 bindings are already at
0.17 upstream and we intend to start working on that in the ruby overlay
shortly. I'm not sure if it will be easy to fix compilation with this version
of gtk+ given that a whole header file is gone (which most likely indicates a
significant change in functionality).

gcc -I.
-I/var/tmp/portage/dev-ruby/ruby-gtk2-0.16.0-r2/work/ruby-gnome2-all-0.16.0/pango/src
-I/var/tmp/portage/dev-ruby/ruby-gtk2-0.16.0-r2/work/ruby-gnome2-all-0.16.0/glib/src
-I. -I/usr/lib64/ruby/1.8/x86_64-linux -I. -DHAVE_RB_DEFINE_ALLOC_FUNC
-DHAVE_RB_BLOCK_PROC -DHAVE_OBJECT_ALLOCATE -DHAVE_NODE_ATTRASGN
-DRUBY_GTK2_TARGET=\"x11\" -DHAVE_GTK_PLUG_GET_TYPE -DHAVE_GTK_SOCKET_GET_TYPE
-DHAVE_PANGO_RENDER_PART_GET_TYPE -DHAVE_X11_XLIB_H
-DHAVE_GTK_PRINT_UNIX_DIALOG_GET_TYPE -DHAVE_GTK_PRINT_JOB_GET_TYPE
-DHAVE_GTK_PRINTER_GET_TYPE -DHAVE_RB_CAIRO_H -DRUBY_GTK2_COMPILATION  
-I/usr/lib64/ruby/site_ruby/1.8/x86_64-linux  -fPIC -O2 -pipe -march=k8
-fno-strict-aliasing  -fPIC -Wall -pthread -I/usr/include/glib-2.0
-I/usr/lib64/glib-2.0/include   -I/usr/include/gtk-2.0
-I/usr/lib64/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo
-I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include
-I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/pixman-1  
-I/usr/include/gtk-unix-print-2.0 -I/usr/include/gtk-2.0 -I/usr/include/atk-1.0
-I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/lib64/gtk-2.0/include
-I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/freetype2
-I/usr/include/libpng12 -I/usr/include/pixman-1   -I/usr/include/cairo
-I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/pixman-1    -c
rbgtkfilechooser.c
rbgtkfilechooser.c:21:31: error: gtk/gtkfilesystem.h: No such file or directory
rbgtkfilechooser.c: In function ‘Init_gtk_file_chooser’:
rbgtkfilechooser.c:371: error: ‘GTK_FILE_SYSTEM_ERROR’ undeclared (first
use in this function)
rbgtkfilechooser.c:371: error: (Each undeclared identifier is reported only
once
rbgtkfilechooser.c:371: error: for each function it appears in.)
rbgtkfilechooser.c:372: error: ‘GTK_FILE_SYSTEM_ERROR_NONEXISTENT’
undeclared (first use in this function)
rbgtkfilechooser.c:373: error: ‘GTK_FILE_SYSTEM_ERROR_NOT_FOLDER’
undeclared (first use in this function)
rbgtkfilechooser.c:374: error: ‘GTK_FILE_SYSTEM_ERROR_INVALID_URI’
undeclared (first use in this function)
rbgtkfilechooser.c:375: error: ‘GTK_FILE_SYSTEM_ERROR_BAD_FILENAME’
undeclared (first use in this function)
rbgtkfilechooser.c:376: error: ‘GTK_FILE_SYSTEM_ERROR_FAILED’ undeclared
(first use in this function)
rbgtkfilechooser.c:377: error: ‘GTK_FILE_SYSTEM_ERROR_ALREADY_EXISTS’
undeclared (first use in this function)
make[1]: *** [rbgtkfilechooser.o] Error 1
make[1]: Leaving directory
`/var/tmp/portage/dev-ruby/ruby-gtk2-0.16.0-r2/work/ruby-gnome2-all-0.16.0/gtk/src'
make: *** [all] Error 2

------- Comment #1 From Mart Raudsepp 2008-09-28 07:23:18 0000 -------
GtkFileSystem was a semi-private construct that was possible to access before
mostly only so that libgnomeui can provide gnome-vfs filesystems backend for
remote filesystem access. gtk+-2.14 now uses GIO for it instead and doesn't
expose any specific about it - remote filesystem access is provided by
gnome-base/gvfs (and any possible later separate packages that might show up in
the future that provide gio filesystem modules) in a cleaner way. User just
installs gvfs with chosen vfs support (exposed via USE flags) and that remote
vfs support gets added to the GIO built-in local filesystem support.

Basically, don't wrap GtkFilesystem at all, never should have.

------- Comment #2 From Hans de Graaff 2008-09-28 07:49:56 0000 -------
Removing the wrapping of GtkFileSystem seems to work well. It is not used
anywhere else in the bindings. I guess this may break some apps using the
bindings that rely on this, but based on the comments they should not have been
using this in the first place.

------- Comment #3 From Hans de Graaff 2008-09-28 07:50:59 0000 -------
Created an attachment (id=166656) [details]
Proposed patch to fix this problem.

------- Comment #4 From Mart Raudsepp 2008-09-28 07:51:08 0000 -------
I highly doubt anyone has ever implemented VFS modules in ruby

------- Comment #5 From Hans de Graaff 2008-09-28 07:56:17 0000 -------
Fixed as ruby-gtk2-0.16.0-r4 in CVS.