After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 747841 - gio: plugin dependencies wrong or insufficient
gio: plugin dependencies wrong or insufficient
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other Linux
: Normal normal
: 1.5.1
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-04-14 10:43 UTC by Jan Alexander Steffens (heftig)
Modified: 2015-04-17 14:23 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
gst-glib.m4: also export GIO_GVFS_DIR in config.h for gio plugin (1.02 KB, patch)
2015-04-14 11:49 UTC, Tim-Philipp Müller
none Details | Review
gio: fix gvfs plugin dependencies (1.31 KB, patch)
2015-04-14 11:50 UTC, Tim-Philipp Müller
none Details | Review

Description Jan Alexander Steffens (heftig) 2015-04-14 10:43:07 UTC
The gio plugin adds a dependency on gio-2.0's giomoduledir (correct), but also a dependency on "gvfsd" either in the library paths or gio-2.0's libdir.

This latter dependency is not only insufficient (e.g. it will miss the addition of "gvfsd-smb") but also wrong: The correct path to use would be gvfs' libexecdir, which is set to /usr/lib/gvfs on Arch. However, gvfs does not have a pkgconfig file, so discovering this path automatically seems impossible.
Comment 1 Jan Alexander Steffens (heftig) 2015-04-14 10:47:18 UTC
I guess an alternative could be monitoring $(datadir)/gvfs/mounts .
Comment 2 Tim-Philipp Müller 2015-04-14 11:42:05 UTC
We can't use GStreamer's directories, we have to base it on something gio gives us.
Comment 3 Tim-Philipp Müller 2015-04-14 11:49:14 UTC
Created attachment 301529 [details] [review]
gst-glib.m4: also export GIO_GVFS_DIR in config.h for gio plugin
Comment 4 Tim-Philipp Müller 2015-04-14 11:50:05 UTC
Created attachment 301530 [details] [review]
gio: fix gvfs plugin dependencies

This seems correct on my debian sid system, but not sure if it's generally correct.
Comment 5 Tim-Philipp Müller 2015-04-14 15:02:51 UTC
Ok, pushed something based on the mounts directory instead after discussion on IRC.

ommit dc4e517dc6de54182c81e68e27feb13585a66e8f
Author: Tim-Philipp Müller <tim@centricular.com>
Date:   Tue Apr 14 12:47:07 2015 +0100

    gio: fix gvfs plugin dependencies
    
    Try harder to look for gvfs backend changes in the right
    place, to make sure the plugin gets reloaded when backends
    are removed or installed. We watch the gvfs mounts directory
    because the files there contain absolute paths to the
    backend executables, and those may not be in the usual gio
    path.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=747841
Comment 6 Vincent Penquerc'h 2015-04-17 13:56:29 UTC
This patch uses GIO_PREFIX, which appears not to be in glib 2.41 (~april 2014 tree), though -base requires glib 2.32 (so build breaks with 2.41 though configure passes).
Comment 7 Jan Alexander Steffens (heftig) 2015-04-17 14:03:55 UTC
GIO_PREFIX was added in http://cgit.freedesktop.org/gstreamer/common/commit/?id=241fcb7de0af5df777b18821c81840564a7e5c95 . There's hardly a pkgconfig file without that variable.
Comment 8 Vincent Penquerc'h 2015-04-17 14:23:38 UTC
Indeed, fixed with an updated common. I did not realize it was from gst and not from gio with that name so I looked in the wrong place :)