Subject: bug#78445: meson-build-system's 'shrink-runpath phase fails for guile go files

From: Dariqq <[email-masked]>
Date: Fri, 16 May 2025 07:53:20 +0000

Hello,

On 15.05.25 22:59, Ludovic Courtès wrote:
> Hi,
> 
> 
> 
> This is because ‘strip-runpath’ expects FILE to contain a DT_RUNPATH
> section.  Failing that, the ‘runpath’ variable at gremlin.scm:417 is #f
> and the (dynamic-entry-type runpath) calls right below fails with a
> wrong-type-arg error.
> 
> A solution would be to fix ‘strip-runpath’ (patch below), though that
> involves a world rebuild.
> 

At first I thought it be 'only' a rebuild of the meson world, but I see 
now that (guix build gremlin) is also imported in gnu-build-system :(.

> Another solution is to arrange so that ‘meson-build-system’ does not
> touch .go files for this package, for instance by skipping the
> ‘shrink-runpath’ phase.
> 

Yeah, that's what I have been doing but I think 'strip-runpath' could 
handle this case more gracefully. Also when there is both a guile c 
extension and go files I'd need to do custom things to apply 
shrink-runpath only for the .so files. This is of course doable but 
feels like a workaround until a proper fix is available.

> HTH,
> Ludo’.