gnu: Add libidn2.
[jackhill/guix/guix.git] / gnu / packages / libidn.scm
CommitLineData
233e7676
LC
1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2012 Andreas Enge <andreas@enge.fr>
74dd0e48 3;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
2ee8edc4 4;;;
233e7676 5;;; This file is part of GNU Guix.
2ee8edc4 6;;;
233e7676 7;;; GNU Guix is free software; you can redistribute it and/or modify it
2ee8edc4
AE
8;;; under the terms of the GNU General Public License as published by
9;;; the Free Software Foundation; either version 3 of the License, or (at
10;;; your option) any later version.
11;;;
233e7676 12;;; GNU Guix is distributed in the hope that it will be useful, but
2ee8edc4
AE
13;;; WITHOUT ANY WARRANTY; without even the implied warranty of
14;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15;;; GNU General Public License for more details.
16;;;
17;;; You should have received a copy of the GNU General Public License
233e7676 18;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
2ee8edc4 19
1ffa7090 20(define-module (gnu packages libidn)
59a43334 21 #:use-module (gnu packages)
2ee8edc4
AE
22 #:use-module (guix licenses)
23 #:use-module (guix packages)
24 #:use-module (guix download)
25 #:use-module (guix build-system gnu))
26
27(define-public libidn
28 (package
29 (name "libidn")
d058708e 30 (replacement libidn-1.33)
fb76332f 31 (version "1.32")
2ee8edc4
AE
32 (source (origin
33 (method url-fetch)
34 (uri (string-append "mirror://gnu/libidn/libidn-" version
35 ".tar.gz"))
36 (sha256 (base32
fb76332f 37 "1xf4hphhahcjm2xwx147lfpsavjwv9l4c2gf6hx71zxywbz5lpds"))))
2ee8edc4
AE
38 (build-system gnu-build-system)
39;; FIXME: No Java and C# libraries are currently built.
f50d2669 40 (synopsis "Internationalized string processing library")
2ee8edc4 41 (description
12bcf94a 42 "libidn is a library implementing of the Stringprep, Punycode and IDNA
79c311b8
LC
43specifications. These are used to encode and decode internationalized domain
44names. It includes native C, C# and Java libraries.")
74dd0e48
EF
45 ;; The C code is dual-licensed gpl2+ lgpl3+, the manual is fdl1.3+,
46 ;; the command line tool is gpl3+.
47 (license (list gpl2+ gpl3+ lgpl3+ fdl1.3+))
2ee8edc4 48 (home-page "http://www.gnu.org/software/libidn/")))
d058708e
LF
49
50(define libidn-1.33
51 (package
52 (inherit libidn)
53 (source
54 (let ((version "1.33"))
55 (origin
56 (method url-fetch)
57 (uri (string-append "mirror://gnu/libidn/libidn-" version
58 ".tar.gz"))
59 (sha256
60 (base32
61 "068fjg2arlppjqqpzd714n1lf6gxkpac9v5yyvp1qwmv6nvam9s4")))))))
250a8abc
LF
62
63(define-public libidn2
64 (package
65 (name "libidn2")
66 (version "0.11")
67 (source (origin
68 (method url-fetch)
69 (uri (string-append "ftp://alpha.gnu.org/gnu/libidn/libidn2-"
70 version ".tar.gz"))
71 (sha256
72 (base32
73 "1zxzhzx14q2b1xkx746pz4lawvqd8d055yy84n52ndwb4pf7nfax"))))
74 (build-system gnu-build-system)
75 (synopsis "Internationalized domain name library for IDNA2008")
76 (description "Libidn2 is an internationalized domain library implementing
77the IDNA2008 specifications. Libidn2 is believed to be a complete IDNA2008
78implementation, but has yet to be as extensively used as the original Libidn
79library.")
80 (home-page "https://www.gnu.org/software/libidn/#libidn2")
81 ;; The command-line tool 'idn2' is GPL3+, while the library is dual-licensed
82 ;; GPL2+ or LGPL3+.
83 (license (list gpl2+ gpl3+ lgpl3+))))