Timberland nvme-cli/libnvme upstream merge - dbus dependency.

Belanger, Martin Martin.Belanger at dell.com
Fri Feb 3 08:27:25 PST 2023


> On Fri, Feb 03, 2023 at 10:43:04AM -0500, John Meneghini wrote:
> > I have a question for the upstream nvme maintainers.
> >
> > Why does libnvme, as v1.3, now have a dependency on dbus?
> 
> libnvme-mi uses a D-Bus service for discovering devices. Initially libnvme-mi
> used libsystemd as D-Bus library. libsystemd is only available as shared library,
> thus we can't build the library statically (yes, some people want to do this). We
> switch the implementation to use libdbus. I made usre that it can be consumed
> as suprojects. New library, old optional dependency.
> 
> > I thought the goal was to keep the nvme management plane as streamline
> > and daemon free as possible.
> 
> Yes and it is optional. The new feature is that you can compile it as static
> dependency and this is what you currently see.
> 
> The current nvme-cli meson.build configuration for libnvme is always pulling
> the fallback. A workaround is to build libnvme as separate step as you would
> do when packaging.
> 
> > We already have a dependency on the udev daemon.
> 
> Not on code level (no library). I don't see how we can avoid this and I don't
> understand why this is now a problem.
> 
> Concerning meson version: We always used features from 0.50.0 hence the
> min version of 0.47.0 was wrong. We just updated this.
> 
> Daniel

In meson_options.txt we find the build option libdbus. Maybe the dependency can be disabled simply as follows:

$ meson .build -Dlibdbus=disabled
$ make

Martin

Internal Use - Confidential



More information about the Linux-nvme mailing list