Bug#301258: gnome-vfs2: FTBFS on hurd-i386: several issues [patch]

Michael Banck Michael Banck <mbanck@debian.org>, 301258@bugs.debian.org
Thu, 24 Mar 2005 19:03:46 +0100


--ZGiS0Q5IWpPtfppv
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

Package: gnome-vfs2
Severity: important
Tags: patch

gnome-vfs2 FTBFS because of several issues:

1. fam is not ported to the Hurd, and although sbuild install
libgamin-dev instead, the check for correct Build-Deps fails.

2. libsmbclient is not avaible on the Hurd.

3. IPv6 is not available on the Hurd.

4. libgnomevfs/gnome-vfs-cdrom.c uses Linux-specific code which breaks 
on GNU/Hurd (GNOME BZ #171495)

5. libgnomevfs/gnome-vfs-unix-mounts.c uses PATH_MAX unconditionally in
an (supposedly) AIX code path (GNOME BZ #171500)

The attached patch fixes all this, do you think this is acceptable as
patch?  Due to the exact Dependency from libgnomevfs2-0 on
libgnomevfs2-common, it is difficult to use a local gnome-vfs2 for the
time being for further GNOME porting.


cheers,

Michael

--ZGiS0Q5IWpPtfppv
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="gnome-vfs2.interdiff"

gnome-vfs2 (2.8.4-2+hurd.1) unreleased; urgency=low

  * Non-maintainer upload.
  * debian/control.in (Build-Depends): Do not require libsmbclient-dev on
    hurd-i386.
    (Build-Depends): Add libgamin-dev as alternative to libfam-dev.
  * debian/rules (DEB_CONFIGURE_EXTRA_FLAGS): Add --disable-samba and
    remove --enable-ipv6 for hurd-i386.
  * debian/patches/18_cdrom_fallback.patch
    - Conditionalize CDROM_DISC_STATUS ioctl to __linux__ and fall back 
      to returning CDS_NO_INFO otherwise.
  * debian/patches/19_hurd_path_max.patch
    - #define PATH_MAX to 4096 if not defined already.

 -- Michael Banck <mbanck@debian.org>  Thu, 24 Mar 2005 15:50:57 +0100

diff -u gnome-vfs2-2.8.4/debian/control.in gnome-vfs2-2.8.4/debian/control.in
--- gnome-vfs2-2.8.4/debian/control.in
+++ gnome-vfs2-2.8.4/debian/control.in
@@ -3,7 +3,7 @@
 Priority: optional
 Maintainer: Takuo KITAME <kitame@debian.org>
 Uploaders: @GNOME_TEAM@
-Build-Depends: cdbs, libbonobo2-dev (>= 2.6.0), libgconf2-dev (>= 2.8.0-1), libxml2-dev, libbz2-dev, libfam-dev (>= 2.6.9-4), libsmbclient-dev, gettext, debhelper (>= 4.1.0), zlib1g-dev, intltool, gnome-mime-data, libgnutls11-dev (>= 1.0.4-3), liborbit2-dev (>= 1:2.10.0), gnome-pkg-tools
+Build-Depends: cdbs, libbonobo2-dev (>= 2.6.0), libgconf2-dev (>= 2.8.0-1), libxml2-dev, libbz2-dev, libfam-dev (>= 2.6.9-4) | libgamin-dev, libsmbclient-dev [ !hurd-i386], gettext, debhelper (>= 4.1.0), zlib1g-dev, intltool, gnome-mime-data, libgnutls11-dev (>= 1.0.4-3), liborbit2-dev (>= 1:2.10.0), gnome-pkg-tools
 Standards-Version: 3.6.1
 
 Package: libgnomevfs2-common
diff -u gnome-vfs2-2.8.4/debian/rules gnome-vfs2-2.8.4/debian/rules
--- gnome-vfs2-2.8.4/debian/rules
+++ gnome-vfs2-2.8.4/debian/rules
@@ -6,9 +6,16 @@
 include /usr/share/cdbs/1/rules/simple-patchsys.mk
 include /usr/share/gnome-pkg-tools/1/rules/uploaders.mk
 
+ifeq ($(DEB_HOST_ARCH),hurd-i386)
+DEB_CONFIGURE_EXTRA_FLAGS := --disable-gtk-doc --disable-openssl \
+                             --enable-gnutls --sysconfdir=/etc \
+                             --disable-howl --disable-samba
+else
 DEB_CONFIGURE_EXTRA_FLAGS := --disable-gtk-doc --disable-openssl \
                              --enable-gnutls --enable-ipv6 --sysconfdir=/etc \
                              --disable-howl
+endif
+
 DEB_DH_INSTALL_ARGS := -Xcdda -Xlibextfs -Xlibnntp -Xlibtar -Xlibvfs-pipe
 
 DEB_DH_MAKESHLIBS_ARGS_libgnomevfs2-common := --no-act
--- gnome-vfs2-2.8.4.orig/debian/patches/19_hurd_path_max.patch
+++ gnome-vfs2-2.8.4/debian/patches/19_hurd_path_max.patch
@@ -0,0 +1,12 @@
+--- libgnomevfs/gnome-vfs-unix-mounts.c.orig	2005-03-24 15:49:19.000000000 +0100
++++ libgnomevfs/gnome-vfs-unix-mounts.c	2005-03-24 15:49:55.000000000 +0100
+@@ -85,6 +85,9 @@
+ 
+ #define STAT_TIMEOUT_SECONDS 3
+ 
++#ifndef PATH_MAX
++#define PATH_MAX 4096
++#endif
+ 
+ /* Ideally this should not nonblocking stat, since that can block on
+  * downed NFS mounts forever, however there seems to be no good way
--- gnome-vfs2-2.8.4.orig/debian/patches/18_cdrom_fallback.patch
+++ gnome-vfs2-2.8.4/debian/patches/18_cdrom_fallback.patch
@@ -0,0 +1,20 @@
+--- libgnomevfs/gnome-vfs-cdrom.c.orig	2005-03-24 14:46:28.000000000 +0100
++++ libgnomevfs/gnome-vfs-cdrom.c	2005-03-24 14:47:37.000000000 +0100
+@@ -142,7 +142,7 @@
+ 
+ #endif /* defined(__FreeBSD__) */
+ 	return type;
+-#else
++#elif defined(__linux__)
+ 	*fd = open (vol_dev_path, O_RDONLY|O_NONBLOCK);
+ 	if (*fd  < 0) {
+ 		return -1;
+@@ -153,6 +153,8 @@
+ 		return -1;
+ 	}
+ 	return ioctl (*fd, CDROM_DISC_STATUS, CDSL_CURRENT);
++#else
++	return CDS_NO_INFO;
+ #endif
+ }
+ 

--ZGiS0Q5IWpPtfppv--