From 72984210ab06dc3a56a1c2b666f3528ec5dcaadf Mon Sep 17 00:00:00 2001 From: Michael Alan Dorman Date: Wed, 21 Mar 2018 14:20:04 -0400 Subject: [PATCH] guile: Fix and clean up `libtool` propagation fixes Fixes #37548 --- pkgs/development/interpreters/guile/2.0.nix | 16 ++++++++++------ pkgs/development/interpreters/guile/default.nix | 16 ++++++++++------ 2 files changed, 20 insertions(+), 12 deletions(-) diff --git a/pkgs/development/interpreters/guile/2.0.nix b/pkgs/development/interpreters/guile/2.0.nix index afd90397e23..2c9aec5b695 100644 --- a/pkgs/development/interpreters/guile/2.0.nix +++ b/pkgs/development/interpreters/guile/2.0.nix @@ -27,12 +27,15 @@ nativeBuildInputs = [ makeWrapper gawk pkgconfig ]; buildInputs = [ readline libtool libunistring libffi ]; - propagatedBuildInputs = [ gmp boehmgc ] - # XXX: These ones aren't normally needed here, but since - # `libguile-2.0.la' reads `-lltdl -lunistring', adding them here will add + propagatedBuildInputs = [ + gmp boehmgc + + # XXX: These ones aren't normally needed here, but `libguile*.la' has '-l' + # flags for them without corresponding '-L' flags. Adding them here will add # the needed `-L' flags. As for why the `.la' file lacks the `-L' flags, # see below. - ++ [ libtool libunistring ]; + libtool libunistring + ]; enableParallelBuilding = true; @@ -70,11 +73,12 @@ postInstall = '' wrapProgram $out/bin/guile-snarf --prefix PATH : "${gawk}/bin" - + '' # XXX: See http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/18903 for # why `--with-libunistring-prefix' and similar options coming from # `AC_LIB_LINKFLAGS_BODY' don't work on NixOS/x86_64. - sed -i "$out/lib/pkgconfig/guile-2.0.pc" \ + + '' + sed -i "$out/lib/pkgconfig/guile"-*.pc \ -e "s|-lunistring|-L${libunistring}/lib -lunistring|g ; s|^Cflags:\(.*\)$|Cflags: -I${libunistring}/include \1|g ; s|-lltdl|-L${libtool.lib}/lib -lltdl|g ; diff --git a/pkgs/development/interpreters/guile/default.nix b/pkgs/development/interpreters/guile/default.nix index dc6e18ae1af..3d5c51dc420 100644 --- a/pkgs/development/interpreters/guile/default.nix +++ b/pkgs/development/interpreters/guile/default.nix @@ -28,12 +28,15 @@ nativeBuildInputs = [ makeWrapper gawk pkgconfig ]; buildInputs = [ readline libtool libunistring libffi ]; - propagatedBuildInputs = [ gmp boehmgc ] - # XXX: These ones aren't normally needed here, but since - # `libguile-2.0.la' reads `-lltdl -lunistring', adding them here will add + propagatedBuildInputs = [ + gmp boehmgc + + # XXX: These ones aren't normally needed here, but `libguile*.la' has '-l' + # flags for them without corresponding '-L' flags. Adding them here will add # the needed `-L' flags. As for why the `.la' file lacks the `-L' flags, # see below. - ++ [ libtool libunistring ]; + libtool libunistring + ]; enableParallelBuilding = true; @@ -66,11 +69,12 @@ postInstall = '' wrapProgram $out/bin/guile-snarf --prefix PATH : "${gawk}/bin" - + '' # XXX: See http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/18903 for # why `--with-libunistring-prefix' and similar options coming from # `AC_LIB_LINKFLAGS_BODY' don't work on NixOS/x86_64. - sed -i "$out/lib/pkgconfig/guile-2.2.pc" \ + + '' + sed -i "$out/lib/pkgconfig/guile"-*.pc \ -e "s|-lunistring|-L${libunistring}/lib -lunistring|g ; s|^Cflags:\(.*\)$|Cflags: -I${libunistring}/include \1|g ; s|-lltdl|-L${libtool.lib}/lib -lltdl|g ;