1{ fetchurl, stdenv, libiconv }:
2
3stdenv.mkDerivation rec {
4 name = "libidn-1.33";
5
6 src = fetchurl {
7 url = "mirror://gnu/libidn/${name}.tar.gz";
8 sha256 = "068fjg2arlppjqqpzd714n1lf6gxkpac9v5yyvp1qwmv6nvam9s4";
9 };
10
11 outputs = [ "bin" "dev" "out" "info" "devdoc" ];
12
13 # broken with gcc-7
14 #doCheck = !stdenv.isDarwin && !stdenv.hostPlatform.isMusl;
15
16 hardeningDisable = [ "format" ];
17
18 buildInputs = stdenv.lib.optional stdenv.isDarwin libiconv;
19
20 meta = {
21 homepage = http://www.gnu.org/software/libidn/;
22 description = "Library for internationalized domain names";
23
24 longDescription = ''
25 GNU Libidn is a fully documented implementation of the
26 Stringprep, Punycode and IDNA specifications. Libidn's purpose
27 is to encode and decode internationalized domain names. The
28 native C, C\# and Java libraries are available under the GNU
29 Lesser General Public License version 2.1 or later.
30
31 The library contains a generic Stringprep implementation.
32 Profiles for Nameprep, iSCSI, SASL, XMPP and Kerberos V5 are
33 included. Punycode and ASCII Compatible Encoding (ACE) via IDNA
34 are supported. A mechanism to define Top-Level Domain (TLD)
35 specific validation tables, and to compare strings against those
36 tables, is included. Default tables for some TLDs are also
37 included.
38 '';
39
40 repositories.git = git://git.savannah.gnu.org/libidn.git;
41 license = stdenv.lib.licenses.lgpl2Plus;
42 platforms = stdenv.lib.platforms.all;
43 maintainers = [ ];
44 };
45}