From 30adc9e0e14f56e45f5d4909c3105dce6d016778 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Wed, 22 Jan 2020 22:50:55 -0600 Subject: gnu: perl-term-readline-gnu: Fix library initialization. * gnu/packages/perl.scm (perl-term-readline-gnu)[arguments]: Patch library search directories into Makefile.PL so that the resulting Gnu.so library contains expected DT_NEEDED entries for libreadline and libncurses. --- gnu/packages/perl.scm | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'gnu/packages/perl.scm') diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 98fc302ddd..9fc3493a5d 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès ;;; Copyright © 2013, 2019 Andreas Enge ;;; Copyright © 2015, 2016, 2017, 2019 Ricardo Wurmus -;;; Copyright © 2015, 2016, 2017, 2019 Eric Bavier +;;; Copyright © 2015, 2016, 2017, 2019, 2020 Eric Bavier ;;; Copyright © 2015 Eric Dvorsak ;;; Copyright © 2016, 2018 Mark H Weaver ;;; Copyright © 2016 Jochem Raat @@ -8513,12 +8513,16 @@ screen size, and retrieval/modification of the control characters.") `(#:tests? #f ; Tests fail without other Term::ReadLine interfaces present #:phases (modify-phases %standard-phases (add-before 'configure 'patch-search-lib - (lambda _ + (lambda* (#:key inputs #:allow-other-keys) (substitute* "Makefile.PL" - ;; The configuration provides no way to pass - ;; additional directories to search for the ncurses - ;; library, so just skip the search. - (("&search_lib\\('-lncurses'\\)") "'-lncurses'"))))))) + ;; The configuration provides no way easy was to pass + ;; additional directories to search for libraries, so + ;; just patch in the flags. + (("-lreadline" &) + (format #f "-L~a/lib ~a" (assoc-ref inputs "readline") &)) + (("&search_lib\\('-lncurses'\\)") + (string-append "'-L" (assoc-ref inputs "ncurses") "/lib" + " -lncurses'")))))))) (home-page "https://metacpan.org/release/Term-ReadLine-Gnu") (synopsis "GNU Readline/History Library interface for Perl") (description "This module implements an interface to the GNU Readline -- cgit v1.2.3