Skip to content

GitLab

    • GitLab: the DevOps platform
    • Explore GitLab
    • Install GitLab
    • How GitLab compares
    • Get started
    • GitLab docs
    • GitLab Learn
  • Pricing
  • Talk to an expert
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
    • Switch to GitLab Next
    • Menu
    Projects Groups Snippets
  • Get a free trial
  • Sign up
  • Login
  • Sign in / Register
  • GnuTLS GnuTLS
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 242
    • Issues 242
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 18
    • Merge requests 18
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • gnutls
  • GnuTLSGnuTLS
  • Issues
  • #838
Closed
Open
Created Sep 22, 2019 by Andreas Metzler@ametzlerDeveloper

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.

Assignee
Assign to
Time tracking