From 5212c52ce524ebfd78fae5bc68a0499148f3bf80 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 14 Jul 2018 22:11:45 +0200 Subject: gnu: bzip2: Simplify phase. * gnu/packages/compression.scm (bzip2)[arguments]: Use SCANDIR instead of FIND-FILES when locating the shared library. --- gnu/packages/compression.scm | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'gnu/packages/compression.scm') diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index d9d15a710d..7453b07eaf 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -246,6 +246,7 @@ (define-public bzip2 (arguments `(#:modules ((guix build gnu-build-system) (guix build utils) + (ice-9 ftw) (srfi srfi-1)) #:phases (modify-phases %standard-phases @@ -274,19 +275,18 @@ (define-public bzip2 ;; it create all the (un)versioned symlinks, so we handle it here. (let* ((out (assoc-ref outputs "out")) (libdir (string-append out "/lib")) - ;; Find the actual library (e.g. "libbz2.so.1.0.6"). - (lib (string-drop - (car (find-files - "." - (lambda (file stat) - (and (string-prefix? "./libbz2.so" file) - (eq? 'regular (stat:type stat)))))) - 2)) - (soversion (string-drop lib (string-length "libbz2.so.")))) + (soname "libbz2.so") + ;; Locate the built library (e.g. "libbz2.so.1.0.6"). + (lib (car (scandir "." + (lambda (file) + (and (string-prefix? soname file) + (eq? 'regular + (stat:type (lstat file)))))))) + (soversion (string-drop lib (+ 1 (string-length soname))))) (install-file lib libdir) (with-directory-excursion libdir ;; Create symlinks libbz2.so.1 -> libbz2.so.1.0, etc. - (let loop ((base "libbz2.so") + (let loop ((base soname) (numbers (string-split soversion #\.))) (unless (null? numbers) (let ((so-file (string-append base "." (car numbers)))) -- cgit v1.2.3