What about the removed dependencies?

Dominique Dumont dod at debian.org
Wed May 2 08:57:57 UTC 2012


Le Monday 30 April 2012 21:53:04, Manuel A. Fernandez Montecelo a écrit :
> Hi,
> 
> So what happens with the problem of the missing dependencies?
> http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=670122
> http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=669571
> 
> I think that they are needed because the .so an static linking links
> to them, even if they are not used in SDL_image.h header (and the same
> for other modules). 

Well, let's keep a consisten terminology. libSDL-1.2.so is linked 
(dynamically) to other libraries (as shown by ldd). No static library (.a) is 
provided

I *think* (but have not verified) that sdl-config listing all these libs is 
necessary so the linker can resolve *all* symbols during compilation of a SDL 
application (like bomberclone). 

Symbols like png functions are linked in your application whenever you load 
libSDL-1.2. But they can be used only if you can have access to the API (the 
.h file) during the compilation. In other word, you need to have libpng-dev 
only if your application need to use directly symbols from png. libpng-dev is 
not needed if your application does not handle directly png files. Note that 
png data can be handled as binary blob and forwarded to sdl without needing 
special png function (hence without needing linpng-dev).

> Ideally, if application A depends on libpng it would depend and link
> to it along with SDL when compiling, and avoid the other gazillion
> dependencies, without causing any problem.  But part of SDL's job is
> to abstract people from such mess of having to decide which formats to
> support, and just support everything out of the box.

You're right for libraries (the ABI). I disagree with respect to the API.

> Theoretically it should be even possible to support different formats
> than what the package is shipped with.  For example, if a game loads
> portraits of avatars, it should be possible to define a new portrait
> for one of the avatar in, say. webp format, when all of the rest are
> in png (for example, because the human player choses a favourite image
> for the avatar in a local directory).  The game shouldn't fail/crash
> when trying to load this image just because the Debian maintainer
> oversought a new image format supported in a new SDL-image version.

This is a decision implemented with the options passed to ./configure. If the 
webp format is handled a a binary blob to sdl, the application does not need 
the webp API (the .h file and -dev pkg) to pass this image to sdl. 

> On top of that, I think that SDL packages depended for too long on
> those libraries, so removing the dependencies a couple of months
> before a freeze when there are 150-200 packages depending on SDL is
> not good... I guess that, if we disable the dependencies in the end,
> we should do it in another moment in time (after the freeze, or in 2.0
> versions).

That's a valid point. Now, before deciding, we need to know the actual number 
of impacted packages (i.e. that FTBS because their build-depend list is 
wrong). 

So we far only know about 3 packages, which are all fixed now (one did even 
clean up its test).

And nobody else has complained.

> I volunteer to put back those dependencies and upload those versions
> if everybody agrees, but I am also happy if you take part in the
> fixes.
> 
> Comments?

I think we should follow up on these bugs by mentioning that the impacted 
packages are fixed and we won't fix them unless a *lot* (i.e. more than 10) of 
packages are FTBS because of this change.

Thoughts ?

Dominique
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.alioth.debian.org/pipermail/pkg-sdl-maintainers/attachments/20120502/a9d0132c/attachment.pgp>


More information about the Pkg-sdl-maintainers mailing list