Bug#892861: libglm-dev: removal of default type initialization breaking packages

Andrew Caudwell acaudwell at gmail.com
Tue Mar 13 21:48:33 UTC 2018


Package: libglm-dev
Version: 0.9.9~a2-1
Severity: important

Dear Maintainer,

The packaged version of GLM, 0.9.9~a2 is an alpha (the current release is still
0.9.8.5) and removes the default initialization of vector, matrix and
quaternion types. Because of this code written against any earlier versions of
GLM may now have uninitialized value bugs introduced by this change (e.g. where
GLM types are member variables of a class) or now behave differently (mat4()
previously gave you an identity matrix, now this gives you a zero'd matrix).
Several issues have been raised upstream (including by myself) to re-add
initialization or at least make it optional.

This is the commit that introduced the change:

https://github.com/g-truc/glm/commit/4cf8a10af2bba678c2ad136006e6ec41118b6746

Additionally the requirement in this version to define GLM_ENABLE_EXPERIMENTAL
to use simple functions like length2() has broken multiple packages. I have put
off fixing this since making it compile just exposes the user to the
uninitialized value bugs. Unfortunately this has now meant my gource and
logstalgia debian packages have been removed from debian since they don't
complile with this GLM version.

Related upstream issues:

https://github.com/g-truc/glm/issues/740
https://github.com/g-truc/glm/issues/735
https://github.com/g-truc/glm/issues/732

IMO the ideal solution would be for 0.9.8.5 to be packaged instead, or at the
very least revert the initialization change.

I believe 0.9.9~a2 was originally packaged as it included an upstream fix to
compile with GCC 7.3. Some other distros have instead patched 0.9.8.5:

https://gitweb.gentoo.org/repo/gentoo.git/diff/media-
libs/glm?id=1e45f7cd1dfa04ef4b89eb453df04b62ee432425



-- System Information:
Debian Release: buster/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 4.14.0-3-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_NZ.UTF-8, LC_CTYPE=en_NZ.UTF-8 (charmap=UTF-8), LANGUAGE=en_NZ:en (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

-- no debconf information



More information about the debian-science-maintainers mailing list