;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
+;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
+;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
(define-public libunistring
(package
(name "libunistring")
- (version "0.9.7")
+ (version "0.9.10")
(source (origin
(method url-fetch)
(uri (string-append
version ".tar.xz"))
(sha256
(base32
- "15z76qrmrvkc3c6hfq2lzzqysgd21s682f2smycfab5g598n8drf"))
- ;; test-lock has performance issues on multi-core machines,
- ;; it hangs or takes a long time to complete.
- ;; This is a commit from gnulib to fix this issue.
- (patches (search-patches "libunistring-gnulib-multi-core.patch"))))
+ "1mq57h06622m6qc5cv347fc3qk5mj840axw3c0vd7qmnwk1v53zb"))))
(propagated-inputs (libiconv-if-needed))
+ (outputs '("out" "static"))
(build-system gnu-build-system)
(arguments
;; Work around parallel build issue whereby C files may be compiled before
;; config.h is built: see <http://hydra.gnu.org/build/59381/nixlog/2/raw> and
;; <http://lists.openembedded.org/pipermail/openembedded-core/2012-April/059850.html>.
- '(#:parallel-build? #f))
+ '(#:parallel-build? #f
+ #:phases (modify-phases %standard-phases
+ (add-after 'install 'move-static-library
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out"))
+ (static (assoc-ref outputs "static")))
+ (with-directory-excursion (string-append out "/lib")
+ (install-file "libunistring.a"
+ (string-append static "/lib"))
+ (delete-file "libunistring.a")
+ #t)))))))
(synopsis "C library for manipulating Unicode strings")
(description
"GNU libunistring is a library providing functions to manipulate