;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013 Ludovic Courtès <ludo@gnu.org>
+;;; 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 Jan Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (guix licenses)
#:use-module (guix packages)
#:use-module (guix download)
- #:use-module (guix build-system gnu))
+ #:use-module (guix build-system gnu)
+ #:use-module (gnu packages)
+ #:use-module (gnu packages base))
(define-public libunistring
(package
(name "libunistring")
- (version "0.9.3")
+ (version "0.9.7")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://gnu/libunistring/libunistring-"
- version ".tar.gz"))
+ version ".tar.xz"))
(sha256
(base32
- "18q620269xzpw39dwvr9zpilnl2dkw5z5kz3mxaadnpv4k3kw3b1"))))
- (propagated-inputs '()) ; FIXME: add libiconv when !glibc
+ "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"))))
+ (propagated-inputs (libiconv-if-needed))
(build-system gnu-build-system)
- (synopsis "GNU Libunistring, a Unicode string library")
+ (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))
+ (synopsis "C library for manipulating Unicode strings")
(description
- "This library provides functions for manipulating Unicode strings and for
-manipulating C strings according to the Unicode standard.
-
-GNU libunistring is for you if your application involves non-trivial text
-processing, such as upper/lower case conversions, line breaking, operations
-on words, or more advanced analysis of text. Text provided by the user can,
-in general, contain characters of all kinds of scripts. The text processing
-functions provided by this library handle all scripts and all languages.
-
-libunistring is for you if your application already uses the ISO C / POSIX
-<ctype.h>, <wctype.h> functions and the text it operates on is provided by
-the user and can be in any language.
-
-libunistring is also for you if your application uses Unicode strings as
-internal in-memory representation.")
- (home-page "http://www.gnu.org/software/libunistring/")
- (license lgpl3+)))
+ "GNU libunistring is a library providing functions to manipulate
+Unicode strings and for manipulating C strings according to the Unicode
+standard.")
+ (home-page "https://www.gnu.org/software/libunistring/")
+ (license (list lgpl3+ gpl2))))