1{
2 lib,
3 stdenv,
4 fetchurl,
5 autoreconfHook,
6 pkgsCross,
7}:
8
9stdenv.mkDerivation rec {
10 pname = "npth";
11 version = "1.8";
12
13 src = fetchurl {
14 url = "mirror://gnupg/npth/npth-${version}.tar.bz2";
15 hash = "sha256-i9JLTyOjBl1uWybpirqc54PqT9eBBpwbNdFJaU6Qyj4=";
16 };
17
18 nativeBuildInputs = [ autoreconfHook ];
19
20 doCheck = true;
21
22 passthru.tests = {
23 musl = pkgsCross.musl64.npth;
24 };
25
26 meta = with lib; {
27 description = "New GNU Portable Threads Library";
28 longDescription = ''
29 This is a library to provide the GNU Pth API and thus a non-preemptive
30 threads implementation.
31
32 In contrast to GNU Pth is is based on the system's standard threads
33 implementation. This allows the use of libraries which are not
34 compatible to GNU Pth. Experience with a Windows Pth emulation showed
35 that this is a solid way to provide a co-routine based framework.
36 '';
37 homepage = "http://www.gnupg.org";
38 license = licenses.lgpl3;
39 platforms = platforms.all;
40 };
41}