vdr-plugin-softdevice now in SVN repository

Martin Wache pkg-vdr-dvb-devel@lists.alioth.debian.org
Mon, 23 May 2005 17:28:13 +0200


Nicolas Huillard wrote:
> Tobias Grimm a =E9crit :
>=20
>> Nicolas Huillard wrote:
>>
>>> Nota : there is a possibility to compile softdevice output methods in
>>> stand-alone .so, that I disabled, because they get installed in the
>>> plugin directory, and runvdr tries to run them as plugin (which they
>>> are not). Maybe there is a better way to do that than disabling .so
>>
>>
>> It wouldn't be too hard to install these sub-libs in another directory=
.
>> As far as I saw, the plugin has an option to specify the sub-lib
>> directory. But I'm note sure, this will make a big difference. As ffmp=
eg
>> is linked statically, the plugin itself is pretty big anyway - with or
>> without the sub-libs. Do you see any advantage in separating the outpu=
t
>> libs?
>=20
>=20
> I don't.
> I think Martin developed this feature.=20
This feature has been introduced by Stefan. It's purpose is not to have=20
unnecessary shared library dependencies in binary distributions.

If you compile the softdevice with for instance Xv and DirectFB out=20
enabled the libvdr-softdevice.so will depend on libdfb++.so and several=20
X11 shared libraries (eg libX11.so, libXv.so and many more). That means=20
that these libraries have to be available on the disk since they will be=20
loaded when the plugin is loaded. To my knowledge the loading of the=20
softdevice will _fail_ if not all shared libraries are present on the dis=
k.

Which means that in a binary distribution where the softdevice is=20
compiled with Xv and DirectFB and a user just wants to use DirectFB he=20
still has to install the X11 libraries. This is where the subplugins=20
come in. If the softdevice is split in subplugins only the subplugins=20
will depend on the corresponding libraries ( X11 or DirectFB).
So a user may install the base softdevice and the subplugin for=20
directFB, and he doesn't have to install X11 anymore.

So I think once you support DirectFB you should consider creating more=20
than just one binary package. Either you use subplugins and create some=20
kind of base softdevice package which depends on having at least one of=20
the  subplugin packages installed (note that installing more than one=20
should work).
Or you can create several softdevice packages, each one having only one=20
output method enabled (note that this way only one output method will=20
work at a time).

Bye,
Martin

PS: is there a known reason why debian has only static ffmpeg libraries?=20
There are many more projects which use ffmpeg, so I think it would make=20
sense to have shared libraries...