~ruther/guix-local

503409b543186df5839f7029a42acff50cc53761 — Ludovic Courtès 10 years ago 6d49ca3
gnu: qpdf: Remove run-time dependency on Perl.

* gnu/packages/pdf.scm (qpdf)[source](snippet): New field.
[arguments]: Add #:disallowed-references.
[inputs]: Move PERL to...
[native-inputs]: ... here.
1 files changed, 26 insertions(+), 15 deletions(-)

M gnu/packages/pdf.scm
M gnu/packages/pdf.scm => gnu/packages/pdf.scm +26 -15
@@ 471,27 471,38 @@ and examining the file structure (pdfshow).")
            (uri (string-append "mirror://sourceforge/qpdf/qpdf-"
                                version ".tar.gz"))
            (sha256 (base32
                     "1lq1v7xghvl6p4hgrwbps3a13ad6lh4ib3myimb83hxgsgd4n5nm"))))
                     "1lq1v7xghvl6p4hgrwbps3a13ad6lh4ib3myimb83hxgsgd4n5nm"))
            (modules '((guix build utils)))
            (snippet
             ;; Replace shebang with the bi-lingual shell/Perl trick to remove
             ;; dependency on Perl.
             '(substitute* "qpdf/fix-qdf"
                (("#!/usr/bin/env perl")
                 "\
eval '(exit $?0)' && eval 'exec perl -wS \"$0\" ${1+\"$@\"}'
  & eval 'exec perl -wS \"$0\" $argv:q'
    if 0;\n")))))
   (build-system gnu-build-system)
   (arguments
      '(#:phases (alist-cons-before
                  'configure 'patch-paths
                  (lambda _
                    (substitute* "make/libtool.mk"
                      (("SHELL=/bin/bash")
                       (string-append "SHELL=" (which "bash"))))
                    (substitute* (append
                                  '("qtest/bin/qtest-driver")
                                  (find-files "." "\\.test"))
                      (("/usr/bin/env") (which "env"))))
                  %standard-phases)))
    `(#:disallowed-references (,perl)
      #:phases (alist-cons-before
                'configure 'patch-paths
                (lambda _
                  (substitute* "make/libtool.mk"
                    (("SHELL=/bin/bash")
                     (string-append "SHELL=" (which "bash"))))
                  (substitute* (append
                                '("qtest/bin/qtest-driver")
                                (find-files "." "\\.test"))
                    (("/usr/bin/env") (which "env"))))
                %standard-phases)))
   (native-inputs
    `(("pkg-config" ,pkg-config)))
    `(("pkg-config" ,pkg-config)
      ("perl" ,perl)))
   (propagated-inputs
    `(("pcre" ,pcre)))
   (inputs
    `(("zlib" ,zlib)
      ("perl" ,perl)))
    `(("zlib" ,zlib)))
   (synopsis "Command-line tools and library for transforming PDF files")
   (description
    "QPDF is a command-line program that does structural, content-preserving