Adding runtime dependencies that aren't caught by shlibs:Depends
Hi,
I'm working on adding more runtime dependencies to wine (see #823991).
Wine uses the dh sequencer and all relevant binary packages have a
"Depends: ${shlibs:Depends}". This adds some runtime dependencies, but
by far not for every build-dependency -dev package.
If I try to do that manually I come up with the following list of
builddeps and assumed runtime dependencies:
libxi-dev, libxi6
libxt-dev, libxt6
libxmu-dev, libxmu6
libxrandr-dev, libxrandr2
libxrender-dev, libxrender1
libxkbfile-dev, libxkbfile1
libxxf86vm-dev, libxxf86vm1
libxxf86dga-dev, libxxf86dga1
libxinerama-dev, libxinerama1
libxcomposite-dev, libxcomposite1
libpng-dev, libpng16-16
libssl-dev, libssl1.0.2
libgsm1-dev, libgsm1
libjpeg-dev, libjpeg62-turbo
libtiff-dev, libtiff5
libxslt1-dev, libxslt1.1
unixodbc-dev, libodbc1
libcups2-dev, libcups2
libdbus-1-dev, libdbus-1-3
freeglut3-dev, freeglut3
libosmesa6-dev, libosmesa6
libgnutls28-dev, libgnutls30
libgettextpo-dev, libgettextpo0
First off, I'm not sure about every single dependency if it is needed at
all. Is it reasonable to depend on (or recommend) all these packages,
given that the builddeps were added for a good reason? Or am I on the
completely wrong track here?
So far we only added dependencies manually for:
libncurses5-dev, libncurses5
libfreetype6-dev, libfreetype6
libfontconfig1-dev, libfontconfig1
But I'd assume we just didn't get bugreports for most of the others,
because Wine is such a big beast and many dependencies are just used
seldom and/or installed anyway.
Now, assuming that we really need all of them, but that there is no way
to automatically add them: is there any way to compute the needed
runtime dependency for a given builddep, in order to avoid hardcoding
this list and update it with every soname change of a depended upon
package?
We do so for libncurses5-dev and libfreetype6-dev by stripping the
"-dev" from the builddep line that contains "ncurses" or "freetype". But
this approach unfortunately doesn't work for all packages' naming schemes.
Greets
jre
Reply to: