Subject: Re: [bug#27848] guix: build-system: gnu: Avoid warnings from "libtool finish"

From: [email-masked] (Ludovic Courtès)
Date: Mon, 31 Jul 2017 17:28:55 +0200

Dave Love <[email-masked]> skribis:

> --- a/guix/build/gnu-build-system.scm
> +++ b/guix/build/gnu-build-system.scm
> @@ -271,9 +271,15 @@ makefiles."
>      ;; Call `configure' with a relative path.  Otherwise, GCC's build system
>      ;; (for instance) records absolute source file names, which typically
>      ;; contain the hash part of the `.drv' file, leading to a reference leak.
> -    (zero? (apply system* bash
> -                  (string-append srcdir "/configure")
> -                  flags))))
> +    (and (zero? (apply system* bash
> +                       (string-append srcdir "/configure")
> +                       flags))
> +         ;; Avoid warnings about from "libtool finish" about not finding
> +         ;; ldconfig.
> +         (if (file-exists? "libtool")
> +             (begin (substitute* "libtool" (("ldconfig") ":"))
> +                    #t)
> +             #t))))
>  

I’m not too keen on this approach, in large part because I’ve got used
to the “ldconfig not found” messages, but also because a simple change
like this can create more problems than what it solves: packages where
the “libtool” script lives in a different directory, packages where
“libtool” is a different thing, packages where it’s read-only or where
it’s a directory, etc.

Since this is a rebuild-the-world change, we have to make sure it’s
really worth it.

WDYT?

Thanks,
Ludo’.