On Thu, 23.10.14 12:44, Simon McVittie (simon.mcvit...@collabora.co.uk) wrote:
> On 23/10/14 12:21, Lennart Poettering wrote: > > The behaviour should really be to: > > > > 1. take the paths from configure switches > > 2. if they are not specified, try to get them from pkg-config > > 3. if the relevant pkg-config files are not installed, generate an error > > and refuse build > > Actually... with D-Bus maintainer hat on, I think it's better for > non-dbus packages to use their own ${sysconfdir}/dbus-1/system.d, > ${datadir}/dbus-1/services and so on, rather than querying dbus' > pkg-config file (analogous to the behaviour prescribed for XDG_DATA_DIRS > in the XDG basedir specification). That's what I recommended in the > D-Bus Specification. > > I consider the dbus-1/services and dbus-1/system-services paths to be > part of D-Bus, and they are specifically described in the D-Bus > Specification. The status of ${sysconfdir}/dbus-1/system.d is a bit less > clear-cut, but if we ever changed it, we'd break every system service. > > In particular, even if dbus-daemon is installed in /opt or something, it > is hard-coded to look for services in /usr/local and /usr as well as its > own ${prefix} (and the Specification says so). If someone is installing > software in a non-/usr tree, they're doing that because they want to > isolate it for whatever reason, and we probably shouldn't second-guess > that; if they want to search /opt/gnome (or whatever) in addition, it's > easy to configure dbus-daemon to do that, by dropping a file into system.d. > > This seems doubly true for systemd, which is the sort of thing that > really ought to be installed to (/etc and) /usr by the distribution > vendor in any case, so the system dbus-daemon is always going to pick it up. > > dbus-1.pc is mainly the pkg-config metadata for libdbus, the reference C > implementation of D-Bus. The abstract D-Bus protocol that has been > reimplemented by packages like dbus-sharp, dbus-java, GLib (GDBus) and > systemd (sd-bus) should not require use of libdbus, and libdbus isn't > even the implementation I recommend to most C authors (that would be > GLib's). Makes sense I guess. Except for the bits in /etc that really should be in /usr anyway... I'd take a patch that removes the pkg-config hook-up for dbus entirely from configure.ac then. Lennart -- Lennart Poettering, Red Hat _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel