[Pkg-pascal-devel] Bug#820708: Bug#820708: castle-game-engine: hardcoded libpng12 dependency

Michalis Kamburelis michalis.kambi at gmail.com
Mon Apr 11 19:53:08 UTC 2016


> Source: castle-game-engine
> Version: 5.2.0-2
> Severity: serious
> Justification: libpng1.6 transition
>
> Dear maintainer,
>
> in the discussion in #820566 it surfaced that castle-game-engine has a hardcoded
> dependency on libpng12.
>
> After the completion of the tlibpng 1.6 transition, libpng12 will be removed,
> Therefore this bug is RC.
>
> Another bug is that this dependency is completly oqaue to the outside world.
> this is why has not been detected during the preparation of the transtiion.
> Please establish something here to catch e.g by buildtime checks,
> build-conflicts or other measure to make this more robust for other transitions.
>
> (view3dscene, #820566 has the same bug, maybe you find can together find an solution.)

1. 2. are just clarifications (I'm just repeating here some bits
mentioned in https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=820566
), 3. is a suggestion how to make a buildtime check if someone would
like to tackle this:)

1. Castle Game Engine works with libpng 1.2 or 1.4 (not only 1.2).

2. It's not a "hard dependency on libpng". It's perfectly sensible to
use Castle Game Engine without libpng. Having libpng installed *helps*
(it allows you to open png images, obviously), but it is not required
for all CGE use-cases. E.g. if you make a game that does not load png
images, you can certainly use Castle Game Engine without libpng.

  For Debian packaging, it may make sense to just simplify and say
"let castle-game-engine recommend libpng". I'm just saying that it's
not a strict dependency for upstream.

  Also remember that it will disappear in next CGE release, where PNG
reader is implemented without libpng (using FPC fcl-image, so it gets
compiled statically in, with the rest of FPC RTL).

3. If you want to add an automatic test that CGE can correctly
read+write PNG files, you can use e.g.
examples/images_videos/image_convert.lpr . Just compile it, and run
like

  image_convert ../2d/box_with_borders.png /tmp/whatever.png

  If /tmp/whatever.png exists, then png reading+writing works. In case
of problems (like a missing libpng), the program should write a clear
error message and have non-zero exit status.

Regards,
Michalis



More information about the Pkg-pascal-devel mailing list