gnu: Add utfcpp.
authorAlex Griffin <a@ajgrf.com>
Sat, 7 May 2016 17:16:39 +0000 (12:16 -0500)
committerAlex Kost <alezost@gmail.com>
Mon, 16 May 2016 15:01:18 +0000 (18:01 +0300)
* gnu/packages/textutils.scm (utfcpp): New variable.

Signed-off-by: Alex Kost <alezost@gmail.com>
gnu/packages/textutils.scm

index f6735a4..080c95b 100644 (file)
@@ -4,6 +4,7 @@
 ;;; Copyright © 2015, 2016 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2015 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2016 Jelle Licht <jlicht@fsfe.org>
+;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
   #:use-module (guix git-download)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system cmake)
+  #:use-module (guix build-system trivial)
   #:use-module (gnu packages autotools)
-  #:use-module (gnu packages python))
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages zip))
 
 (define-public recode
   (package
@@ -328,3 +331,42 @@ name comes from: \"The antidote against people who send Microsoft Word files
 to everybody, because they believe that everybody runs Windows and therefore
 runs Word\".")
     (license license:gpl2+)))
+
+(define-public utfcpp
+  (package
+    (name "utfcpp")
+    (version "2.3.4")
+    (source (origin
+              (method url-fetch)
+              (uri
+               (string-append
+                "mirror://sourceforge/project/utfcpp/utf8cpp_2x/Release%20"
+                version "/utf8_v"
+                (string-map (lambda (x) (if (eq? x #\.) #\_ x)) version)
+                ".zip"))
+              (file-name (string-append name "-" version ".zip"))
+              (sha256
+               (base32
+                "1vqhs0aipcvvdrwcs7h3jsryg6mgbmc4s34n5cm6d36q4nxwwwrk"))))
+    (build-system trivial-build-system)
+    (arguments
+     `(#:modules ((guix build utils))
+       #:builder
+       (begin
+         (use-modules (guix build utils))
+         (let ((source (assoc-ref %build-inputs "source"))
+               (out    (assoc-ref %outputs "out"))
+               (unzip  (string-append (assoc-ref %build-inputs "unzip")
+                                      "/bin/unzip")))
+           (mkdir-p out)
+           (with-directory-excursion out
+             (system* unzip source)
+             (mkdir-p "share/doc")
+             (rename-file "doc" "share/doc/utfcpp")
+             (rename-file "source" "include"))))))
+    (native-inputs `(("unzip" ,unzip)))
+    (home-page "https://github.com/nemtrif/utfcpp")
+    (synopsis "Portable C++ library for handling UTF-8")
+    (description "UTF8-CPP is a C++ library for handling UTF-8 encoded text
+in a portable way.")
+    (license license:boost1.0)))