guile bindings not multi-arch safe
Hello,
when building gnutls 3.6.9 with e.g. ./configure [...] --prefix=/usr [...] --libdir=\${prefix}/lib/x86_64-linux-gnu--libexecdir=\${prefix}/lib/x86_64-linux-gnu
one ends up with essentially the following list of files:
/usr/share/guile/site/2.2/gnutls.scm
/usr/lib/x86_64-linux-gnu/guile/2.2/site-ccache/gnutls.go
/usr/lib/x86_64-linux-gnu/guile/2.2/extensions/guile-gnutls-v-2.so.0
/usr/lib/x86_64-linux-gnu/guile/2.2/extensions/guile-gnutls-v-2.so
/usr/lib/x86_64-linux-gnu/guile/2.2/extensions/guile-gnutls-v-2.so.0.0.0
and /usr/share/guile/site/2.2/gnutls.scm contains
(eval-when (expand load eval)
(define %libdir
(or (getenv "GNUTLS_GUILE_EXTENSION_DIR")
"/usr/lib/x86_64-linux-gnu/guile/2.2/extensions"))
(load-extension (string-append %libdir "/guile-gnutls-v-2")
"scm_init_gnutls"))
i.e. we have a file in /usr/share ("architecture independent data") whose contents are not identical on different architectures.
This is a long-standing issue (see https://bugs.debian.org/658110) but is supposed to be fixable in guile-2.0 and later.