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 via email to